mirror of
https://github.com/zeldaret/ss
synced 2026-08-09 02:46:51 -04:00
dAcEKs_c: all non-state functions
This commit is contained in:
+63
-18
@@ -6,18 +6,20 @@
|
||||
#include "d/a/e/d_a_en_base.h"
|
||||
#include "d/col/bg/d_bg_s_acch.h"
|
||||
#include "d/col/cc/d_cc_d.h"
|
||||
#include "d/d_light_env.h"
|
||||
#include "m/m3d/m_anmtexpat.h"
|
||||
#include "m/m_color.h"
|
||||
#include "m/m_mtx.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "toBeSorted/d_emitter.h"
|
||||
#include "toBeSorted/d_path.h"
|
||||
#include "toBeSorted/time_area_mgr.h"
|
||||
|
||||
class dTgKiesuTag_c;
|
||||
class dAcEKs_c : public dAcEnBase_c {
|
||||
public:
|
||||
dAcEKs_c() : mStateMgr(*this), field_0xAA8(0.f), field_0xAB0(0) {}
|
||||
dAcEKs_c() : mStateMgr(*this) {}
|
||||
virtual ~dAcEKs_c() {}
|
||||
|
||||
virtual int doDelete() override;
|
||||
@@ -46,6 +48,38 @@ public:
|
||||
STATE_MGR_DEFINE_UTIL_CHANGESTATE(dAcEKs_c);
|
||||
STATE_MGR_DEFINE_UTIL_ISSTATE(dAcEKs_c);
|
||||
|
||||
enum Type_e {
|
||||
EKS_NORMAL,
|
||||
EKS_FIRE,
|
||||
EKS_ELECTRIC,
|
||||
EKS_CURSED,
|
||||
};
|
||||
enum StartingStateParam_e {
|
||||
EKS_STARTSTATE_Move = 0,
|
||||
EKS_STARTSTATE_Wait = 1,
|
||||
EKS_STARTSTATE_PathMove = 2,
|
||||
};
|
||||
enum State_e {
|
||||
EKS_STATE_Move = 0,
|
||||
EKS_STATE_Wait = 1,
|
||||
EKS_STATE_PathMove = 2,
|
||||
EKS_STATE_WakeUp = 4,
|
||||
EKS_STATE_ReturnToWait = 5,
|
||||
EKS_STATE_Chase = 6,
|
||||
EKS_STATE_ChaseAttack = 7,
|
||||
EKS_STATE_Fighting = 8,
|
||||
EKS_STATE_AttackReady = 9,
|
||||
EKS_STATE_Attack = 10,
|
||||
EKS_STATE_Damage = 11,
|
||||
EKS_STATE_Stun = 12,
|
||||
EKS_STATE_WindBlow = 13,
|
||||
};
|
||||
enum AnmTexPat_e {
|
||||
EKS_TEXPAT_BLINK1,
|
||||
EKS_TEXPAT_BLINK2,
|
||||
EKS_TEXPAT_BLINK3,
|
||||
};
|
||||
|
||||
public:
|
||||
void linkKiesuTag(dTgKiesuTag_c *pTgKs);
|
||||
void setStartingState();
|
||||
@@ -125,13 +159,13 @@ private:
|
||||
/* 0x9F8 */ dEmitter_c mEmitter2;
|
||||
/* 0xA2C */ dWaterEffect_c mWaterEmitter;
|
||||
/* 0xA74 */ ActorOnRail_Ext mRail;
|
||||
/* 0xAA8 */ f32 field_0xAA8;
|
||||
/* 0xAAC */ UNKWORD field_0xAAC;
|
||||
/* 0xAA8 */ u8 field_0xAB0;
|
||||
/* 0xAB1 */ u8 _0xAB1[0xB14 - 0xAB1];
|
||||
/* 0xAA8 */ TimeAreaStruct mTimeArea;
|
||||
/* 0xAB4 */ mMtx_c mCenterWorldMtx;
|
||||
/* 0xAE4 */ mMtx_c field_0xAE4;
|
||||
/* 0xB14 */ mVec3_c mPnts[10];
|
||||
/* 0xB8C */ mVec3_c field_0xB8C;
|
||||
/* 0xB98 */ u8 _0xB98[0xBB0 - 0xB98];
|
||||
/* 0xB98 */ mVec3_c field_0xB98;
|
||||
/* 0xBA4 */ mVec3_c field_0xBA4;
|
||||
/* 0xBB0 */ mVec3_c mTargetPos;
|
||||
/* 0xBBC */ mVec3_c field_0xBBC;
|
||||
/* 0xBC8 */ mVec3_c field_0xBC8;
|
||||
@@ -152,7 +186,9 @@ private:
|
||||
/* 0xC48 */ f32 field_0xC48;
|
||||
/* 0xC4C */ u8 _0xC4C[0xC70 - 0xC4C];
|
||||
/* 0xC70 */ f32 field_0xC70;
|
||||
/* 0xC74 */ u8 _0xC74[0xD00 - 0xC74];
|
||||
/* 0xC74 */ u8 _0xC74[0xCE4 - 0xC74];
|
||||
/* 0xCE4 */ f32 field_0xCE4;
|
||||
/* 0xCE8 */ u8 _0xCE8[0xD00 - 0xCE8];
|
||||
/* 0xD00 */ f32 field_0xD00;
|
||||
/* 0xD04 */ f32 field_0xD04;
|
||||
/* 0xD08 */ f32 field_0xD08;
|
||||
@@ -162,15 +198,22 @@ private:
|
||||
/* 0xD18 */ f32 field_0xD18;
|
||||
/* 0xD1C */ f32 field_0xD1C;
|
||||
/* 0xD20 */ f32 field_0xD20;
|
||||
/* 0xD24 */ u8 _0xD24[0xD32 - 0xD24];
|
||||
/* 0xD32 */ s16 mTimer;
|
||||
/* 0xD24 */ f32 field_0xD24;
|
||||
/* 0xD28 */ f32 field_0xD28;
|
||||
/* 0xD2C */ u32 mCenterNode;
|
||||
/* 0xD30 */ u8 field_0xD30;
|
||||
/* 0xD31 */ u8 field_0xD31;
|
||||
/* 0xD32 */ u16 mTimer;
|
||||
/* 0xD34 */ u8 _0xD34[0xD52 - 0xD34];
|
||||
/* 0xD52 */ s16 field_0xD52;
|
||||
/* 0xD54 */ s16 field_0xD54;
|
||||
/* 0xD56 */ u8 _0xD56[0xD5E - 0xD56];
|
||||
/* 0xD5E */ s16 field_0xD5E;
|
||||
/* 0xD60 */ s16 field_0xD60;
|
||||
/* 0xD62 */ u8 _0xD62[0xD6A - 0xD62];
|
||||
/* 0xD62 */ s16 field_0xD62;
|
||||
/* 0xD64 */ s16 field_0xD64;
|
||||
/* 0xD66 */ s16 field_0xD66;
|
||||
/* 0xD68 */ s16 field_0xD68;
|
||||
/* 0xD6A */ s16 field_0xD6A;
|
||||
/* 0xD6C */ s16 field_0xD6C;
|
||||
/* 0xD6E */ s16 field_0xD6E;
|
||||
@@ -199,13 +242,18 @@ private:
|
||||
/* 0xD9C */ s16 field_0xD9C;
|
||||
/* 0xD9E */ s16 field_0xD9E;
|
||||
/* 0xDA0 */ s16 field_0xDA0;
|
||||
/* 0xDA2 */ u8 _0xDA2[0xDA5 - 0xDA2];
|
||||
/* 0xDA2 */ u8 _0xDA2[0xDA4 - 0xDA2];
|
||||
/* 0xDA4 */ u8 field_0xDA4;
|
||||
/* 0xDA5 */ u8 field_0xDA5;
|
||||
/* 0xDA6 */ u8 field_0xDA6;
|
||||
/* 0xDA7 */ u8 field_0xDA7;
|
||||
/* 0xDA8 */ u8 field_0xDA8;
|
||||
/* 0xDA9 */ u8 field_0xDA9;
|
||||
/* 0xDAA */ u8 _0xDAA[0xDAF - 0xDAA];
|
||||
/* 0xDAA */ u8 field_0xDAA;
|
||||
/* 0xDAB */ u8 field_0xDAB;
|
||||
/* 0xDAC */ u8 field_0xDAC;
|
||||
/* 0xDAD */ u8 field_0xDAD;
|
||||
/* 0xDAE */ u8 field_0xDAE;
|
||||
/* 0xDAF */ u8 field_0xDAF;
|
||||
/* 0xDB0 */ u8 field_0xDB0;
|
||||
/* 0xDB1 */ u8 field_0xDB1;
|
||||
@@ -237,11 +285,8 @@ private:
|
||||
/* 0xDCB */ u8 field_0xDCB;
|
||||
/* 0xDCC */ u8 _0xDCC[0xDCF - 0xDCC];
|
||||
/* 0xDCF */ u8 field_0xDCF;
|
||||
/* 0xDD0 */ u8 _0xDD0[0xDD4 - 0xDD0];
|
||||
/* 0xDD4 */ mVec3_c mHomePos;
|
||||
/* 0xDE0 */ mColor mColor;
|
||||
/* 0xDE4 */ f32 field_0xDE4;
|
||||
/* 0xDE8 */ u8 _0xDE8[0xDF0 - 0xDE8];
|
||||
/* 0xDD0 */ u8 field_0xDD0;
|
||||
/* 0xDD4 */ LIGHT_INFLUENCE mLightInfluence;
|
||||
|
||||
// Controlled by dTgKiesuTag_c
|
||||
static bool lbl_155_bss_388;
|
||||
|
||||
@@ -1124,6 +1124,9 @@ public:
|
||||
void SetCo_0x400() {
|
||||
mCo.OnSPrm(0x400);
|
||||
}
|
||||
void SetCo_0x8000() {
|
||||
mCo.OnSPrm(0x8000);
|
||||
}
|
||||
void SetCo_0x40000000() {
|
||||
mCo.OnSPrm(0x40000000);
|
||||
}
|
||||
|
||||
@@ -31,6 +31,10 @@ public:
|
||||
field_0x456++;
|
||||
}
|
||||
|
||||
void setField_0x47A() {
|
||||
field_0x47A = true;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x0FC */ STATE_MGR_DECLARE(dTgKiesuTag_c);
|
||||
/* 0x138 */ dAcRef_c<dAcEKs_c> mKsRefs[16];
|
||||
@@ -90,6 +94,7 @@ private:
|
||||
/* 0x44A */ s16 mNumKsControl;
|
||||
|
||||
/* 0x474 */ bool field_0x474;
|
||||
/* 0x47A */ bool field_0x47A;
|
||||
/* 0x47E */ bool mbAllKsActive;
|
||||
|
||||
/* 0x48A */ u8 field_0x48A; // Related to getting spawnPos/ Type?
|
||||
|
||||
Reference in New Issue
Block a user