d_a_no_chg_room / d_a_e_st_line done (#2056)

* no_chg_room done

* d_a_e_st_line done

* remove asm

* d_a_e_bi_leaf done

* d_a_e_hb_leaf done
This commit is contained in:
TakaRikka
2024-01-31 10:05:04 -08:00
committed by GitHub
parent 255cc868e4
commit 4a081109bd
35 changed files with 612 additions and 1892 deletions
+16 -1
View File
@@ -1,6 +1,21 @@
#ifndef D_A_D_A_NO_CHG_ROOM_H
#define D_A_D_A_NO_CHG_ROOM_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class daNocrm_c : public fopAc_ac_c {
public:
/* 801452DC */ int execute();
/* 80145508 */ int getRoomNo(int);
inline int create();
s8 getReadRoomId() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getScaleType() { return fopAcM_GetParamBit(this, 8, 4); }
/* 0x568 */ Mtx mMtx;
/* 0x598 */ Mtx mInvMtx;
/* 0x5C8 */ s8 mRoomNo[2];
/* 0x5CA */ bool mRoomLoading;
};
#endif /* D_A_D_A_NO_CHG_ROOM_H */
+1
View File
@@ -830,6 +830,7 @@ public:
static void setRoomReadId(s8 id) { data_804505F0 = id; }
static s8 getRoomReadId() { return data_804505F0; }
static void offNoChangeRoom() { mNoChangeRoom = false; }
static void onNoChangeRoom() { mNoChangeRoom = true; }
static void setProcID(u32 id) { mProcID = id; }
static u32 getProcID() { return mProcID; }
static void setStatusProcID(int i_roomNo, unsigned int i_id) { mStatus[i_roomNo].mProcID = i_id; }
+52 -52
View File
@@ -207,108 +207,108 @@ extern dScnPly_reg_HIO_c g_regHIO;
#define tREG_S(i) g_regHIO.mChildReg[25].mShortReg[i]
#else
// Morita
#define TREG_F(i)
#define TREG_S(i)
#define TREG_F(i) (0)
#define TREG_S(i) (0)
// Matsutani
#define DREG_F(i)
#define DREG_S(i)
#define DREG_F(i) (0)
#define DREG_S(i) (0)
// Iwawaki
#define IREG_F(i)
#define IREG_S(i)
#define IREG_F(i) (0)
#define IREG_S(i) (0)
// Sasa
#define SREG_F(i)
#define SREG_S(i)
#define SREG_F(i) (0)
#define SREG_S(i) (0)
// Umemiya
#define UREG_F(i)
#define UREG_S(i)
#define UREG_F(i) (0)
#define UREG_S(i) (0)
// Ogawa
#define OREG_F(i)
#define OREG_S(i)
#define OREG_F(i) (0)
#define OREG_S(i) (0)
// Sakaguchi
#define YREG_F(i)
#define YREG_S(i)
#define YREG_F(i) (0)
#define YREG_S(i) (0)
// Sakai
#define KREG_F(i)
#define KREG_S(i)
#define KREG_F(i) (0)
#define KREG_S(i) (0)
// Hara
#define BREG_F(i)
#define BREG_S(i)
#define BREG_F(i) (0)
#define BREG_S(i) (0)
// Sumiyoshi
#define MREG_F(i)
#define MREG_S(i)
#define MREG_F(i) (0)
#define MREG_S(i) (0)
// Takeshita
#define AREG_F(i)
#define AREG_S(i)
#define AREG_F(i) (0)
#define AREG_S(i) (0)
// Yoshida
#define PREG_F(i)
#define PREG_S(i)
#define PREG_F(i) (0)
#define PREG_S(i) (0)
// Noma
#define NREG_F(i)
#define NREG_S(i)
#define NREG_F(i) (0)
#define NREG_S(i) (0)
// Nishiwaki
#define WREG_F(i)
#define WREG_S(i)
#define WREG_F(i) (0)
#define WREG_S(i) (0)
// Masaro
#define JREG_F(i)
#define JREG_S(i)
#define JREG_F(i) (0)
#define JREG_S(i) (0)
// Hayakawa
#define HREG_F(i)
#define HREG_S(i)
#define HREG_F(i) (0)
#define HREG_S(i) (0)
// Sadamoto
#define VREG_F(i)
#define VREG_S(i)
#define VREG_F(i) (0)
#define VREG_S(i) (0)
// Nishikawa
#define XREG_F(i)
#define XREG_S(i)
#define XREG_F(i) (0)
#define XREG_S(i) (0)
// Suzuki
#define ZREG_F(i)
#define ZREG_S(i)
#define ZREG_F(i) (0)
#define ZREG_S(i) (0)
// Nakanishi
#define nREG_F(i)
#define nREG_S(i)
#define nREG_F(i) (0)
#define nREG_S(i) (0)
// Kuwajima
#define kREG_F(i)
#define kREG_S(i)
#define kREG_F(i) (0)
#define kREG_S(i) (0)
// Okajima
#define oREG_F(i)
#define oREG_S(i)
#define oREG_F(i) (0)
#define oREG_S(i) (0)
// Yamazaki
#define yREG_F(i)
#define yREG_S(i)
#define yREG_F(i) (0)
#define yREG_S(i) (0)
// Ashida
#define aREG_F(i)
#define aREG_S(i)
#define aREG_F(i) (0)
#define aREG_S(i) (0)
// Okada
#define hREG_F(i)
#define hREG_S(i)
#define hREG_F(i) (0)
#define hREG_S(i) (0)
// Takahashi
#define tREG_F(i)
#define tREG_S(i)
#define tREG_F(i) (0)
#define tREG_S(i) (0)
#endif
#endif /* D_S_D_S_PLAY_H */
+3 -1
View File
@@ -1,6 +1,7 @@
#ifndef F_OP_ACTOR_H_
#define F_OP_ACTOR_H_
#include "JSystem/JKernel/JKRHeap.h"
#include "d/kankyo/d_kankyo.h"
#include "f_pc/f_pc_leaf.h"
#include "global.h"
@@ -40,6 +41,7 @@ enum fopAc_Group_e {
/* 2 */ fopAc_ENEMY_e,
/* 3 */ fopAc_ENV_e, // is this correct?
/* 4 */ fopAc_NPC_e,
/* 5 */ fopAc_UNK_GROUP_5_e,
};
enum fopAc_Condition_e {
@@ -261,7 +263,7 @@ public:
void setThrowModeDash() { mThrowMode |= 4; }
void setThrowModeThrowRight() { mThrowMode |= 0x10; }
void setThrowModeThrowLeft() { mThrowMode |= 8; }
/* 0x568 */ cXyz mDownPos;
/* 0x574 */ cXyz mHeadLockPos;
/* 0x580 */ J3DModel* mBallModel;
+1
View File
@@ -6,6 +6,7 @@
#include "f_pc/f_pc_draw_priority.h"
#include "f_pc/f_pc_method.h"
#include "f_pc/f_pc_profile.h"
#include "d/d_procname.h"
typedef struct leafdraw_method_class {
/* 0x00 */ process_method_class mBase;
+10 -8
View File
@@ -463,7 +463,7 @@ public:
/* 800126BC */ mDoExt_3Dline_c();
/* 0x00 */ cXyz* field_0x0;
/* 0x04 */ void* field_0x4;
/* 0x04 */ f32* field_0x4;
/* 0x08 */ cXyz* field_0x8;
/* 0x0C */ cXyz* field_0xc;
/* 0x10 */ void* field_0x10;
@@ -475,9 +475,9 @@ public:
class mDoExt_3DlineMat_c {
public:
#ifndef NON_VIRTUAL_3DLINEMAT
virtual int getMaterialID();
virtual void setMaterial();
virtual void draw();
virtual int getMaterialID() = 0;
virtual void setMaterial() = 0;
virtual void draw() = 0;
#else
/* 0x0 */ void* field_0x0;
#endif
@@ -523,14 +523,16 @@ private:
class mDoExt_3DlineMat0_c : public mDoExt_3DlineMat_c {
public:
/* 800125E0 */ void init(u16, u16, int);
/* 800126C0 */ void setMaterial();
/* 80012774 */ void draw();
/* 800125E0 */ int init(u16, u16, int);
/* 80012874 */ void update(int, f32, _GXColor&, u16, dKy_tevstr_c*);
/* 80012E3C */ void update(int, _GXColor&, dKy_tevstr_c*);
/* 80014E84 */ int getMaterialID();
/* 80014E84 */ virtual int getMaterialID();
/* 800126C0 */ virtual void setMaterial();
/* 80012774 */ virtual void draw();
cXyz* getPos(int param_0) { return field_0x18[param_0].field_0x0; }
f32* getSize(int param_0) { return field_0x18[param_0].field_0x4; }
private:
/* 0x08 */ GXColor field_0x8;
@@ -1,6 +1,16 @@
#ifndef D_A_E_BI_LEAF_H
#define D_A_E_BI_LEAF_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class e_bi_leaf_class : public fopEn_enemy_c {
public:
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ u8 field_0x5b4;
/* 0x5B8 */ J3DModel* mpModel;
/* 0x5BC */ s16 mAction;
/* 0x5BE */ s16 mTimer;
/* 0x5C0 */ u8 field_0x5c0[0x5D0 - 0x5C0];
};
#endif /* D_A_E_BI_LEAF_H */
@@ -1,6 +1,15 @@
#ifndef D_A_E_HB_LEAF_H
#define D_A_E_HB_LEAF_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class e_hb_leaf_class : public fopEn_enemy_c {
public:
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ mDoExt_McaMorf* mpMorf;
/* 0x5B8 */ s16 field_0x5b8;
/* 0x5BA */ s8 field_0x5ba;
/* 0x5BC */ unsigned int field_0x5bc;
};
#endif /* D_A_E_HB_LEAF_H */
@@ -1,6 +1,24 @@
#ifndef D_A_E_ST_LINE_H
#define D_A_E_ST_LINE_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
#include "Z2AudioLib/Z2SoundObject.h"
class e_st_line_class : public fopEn_enemy_c {
public:
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ mDoExt_3DlineMat0_c mLine;
/* 0x5D0 */ s16 field_0x5d0;
/* 0x5D2 */ u8 field_0x5D2[0x5DC - 0x5D2];
/* 0x5DC */ cXyz field_0x5dc[64];
/* 0x8DC */ cXyz field_0x8dc[50];
/* 0xB34 */ u8 field_0xB34[0xCC4 - 0xB34];
/* 0xCC4 */ u8 field_0xcc4;
/* 0xCC5 */ u8 field_0xCC5[0xCC6 - 0xCC5];
/* 0xCC6 */ u8 field_0xcc6;
/* 0xCC7 */ u8 field_0xCC7[0xCD4 - 0xCC7];
/* 0xCD4 */ Z2SoundObjSimple mSound;
/* 0xCF4 */ u8 field_0xcf4[0xCF8 - 0xCF4];
};
#endif /* D_A_E_ST_LINE_H */