d_a_obj_zra_freeze, d_a_obj_zrTurara mostly OK, d_a_obj_zrTuraraRock OK (#2008)

This commit is contained in:
Caroline Madsen
2023-12-21 04:35:34 -05:00
committed by GitHub
parent 269c2f7a06
commit e58b7390dd
64 changed files with 1235 additions and 3616 deletions
+2 -1
View File
@@ -374,7 +374,7 @@ public:
ERFLG1_UNK_2000 = 0x2000,
ERFLG1_UNK_800 = 0x800,
ERFLG1_UNK_400 = 0x400,
ERFLG1_UNK_200 = 0x200,
ERFLG1_WOLF_EYE_KEEP = 0x200,
ERFLG1_UNK_100 = 0x100,
ERFLG1_UNK_80 = 0x80,
ERFLG1_UNK_40 = 0x40,
@@ -763,6 +763,7 @@ public:
void onNotAutoJump() { i_onEndResetFlg0(ERFLG0_NOT_AUTO_JUMP); }
void onNotHang() { i_onEndResetFlg0(ERFLG0_NOT_HANG); }
void onShieldBackBone() { i_onEndResetFlg1(ERFLG1_GANON_FINISH); }
void onWolfEyeKeep() { i_onEndResetFlg1(ERFLG1_WOLF_EYE_KEEP); }
void onFogFade() { i_onNoResetFlg2(FLG2_UNK_4000); }
void offCargoCarry() {
+1
View File
@@ -912,6 +912,7 @@ void dComIfGs_setKeyNum(int i_stageNo, u8 i_keyNum);
s32 dComIfGs_isDungeonItemWarp(int i_stageNo);
void dComIfGs_BossLife_public_Set(s8);
s8 dComIfGs_sense_type_change_Get();
void dComIfGs_sense_type_change_Set(s8);
cXyz& dComIfGs_getWarpPlayerPos();
const char* dComIfGs_getWarpStageName();
s16 dComIfGs_getWarpPlayerAngleY();
@@ -1,6 +1,61 @@
#ifndef D_A_OBJ_ZRTURARA_H
#define D_A_OBJ_ZRTURARA_H
#include "dolphin/types.h"
#include "SSystem/SComponent/c_phase.h"
#include "m_Do/m_Do_hostIO.h"
#include "f_op/f_op_actor_mng.h"
#include "d/cc/d_cc_d.h"
#include "d/bg/d_bg_s_movebg_actor.h"
class daZrTurara_c : public dBgS_MoveBgActor {
public:
/* 80D405E4 */ void setBaseMtx();
/* 80D40714 */ int CreateHeap();
/* 80D40844 */ cPhs__Step create();
/* 80D40C08 */ int Execute(Mtx**);
/* 80D40C68 */ void move();
/* 80D40D88 */ void modeWait();
/* 80D40E0C */ void init_modeBreak();
/* 80D410E0 */ void modeBreak();
/* 80D412A0 */ void init_modeEnd();
/* 80D412AC */ void modeEnd();
/* 80D412B0 */ int Draw();
/* 80D41380 */ int Delete();
/* 0x5A0 */ dCcD_Stts mCcStatus;
/* 0x5DC */ dCcD_Cyl mCcCyl;
/* 0x718 */ request_of_phase_process_class mPhaseReq;
/* 0x720 */ J3DModel* mpBaseModel;
/* 0x724 */ J3DModel* mpRockModel;
/* 0x728 */ u8 mMode;
/* 0x729 */ u8 mSw2;
/* 0x72A */ u8 mDrawRock;
/* 0x72B */ u8 mBreakTimer;
/* 0x72C */ dBgW* mpRockBgW;
/* 0x730 */ Mtx mRockBgMtx;
/* 0x760 */ f32 mScaleF;
/* 0x764 */ u32 mParticleKey;
/* 0x768 */ u8 mDebrisCount;
u8 getSwBit1() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getSwBit2() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getScale() { return fopAcM_GetParamBit(this, 0x10, 8); }
static dCcD_SrcGObjInf const mCcDObjInfo;
static dCcD_SrcCyl mCcDCyl;
};
STATIC_ASSERT(sizeof(daZrTurara_c) == 0x76C);
class daZrTurara_HIO_c : public mDoHIO_entry_c {
public:
/* 80D4056C */ daZrTurara_HIO_c();
/* 80D414BC */ ~daZrTurara_HIO_c() {}
/* 0x4 */ f32 mDebrisRange;
/* 0x8 */ u8 mDebrisNum;
};
STATIC_ASSERT(sizeof(daZrTurara_HIO_c) == 0xC);
#endif /* D_A_OBJ_ZRTURARA_H */
@@ -1,6 +1,62 @@
#ifndef D_A_OBJ_ZRTURARAROCK_H
#define D_A_OBJ_ZRTURARAROCK_H
#include "dolphin/types.h"
#include "SSystem/SComponent/c_phase.h"
#include "m_Do/m_Do_hostIO.h"
#include "f_op/f_op_actor_mng.h"
#include "d/cc/d_cc_d.h"
#include "d/bg/d_bg_s_acch.h"
class daZrTuraRc_c : public fopAc_ac_c {
public:
/* 80D41934 */ void setBaseMtx();
/* 80D419D4 */ int CreateHeap();
/* 80D41A40 */ cPhs__Step create();
/* 80D41EF0 */ static int createHeapCallBack(fopAc_ac_c*);
/* 80D41F10 */ int Execute();
/* 80D41F78 */ void move();
/* 80D4204C */ void init_modeDrop();
/* 80D42084 */ void modeDrop();
/* 80D420FC */ void bgCheck();
/* 80D42128 */ void init_modeDropEnd();
/* 80D4215C */ void modeDropEnd();
/* 80D42160 */ int Draw();
/* 80D421C4 */ int Delete();
/* 0x568 */ dCcD_Stts mCcStatus;
/* 0x5A4 */ dCcD_Sph mCcSph;
/* 0x6DC */ request_of_phase_process_class mPhaseReq;
/* 0x6E4 */ J3DModel* mpModel;
/* 0x6E8 */ u8 mMode;
/* 0x6E9 */ u8 field_0x6e9[0x13];
/* 0x6FC */ f32 mScaleF;
/* 0x700 */ dBgS_AcchCir mAcchCir;
/* 0x740 */ dBgS_ObjAcch mAcch;
/* 0x918 */ Z2SoundObjSimple mSound;
u8 getScale() { return fopAcM_GetParamBit(this, 0, 8); }
static dCcD_SrcGObjInf const mCcDObjInfo;
static dCcD_SrcSph mCcDSph;
};
STATIC_ASSERT(sizeof(daZrTuraRc_c) == 0x938);
class daZrTuraRc_HIO_c : public mDoHIO_entry_c {
public:
/* 80D4188C */ daZrTuraRc_HIO_c();
/* 80D422D0 */ ~daZrTuraRc_HIO_c() {}
/* 0x04 */ f32 field_0x04;
/* 0x08 */ f32 mGravity;
/* 0x0C */ f32 mMaxFallSpeed;
/* 0x10 */ u8 field_0x10;
/* 0x11 */ u8 field_0x11;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
};
STATIC_ASSERT(sizeof(daZrTuraRc_HIO_c) == 0x20);
#endif /* D_A_OBJ_ZRTURARAROCK_H */
@@ -1,7 +1,38 @@
#ifndef D_A_OBJ_ZRA_FREEZE_H
#define D_A_OBJ_ZRA_FREEZE_H
#include "d/com/d_com_inf_game.h"
#include "f_op/f_op_actor_mng.h"
#include "SSystem/SComponent/c_phase.h"
#include "f_op/f_op_actor.h"
class daZraFreeze_c : public fopAc_ac_c {
public:
/* 80D440B8 */ void setBaseMtx();
/* 80D44124 */ BOOL chkActorInScreen();
/* 80D442BC */ cPhs__Step Create();
/* 80D4443C */ int CreateHeap();
/* 80D444C0 */ void setHitodamaPrtcl();
/* 80D44698 */ int Execute();
/* 80D449E0 */ int Draw();
/* 80D44A84 */ int Delete();
/* 0x568 */ request_of_phase_process_class mPhaseReq;
/* 0x570 */ J3DModel* mpModel;
/* 0x574 */ Mtx mMtx;
/* 0x5A4 */ s32 mTwilight;
/* 0x5A8 */ u32 mParticleKey[2];
/* 0x5B0 */ u8 field_0x5b0;
/* 0x5B1 */ u8 field_0x5b1;
/* 0x5B2 */ u8 field_0x5b2;
/* 0x5B4 */ cXyz mMin;
/* 0x5C0 */ cXyz mMax;
/* 0x5CC */ s16 mEventId;
/* 0x5CE */ u8 mMapToolId;
/* 0x5CF */ u8 field_0x5cf;
/* 0x5D0 */ cXyz mParticleOffset;
/* 0x5DC */ s16 field_0x5dc;
/* 0x5DE */ s16 field_0x5de;
};
STATIC_ASSERT(sizeof(daZraFreeze_c) == 0x5E0);
#endif /* D_A_OBJ_ZRA_FREEZE_H */