Skip to content

Commit 847a5e9

Browse files
authored
d_a_obj_mkie - matching retail (#931)
* d_a_obj_mkie - matching * review changes
1 parent ca9481d commit 847a5e9

File tree

3 files changed

+436
-74
lines changed

3 files changed

+436
-74
lines changed

configure.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1725,7 +1725,7 @@ def EquivalentFor(*versions):
17251725
ActorRel(NonMatching, "d_a_obj_kanoke"),
17261726
ActorRel(Matching, "d_a_obj_ladder"),
17271727
ActorRel(NonMatching, "d_a_obj_light"),
1728-
ActorRel(NonMatching, "d_a_obj_mkie"),
1728+
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_mkie"),
17291729
ActorRel(Matching, "d_a_obj_mkiek"),
17301730
ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_mknjd"),
17311731
ActorRel(NonMatching, "d_a_obj_mmrr"),

include/d/actor/d_a_obj_mkie.h

Lines changed: 85 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -2,52 +2,93 @@
22
#define D_A_OBJ_MKIE_H
33

44
#include "d/d_bg_s_movebg_actor.h"
5+
#include "m_Do/m_Do_ext.h"
56

67
namespace daObjMkie {
7-
class Act_c : public dBgS_MoveBgActor {
8-
public:
9-
static u32 prm_make(u8 eventId, int swNo) {
10-
return swNo << 0x10 | (eventId | 0x3000);
11-
}
12-
13-
void setup(const cXyz* pos) {
14-
current.pos = *pos;
15-
mF58 = 1;
16-
}
17-
void attr() const {}
18-
void prm_get_correct() const {}
19-
void prm_get_evId() const {}
20-
void prm_get_swSave() const {}
21-
void prm_get_type() const {}
22-
23-
virtual BOOL CreateHeap();
24-
void init_cc();
25-
void set_cc_pos();
26-
virtual BOOL Create();
27-
cPhs_State Mthd_Create();
28-
virtual BOOL Delete();
29-
BOOL Mthd_Delete();
30-
void set_mtx();
31-
void init_mtx();
32-
void chk_light();
33-
void eff_break();
34-
void sound_melt();
35-
void sound_break();
36-
void vib_break();
37-
void mode_wait();
38-
void mode_demoWait_init();
39-
void mode_demoWait();
40-
void mode_demo_init();
41-
void mode_demo();
42-
void mode_proc_call();
43-
virtual BOOL Execute(Mtx**);
44-
virtual BOOL Draw();
45-
46-
public:
47-
/* 0x2C8 */ u8 m2C8[0xF58 - 0x2C8];
48-
/* 0xF58 */ u8 mF58;
49-
/* 0xF59 */ u8 mF59[0xF64 - 0xF59];
8+
class Act_c : public dBgS_MoveBgActor {
9+
public:
10+
static Mtx M_tmp_mtx;
11+
static u32 prm_make(u8 eventId, int swNo) { return swNo << 0x10 | (eventId | 0x3000); };
12+
13+
void setup(const cXyz* pos) {
14+
current.pos = *pos;
15+
mCcInit = 1;
16+
};
17+
18+
struct Attr_c {
19+
const char* name;
20+
float mScale;
21+
Vec table[8][3];
5022
};
51-
};
23+
24+
enum Prm_e {
25+
PRM_CORRECT_W = 0x01,
26+
PRM_CORRECT_S = 0xc,
27+
28+
PRM_EVID_W = 0x08,
29+
PRM_EVID_S = 0x0,
30+
31+
PRM_SWSAVE_W = 0x08,
32+
PRM_SWSAVE_S = 0x10,
33+
34+
PRM_TYPE_W = 0x01,
35+
PRM_TYPE_S = 0x08,
36+
37+
PRM_FLAG_W = 0x01,
38+
PRM_FLAG_S = 0x0d,
39+
};
40+
41+
BOOL prm_get_correct() const { return daObj::PrmAbstract<Prm_e>(this, PRM_CORRECT_W, PRM_CORRECT_S); }
42+
u8 prm_get_evId() const { return daObj::PrmAbstract<Prm_e>(this, PRM_EVID_W, PRM_EVID_S); }
43+
int prm_get_swSave() const { return daObj::PrmAbstract<Prm_e>(this, PRM_SWSAVE_W, PRM_SWSAVE_S); }
44+
int prm_get_type() const { return daObj::PrmAbstract<Prm_e>(this, PRM_TYPE_W, PRM_TYPE_S); }
45+
46+
virtual BOOL CreateHeap();
47+
void init_cc();
48+
void set_cc_pos();
49+
virtual BOOL Create();
50+
cPhs_State Mthd_Create();
51+
virtual BOOL Delete();
52+
BOOL Mthd_Delete();
53+
void set_mtx();
54+
void init_mtx();
55+
BOOL chk_light();
56+
void eff_break();
57+
void sound_melt();
58+
void sound_break();
59+
void vib_break();
60+
void mode_wait();
61+
void mode_demoWait_init();
62+
void mode_demoWait();
63+
void mode_demo_init();
64+
void mode_demo();
65+
void mode_proc_call();
66+
virtual BOOL Execute(Mtx**);
67+
virtual BOOL Draw();
68+
69+
static const char M_arcname[];
70+
static const dCcD_SrcTri M_tri_src;
71+
static const Attr_c M_attr[];
72+
73+
public:
74+
/* 0x2C8 */ request_of_phase_process_class mPhs;
75+
/* 0x2D0 */ J3DModel* mModelBase;
76+
/* 0x2D4 */ J3DModel* mModelVan;
77+
/* 0x2D8 */ mDoExt_brkAnm mBrkVan;
78+
/* 0x2F0 */ dCcD_Tri mTri[8];
79+
/* 0xD70 */ dCcD_Stts mStts[8];
80+
/* 0xF50 */ int mModeProc;
81+
/* 0xF54 */ int mType;
82+
/* 0xF58 */ bool mCcInit;
83+
/* 0xF59 */ bool mStatueDelete;
84+
/* 0xF5A */ bool mEvtPlaying;
85+
/* 0xF5B */ bool mBaseAnmPlaying;
86+
/* 0xF5C */ s16 mState;
87+
/* 0xF5E */ s16 mLightCnt;
88+
/* 0xF60 */ s16 mEvtIdx;
89+
/* 0xF62 */ bool mSwitch;
90+
/* 0xF63 */ bool mBroken;
91+
}; // Size: 0xF64
92+
}; // namespace daObjMkie
5293

5394
#endif /* D_A_OBJ_MKIE_H */

0 commit comments

Comments
 (0)