Skip to content

Commit 764eb04

Browse files
authored
d_a_obj_sword matching (#2349)
* d_a_obj_sword matching * d_a_obj_sword -- Addressed PR comments
1 parent b6febdc commit 764eb04

File tree

3 files changed

+146
-354
lines changed

3 files changed

+146
-354
lines changed

configure.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2081,7 +2081,7 @@ def MatchingFor(*versions):
20812081
ActorRel(NonMatching, "d_a_obj_swLight"),
20822082
ActorRel(NonMatching, "d_a_obj_swchain"),
20832083
ActorRel(Equivalent, "d_a_obj_swhang"), # vtable order
2084-
ActorRel(NonMatching, "d_a_obj_sword"),
2084+
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_sword"),
20852085
ActorRel(NonMatching, "d_a_obj_swpush2"),
20862086
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swspinner"),
20872087
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swturn"),

include/d/actor/d_a_obj_sword.h

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef D_A_OBJ_SWORD_H
22
#define D_A_OBJ_SWORD_H
33

4-
#include "f_op/f_op_actor_mng.h"
4+
#include "d/actor/d_a_itembase.h"
55

66
/**
77
* @ingroup actors-objects
@@ -11,25 +11,30 @@
1111
* @details
1212
*
1313
*/
14-
class daObjSword_c : public fopAc_ac_c {
14+
class daObjSword_c : public daItemBase_c {
1515
public:
1616
/* 80CFD558 */ void initBaseMtx();
1717
/* 80CFD594 */ void setBaseMtx();
18-
/* 80CFD600 */ void Create();
19-
/* 80CFD67C */ void create();
20-
/* 80CFDA14 */ void actionWait();
21-
/* 80CFDA8C */ void initActionOrderGetDemo();
22-
/* 80CFDB04 */ void actionOrderGetDemo();
23-
/* 80CFDB80 */ void actionGetDemo();
24-
/* 80CFDC1C */ void execute();
25-
/* 80CFDD18 */ void draw();
26-
/* 80CFDD6C */ void _delete();
18+
/* 80CFD600 */ int Create();
19+
/* 80CFD67C */ cPhs__Step create();
20+
/* 80CFDA14 */ int actionWait();
21+
/* 80CFDA8C */ int initActionOrderGetDemo();
22+
/* 80CFDB04 */ int actionOrderGetDemo();
23+
/* 80CFDB80 */ int actionGetDemo();
24+
/* 80CFDC1C */ int execute();
25+
/* 80CFDD18 */ int draw();
26+
/* 80CFDD6C */ int _delete();
27+
28+
u8 getItemBit() { return fopAcM_GetParamBit(this, 0, 8); }
29+
u8 getSwbit() { return fopAcM_GetParamBit(this, 8, 8); }
30+
void setStatus(u8 status) { mStatus = status; }
2731

2832
private:
29-
/* 0x568 */ u8 field_0x568[0x938 - 0x568];
33+
/* 0x92c */ u32 field_0x92c;
34+
/* 0x930 */ fpc_ProcID mProcID;
35+
/* 0x934 */ u8 mStatus;
3036
};
3137

3238
STATIC_ASSERT(sizeof(daObjSword_c) == 0x938);
3339

34-
3540
#endif /* D_A_OBJ_SWORD_H */

0 commit comments

Comments
 (0)