22#define D_A_OBJ_KANBAN2_H
33
44#include " f_op/f_op_actor_mng.h"
5+ #include " d/d_cc_d.h"
6+ #include " d/d_cc_uty.h"
7+ #include " d/d_bg_s_acch.h"
8+ #include " d/d_msg_flow.h"
59
610/* *
711 * @ingroup actors-objects
1317 */
1418class daObj_Kanban2_c : public fopAc_ac_c {
1519public:
16- /* 80581790 */ void draw ();
20+ /* 80581790 */ int draw ();
1721 /* 80581938 */ void setKanbanSE (int );
1822 /* 805819BC */ void createBreakParts (u32 , csXyz);
1923 /* 805819FC */ void createWallHitBreak ();
20- /* 80581B5C */ void getKanbanCutType ();
21- /* 80581C48 */ void getKanbanWolfCutType ();
24+ /* 80581B5C */ int getKanbanCutType ();
25+ /* 80581C48 */ int getKanbanWolfCutType ();
2226 /* 80581D04 */ void damage_check ();
23- /* 8058221C */ void float_damage_check ();
24- /* 805822F0 */ void deletePart ();
25- /* 805825A4 */ void getWallAngle ();
27+ /* 8058221C */ bool float_damage_check ();
28+ /* 805822F0 */ bool deletePart ();
29+ /* 805825A4 */ s16 getWallAngle ();
2630 /* 8058271C */ void setGroundAngle ();
27- /* 80582894 */ void checkWaterSurface ();
28- /* 80582944 */ void checkPataGround (s16, s16);
31+ /* 80582894 */ bool checkWaterSurface ();
32+ /* 80582944 */ bool checkPataGround (s16, s16);
2933 /* 80582A68 */ void setCullMtx ();
3034 /* 80582AAC */ void setSmokeEffect (cXyz);
3135 /* 80582AFC */ void setWaterEffect ();
3236 /* 80582C40 */ void setCenterPos ();
33- /* 80582E68 */ void checkCarryOn ();
37+ /* 80582E68 */ BOOL checkCarryOn ();
3438 /* 80582EF0 */ void setActionMode (int , int );
3539 /* 80582F40 */ void calcNormalSwing ();
3640 /* 80583364 */ void executeNormal ();
@@ -41,21 +45,66 @@ class daObj_Kanban2_c : public fopAc_ac_c {
4145 /* 805849CC */ void action ();
4246 /* 80584AD8 */ void mtx_set ();
4347 /* 80584CFC */ void cc_set ();
44- /* 80584DF0 */ void execute ();
45- /* 80584ED8 */ void _delete ();
46- /* 80584F64 */ void CreateHeap ();
47- /* 805850E8 */ void create ();
48+ /* 80584DF0 */ int execute ();
49+ /* 80584ED8 */ int _delete ();
50+ /* 80584F64 */ int CreateHeap ();
51+ /* 805850E8 */ int create ();
4852
49- private:
50- /* 0x568 */ u8 field_0x568[0xa50 - 0x568 ];
53+ /* 0x568 */ request_of_phase_process_class mPhase ;
54+ /* 0x570 */ J3DModel* mpModel;
55+ /* 0x574 */ J3DModel* mpPartModel[18 ];
56+ /* 0x5BC */ Z2SoundObjSimple mSound ;
57+ /* 0x5DC */ cXyz field_0x5dc;
58+ /* 0x5E8 */ csXyz field_0x5e8;
59+ /* 0x5EE */ csXyz field_0x5ee;
60+ /* 0x5F4 */ csXyz field_0x5f4;
61+ /* 0x5FC */ f32 field_0x5fc;
62+ /* 0x600 */ f32 field_0x600;
63+ /* 0x604 */ f32 field_0x604;
64+ /* 0x608 */ s16 field_0x608;
65+ /* 0x60A */ s16 field_0x60a;
66+ /* 0x60C */ int mAction ;
67+ /* 0x610 */ int mPrevAction ;
68+ /* 0x614 */ int mMode ;
69+ /* 0x618 */ u32 mShadowId ;
70+ /* 0x61C */ u32 mPartFlags ;
71+ /* 0x620 */ u32 field_0x620;
72+ /* 0x624 */ s16 field_0x624;
73+ /* 0x626 */ u8 field_0x626;
74+ /* 0x627 */ u8 field_0x627;
75+ /* 0x628 */ u8 mInvulnerabilityTimer ;
76+ /* 0x629 */ u8 field_0x629;
77+ /* 0x62A */ u8 field_0x62a;
78+ /* 0x62B */ u8 field_0x62b;
79+ /* 0x62C */ u8 field_0x62c;
80+ /* 0x62D */ u8 field_0x62d;
81+ /* 0x62E */ u8 field_0x62e;
82+ /* 0x630 */ dBgS_AcchCir mAcchCir ;
83+ /* 0x670 */ dBgS_ObjAcch mAcch ;
84+ /* 0x848 */ dCcD_Stts mCcStts ;
85+ /* 0x884 */ dCcD_Sph mCcSph ;
86+ /* 0x9BC */ dCcU_AtInfo mAtInfo ;
87+ /* 0x9E0 */ u32 field_0x9e0;
88+ /* 0x9E4 */ u32 field_0x9e4;
89+ /* 0x9E8 */ u32 mWaterEffID [4 ];
90+ /* 0x9F8 */ u32 field_0x9f8;
91+ /* 0x9FC */ u8 mInitHIO ;
92+ /* 0x9FE */ s16 field_0x9fe;
93+ /* 0xA00 */ s16 mFlowID ;
94+ /* 0xA04 */ dMsgFlow_c mMsgFlow ;
5195};
5296
5397STATIC_ASSERT (sizeof (daObj_Kanban2_c) == 0xa50);
5498
55- class daObj_Kanban2_HIO_c {
99+ class daObj_Kanban2_HIO_c : public JORReflexible {
56100public:
57101 /* 8058176C */ daObj_Kanban2_HIO_c();
58- /* 80585578 */ ~daObj_Kanban2_HIO_c ();
102+ /* 80585578 */ virtual ~daObj_Kanban2_HIO_c () {}
103+
104+ void genMessage (JORMContext*);
105+
106+ /* 0x4 */ s8 id;
107+ /* 0x8 */ f32 base_size;
59108};
60109
61110
0 commit comments