d_a_e_gi equivalent (#2494)

* d_a_e_gi equivalent

* fix
This commit is contained in:
TakaRikka 2025-06-21 05:29:03 -07:00 committed by GitHub
parent e43b660038
commit 90a6389223
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 1053 additions and 897 deletions

View File

@ -1658,7 +1658,7 @@ config.libs = [
ActorRel(Equivalent, "d_a_e_fz"), # weak func order
ActorRel(NonMatching, "d_a_e_gb"),
ActorRel(NonMatching, "d_a_e_ge"),
ActorRel(NonMatching, "d_a_e_gi"),
ActorRel(Equivalent, "d_a_e_gi"), # weak func order
ActorRel(NonMatching, "d_a_e_gm"),
ActorRel(Equivalent, "d_a_e_gob"), # weak func order
ActorRel(MatchingFor("GZ2E01"), "d_a_e_gs"),

View File

@ -17,14 +17,14 @@
*/
class daE_GI_c : public fopEn_enemy_c {
public:
/* 806CD4F4 */ void ctrlJoint(J3DJoint*, J3DModel*);
/* 806CD594 */ void JointCallBack(J3DJoint*, int);
/* 806CD5E0 */ void draw();
/* 806CD4F4 */ int ctrlJoint(J3DJoint*, J3DModel*);
/* 806CD594 */ static int JointCallBack(J3DJoint*, int);
/* 806CD5E0 */ int draw();
/* 806CD868 */ void setBck(int, u8, f32, f32);
/* 806CD90C */ void setActionMode(int, int);
/* 806CD938 */ void damage_check();
/* 806CDD1C */ void setWeaponAtBit(u8);
/* 806CDD8C */ void setCryStop();
/* 806CDD8C */ bool setCryStop();
/* 806CDED8 */ void setAttackEffect();
/* 806CDFB0 */ void setDragSwordEffect();
/* 806CE0D4 */ void setDeathSmokeEffect();
@ -39,52 +39,53 @@ public:
/* 806CF878 */ void action();
/* 806CFB60 */ void mtx_set();
/* 806CFBF0 */ void cc_set();
/* 806CFDF4 */ void execute();
/* 806D0054 */ void _delete();
/* 806D00E8 */ void CreateHeap();
/* 806D027C */ void create();
/* 806CFDF4 */ int execute();
/* 806D0054 */ int _delete();
/* 806D00E8 */ int CreateHeap();
/* 806D027C */ int create();
bool isBattleOn() { return mIsBattleOn; }
bool isAttackStart() { return mIsAttackStart; }
private:
/* 0x05AC */ request_of_phase_process_class mPhaseReq;
/* 0x05B4 */ mDoExt_McaMorfSO* mpMorfSO;
/* 0x05B8 */ J3DModel* mpModel;
/* 0x05BC */ Z2CreatureEnemy mCreatureSound;
/* 0x0660 */ f32 field_0x0660;
/* 0x0664 */ f32 field_0x0664;
/* 0x0668 */ f32 field_0x0668;
/* 0x066C */ s16 field_0x066c;
/* 0x066E */ u8 field_0x066E[0x0670 - 0x066E];
/* 0x0670 */ s32 mActionMode;
/* 0x0674 */ s32 mMoveMode;
/* 0x05AC */ request_of_phase_process_class mPhase;
/* 0x05B4 */ mDoExt_McaMorfSO* mpModelMorf;
/* 0x05B8 */ J3DModel* mpSwordModel;
/* 0x05BC */ Z2CreatureEnemy mSound;
/* 0x0660 */ f32 mBodyDamageColor;
/* 0x0664 */ f32 mWallCheckRadius;
/* 0x0668 */ f32 field_0x668;
/* 0x066C */ s16 field_0x66c;
/* 0x0670 */ int mActionMode;
/* 0x0674 */ int mMoveMode;
/* 0x0678 */ u32 mShadowKey;
/* 0x067C */ u8 field_0x067C[0x067E - 0x067C];
/* 0x067E */ s16 field_0x067e;
/* 0x0680 */ s32 field_0x0680;
/* 0x0684 */ s32 field_0x0684;
/* 0x0688 */ s32 field_0x0688;
/* 0x068C */ s32 field_0x068c;
/* 0x0690 */ s32 field_0x0690;
/* 0x0694 */ s32 field_0x0694;
/* 0x0698 */ u8 field_0x0698;
/* 0x0699 */ u8 field_0x0699;
/* 0x069A */ u8 field_0x069a;
/* 0x069B */ u8 field_0x069b;
/* 0x069C */ u8 field_0x069c;
/* 0x069D */ u8 field_0x069d;
/* 0x069E */ u8 field_0x069e;
/* 0x069F */ u8 field_0x069f;
/* 0x06A0 */ u8 field_0x06a0;
/* 0x06A1 */ u8 field_0x06A1[0x06A2 - 0x06A1];
/* 0x06A2 */ s16 field_0x06a2;
/* 0x06A4 */ u8 field_0x06a4;
/* 0x06A5 */ u8 field_0x06a5;
/* 0x06A6 */ s16 field_0x06a6;
/* 0x06A8 */ s32 field_0x06a8;
/* 0x067C */ u8 field_0x67C[0x067E - 0x067C];
/* 0x067E */ s16 field_0x67e;
/* 0x0680 */ int mInvulnerabilityTimer;
/* 0x0684 */ int field_0x684;
/* 0x0688 */ int field_0x688;
/* 0x068C */ int mPlayerStunTimer;
/* 0x0690 */ int mCryTimer;
/* 0x0694 */ int mContinuousHitTimer;
/* 0x0698 */ u8 field_0x698;
/* 0x0699 */ u8 mIsBattleOn;
/* 0x069A */ u8 mIsCreateAwake;
/* 0x069B */ u8 mDamageDirection;
/* 0x069C */ u8 mIsAttackStart;
/* 0x069D */ u8 mSwbit;
/* 0x069E */ u8 mSwbit2;
/* 0x069F */ u8 field_0x69f;
/* 0x06A0 */ u8 field_0x6a0;
/* 0x06A2 */ s16 field_0x6a2;
/* 0x06A4 */ u8 mWolfBiteCount;
/* 0x06A5 */ u8 mIsOnHeadLock;
/* 0x06A6 */ s16 mPrevStickAngle;
/* 0x06A8 */ int mPushButtonCount;
/* 0x06AC */ dBgS_AcchCir mAcchCir;
/* 0x06EC */ dBgS_ObjAcch mObjAcch;
/* 0x08C4 */ dCcD_Stts mStts;
/* 0x0900 */ dCcD_Sph mSpheres[2];
/* 0x0B70 */ dCcD_Sph mAttSpheres[4];
/* 0x06EC */ dBgS_ObjAcch mAcch;
/* 0x08C4 */ dCcD_Stts mCcStts;
/* 0x0900 */ dCcD_Sph mCcSph[2];
/* 0x0B70 */ dCcD_Sph mAtSph[4];
/* 0x1050 */ dCcU_AtInfo mAtInfo;
/* 0x1074 */ u32 mPolyColorKey;
/* 0x1078 */ u8 mHIOInit;
@ -95,18 +96,18 @@ STATIC_ASSERT(sizeof(daE_GI_c) == 0x107c);
class daE_GI_HIO_c : public JORReflexible {
public:
/* 806CD48C */ daE_GI_HIO_c();
/* 806D098C */ virtual ~daE_GI_HIO_c();
/* 806D098C */ virtual ~daE_GI_HIO_c() {}
void genMessage(JORMContext*);
/* 0x04 */ s8 field_0x4;
/* 0x04 */ s8 id;
/* 0x08 */ f32 model_size;
/* 0x0C */ f32 move_speed;
/* 0x10 */ f32 player_detect_range;
/* 0x14 */ f32 player_attack_distance;
/* 0x14 */ f32 player_attack_range;
/* 0x18 */ f32 attack_angle;
/* 0x1C */ f32 link_down_time;
/* 0x20 */ f32 wolf_stop_time;
/* 0x1C */ f32 link_stun_time;
/* 0x20 */ f32 wolf_stun_time;
/* 0x24 */ f32 scream_prevention_time;
/* 0x28 */ f32 lever_spin_time;
};

File diff suppressed because it is too large Load Diff