Skip to content

Commit bbc7944

Browse files
authored
d_a_boomerang / d_a_grass mostly done, d_a_spinner done (#2304)
* d_a_boomerang mostly done * d_a_grass mostly done * d_a_spinner done
1 parent 376a5be commit bbc7944

File tree

21 files changed

+3789
-4965
lines changed

21 files changed

+3789
-4965
lines changed

config/GZ2E01/rels/d_a_grass/symbols.txt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -175,32 +175,32 @@ l_pos = .data:0x00001020; // type:object size:0x3C0 scope:global
175175
l_normal = .data:0x000013E0; // type:object size:0xC scope:global
176176
l_color = .data:0x000013EC; // type:object size:0x14 scope:global
177177
l_texCoord = .data:0x00001400; // type:object size:0xA0 scope:global
178-
l_M_Kusa_9qDL = .data:0x000014A0; // type:object size:0xCB scope:global
179-
l_M_Kusa_9q_cDL = .data:0x00001580; // type:object size:0xCB scope:global
180-
l_M_TenGusaDL = .data:0x00001660; // type:object size:0xD4 scope:global
178+
l_M_Kusa_9qDL = .data:0x000014A0; // type:object size:0xCB scope:global align:32
179+
l_M_Kusa_9q_cDL = .data:0x00001580; // type:object size:0xCB scope:global align:32
180+
l_M_TenGusaDL = .data:0x00001660; // type:object size:0xD4 scope:global align:32
181181
l_Tengusa_matDL = .data:0x00001740; // type:object size:0xA8 scope:global
182182
l_kusa9q_matDL = .data:0x00001800; // type:object size:0xA8 scope:global
183183
l_kusa9q_l4_matDL = .data:0x000018C0; // type:object size:0xA8 scope:global
184184
@4620 = .data:0x00001968; // type:object size:0xC scope:local
185185
l_vtxDescList$4654 = .data:0x00001974; // type:object size:0x28 scope:local
186186
l_vtxAttrFmtList$4655 = .data:0x0000199C; // type:object size:0x50 scope:local
187-
l_J_Ohana00_64TEX = .data:0x00001A00; // type:object size:0x800 scope:global
187+
l_J_Ohana00_64TEX = .data:0x00001A00; // type:object size:0x800 scope:global align:32
188188
l_flowerPos = .data:0x00002200; // type:object size:0x2C4 scope:global
189189
l_flowerNormal = .data:0x000024C4; // type:object size:0xB4 scope:global
190190
l_flowerColor = .data:0x00002578; // type:object size:0x8 scope:global
191191
l_flowerTexCoord = .data:0x00002580; // type:object size:0x138 scope:global
192-
l_J_hana00DL = .data:0x000026C0; // type:object size:0x150 scope:global
193-
l_J_hana00_cDL = .data:0x00002820; // type:object size:0xDE scope:global
192+
l_J_hana00DL = .data:0x000026C0; // type:object size:0x150 scope:global align:32
193+
l_J_hana00_cDL = .data:0x00002820; // type:object size:0xDE scope:global align:32
194194
l_matDL = .data:0x00002900; // type:object size:0x99 scope:global
195195
l_matLight4DL = .data:0x000029A0; // type:object size:0x99 scope:global
196-
l_J_Ohana01_64128_0419TEX = .data:0x00002A40; // type:object size:0x1000 scope:global
196+
l_J_Ohana01_64128_0419TEX = .data:0x00002A40; // type:object size:0x1000 scope:global align:32
197197
l_flowerPos2 = .data:0x00003A40; // type:object size:0x4C8 scope:global
198198
l_flowerNormal2 = .data:0x00003F08; // type:object size:0x120 scope:global
199199
l_flowerColor2 = .data:0x00004028; // type:object size:0x8 scope:global
200200
l_flowerTexCoord2 = .data:0x00004030; // type:object size:0x120 scope:global
201-
l_J_hana01DL = .data:0x00004160; // type:object size:0x138 scope:global
202-
l_J_hana01_c_00DL = .data:0x000042A0; // type:object size:0xDE scope:global
203-
l_J_hana01_c_01DL = .data:0x00004380; // type:object size:0x128 scope:global
201+
l_J_hana01DL = .data:0x00004160; // type:object size:0x138 scope:global align:32
202+
l_J_hana01_c_00DL = .data:0x000042A0; // type:object size:0xDE scope:global align:32
203+
l_J_hana01_c_01DL = .data:0x00004380; // type:object size:0x128 scope:global align:32
204204
l_mat2DL = .data:0x000044C0; // type:object size:0x99 scope:global
205205
l_mat2Light4DL = .data:0x00004560; // type:object size:0x99 scope:global
206206
@5875 = .data:0x000045FC; // type:object size:0xC scope:local data:4byte

config/GZ2E01/rels/d_a_spinner/symbols.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ _unresolved = .text:0x00000058; // type:function size:0x20 scope:global
44
__register_global_object = .text:0x00000078; // type:function size:0x1C scope:global
55
__destroy_global_chain = .text:0x00000094; // type:function size:0x58 scope:global
66
createHeap__11daSpinner_cFv = .text:0x000000EC; // type:function size:0xC4 scope:global
7-
daSpinner_createHeap__FP10fopAc_ac_c = .text:0x000001B0; // type:function size:0x20 scope:global
7+
daSpinner_createHeap__FP10fopAc_ac_c = .text:0x000001B0; // type:function size:0x20 scope:local
88
create__11daSpinner_cFv = .text:0x000001D0; // type:function size:0x2F0 scope:global
99
__dt__8cM3dGCylFv = .text:0x000004C0; // type:function size:0x48 scope:global
1010
__dt__8cM3dGAabFv = .text:0x00000508; // type:function size:0x48 scope:global
@@ -13,9 +13,9 @@ __dt__4cXyzFv = .text:0x000005AC; // type:function size:0x3C scope:global
1313
__dt__13dBgS_LinkAcchFv = .text:0x000005E8; // type:function size:0x70 scope:global
1414
__dt__12dBgS_AcchCirFv = .text:0x00000658; // type:function size:0x70 scope:global
1515
__dt__12J3DFrameCtrlFv = .text:0x000006C8; // type:function size:0x48 scope:global
16-
daSpinner_Create__FP10fopAc_ac_c = .text:0x00000710; // type:function size:0x20 scope:global
16+
daSpinner_Create__FP10fopAc_ac_c = .text:0x00000710; // type:function size:0x20 scope:local
1717
__dt__11daSpinner_cFv = .text:0x00000730; // type:function size:0x1E8 scope:global
18-
daSpinner_Delete__FP11daSpinner_c = .text:0x00000918; // type:function size:0x28 scope:global
18+
daSpinner_Delete__FP11daSpinner_c = .text:0x00000918; // type:function size:0x28 scope:local
1919
setRoomInfo__11daSpinner_cFv = .text:0x00000940; // type:function size:0x98 scope:global
2020
setMatrix__11daSpinner_cFv = .text:0x000009D8; // type:function size:0xA8 scope:global
2121
setEffect__11daSpinner_cFv = .text:0x00000A80; // type:function size:0x2D4 scope:global
@@ -32,9 +32,9 @@ checkPathMove__11daSpinner_cFv = .text:0x00001ED4; // type:function size:0x5EC s
3232
setSpreadEffect__11daSpinner_cFv = .text:0x000024C0; // type:function size:0x1B4 scope:global
3333
clearSpreadEffect__11daSpinner_cFv = .text:0x00002674; // type:function size:0x78 scope:global
3434
execute__11daSpinner_cFv = .text:0x000026EC; // type:function size:0xC08 scope:global
35-
daSpinner_Execute__FP11daSpinner_c = .text:0x000032F4; // type:function size:0x20 scope:global
35+
daSpinner_Execute__FP11daSpinner_c = .text:0x000032F4; // type:function size:0x20 scope:local
3636
draw__11daSpinner_cFv = .text:0x00003314; // type:function size:0x154 scope:global
37-
daSpinner_Draw__FP11daSpinner_c = .text:0x00003468; // type:function size:0x20 scope:global
37+
daSpinner_Draw__FP11daSpinner_c = .text:0x00003468; // type:function size:0x20 scope:local
3838
__dt__10cCcD_GSttsFv = .text:0x00003488; // type:function size:0x48 scope:global
3939
@36@__dt__13dBgS_LinkAcchFv = .text:0x000034D0; // type:function size:0x8 scope:local
4040
@20@__dt__13dBgS_LinkAcchFv = .text:0x000034D8; // type:function size:0x8 scope:local
@@ -90,8 +90,8 @@ effName$5299 = .rodata:0x000000D8; // type:object size:0x4 scope:local
9090
@5723 = .rodata:0x00000108; // type:object size:0x4 scope:local
9191
@5724 = .rodata:0x0000010C; // type:object size:0x4 scope:local
9292
@stringBase0 = .rodata:0x00000110; // type:object size:0x8 scope:local data:string_table
93-
l_cylSrc = .data:0x00000000; // type:object size:0x44 scope:global
94-
l_daSpinner_Method = .data:0x00000044; // type:object size:0x20 scope:global
93+
l_cylSrc = .data:0x00000000; // type:object size:0x44 scope:local
94+
l_daSpinner_Method = .data:0x00000044; // type:object size:0x20 scope:local
9595
g_profile_SPINNER = .data:0x00000064; // type:object size:0x30 scope:global
9696
__vt__8cM3dGPla = .data:0x00000094; // type:object size:0xC scope:global
9797
__vt__8cM3dGLin = .data:0x000000A0; // type:object size:0xC scope:global

configure.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1486,7 +1486,7 @@ def MatchingFor(*versions):
14861486
ActorRel(Equivalent, "d_a_nbomb"), # weak func order
14871487
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_life_container"),
14881488
ActorRel(NonMatching, "d_a_obj_yousei"),
1489-
ActorRel(NonMatching, "d_a_spinner"),
1489+
ActorRel(MatchingFor("GZ2E01"), "d_a_spinner"),
14901490
ActorRel(MatchingFor("GZ2E01"), "d_a_suspend"),
14911491
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_attention"),
14921492
ActorRel(MatchingFor("GZ2E01"), "d_a_alldie"),

include/SSystem/SComponent/c_counter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
struct counter_class {
77
u32 mCounter0;
88
s32 mCounter1;
9-
s32 mTimer;
9+
u32 mTimer;
1010
};
1111

1212
extern counter_class g_Counter;

include/d/actor/d_a_alink.h

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3555,6 +3555,40 @@ class daAlink_c : public daPy_py_c {
35553555
mDoMtx_multVec(getRightHandMatrix(), &m_handRightInSidePos, o_pos);
35563556
}
35573557

3558+
cXyz* getLineTopPosP() {
3559+
return mSight.getPosP();
3560+
}
3561+
3562+
cXyz* getBoomerangLockPosP() {
3563+
return &mHeldItemRootPos;
3564+
}
3565+
3566+
BOOL boomerangLockTrigger() {
3567+
return itemActionTrigger();
3568+
}
3569+
3570+
BOOL checkBoomerangLockTrigger() {
3571+
return boomerangLockTrigger();
3572+
}
3573+
3574+
BOOL checkDemoSpinnerKeep() const {
3575+
return mDemo.getDemoMode() == 14 && mDemo.getParam0() == 1;
3576+
}
3577+
3578+
BOOL checkDemoSpinnerKeepSpeed() const {
3579+
return mDemo.getDemoMode() == 14 && mDemo.getParam0() == 2;
3580+
}
3581+
3582+
bool checkSpinnerRideOwn(const fopAc_ac_c* param_0) {
3583+
return checkSpinnerRide() && mRideAcKeep.getActorConst() == param_0;
3584+
}
3585+
3586+
BOOL checkSpinnerReady() const { return mProcID == PROC_SPINNER_READY; }
3587+
3588+
BOOL checkGameOverWindow() const { return mProcID == PROC_DEAD && field_0x3478 < 0.01f; }
3589+
3590+
f32 getSlideLimit() const { return field_0x3470; }
3591+
35583592
inline bool checkWindSpeedOnXZ() const;
35593593
inline void startRestartRoomFromOut(int, u32, int);
35603594
inline u16 getReadyItem();

include/d/actor/d_a_boomerang.h

Lines changed: 91 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -5,56 +5,58 @@
55
#include "d/d_particle_copoly.h"
66
#include "f_op/f_op_actor_mng.h"
77

8-
class daBoomerang_sight_c {
8+
#define BOOMERANG_LOCK_MAX 5
9+
10+
class daBoomerang_sight_c : public dDlst_base_c {
911
public:
1012
/* 8049E0B8 */ int createHeap();
1113
/* 8049E36C */ void initialize();
1214
/* 8049EB64 */ int playAnime(int, int);
1315
/* 8049EDA8 */ void initFrame(int);
1416
/* 8049EDE8 */ void copyNumData(int);
1517
/* 8049EEC8 */ void setSight(cXyz const*, int);
16-
/* 8049EF60 */ void draw();
1718

18-
/* 804A278C */ virtual ~daBoomerang_sight_c();
19+
/* 8049EF60 */ virtual void draw();
20+
/* 804A278C */ virtual ~daBoomerang_sight_c() {}
1921

2022
u8 getReserve() const { return mReserve; }
21-
u8 getAlpha(int i_index) { return mAlpha[i_index]; }
22-
void offRedSight() { mRedSight = false; }
23+
u8 getAlpha(int i_index) { return m_alpha[i_index]; }
24+
void offRedSight() { m_redSight = false; }
2325
void onReserve() { mReserve = 1; }
2426
void offReserve() { mReserve = 0; }
2527

2628
private:
27-
/* 0x04 */ J2DScreen* field_0x4;
28-
/* 0x08 */ J2DPane* field_0x8;
29-
/* 0x0C */ J2DPane* field_0xc;
30-
/* 0x10 */ J2DPane* field_0x10;
31-
/* 0x14 */ J2DPane* field_0x14;
32-
/* 0x18 */ J2DAnmTevRegKey* field_0x18;
33-
/* 0x1C */ J2DAnmTevRegKey* field_0x1c;
34-
/* 0x20 */ J2DScreen* field_0x20;
35-
/* 0x24 */ J2DPane* field_0x24;
36-
/* 0x28 */ J2DPane* field_0x28;
37-
/* 0x2C */ J2DPane* field_0x2c;
38-
/* 0x30 */ J2DPane* field_0x30;
39-
/* 0x34 */ J2DAnmTevRegKey* field_0x34;
40-
/* 0x38 */ J2DAnmTevRegKey* field_0x38;
41-
/* 0x3C */ J2DScreen* field_0x3c;
42-
/* 0x40 */ J2DPane* field_0x40;
43-
/* 0x44 */ J2DPane* field_0x44;
44-
/* 0x48 */ J2DPane* field_0x48;
45-
/* 0x4C */ J2DPane* field_0x4c;
46-
/* 0x50 */ J2DAnmTevRegKey* field_0x50;
47-
/* 0x54 */ J2DAnmTevRegKey* field_0x54;
48-
/* 0x58 */ J2DAnmColor* field_0x58;
49-
/* 0x5C */ J2DAnmTransform* field_0x5c;
50-
/* 0x60 */ bool mRedSight;
29+
/* 0x04 */ J2DScreen* m_cursorYellowScrn;
30+
/* 0x08 */ J2DPane* m_cursorYellowAllPane;
31+
/* 0x0C */ J2DPane* m_cursorYellow0Pane;
32+
/* 0x10 */ J2DPane* m_cursorYellow1Pane;
33+
/* 0x14 */ J2DPane* m_cursorYellow2Pane;
34+
/* 0x18 */ J2DAnmTevRegKey* m_cursorYellow2Brk;
35+
/* 0x1C */ J2DAnmTevRegKey* m_cursorYellowBrk;
36+
/* 0x20 */ J2DScreen* m_cursorRedScrn;
37+
/* 0x24 */ J2DPane* m_cursorRedAllPane;
38+
/* 0x28 */ J2DPane* m_cursorRed0Pane;
39+
/* 0x2C */ J2DPane* m_cursorRed1Pane;
40+
/* 0x30 */ J2DPane* m_cursorRed2Pane;
41+
/* 0x34 */ J2DAnmTevRegKey* m_cursorRed2Brk;
42+
/* 0x38 */ J2DAnmTevRegKey* m_cursorRedBrk;
43+
/* 0x3C */ J2DScreen* m_cursorOrangeScrn;
44+
/* 0x40 */ J2DPane* m_cursorOrangeAllPane;
45+
/* 0x44 */ J2DPane* m_cursorOrange0Pane;
46+
/* 0x48 */ J2DPane* m_cursorOrange1Pane;
47+
/* 0x4C */ J2DPane* m_cursorOrange2Pane;
48+
/* 0x50 */ J2DAnmTevRegKey* m_cursorOrange2Brk;
49+
/* 0x54 */ J2DAnmTevRegKey* m_cursorOrangeBrk;
50+
/* 0x58 */ J2DAnmColor* m_cursorYellowBpk;
51+
/* 0x5C */ J2DAnmTransform* m_cursorYellowBck;
52+
/* 0x60 */ bool m_redSight;
5153
/* 0x61 */ u8 mReserve;
52-
/* 0x62 */ u8 mAlpha[6];
53-
/* 0x68 */ f32 field_0x68[6];
54-
/* 0x80 */ f32 field_0x80[6];
54+
/* 0x62 */ u8 m_alpha[6];
55+
/* 0x68 */ f32 m_proj_posX[6];
56+
/* 0x80 */ f32 m_proj_posY[6];
5557
/* 0x98 */ f32 field_0x98[6];
5658
/* 0xB0 */ f32 field_0xb0[6];
57-
/* 0xC8 */ cXyz field_0xc8[6];
59+
/* 0xC8 */ cXyz m_pos[6];
5860
}; // Size: 0x110
5961

6062
class daAlink_c;
@@ -70,10 +72,16 @@ class daAlink_c;
7072
class daBoomerang_c : public fopAc_ac_c {
7173
public:
7274
enum daBoomerang_FLG0 {
73-
/* 0x001 */ FLG0_1 = 0x001,
74-
/* 0x004 */ FLG0_UNK = 0x004,
75-
/* 0x010 */ FLG0_10 = 0x010,
76-
/* 0x200 */ FLG0_0x200 = 0x200,
75+
/* 0x001 */ FLG0_1 = 0x1,
76+
/* 0x002 */ FLG0_2 = 0x2,
77+
/* 0x004 */ FLG0_4 = 0x4,
78+
/* 0x010 */ FLG0_10 = 0x10,
79+
/* 0x020 */ FLG0_20 = 0x20,
80+
/* 0x040 */ FLG0_40 = 0x40,
81+
/* 0x080 */ FLG0_80 = 0x80,
82+
/* 0x100 */ FLG0_100 = 0x100,
83+
/* 0x200 */ FLG0_200 = 0x200,
84+
/* 0x400 */ FLG0_400 = 0x400,
7785
/* 0x800 */ FLG0_LOCK_DIST_CANCEL = 0x800,
7886
/* 0x080 */ WIND_CATCH = 0x80,
7987
};
@@ -95,85 +103,86 @@ class daBoomerang_c : public fopAc_ac_c {
95103
/* 8049FE6C */ void checkBgHit(cXyz*, cXyz*);
96104
/* 804A006C */ JPABaseEmitter* setEffectTraceMatrix(u32*, u16);
97105
/* 804A012C */ void setEffect();
98-
/* 804A0874 */ void procWait();
99-
/* 804A0F0C */ void procMove();
106+
/* 804A0874 */ int procWait();
107+
/* 804A0F0C */ int procMove();
100108
/* 804A1814 */ int execute();
101109
/* 804A1BF4 */ ~daBoomerang_c();
102110
/* 804A1EE4 */ int createHeap();
103111
/* 804A2084 */ int create();
104112
/* 804A230C */ daBoomerang_c();
105113

106-
u32 checkStateFlg0(daBoomerang_FLG0 i_flag) { return mStateFlg0 & i_flag; }
107-
void onStateFlg0(daBoomerang_FLG0 flag) { mStateFlg0 |= flag; }
114+
u32 checkStateFlg0(daBoomerang_FLG0 i_flag) const { return m_stateFlg0 & i_flag; }
115+
void onStateFlg0(daBoomerang_FLG0 flag) { m_stateFlg0 |= flag; }
116+
void offStateFlg0(daBoomerang_FLG0 flag) { m_stateFlg0 &= ~flag; }
108117
void onWindCatch() { onStateFlg0(WIND_CATCH); }
109-
bool checkForceDelete() const { return mForceDelete; }
110-
void onForceDelete() { mForceDelete = true; }
118+
bool checkForceDelete() const { return m_forceDelete; }
119+
void onForceDelete() { m_forceDelete = true; }
111120
bool checkCharge() const { return true; }
112121
void setThrow() { fopAcM_SetParam(this, 1); }
113-
void setAimActor(fopAc_ac_c* i_actor) { (this->*mpSetAimActorFn)(i_actor); }
114-
void cancelLockActor(fopAc_ac_c* i_actor) { (this->*mpCancelLockActorFn)(i_actor); }
115-
u8 getLockReserve() const { return mSight.getReserve(); }
116-
bool getLockCntMax() { return mLockCnt >= 5; }
122+
void setAimActor(fopAc_ac_c* i_actor) { (this->*m_setAimActorFn)(i_actor); }
123+
void cancelLockActor(fopAc_ac_c* i_actor) { (this->*m_cancelLockActorFn)(i_actor); }
124+
u8 getLockReserve() const { return m_sight.getReserve(); }
125+
bool getLockCntMax() { return m_lockCnt >= BOOMERANG_LOCK_MAX; }
117126
void onLockDistanceCancel() { onStateFlg0(FLG0_LOCK_DIST_CANCEL); }
118127

119128
private:
120-
/* 0x568 */ J3DModel* field_0x568;
121-
/* 0x56C */ J3DModel* field_0x56c;
129+
/* 0x568 */ J3DModel* mp_boomModel;
130+
/* 0x56C */ J3DModel* mp_shippuModel;
122131
/* 0x570 */ J3DAnmTextureSRTKey* m_windBtk;
123-
/* 0x574 */ mDoExt_bckAnm mBck;
124-
/* 0x590 */ J3DModel* field_0x590;
132+
/* 0x574 */ mDoExt_bckAnm m_shippuBck;
133+
/* 0x590 */ J3DModel* mp_setboomEfModel;
125134
/* 0x594 */ J3DAnmTextureSRTKey* m_waitEffBtk;
126-
/* 0x598 */ daBoomerang_sight_c mSight;
127-
/* 0x6A8 */ s32 field_0x6a8;
128-
/* 0x6AC */ s32 field_0x6ac[5];
129-
/* 0x6C0 */ fopAc_ac_c* mLockActors[5]; // Actors corresponding to the five target points
130-
/* 0x6D4 */ u32 field_0x6d4;
135+
/* 0x598 */ daBoomerang_sight_c m_sight;
136+
/* 0x6A8 */ fpc_ProcID m_lockLineActorID;
137+
/* 0x6AC */ fpc_ProcID m_lockActorIDs[BOOMERANG_LOCK_MAX];
138+
/* 0x6C0 */ fopAc_ac_c* m_lockActors[BOOMERANG_LOCK_MAX]; // Actors corresponding to the five target points
139+
/* 0x6D4 */ fpc_ProcID field_0x6d4;
131140
/* 0x6D8 */ fopAc_ac_c* field_0x6d8;
132-
/* 0x6DC */ cXyz mLockActorsPositions[5];
133-
/* 0x718 */ u8 field_0x718[5];
134-
/* 0x720 */ Z2SoundObjSimple field_0x720;
135-
/* 0x740 */ dBgS_Acch field_0x740;
136-
/* 0x918 */ dPaPo_c field_0x918;
137-
/* 0x950 */ u8 mLockCnt;
141+
/* 0x6DC */ cXyz m_lockActorsPositions[BOOMERANG_LOCK_MAX];
142+
/* 0x718 */ u8 field_0x718[BOOMERANG_LOCK_MAX];
143+
/* 0x720 */ Z2SoundObjSimple m_sound;
144+
/* 0x740 */ dBgS_ObjAcch m_acch;
145+
/* 0x918 */ dPaPo_c m_papo;
146+
/* 0x950 */ u8 m_lockCnt;
138147
/* 0x951 */ u8 field_0x951;
139148
/* 0x952 */ u8 field_0x952;
140-
/* 0x953 */ u8 field_0x953;
149+
/* 0x953 */ s8 m_reverb;
141150
/* 0x954 */ u8 field_0x954;
142151
/* 0x955 */ u8 field_0x955;
143-
/* 0x956 */ bool mForceDelete;
152+
/* 0x956 */ bool m_forceDelete;
144153
/* 0x957 */ u8 field_0x957;
145154
/* 0x958 */ s16 field_0x958;
146-
/* 0x95A */ s16 field_0x95a;
155+
/* 0x95A */ s16 m_modelRotY;
147156
/* 0x95C */ s16 field_0x95c;
148157
/* 0x95E */ s16 field_0x95e;
149158
/* 0x960 */ s16 field_0x960;
150159
/* 0x962 */ s16 field_0x962;
151-
/* 0x964 */ u32 mStateFlg0;
160+
/* 0x964 */ u32 m_stateFlg0;
152161
/* 0x968 */ u32 field_0x968;
153162
/* 0x96C */ u32 field_0x96c;
154163
/* 0x970 */ u32 field_0x970;
155164
/* 0x974 */ u32 field_0x974;
156165
/* 0x978 */ u32 field_0x978;
157166
/* 0x97C */ u32 field_0x97c;
158-
/* 0x980 */ f32 field_0x980;
159-
/* 0x984 */ f32 field_0x984;
167+
/* 0x980 */ f32 mGroundY;
168+
/* 0x984 */ f32 m_lockLineSqdist;
160169
/* 0x988 */ f32 field_0x988;
161-
/* 0x98C */ f32 field_0x98c;
162-
/* 0x990 */ cXyz field_0x990;
170+
/* 0x98C */ f32 m_shippuFrame;
171+
/* 0x990 */ cXyz m_aimPos;
163172
/* 0x99C */ cXyz field_0x99c;
164-
/* 0x9A8 */ f32 field_0x9a8;
165-
/* 0x9AC */ cXyz field_0x9ac;
173+
/* 0x9A8 */ f32 m_shippuSize;
174+
/* 0x9AC */ cXyz m_moveTargetPos;
166175
/* 0x9B8 */ cXyz field_0x9b8;
167-
/* 0x9C4 */ cXyz field_0x9c4;
168-
/* 0x9D0 */ dCcD_Stts field_0x9d0;
169-
/* 0xA0C */ dCcD_Cps field_0xa0c;
170-
/* 0xB50 */ dCcD_Cyl field_0xb50;
171-
/* 0xC8C */ dBgS_BoomerangLinChk field_0xc8c;
172-
/* 0xCFC */ dBgS_ObjLinChk field_0xcfc;
173-
/* 0xD6C */ dBgS_ObjGndChk field_0xd6c;
174-
/* 0xDC0 */ int (daBoomerang_c::*mpProcFn)();
175-
/* 0xDCC */ void (daBoomerang_c::*mpSetAimActorFn)(fopAc_ac_c*);
176-
/* 0xDD8 */ void (daBoomerang_c::*mpCancelLockActorFn)(fopAc_ac_c*);
176+
/* 0x9C4 */ cXyz m_movePos;
177+
/* 0x9D0 */ dCcD_Stts m_colliderStts;
178+
/* 0xA0C */ dCcD_Cps m_atCps;
179+
/* 0xB50 */ dCcD_Cyl m_windAtCyl;
180+
/* 0xC8C */ dBgS_BoomerangLinChk m_boomLineChk;
181+
/* 0xCFC */ dBgS_ObjLinChk m_lineChk;
182+
/* 0xD6C */ dBgS_ObjGndChk m_gndChk;
183+
/* 0xDC0 */ int (daBoomerang_c::*m_procFn)();
184+
/* 0xDCC */ void (daBoomerang_c::*m_setAimActorFn)(fopAc_ac_c*);
185+
/* 0xDD8 */ void (daBoomerang_c::*m_cancelLockActorFn)(fopAc_ac_c*);
177186
};
178187

179188
STATIC_ASSERT(sizeof(daBoomerang_c) == 0xDE4);
@@ -188,5 +197,4 @@ class daBoomerang_HIO_c0 {
188197
static f32 const m_lockWindScale;
189198
};
190199

191-
192200
#endif /* D_A_BOOMERANG_H */

0 commit comments

Comments
 (0)