mirror of
https://github.com/zeldaret/tp
synced 2026-08-17 05:22:00 -04:00
d_a_e_zs (a.k.a. Stallord's zombie soldiers) equivalent (#2313)
* Initial work for d_a_e_zs * d_a_e_zs equivalent * d_a_e_zs data fixes. Thanks Taka! * Update d_a_e_zs based on Taka's comments
This commit is contained in:
@@ -178,6 +178,15 @@ public:
|
||||
/* 805DB974 */ cPhs__Step create();
|
||||
/* 805DC1E8 */ daB_DS_c();
|
||||
|
||||
cXyz getHandPosR();
|
||||
cXyz getHandPosL();
|
||||
BOOL isOpening() { return mAction == ACT_OPENING_DEMO; }
|
||||
bool isDemo() { return mIsDemo; }
|
||||
bool isAppear() { return mIsAppear; }
|
||||
bool isAppearG() { return mIsAppearG; }
|
||||
bool isDead() { return mDead; }
|
||||
bool isArg0() { return arg0; }
|
||||
|
||||
private:
|
||||
/* 0x05AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x05B4 */ mDoExt_McaMorfSO* mpMorf;
|
||||
@@ -321,6 +330,9 @@ private:
|
||||
/* 0x2EDC */ dMsgFlow_c mMsgFlow;
|
||||
};
|
||||
|
||||
cXyz daB_DS_c::getHandPosR() { return mHandPos[1]; }
|
||||
cXyz daB_DS_c::getHandPosL() { return mHandPos[0]; }
|
||||
|
||||
STATIC_ASSERT(sizeof(daB_DS_c) == 0x2F28);
|
||||
|
||||
class daB_DS_HIO_c {
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
#ifndef D_A_E_ZS_H
|
||||
#define D_A_E_ZS_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-enemies
|
||||
@@ -12,11 +14,19 @@
|
||||
*
|
||||
*/
|
||||
class daE_ZS_c : public fopEn_enemy_c {
|
||||
/* 808330DC */ void draw();
|
||||
public:
|
||||
enum daE_ZS_Action {
|
||||
/* 0 */ ACT_APPEAR,
|
||||
/* 1 */ ACT_WAIT,
|
||||
/* 2 */ ACT_DAMAGE,
|
||||
/* 3 */ ACT_DRIVE
|
||||
};
|
||||
|
||||
/* 808330DC */ int draw();
|
||||
/* 808331E4 */ void setBck(int, u8, f32, f32);
|
||||
/* 80833290 */ void setActionMode(int, int);
|
||||
/* 8083329C */ void damage_check();
|
||||
/* 80833698 */ void mBossHandCheck();
|
||||
/* 80833698 */ u8 mBossHandCheck();
|
||||
/* 80833964 */ void executeAppear();
|
||||
/* 80833D30 */ void executeWait();
|
||||
/* 80833F1C */ void executeDamage();
|
||||
@@ -24,20 +34,48 @@ class daE_ZS_c : public fopEn_enemy_c {
|
||||
/* 808342C8 */ void action();
|
||||
/* 80834478 */ void mtx_set();
|
||||
/* 80834518 */ void cc_set();
|
||||
/* 80834650 */ void execute();
|
||||
/* 808346E4 */ void _delete();
|
||||
/* 80834778 */ void CreateHeap();
|
||||
/* 80834884 */ void create();
|
||||
/* 80834650 */ int execute();
|
||||
/* 808346E4 */ int _delete();
|
||||
/* 80834778 */ int CreateHeap();
|
||||
/* 80834884 */ int create();
|
||||
|
||||
private:
|
||||
/* 0x5ac */ u8 field_0x5ac[0xa3c - 0x5ac];
|
||||
/* 0x5ac */ request_of_phase_process_class mPhase;
|
||||
/* 0x5b4 */ mDoExt_McaMorfSO* mpMorf;
|
||||
/* 0x5b8 */ Z2CreatureEnemy mSound;
|
||||
/* 0x65c */ f32 field_0x65c;
|
||||
/* 0x660 */ int mAction;
|
||||
/* 0x664 */ int mMode;
|
||||
/* 0x668 */ int mResIndex;
|
||||
/* 0x66c */ u32 mShadowKey;
|
||||
/* 0x670 */ u8 field_0x670;
|
||||
/* 0x671 */ u8 field_0x671;
|
||||
/* 0x672 */ u8 field_0x672;
|
||||
/* 0x673 */ u8 field_0x673;
|
||||
/* 0x674 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x6b4 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x88c */ dCcD_Stts mStts;
|
||||
/* 0x8c8 */ dCcD_Cyl mCyl;
|
||||
/* 0xa04 */ cCcD_Obj* mpCollider;
|
||||
/* 0xa08 */ u8 field_0xa08[0xa0c - 0xa08];
|
||||
/* 0xa0c */ Z2CreatureEnemy* mpSound;
|
||||
/* 0xa10 */ u8 field_0xa10[0xa22 - 0xa10];
|
||||
/* 0xa22 */ s8 field_0xa22;
|
||||
/* 0xa23 */ u8 field_0xa23[0xa28 - 0xa23];
|
||||
/* 0xa28 */ u8 field_0xa28;
|
||||
/* 0xa29 */ u8 field_0xa29[0xa3c - 0xa29];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daE_ZS_c) == 0xa3c);
|
||||
|
||||
class daE_ZS_HIO_c {
|
||||
public:
|
||||
/* 808330AC */ daE_ZS_HIO_c();
|
||||
/* 80834DDC */ ~daE_ZS_HIO_c();
|
||||
/* 80834DDC */ virtual ~daE_ZS_HIO_c() {}
|
||||
|
||||
/* 0x4 */ s8 field_0x4;
|
||||
/* 0x8 */ f32 field_0x8;
|
||||
/* 0xc */ f32 field_0xc;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user