obj_lv8kekkaitrap / obj_nougu done, obj_lv7bridge almost (#2763)

* obj_lv8kekkaitrap / obj_nougu done, obj_lv7bridge almost

* kekkaitrap cleanup
This commit is contained in:
TakaRikka
2025-10-31 01:13:14 -07:00
committed by GitHub
parent 194282d2c2
commit c9838e29fa
10 changed files with 939 additions and 1351 deletions
+43 -11
View File
@@ -2,6 +2,11 @@
#define D_A_OBJ_LV7BRIDGE_H
#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_bg_s_acch.h"
#include "d/d_cc_d.h"
class daObjSwSpinner_c;
/**
* @ingroup actors-objects
@@ -11,29 +16,56 @@
* @details
*
*/
class daObjLv7Brg_c : public fopAc_ac_c {
class daObjLv7Brg_c : public dBgS_MoveBgActor {
public:
/* 80C863EC */ void search_swspinner();
/* 80C863EC */ daObjSwSpinner_c* search_swspinner();
/* 80C86454 */ void initBaseMtx();
/* 80C864B4 */ void setBaseMtx();
/* 80C865B8 */ void Create();
/* 80C867CC */ void CreateHeap();
/* 80C86A44 */ void create1st();
/* 80C86B40 */ void Execute(Mtx**);
/* 80C86A44 */ int create1st();
/* 80C86E68 */ void action();
/* 80C86F44 */ void mode_action();
/* 80C87210 */ void mode_end();
/* 80C87214 */ void calcCoPos();
/* 80C87304 */ void Draw();
/* 80C87458 */ void Delete();
/* 80C867CC */ virtual int CreateHeap();
/* 80C865B8 */ virtual int Create();
/* 80C86B40 */ virtual int Execute(Mtx**);
/* 80C87304 */ virtual int Draw();
/* 80C87458 */ virtual int Delete();
u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getSwbit2() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getSwbit3() { return field_0xa80 & 0xFF; }
u8 getType() { return fopAcM_GetParamBit(this, 16, 4); }
u8 getKind() { return fopAcM_GetParamBit(this, 24, 1); }
void setMode(u8 i_mode) { mMode = i_mode; }
void setDestroyAnmA() { field_0xa94 = 0; }
void setDestroyAnmB() { field_0xa94 = 1; }
private:
/* 0x568 */ u8 field_0x568[0xa94 - 0x568];
/* 0xA94 */ u8 field_0xa94;
/* 0xA95 */ u8 field_0xa95[0xaa4 - 0xA95];
/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* mpModel;
/* 0x5AC */ dBgS_ObjAcch mAcch;
/* 0x784 */ dBgS_AcchCir mAcchCir;
/* 0x7C4 */ dCcD_Stts mCcStts;
/* 0x800 */ dCcD_Cyl mCcCyl[2];
/* 0xA78 */ f32 field_0xa78;
/* 0xA7C */ u8 mType;
/* 0xA7D */ u8 mMode;
/* 0xA7E */ u8 mKind;
/* 0xA7F */ u8 mInitParams;
/* 0xA80 */ u16 field_0xa80;
/* 0xA82 */ u16 field_0xa82;
/* 0xA84 */ J3DModel* mpBrokenModel;
/* 0xA88 */ mDoExt_bckAnm* mpBck[2];
/* 0xA90 */ dBgW* mpBgw2;
/* 0xA94 */ s8 field_0xa94;
/* 0xA95 */ s8 field_0xa95;
/* 0xA96 */ u8 field_0xa96;
/* 0xA98 */ cXyz field_0xa98;
};
STATIC_ASSERT(sizeof(daObjLv7Brg_c) == 0xaa4);
+18 -13
View File
@@ -2,6 +2,7 @@
#define D_A_OBJ_LV8KEKKAITRAP_H
#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_movebg_actor.h"
/**
* @ingroup actors-objects
@@ -11,12 +12,10 @@
* @details
*
*/
class daKekaiTrap_c : public fopAc_ac_c {
class daKekaiTrap_c : public dBgS_MoveBgActor {
public:
/* 80C87D40 */ void setBaseMtx();
/* 80C87DC8 */ void CreateHeap();
/* 80C87E48 */ void create();
/* 80C87FB0 */ void Execute(Mtx**);
/* 80C87E48 */ int create();
/* 80C88000 */ void moveMain();
/* 80C88104 */ void init_modeWait();
/* 80C88110 */ void modeWait();
@@ -24,20 +23,26 @@ public:
/* 80C88138 */ void modeMoveUp();
/* 80C881F0 */ void init_modeMoveDown();
/* 80C88214 */ void modeMoveDown();
/* 80C882C8 */ void Draw();
/* 80C8836C */ void Delete();
/* 80C87DC8 */ virtual int CreateHeap();
/* 80C87FB0 */ virtual int Execute(Mtx**);
/* 80C882C8 */ virtual int Draw();
/* 80C8836C */ virtual int Delete();
int getType() { return fopAcM_GetParamBit(this, 0, 4); }
int getSwBit() { return fopAcM_GetParamBit(this, 4, 8); }
private:
/* 0x568 */ u8 field_0x568[0x5b4 - 0x568];
/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* mpModel;
/* 0x5AC */ u8 mIsSwitch;
/* 0x5AD */ u8 mSwbit;
/* 0x5AE */ u8 mType;
/* 0x5AF */ u8 mMode;
/* 0x5B0 */ u8 mTimer;
};
STATIC_ASSERT(sizeof(daKekaiTrap_c) == 0x5b4);
class daKekaiTrap_HIO_c {
public:
/* 80C87CAC */ daKekaiTrap_HIO_c();
/* 80C88438 */ ~daKekaiTrap_HIO_c();
};
#endif /* D_A_OBJ_LV8KEKKAITRAP_H */
+34 -14
View File
@@ -2,6 +2,8 @@
#define D_A_OBJ_NOUGU_H
#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_acch.h"
#include "d/d_cc_d.h"
/**
* @ingroup actors-objects
@@ -13,32 +15,50 @@
*/
class daObj_Nougu_c : public fopAc_ac_c {
public:
/* 80CA3C0C */ ~daObj_Nougu_c();
/* 80CA3E24 */ void create();
/* 80CA4328 */ void CreateHeap();
/* 80CA43A0 */ void Delete();
/* 80CA43D4 */ void Execute();
/* 80CA45F4 */ void Draw();
/* 80CA46B8 */ void createHeapCallBack(fopAc_ac_c*);
/* 80CA46D8 */ void getResName();
/* 80CA46E8 */ void isDelete();
/* 0x568 */ u8 field_0x568[0x56C - 0x568];
/* 0x56C */ request_of_phase_process_class mPhase;
/* 0x574 */ J3DModel* mpModel;
/* 0x578 */ dBgS_ObjAcch mAcch;
/* 0x750 */ dCcD_Stts mCcStts;
/* 0x78C */ dBgS_AcchCir mAcchCir;
/* 0x7CC */ cBgS_GndChk mGndChk;
/* 0x808 */ dCcD_Sph mCcSph[5];
/* 0xE20 */ f32 mGroundH;
/* 0xE24 */ u32 mShadowId;
/* 0xE28 */ u8 mType;
/* 80CA3C0C */ virtual ~daObj_Nougu_c();
/* 80CA3E24 */ int create();
/* 80CA4328 */ int CreateHeap();
/* 80CA43A0 */ int Delete();
/* 80CA43D4 */ int Execute();
/* 80CA45F4 */ int Draw();
/* 80CA46B8 */ static int createHeapCallBack(fopAc_ac_c*);
/* 80CA46D8 */ const char* getResName();
/* 80CA46E8 */ int isDelete();
/* 80CA4708 */ void setEnvTevColor();
/* 80CA4764 */ void setRoomNo();
/* 80CA47A4 */ void setMtx();
static u8 mCcDSph[64];
int getType() { return 0; }
private:
/* 0x568 */ u8 field_0x568[0xe30 - 0x568];
static dCcD_SrcSph mCcDSph;
};
STATIC_ASSERT(sizeof(daObj_Nougu_c) == 0xe30);
struct daObj_Nougu_HIOParam {
/* 0x0 */ f32 attention_offset;
/* 0x4 */ f32 gravity;
/* 0x8 */ f32 scale;
/* 0xC */ f32 shadow_size;
};
class daObj_Nougu_Param_c {
public:
/* 80CA494C */ ~daObj_Nougu_Param_c();
/* 80CA494C */ virtual ~daObj_Nougu_Param_c() {}
static u8 const m[16];
static const daObj_Nougu_HIOParam m;
};
+2 -2
View File
@@ -24,8 +24,8 @@ public:
/* 80D00890 */ int Draw();
/* 80D00954 */ int Delete();
u8 getSwBit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getSwBit2() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getSwbit2() { return fopAcM_GetParamBit(this, 8, 8); }
int GetRotSpeedY() { return mRotSpeedY; }
f32 GetR() { return 100.0f; }