d_a_obj_lv4CandleTag / d_a_obj_lv4EdShutter done, d_a_obj_picture almost (#2755)

This commit is contained in:
TakaRikka 2025-10-23 05:41:00 -07:00 committed by GitHub
parent 9bebc819ab
commit 70eefa53c7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 966 additions and 1371 deletions

View File

@ -748,7 +748,7 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_msg_scrn_tree.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_msg_string_base.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_msg_string.cpp"),
Object(NonMatching, "d/d_msg_flow.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_msg_flow.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01"), "d/d_name.cpp"),
Object(NonMatching, "d/d_npc_lib.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_ovlp_fade.cpp"),
@ -2079,8 +2079,8 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv3saka00"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv3waterEff"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4CandleDemoTag"),
ActorRel(NonMatching, "d_a_obj_lv4CandleTag"),
ActorRel(NonMatching, "d_a_obj_lv4EdShutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4CandleTag"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4EdShutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4Gate"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4HsTarget"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv4PoGate"),

View File

@ -22,11 +22,11 @@ public:
MODE_END,
};
// dalv4CandleTag_c() : dEvLib_callback_c(this) {}
dalv4CandleTag_c() : dEvLib_callback_c(this) {}
~dalv4CandleTag_c() {}
/* 80C5D4B8 */ void setBaseMtx();
/* 80C5D4F0 */ cPhs__Step create();
/* 80C5D4F0 */ int create();
/* 80C5D5D4 */ int Execute();
/* 80C5D618 */ void procMain();
/* 80C5D6D4 */ void init_modeWatch();
@ -58,14 +58,4 @@ public:
STATIC_ASSERT(sizeof(dalv4CandleTag_c) == 0x58C);
class dalv4CandleTag_HIO_c : public mDoHIO_entry_c {
public:
/* 80C5D44C */ dalv4CandleTag_HIO_c();
/* 80C5D9C0 */ ~dalv4CandleTag_HIO_c() {}
void genMessage(JORMContext*);
u8 mTimer;
};
#endif /* D_A_OBJ_LV4CANDLETAG_H */

View File

@ -2,6 +2,8 @@
#define D_A_OBJ_LV4EDSHUTTER_H
#include "f_op/f_op_actor_mng.h"
#include "d/d_bg_s_movebg_actor.h"
#include "d/d_event_lib.h"
/**
* @ingroup actors-objects
@ -11,12 +13,12 @@
* @details
*
*/
class daLv4EdShutter_c : public fopAc_ac_c {
class daLv4EdShutter_c : public dBgS_MoveBgActor, public request_of_phase_process_class, public dEvLib_callback_c {
public:
daLv4EdShutter_c() : dEvLib_callback_c(this) {}
/* 80C5DE38 */ void setBaseMtx();
/* 80C5DEC8 */ void CreateHeap();
/* 80C5DF34 */ void create();
/* 80C5E0A4 */ void Execute(Mtx**);
/* 80C5DF34 */ int create();
/* 80C5E0F4 */ void move();
/* 80C5E1B0 */ void init_modeWait();
/* 80C5E1C8 */ void modeWait();
@ -26,26 +28,38 @@ public:
/* 80C5E518 */ void modeClose();
/* 80C5E584 */ void init_modeEnd();
/* 80C5E590 */ void modeEnd();
/* 80C5E594 */ void eventStart();
/* 80C5E5CC */ void Draw();
/* 80C5E670 */ void Delete();
/* 80C5E834 */ ~daLv4EdShutter_c();
/* 80C5DEC8 */ virtual int CreateHeap();
/* 80C5E0A4 */ virtual int Execute(Mtx**);
/* 80C5E5CC */ virtual int Draw();
/* 80C5E670 */ virtual int Delete();
/* 80C5E834 */ virtual ~daLv4EdShutter_c() {}
/* 80C5E594 */ virtual bool eventStart();
u8 getCloseSw() { return fopAcM_GetParamBit(this, 0, 8); }
u8 getOpenSw() { return fopAcM_GetParamBit(this, 8, 8); }
u8 getWaitTime() { return fopAcM_GetParamBit(this, 16, 8); }
int getEventID() { return fopAcM_GetParamBit(this, 24, 8); }
u8 getZenmetuSw() { return shape_angle.z & 0xFF; }
u8 getStatus() { return mStatus; }
private:
/* 0x568 */ u8 field_0x568[0x5CA - 0x568];
/* 0x5B8 */ request_of_phase_process_class mPhase;
/* 0x5C0 */ J3DModel* mpModel;
/* 0x5C4 */ u8 mMode;
/* 0x5C6 */ u16 mWaitTimer;
/* 0x5C8 */ u8 mOpenSw;
/* 0x5C9 */ u8 mCloseSw;
/* 0x5CA */ u8 mStatus;
/* 0x5CB */ u8 field_0x56B[0x5DC - 0x5CB];
/* 0x5CB */ u8 field_0x5cb;
/* 0x5CC */ u8 mZenmetuSw;
/* 0x5D0 */ f32 mMovePos;
/* 0x5D4 */ u8 field_0x5D4[0x5D8 - 0x5D4];
/* 0x5D8 */ f32 mMoveSpeed;
};
STATIC_ASSERT(sizeof(daLv4EdShutter_c) == 0x5dc);
class daLv4EdShutter_HIO_c {
public:
/* 80C5DDAC */ daLv4EdShutter_HIO_c();
/* 80C5E72C */ ~daLv4EdShutter_HIO_c();
};
#endif /* D_A_OBJ_LV4EDSHUTTER_H */

View File

@ -12,15 +12,15 @@
* @details
*
*/
class daObjPicture_c : public fopAc_ac_c {
class daObjPicture_c : public fopAc_ac_c, public request_of_phase_process_class {
public:
/* 80CAD318 */ daObjPicture_c();
/* 80CAD6C8 */ ~daObjPicture_c();
/* 80CAD908 */ void createHeap();
/* 80CADC18 */ void create();
/* 80CADFB0 */ void Delete();
/* 80CAE05C */ void draw();
/* 80CAE1B8 */ void execute();
/* 80CAD6C8 */ virtual ~daObjPicture_c();
/* 80CAD908 */ int createHeap();
/* 80CADC18 */ int create();
/* 80CADFB0 */ int Delete();
/* 80CAE05C */ int draw();
/* 80CAE1B8 */ int execute();
/* 80CAE510 */ void init();
/* 80CAE5B0 */ void setPicModelMtx();
/* 80CAE638 */ void setTmgModelMtx();
@ -29,15 +29,38 @@ public:
/* 80CAE76C */ void setLinePos();
/* 80CAE8E8 */ void moveLineFall1();
/* 80CAEA60 */ void moveLineFall2();
/* 80CAED28 */ void chkHitRope();
/* 80CAEDDC */ void chkHitBombTg();
/* 80CAED28 */ bool chkHitRope();
/* 80CAEDDC */ bool chkHitBombTg();
/* 80CAEE90 */ void setPicAtCol();
static u8 s_CcDCps[76];
static u8 s_CcDCyl_pic_at[68];
int getArg_0() { return fopAcM_GetParamBit(this, 0, 4); }
int getSW_0() { return fopAcM_GetParamBit(this, 4, 8); }
static dCcD_SrcCps s_CcDCps;
static dCcD_SrcCyl s_CcDCyl_pic_at;
private:
/* 0x568 */ u8 field_0x568[0xda0 - 0x568];
/* 0x574 */ dCcD_Stts field_0x574;
/* 0x5B0 */ dCcD_Stts field_0x5b0;
/* 0x5EC */ dCcD_Stts field_0x5ec;
/* 0x628 */ dCcD_Cps mCps[2];
/* 0x8B0 */ dCcD_Cyl mAtCyl;
/* 0x9EC */ dCcD_Cps mCps2[2];
/* 0xC74 */ u8 field_0xC74[0xC7C - 0xC74];
/* 0xC7C */ cXyz mPicAtPos;
/* 0xC88 */ cXyz field_0xc88;
/* 0xC94 */ Vec field_0xc94;
/* 0xCA0 */ Vec field_0xca0;
/* 0xCAC */ mDoExt_3DlineMat1_c* mpRopeMat[2];
/* 0xCB4 */ J3DModel* mpPicModel;
/* 0xCB8 */ J3DModel* mpRopestModel;
/* 0xCBC */ dBgW* mpBgw[2];
/* 0xCC4 */ Mtx mBgMtx[2];
/* 0xD24 */ u8 field_0xd24;
/* 0xD25 */ u8 field_0xd25;
/* 0xD26 */ u8 field_0xd26;
/* 0xD27 */ u8 field_0xd27;
/* 0xD28 */ Vec field_0xd28[10];
};
STATIC_ASSERT(sizeof(daObjPicture_c) == 0xda0);

View File

@ -1,363 +1,193 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_obj_lv4CandleTag
//
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_lv4CandleTag.h"
#include "dol2asm.h"
//
// Forward References:
//
class dalv4CandleTag_HIO_c : public mDoHIO_entry_c {
public:
/* 80C5D44C */ dalv4CandleTag_HIO_c();
/* 80C5D9C0 */ virtual ~dalv4CandleTag_HIO_c() {}
extern "C" void __ct__20dalv4CandleTag_HIO_cFv();
extern "C" void __dt__14mDoHIO_entry_cFv();
extern "C" void setBaseMtx__16dalv4CandleTag_cFv();
extern "C" void create__16dalv4CandleTag_cFv();
extern "C" void Execute__16dalv4CandleTag_cFv();
extern "C" void procMain__16dalv4CandleTag_cFv();
extern "C" void init_modeWatch__16dalv4CandleTag_cFv();
extern "C" void modeWatch__16dalv4CandleTag_cFv();
extern "C" void init_modeNG__16dalv4CandleTag_cFv();
extern "C" void modeNG__16dalv4CandleTag_cFv();
extern "C" void init_modeNGWait__16dalv4CandleTag_cFv();
extern "C" void modeNGWait__16dalv4CandleTag_cFv();
extern "C" void init_modeEnd__16dalv4CandleTag_cFv();
extern "C" void modeEnd__16dalv4CandleTag_cFv();
extern "C" void eventStart__16dalv4CandleTag_cFv();
extern "C" bool Draw__16dalv4CandleTag_cFv();
extern "C" bool Delete__16dalv4CandleTag_cFv();
extern "C" static void dalv4CandleTag_Draw__FP16dalv4CandleTag_c();
extern "C" static void dalv4CandleTag_Execute__FP16dalv4CandleTag_c();
extern "C" static void dalv4CandleTag_Delete__FP16dalv4CandleTag_c();
extern "C" static void dalv4CandleTag_Create__FP10fopAc_ac_c();
extern "C" void __dt__20dalv4CandleTag_HIO_cFv();
extern "C" void __sinit_d_a_obj_lv4CandleTag_cpp();
extern "C" static void func_80C5DA58();
extern "C" static void func_80C5DA60();
extern "C" void __dt__17dEvLib_callback_cFv();
extern "C" bool eventRun__17dEvLib_callback_cFv();
extern "C" bool eventEnd__17dEvLib_callback_cFv();
extern "C" bool eventStart__17dEvLib_callback_cFv();
extern "C" void __dt__16dalv4CandleTag_cFv();
void genMessage(JORMContext*);
//
// External References:
//
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void offSwitch__10dSv_info_cFii();
extern "C" void isSwitch__10dSv_info_cCFii();
extern "C" void eventUpdate__17dEvLib_callback_cFv();
extern "C" void orderEvent__17dEvLib_callback_cFiii();
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void __dl__FPv();
extern "C" void __ptmf_scall();
extern "C" void _savegpr_28();
extern "C" void _restgpr_28();
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern "C" void __register_global_object();
//
// Declarations:
//
/* 80C5DB84-80C5DB90 -00001 000C+00 0/1 0/0 0/0 .data @3686 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3686[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeWatch__16dalv4CandleTag_cFv,
};
#pragma pop
/* 80C5DB90-80C5DB9C -00001 000C+00 0/1 0/0 0/0 .data @3687 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3687[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeNG__16dalv4CandleTag_cFv,
};
#pragma pop
/* 80C5DB9C-80C5DBA8 -00001 000C+00 0/1 0/0 0/0 .data @3688 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3688[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeNGWait__16dalv4CandleTag_cFv,
};
#pragma pop
/* 80C5DBA8-80C5DBB4 -00001 000C+00 0/1 0/0 0/0 .data @3689 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3689[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeEnd__16dalv4CandleTag_cFv,
};
#pragma pop
/* 80C5DBB4-80C5DBE4 000050 0030+00 0/1 0/0 0/0 .data mode_proc$3685 */
#pragma push
#pragma force_active on
SECTION_DATA static u8 mode_proc[48] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
#pragma pop
/* 80C5DBE4-80C5DC04 -00001 0020+00 1/0 0/0 0/0 .data l_dalv4CandleTag_Method */
SECTION_DATA static void* l_dalv4CandleTag_Method[8] = {
(void*)dalv4CandleTag_Create__FP10fopAc_ac_c,
(void*)dalv4CandleTag_Delete__FP16dalv4CandleTag_c,
(void*)dalv4CandleTag_Execute__FP16dalv4CandleTag_c,
(void*)NULL,
(void*)dalv4CandleTag_Draw__FP16dalv4CandleTag_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 80C5DC04-80C5DC34 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv4Candle */
SECTION_DATA extern void* g_profile_Tag_Lv4Candle[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x01730000, (void*)&g_fpcLf_Method,
(void*)0x0000058C, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x021C0000, (void*)&l_dalv4CandleTag_Method,
(void*)0x00044000, (void*)0x000E0000,
};
/* 80C5DC34-80C5DC5C 0000D0 0028+00 2/2 0/0 0/0 .data __vt__16dalv4CandleTag_c */
SECTION_DATA extern void* __vt__16dalv4CandleTag_c[10] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)NULL,
(void*)NULL,
(void*)func_80C5DA60,
(void*)func_80C5DA58,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
(void*)__dt__16dalv4CandleTag_cFv,
(void*)eventStart__16dalv4CandleTag_cFv,
};
/* 80C5DC5C-80C5DC74 0000F8 0018+00 3/3 0/0 0/0 .data __vt__17dEvLib_callback_c */
SECTION_DATA extern void* __vt__17dEvLib_callback_c[6] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17dEvLib_callback_cFv,
(void*)eventStart__17dEvLib_callback_cFv,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
};
/* 80C5DC74-80C5DC80 000110 000C+00 2/2 0/0 0/0 .data __vt__20dalv4CandleTag_HIO_c */
SECTION_DATA extern void* __vt__20dalv4CandleTag_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__20dalv4CandleTag_HIO_cFv,
};
/* 80C5DC80-80C5DC8C 00011C 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14mDoHIO_entry_cFv,
/* 0x4 */ u8 mTimer;
};
/* 80C5D44C-80C5D470 0000EC 0024+00 1/1 0/0 0/0 .text __ct__20dalv4CandleTag_HIO_cFv */
dalv4CandleTag_HIO_c::dalv4CandleTag_HIO_c() {
// NONMATCHING
}
/* 80C5D470-80C5D4B8 000110 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
// mDoHIO_entry_c::~mDoHIO_entry_c() {
extern "C" void __dt__14mDoHIO_entry_cFv() {
// NONMATCHING
mTimer = 60;
}
/* 80C5D4B8-80C5D4F0 000158 0038+00 2/2 0/0 0/0 .text setBaseMtx__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::setBaseMtx() {
// NONMATCHING
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
}
/* 80C5D4F0-80C5D5D4 000190 00E4+00 1/1 0/0 0/0 .text create__16dalv4CandleTag_cFv */
cPhs__Step dalv4CandleTag_c::create() {
// NONMATCHING
int dalv4CandleTag_c::create() {
fopAcM_ct(this, dalv4CandleTag_c);
setBaseMtx();
mSwTop = getSwTop();
mSwOK = getSwOK();
mSwNG = getSwNG();
mSwTotal = getSwTotal();
if (fopAcM_isSwitch(this, mSwOK)) {
init_modeEnd();
} else {
init_modeWatch();
}
return cPhs_COMPLEATE_e;
}
/* 80C5D5D4-80C5D618 000274 0044+00 1/1 0/0 0/0 .text Execute__16dalv4CandleTag_cFv */
int dalv4CandleTag_c::Execute() {
// NONMATCHING
eventUpdate();
procMain();
setBaseMtx();
return 1;
}
/* ############################################################################################## */
/* 80C5DC98-80C5DCA4 000008 000C+00 1/1 0/0 0/0 .bss @3624 */
static u8 lit_3624[12];
/* 80C5DCA4-80C5DCAC 000014 0008+00 2/2 0/0 0/0 .bss l_HIO */
static u8 l_HIO[8];
/* 80C5DCAC-80C5DCB0 00001C 0004+00 1/1 0/0 0/0 .bss None */
static u8 data_80C5DCAC[4];
static dalv4CandleTag_HIO_c l_HIO;
/* 80C5D618-80C5D6D4 0002B8 00BC+00 1/1 0/0 0/0 .text procMain__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::procMain() {
// NONMATCHING
static void (dalv4CandleTag_c::*mode_proc[])() = {
&dalv4CandleTag_c::modeWatch,
&dalv4CandleTag_c::modeNG,
&dalv4CandleTag_c::modeNGWait,
&dalv4CandleTag_c::modeEnd,
};
(this->*mode_proc[mMode])();
}
/* 80C5D6D4-80C5D6E0 000374 000C+00 2/2 0/0 0/0 .text init_modeWatch__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::init_modeWatch() {
// NONMATCHING
mMode = 0;
}
/* 80C5D6E0-80C5D78C 000380 00AC+00 1/0 0/0 0/0 .text modeWatch__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::modeWatch() {
// NONMATCHING
if (fopAcM_isSwitch(this, mSwOK)) {
init_modeEnd();
} else if (fopAcM_isSwitch(this, mSwNG)) {
if (getEventID() != 0xFF) {
orderEvent(getEventID(), 0xFF, 1);
} else {
eventStart();
}
}
}
/* ############################################################################################## */
/* 80C5DB5C-80C5DB60 000000 0004+00 1/1 0/0 0/0 .rodata @3727 */
SECTION_RODATA static f32 const lit_3727 = 1.0f;
COMPILER_STRIP_GATE(0x80C5DB5C, &lit_3727);
/* 80C5DB60-80C5DB64 000004 0004+00 1/1 0/0 0/0 .rodata @3728 */
SECTION_RODATA static f32 const lit_3728 = -1.0f;
COMPILER_STRIP_GATE(0x80C5DB60, &lit_3728);
/* 80C5D78C-80C5D814 00042C 0088+00 1/1 0/0 0/0 .text init_modeNG__16dalv4CandleTag_cFv
*/
void dalv4CandleTag_c::init_modeNG() {
// NONMATCHING
mTimer = l_HIO.mTimer;
mDoAud_seStart(Z2SE_OBJ_LV4_CNDL_MISS, NULL, 0, 0);
mMode = 1;
}
/* 80C5D814-80C5D8A0 0004B4 008C+00 1/0 0/0 0/0 .text modeNG__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::modeNG() {
// NONMATCHING
if (mTimer != 0) {
mTimer--;
} else {
u8 swbit = mSwTop;
for (int i = 0; i < mSwTotal; i++) {
fopAcM_offSwitch(this, swbit);
swbit++;
}
init_modeNGWait();
}
}
/* 80C5D8A0-80C5D8AC 000540 000C+00 1/1 0/0 0/0 .text init_modeNGWait__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::init_modeNGWait() {
// NONMATCHING
mMode = 2;
}
/* 80C5D8AC-80C5D8FC 00054C 0050+00 1/0 0/0 0/0 .text modeNGWait__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::modeNGWait() {
// NONMATCHING
if (!fopAcM_isSwitch(this, mSwNG)) {
init_modeWatch();
}
}
/* 80C5D8FC-80C5D908 00059C 000C+00 2/2 0/0 0/0 .text init_modeEnd__16dalv4CandleTag_cFv
*/
void dalv4CandleTag_c::init_modeEnd() {
// NONMATCHING
mMode = 3;
}
/* 80C5D908-80C5D90C 0005A8 0004+00 1/0 0/0 0/0 .text modeEnd__16dalv4CandleTag_cFv */
void dalv4CandleTag_c::modeEnd() {
/* empty function */
}
void dalv4CandleTag_c::modeEnd() {}
/* 80C5D90C-80C5D930 0005AC 0024+00 2/1 0/0 0/0 .text eventStart__16dalv4CandleTag_cFv */
bool dalv4CandleTag_c::eventStart() {
// NONMATCHING
init_modeNG();
return true;
}
/* 80C5D930-80C5D938 0005D0 0008+00 1/1 0/0 0/0 .text Draw__16dalv4CandleTag_cFv */
int dalv4CandleTag_c::Draw() {
return true;
return 1;
}
/* 80C5D938-80C5D940 0005D8 0008+00 1/1 0/0 0/0 .text Delete__16dalv4CandleTag_cFv */
int dalv4CandleTag_c::Delete() {
return true;
return 1;
}
/* 80C5D940-80C5D960 0005E0 0020+00 1/0 0/0 0/0 .text dalv4CandleTag_Draw__FP16dalv4CandleTag_c */
static void dalv4CandleTag_Draw(dalv4CandleTag_c* param_0) {
// NONMATCHING
static int dalv4CandleTag_Draw(dalv4CandleTag_c* i_this) {
return i_this->Draw();
}
/* 80C5D960-80C5D980 000600 0020+00 1/0 0/0 0/0 .text dalv4CandleTag_Execute__FP16dalv4CandleTag_c
*/
static void dalv4CandleTag_Execute(dalv4CandleTag_c* param_0) {
// NONMATCHING
static int dalv4CandleTag_Execute(dalv4CandleTag_c* i_this) {
return i_this->Execute();
}
/* 80C5D980-80C5D9A0 000620 0020+00 1/0 0/0 0/0 .text dalv4CandleTag_Delete__FP16dalv4CandleTag_c
*/
static void dalv4CandleTag_Delete(dalv4CandleTag_c* param_0) {
// NONMATCHING
static int dalv4CandleTag_Delete(dalv4CandleTag_c* i_this) {
return i_this->Delete();
}
/* 80C5D9A0-80C5D9C0 000640 0020+00 1/0 0/0 0/0 .text dalv4CandleTag_Create__FP10fopAc_ac_c */
static void dalv4CandleTag_Create(fopAc_ac_c* param_0) {
// NONMATCHING
static int dalv4CandleTag_Create(fopAc_ac_c* i_this) {
return ((dalv4CandleTag_c*)i_this)->create();
}
/* 80C5D9C0-80C5DA1C 000660 005C+00 2/1 0/0 0/0 .text __dt__20dalv4CandleTag_HIO_cFv */
// dalv4CandleTag_HIO_c::~dalv4CandleTag_HIO_c() {
extern "C" void __dt__20dalv4CandleTag_HIO_cFv() {
// NONMATCHING
}
/* 80C5DBE4-80C5DC04 -00001 0020+00 1/0 0/0 0/0 .data l_dalv4CandleTag_Method */
static actor_method_class l_dalv4CandleTag_Method = {
(process_method_func)dalv4CandleTag_Create,
(process_method_func)dalv4CandleTag_Delete,
(process_method_func)dalv4CandleTag_Execute,
NULL,
(process_method_func)dalv4CandleTag_Draw,
};
/* 80C5DA1C-80C5DA58 0006BC 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_lv4CandleTag_cpp */
void __sinit_d_a_obj_lv4CandleTag_cpp() {
// NONMATCHING
}
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80C5DA1C, __sinit_d_a_obj_lv4CandleTag_cpp);
#pragma pop
/* 80C5DA58-80C5DA60 0006F8 0008+00 1/0 0/0 0/0 .text @1392@eventStart__16dalv4CandleTag_cFv */
static void func_80C5DA58() {
// NONMATCHING
}
/* 80C5DA60-80C5DA68 000700 0008+00 1/0 0/0 0/0 .text @1392@__dt__16dalv4CandleTag_cFv */
static void func_80C5DA60() {
// NONMATCHING
}
/* 80C5DA68-80C5DAB0 000708 0048+00 1/0 0/0 0/0 .text __dt__17dEvLib_callback_cFv */
// dEvLib_callback_c::~dEvLib_callback_c() {
extern "C" void __dt__17dEvLib_callback_cFv() {
// NONMATCHING
}
/* 80C5DAB0-80C5DAB8 000750 0008+00 2/0 0/0 0/0 .text eventRun__17dEvLib_callback_cFv */
// int dEvLib_callback_c::eventRun() {
extern "C" bool eventRun__17dEvLib_callback_cFv() {
return true;
}
/* 80C5DAB8-80C5DAC0 000758 0008+00 2/0 0/0 0/0 .text eventEnd__17dEvLib_callback_cFv */
// int dEvLib_callback_c::eventEnd() {
extern "C" bool eventEnd__17dEvLib_callback_cFv() {
return true;
}
/* 80C5DAC0-80C5DAC8 000760 0008+00 1/0 0/0 0/0 .text eventStart__17dEvLib_callback_cFv
*/
// int dEvLib_callback_c::eventStart() {
extern "C" bool eventStart__17dEvLib_callback_cFv() {
return true;
}
/* 80C5DAC8-80C5DB48 000768 0080+00 2/1 0/0 0/0 .text __dt__16dalv4CandleTag_cFv */
// dalv4CandleTag_c::~dalv4CandleTag_c() {
extern "C" void __dt__16dalv4CandleTag_cFv() {
// NONMATCHING
}
/* 80C5DC04-80C5DC34 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv4Candle */
extern actor_process_profile_definition g_profile_Tag_Lv4Candle = {
fpcLy_CURRENT_e, // mLayerID
7, // mListID
fpcPi_CURRENT_e, // mListPrio
PROC_Tag_Lv4Candle, // mProcName
&g_fpcLf_Method.base, // sub_method
sizeof(dalv4CandleTag_c), // mSize
0, // mSizeOther
0, // mParameters
&g_fopAc_Method.base, // sub_method
540, // mPriority
&l_dalv4CandleTag_Method, // sub_method
0x00044000, // mStatus
fopAc_ACTOR_e, // mActorType
fopAc_CULLBOX_CUSTOM_e, // cullType
};

View File

@ -6,154 +6,248 @@
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_lv4EdShutter.h"
#include "dol2asm.h"
class daLv4EdShutter_HIO_c : public mDoHIO_entry_c {
public:
/* 80C5DDAC */ daLv4EdShutter_HIO_c();
/* 80C5E72C */ virtual ~daLv4EdShutter_HIO_c() {}
void genMessage(JORMContext*);
//
// Forward References:
//
extern "C" void __ct__20daLv4EdShutter_HIO_cFv();
extern "C" void __dt__14mDoHIO_entry_cFv();
extern "C" void setBaseMtx__16daLv4EdShutter_cFv();
extern "C" void CreateHeap__16daLv4EdShutter_cFv();
extern "C" void create__16daLv4EdShutter_cFv();
extern "C" void Execute__16daLv4EdShutter_cFPPA3_A4_f();
extern "C" void move__16daLv4EdShutter_cFv();
extern "C" void init_modeWait__16daLv4EdShutter_cFv();
extern "C" void modeWait__16daLv4EdShutter_cFv();
extern "C" void init_modeOpen__16daLv4EdShutter_cFv();
extern "C" void modeOpen__16daLv4EdShutter_cFv();
extern "C" void init_modeClose__16daLv4EdShutter_cFv();
extern "C" void modeClose__16daLv4EdShutter_cFv();
extern "C" void init_modeEnd__16daLv4EdShutter_cFv();
extern "C" void modeEnd__16daLv4EdShutter_cFv();
extern "C" void eventStart__16daLv4EdShutter_cFv();
extern "C" void Draw__16daLv4EdShutter_cFv();
extern "C" void Delete__16daLv4EdShutter_cFv();
extern "C" static void daLv4EdShutter_Draw__FP16daLv4EdShutter_c();
extern "C" static void daLv4EdShutter_Execute__FP16daLv4EdShutter_c();
extern "C" static void daLv4EdShutter_Delete__FP16daLv4EdShutter_c();
extern "C" static void daLv4EdShutter_Create__FP10fopAc_ac_c();
extern "C" void __dt__20daLv4EdShutter_HIO_cFv();
extern "C" void __sinit_d_a_obj_lv4EdShutter_cpp();
extern "C" static void func_80C5E7C4();
extern "C" static void func_80C5E7CC();
extern "C" void __dt__17dEvLib_callback_cFv();
extern "C" bool eventStart__17dEvLib_callback_cFv();
extern "C" bool eventRun__17dEvLib_callback_cFv();
extern "C" bool eventEnd__17dEvLib_callback_cFv();
extern "C" void __dt__16daLv4EdShutter_cFv();
extern "C" extern char const* const d_a_obj_lv4EdShutter__stringBase0;
//
// External References:
//
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcM_setCullSizeBox2__FP10fopAc_ac_cP12J3DModelData();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void dComIfGp_getReverb__Fi();
extern "C" void offSwitch__10dSv_info_cFii();
extern "C" void isSwitch__10dSv_info_cCFii();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void orderEvent__17dEvLib_callback_cFiii();
extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
extern "C" void __ct__16dBgS_MoveBgActorFv();
extern "C" bool Create__16dBgS_MoveBgActorFv();
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
extern "C" void
MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void cLib_addCalc__FPfffff();
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void __dl__FPv();
extern "C" void __ptmf_scall();
extern "C" extern void* __vt__16dBgS_MoveBgActor[10];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern "C" void __register_global_object();
//
// Declarations:
//
/* ############################################################################################## */
/* 80C5E8DC-80C5E8E0 000000 0004+00 3/3 0/0 0/0 .rodata @3634 */
SECTION_RODATA static f32 const lit_3634 = 80.0f;
COMPILER_STRIP_GATE(0x80C5E8DC, &lit_3634);
/* 80C5E8E0-80C5E8E4 000004 0004+00 1/1 0/0 0/0 .rodata @3635 */
SECTION_RODATA static f32 const lit_3635 = 40.0f;
COMPILER_STRIP_GATE(0x80C5E8E0, &lit_3635);
/* 80C5E924-80C5E930 -00001 000C+00 0/1 0/0 0/0 .data @3721 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3721[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeWait__16daLv4EdShutter_cFv,
/* 0x04 */ f32 close_max_speed;
/* 0x08 */ f32 open_speed_max;
/* 0x0C */ s16 field_0xc;
/* 0x0E */ u8 field_0xe;
};
#pragma pop
/* 80C5E930-80C5E93C -00001 000C+00 0/1 0/0 0/0 .data @3722 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3722[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeOpen__16daLv4EdShutter_cFv,
};
#pragma pop
/* 80C5DDAC-80C5DDF0 0000EC 0044+00 1/1 0/0 0/0 .text __ct__20daLv4EdShutter_HIO_cFv */
daLv4EdShutter_HIO_c::daLv4EdShutter_HIO_c() {
close_max_speed = 80.0f;
open_speed_max = 40.0f;
field_0xc = 60;
field_0xe = 4;
}
/* 80C5E93C-80C5E948 -00001 000C+00 0/1 0/0 0/0 .data @3723 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3723[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeClose__16daLv4EdShutter_cFv,
};
#pragma pop
/* 80C5DE38-80C5DEC8 000178 0090+00 2/2 0/0 0/0 .text setBaseMtx__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::setBaseMtx() {
mDoMtx_stack_c::transS(current.pos.x, current.pos.y + mMovePos, current.pos.z);
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, 0);
mpModel->setBaseScale(scale);
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
}
/* 80C5E948-80C5E954 -00001 000C+00 0/1 0/0 0/0 .data @3724 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3724[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)modeEnd__16daLv4EdShutter_cFv,
};
#pragma pop
/* 80C5DEC8-80C5DF34 000208 006C+00 1/0 0/0 0/0 .text CreateHeap__16daLv4EdShutter_cFv */
int daLv4EdShutter_c::CreateHeap() {
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("P_AShtr", 4);
JUT_ASSERT(165, modelData != NULL);
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
if (mpModel == NULL) {
return 0;
}
/* 80C5E954-80C5E984 000050 0030+00 0/1 0/0 0/0 .data mode_proc$3720 */
#pragma push
#pragma force_active on
SECTION_DATA static u8 mode_proc[48] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
#pragma pop
return 1;
}
/* 80C5DF34-80C5E0A4 000274 0170+00 1/1 0/0 0/0 .text create__16daLv4EdShutter_cFv */
int daLv4EdShutter_c::create() {
fopAcM_ct(this, daLv4EdShutter_c);
int phase_state = dComIfG_resLoad(&mPhase, "P_AShtr");
if (phase_state == cPhs_COMPLEATE_e) {
if (MoveBGCreate("P_AShtr", 7, dBgS_MoveBGProc_TypicalRotY, 0x1900, NULL) == cPhs_ERROR_e) {
return cPhs_ERROR_e;
}
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
fopAcM_setCullSizeBox2(this, mpModel->getModelData());
mOpenSw = getOpenSw();
mCloseSw = getCloseSw();
mMovePos = -300.0f;
mStatus = 0;
shape_angle.y += 0x4000;
setBaseMtx();
mZenmetuSw = getZenmetuSw();
if (mZenmetuSw != 0xFF && fopAcM_isSwitch(this, mZenmetuSw)) {
init_modeEnd();
} else {
init_modeWait();
}
}
return phase_state;
}
/* 80C5E0A4-80C5E0F4 0003E4 0050+00 1/0 0/0 0/0 .text Execute__16daLv4EdShutter_cFPPA3_A4_f */
int daLv4EdShutter_c::Execute(Mtx** param_0) {
move();
*param_0 = &mpModel->getBaseTRMtx();
setBaseMtx();
return 1;
}
/* 80C5EA64-80C5EA74 000014 0010+00 3/3 0/0 0/0 .bss l_HIO */
static daLv4EdShutter_HIO_c l_HIO;
/* 80C5E0F4-80C5E1B0 000434 00BC+00 1/1 0/0 0/0 .text move__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::move() {
static void (daLv4EdShutter_c::*mode_proc[])() = {
&daLv4EdShutter_c::modeWait,
&daLv4EdShutter_c::modeOpen,
&daLv4EdShutter_c::modeClose,
&daLv4EdShutter_c::modeEnd,
};
(this->*mode_proc[mMode])();
}
/* 80C5E1B0-80C5E1C8 0004F0 0018+00 3/3 0/0 0/0 .text init_modeWait__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeWait() {
mWaitTimer = getWaitTime();
mMode = 0;
}
/* 80C5E1C8-80C5E2E0 000508 0118+00 1/0 0/0 0/0 .text modeWait__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeWait() {
if (mStatus == 0) {
if (fopAcM_isSwitch(this, mCloseSw)) {
if (mWaitTimer == 0) {
if (getEventID() != 0xFF) {
orderEvent(getEventID(), 0xFF, 1);
} else {
eventStart();
}
} else {
mWaitTimer--;
}
}
} else if (fopAcM_isSwitch(this, mOpenSw)) {
if (mWaitTimer == 0) {
if (getEventID() != 0xFF) {
orderEvent(getEventID(), 0xFF, 1);
} else {
eventStart();
}
} else {
mWaitTimer--;
}
}
}
/* 80C5E2E0-80C5E394 000620 00B4+00 1/1 0/0 0/0 .text init_modeOpen__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeOpen() {
mMoveSpeed = l_HIO.open_speed_max;
cXyz se_pos(current.pos);
se_pos.y = home.pos.y;
mDoAud_seStart(Z2SE_OBJ_STL_FENCE_DW, &se_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
mMode = 1;
}
/* 80C5E394-80C5E464 0006D4 00D0+00 1/0 0/0 0/0 .text modeOpen__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeOpen() {
f32 remaining = cLib_addCalc(&mMovePos, -300.0f, 0.3f, mMoveSpeed, 5.0f);
if (remaining == 0.0f) {
mStatus = 0;
fopAcM_offSwitch(this, mOpenSw);
fopAcM_offSwitch(this, mCloseSw);
if (mZenmetuSw != 0xFF && fopAcM_isSwitch(this, mZenmetuSw)) {
init_modeEnd();
} else {
init_modeWait();
}
}
}
/* 80C5E464-80C5E518 0007A4 00B4+00 1/1 0/0 0/0 .text init_modeClose__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::init_modeClose() {
mMoveSpeed = l_HIO.close_max_speed;
cXyz se_pos(current.pos);
se_pos.y = home.pos.y;
mDoAud_seStart(Z2SE_OBJ_STL_FENCE_UP, &se_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
mMode = 2;
}
/* 80C5E518-80C5E584 000858 006C+00 1/0 0/0 0/0 .text modeClose__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeClose() {
f32 remaining = cLib_addCalc(&mMovePos, 0.0f, 0.3f, mMoveSpeed, 5.0f);
if (remaining == 0.0f) {
mStatus = 1;
init_modeWait();
}
}
/* 80C5E584-80C5E590 0008C4 000C+00 2/2 0/0 0/0 .text init_modeEnd__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeEnd() {
mMode = 3;
}
/* 80C5E590-80C5E594 0008D0 0004+00 1/0 0/0 0/0 .text modeEnd__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeEnd() {}
/* 80C5E594-80C5E5CC 0008D4 0038+00 2/1 0/0 0/0 .text eventStart__16daLv4EdShutter_cFv */
bool daLv4EdShutter_c::eventStart() {
if (mStatus == 0) {
init_modeClose();
} else {
init_modeOpen();
}
return true;
}
/* 80C5E5CC-80C5E670 00090C 00A4+00 1/0 0/0 0/0 .text Draw__16daLv4EdShutter_cFv */
int daLv4EdShutter_c::Draw() {
g_env_light.settingTevStruct(16, &current.pos, &tevStr);
g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr);
dComIfGd_setListBG();
mDoExt_modelUpdateDL(mpModel);
dComIfGd_setList();
return 1;
}
/* 80C5E670-80C5E6A0 0009B0 0030+00 1/0 0/0 0/0 .text Delete__16daLv4EdShutter_cFv */
int daLv4EdShutter_c::Delete() {
dComIfG_resDelete(&mPhase, "P_AShtr");
return 1;
}
/* 80C5E6A0-80C5E6CC 0009E0 002C+00 1/0 0/0 0/0 .text daLv4EdShutter_Draw__FP16daLv4EdShutter_c */
static int daLv4EdShutter_Draw(daLv4EdShutter_c* i_this) {
return i_this->MoveBGDraw();
}
/* 80C5E6CC-80C5E6EC 000A0C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Execute__FP16daLv4EdShutter_c
*/
static int daLv4EdShutter_Execute(daLv4EdShutter_c* i_this) {
return i_this->MoveBGExecute();
}
/* 80C5E6EC-80C5E70C 000A2C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Delete__FP16daLv4EdShutter_c
*/
static int daLv4EdShutter_Delete(daLv4EdShutter_c* i_this) {
return i_this->MoveBGDelete();
}
/* 80C5E70C-80C5E72C 000A4C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Create__FP10fopAc_ac_c */
static int daLv4EdShutter_Create(fopAc_ac_c* i_this) {
return ((daLv4EdShutter_c*)i_this)->create();
}
/* 80C5E984-80C5E9A4 -00001 0020+00 1/0 0/0 0/0 .data l_daLv4EdShutter_Method */
static actor_method_class l_daLv4EdShutter_Method = {
(process_method_func)daLv4EdShutter_Create__FP10fopAc_ac_c,
(process_method_func)daLv4EdShutter_Delete__FP16daLv4EdShutter_c,
(process_method_func)daLv4EdShutter_Execute__FP16daLv4EdShutter_c,
0,
(process_method_func)daLv4EdShutter_Draw__FP16daLv4EdShutter_c,
(process_method_func)daLv4EdShutter_Create,
(process_method_func)daLv4EdShutter_Delete,
(process_method_func)daLv4EdShutter_Execute,
NULL,
(process_method_func)daLv4EdShutter_Draw,
};
/* 80C5E9A4-80C5E9D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv4EdShutter */
@ -173,280 +267,3 @@ extern actor_process_profile_definition g_profile_Obj_Lv4EdShutter = {
fopAc_ACTOR_e, // mActorType
fopAc_CULLBOX_CUSTOM_e, // cullType
};
/* 80C5E9D4-80C5E9EC 0000D0 0018+00 3/3 0/0 0/0 .data __vt__17dEvLib_callback_c */
SECTION_DATA extern void* __vt__17dEvLib_callback_c[6] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17dEvLib_callback_cFv,
(void*)eventStart__17dEvLib_callback_cFv,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
};
/* 80C5E9EC-80C5EA34 0000E8 0048+00 2/2 0/0 0/0 .data __vt__16daLv4EdShutter_c */
SECTION_DATA extern void* __vt__16daLv4EdShutter_c[18] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)CreateHeap__16daLv4EdShutter_cFv,
(void*)Create__16dBgS_MoveBgActorFv,
(void*)Execute__16daLv4EdShutter_cFPPA3_A4_f,
(void*)Draw__16daLv4EdShutter_cFv,
(void*)Delete__16daLv4EdShutter_cFv,
(void*)IsDelete__16dBgS_MoveBgActorFv,
(void*)ToFore__16dBgS_MoveBgActorFv,
(void*)ToBack__16dBgS_MoveBgActorFv,
(void*)NULL,
(void*)NULL,
(void*)func_80C5E7CC,
(void*)func_80C5E7C4,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
(void*)__dt__16daLv4EdShutter_cFv,
(void*)eventStart__16daLv4EdShutter_cFv,
};
/* 80C5EA34-80C5EA40 000130 000C+00 2/2 0/0 0/0 .data __vt__20daLv4EdShutter_HIO_c */
SECTION_DATA extern void* __vt__20daLv4EdShutter_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__20daLv4EdShutter_HIO_cFv,
};
/* 80C5EA40-80C5EA4C 00013C 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14mDoHIO_entry_cFv,
};
/* 80C5DDAC-80C5DDF0 0000EC 0044+00 1/1 0/0 0/0 .text __ct__20daLv4EdShutter_HIO_cFv */
daLv4EdShutter_HIO_c::daLv4EdShutter_HIO_c() {
// NONMATCHING
}
/* 80C5DDF0-80C5DE38 000130 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
// mDoHIO_entry_c::~mDoHIO_entry_c() {
extern "C" void __dt__14mDoHIO_entry_cFv() {
// NONMATCHING
}
/* 80C5DE38-80C5DEC8 000178 0090+00 2/2 0/0 0/0 .text setBaseMtx__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::setBaseMtx() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80C5E8FC-80C5E8FC 000020 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80C5E8FC = "P_AShtr";
#pragma pop
/* 80C5DEC8-80C5DF34 000208 006C+00 1/0 0/0 0/0 .text CreateHeap__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::CreateHeap() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80C5E8E4-80C5E8E8 000008 0004+00 1/2 0/0 0/0 .rodata @3704 */
SECTION_RODATA static f32 const lit_3704 = -300.0f;
COMPILER_STRIP_GATE(0x80C5E8E4, &lit_3704);
/* 80C5DF34-80C5E0A4 000274 0170+00 1/1 0/0 0/0 .text create__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::create() {
// NONMATCHING
}
/* 80C5E0A4-80C5E0F4 0003E4 0050+00 1/0 0/0 0/0 .text Execute__16daLv4EdShutter_cFPPA3_A4_f */
void daLv4EdShutter_c::Execute(Mtx** param_0) {
// NONMATCHING
}
/* ############################################################################################## */
/* 80C5EA58-80C5EA64 000008 000C+00 1/1 0/0 0/0 .bss @3628 */
static u8 lit_3628[12];
/* 80C5EA64-80C5EA74 000014 0010+00 3/3 0/0 0/0 .bss l_HIO */
static u8 l_HIO[16];
/* 80C5EA74-80C5EA78 000024 0004+00 1/1 0/0 0/0 .bss None */
static u8 data_80C5EA74[4];
/* 80C5E0F4-80C5E1B0 000434 00BC+00 1/1 0/0 0/0 .text move__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::move() {
// NONMATCHING
}
/* 80C5E1B0-80C5E1C8 0004F0 0018+00 3/3 0/0 0/0 .text init_modeWait__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeWait() {
// NONMATCHING
}
/* 80C5E1C8-80C5E2E0 000508 0118+00 1/0 0/0 0/0 .text modeWait__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeWait() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80C5E8E8-80C5E8EC 00000C 0004+00 2/2 0/0 0/0 .rodata @3787 */
SECTION_RODATA static f32 const lit_3787 = 1.0f;
COMPILER_STRIP_GATE(0x80C5E8E8, &lit_3787);
/* 80C5E8EC-80C5E8F0 000010 0004+00 2/2 0/0 0/0 .rodata @3788 */
SECTION_RODATA static f32 const lit_3788 = -1.0f;
COMPILER_STRIP_GATE(0x80C5E8EC, &lit_3788);
/* 80C5E2E0-80C5E394 000620 00B4+00 1/1 0/0 0/0 .text init_modeOpen__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeOpen() {
// NONMATCHING
}
/* ############################################################################################## */
/* 80C5E8F0-80C5E8F4 000014 0004+00 0/2 0/0 0/0 .rodata @3816 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3816 = 3.0f / 10.0f;
COMPILER_STRIP_GATE(0x80C5E8F0, &lit_3816);
#pragma pop
/* 80C5E8F4-80C5E8F8 000018 0004+00 0/2 0/0 0/0 .rodata @3817 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3817 = 5.0f;
COMPILER_STRIP_GATE(0x80C5E8F4, &lit_3817);
#pragma pop
/* 80C5E8F8-80C5E8FC 00001C 0004+00 0/2 0/0 0/0 .rodata @3818 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3818[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80C5E8F8, &lit_3818);
#pragma pop
/* 80C5E394-80C5E464 0006D4 00D0+00 1/0 0/0 0/0 .text modeOpen__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeOpen() {
// NONMATCHING
}
/* 80C5E464-80C5E518 0007A4 00B4+00 1/1 0/0 0/0 .text init_modeClose__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::init_modeClose() {
// NONMATCHING
}
/* 80C5E518-80C5E584 000858 006C+00 1/0 0/0 0/0 .text modeClose__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeClose() {
// NONMATCHING
}
/* 80C5E584-80C5E590 0008C4 000C+00 2/2 0/0 0/0 .text init_modeEnd__16daLv4EdShutter_cFv
*/
void daLv4EdShutter_c::init_modeEnd() {
// NONMATCHING
}
/* 80C5E590-80C5E594 0008D0 0004+00 1/0 0/0 0/0 .text modeEnd__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::modeEnd() {
/* empty function */
}
/* 80C5E594-80C5E5CC 0008D4 0038+00 2/1 0/0 0/0 .text eventStart__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::eventStart() {
// NONMATCHING
}
/* 80C5E5CC-80C5E670 00090C 00A4+00 1/0 0/0 0/0 .text Draw__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::Draw() {
// NONMATCHING
}
/* 80C5E670-80C5E6A0 0009B0 0030+00 1/0 0/0 0/0 .text Delete__16daLv4EdShutter_cFv */
void daLv4EdShutter_c::Delete() {
// NONMATCHING
}
/* 80C5E6A0-80C5E6CC 0009E0 002C+00 1/0 0/0 0/0 .text daLv4EdShutter_Draw__FP16daLv4EdShutter_c */
static void daLv4EdShutter_Draw(daLv4EdShutter_c* param_0) {
// NONMATCHING
}
/* 80C5E6CC-80C5E6EC 000A0C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Execute__FP16daLv4EdShutter_c
*/
static void daLv4EdShutter_Execute(daLv4EdShutter_c* param_0) {
// NONMATCHING
}
/* 80C5E6EC-80C5E70C 000A2C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Delete__FP16daLv4EdShutter_c
*/
static void daLv4EdShutter_Delete(daLv4EdShutter_c* param_0) {
// NONMATCHING
}
/* 80C5E70C-80C5E72C 000A4C 0020+00 1/0 0/0 0/0 .text daLv4EdShutter_Create__FP10fopAc_ac_c */
static void daLv4EdShutter_Create(fopAc_ac_c* param_0) {
// NONMATCHING
}
/* 80C5E72C-80C5E788 000A6C 005C+00 2/1 0/0 0/0 .text __dt__20daLv4EdShutter_HIO_cFv */
daLv4EdShutter_HIO_c::~daLv4EdShutter_HIO_c() {
// NONMATCHING
}
/* 80C5E788-80C5E7C4 000AC8 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_lv4EdShutter_cpp */
void __sinit_d_a_obj_lv4EdShutter_cpp() {
// NONMATCHING
}
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80C5E788, __sinit_d_a_obj_lv4EdShutter_cpp);
#pragma pop
/* 80C5E7C4-80C5E7CC 000B04 0008+00 1/0 0/0 0/0 .text @1448@eventStart__16daLv4EdShutter_cFv */
static void func_80C5E7C4() {
// NONMATCHING
}
/* 80C5E7CC-80C5E7D4 000B0C 0008+00 1/0 0/0 0/0 .text @1448@__dt__16daLv4EdShutter_cFv */
static void func_80C5E7CC() {
// NONMATCHING
}
/* 80C5E7D4-80C5E81C 000B14 0048+00 1/0 0/0 0/0 .text __dt__17dEvLib_callback_cFv */
// dEvLib_callback_c::~dEvLib_callback_c() {
extern "C" void __dt__17dEvLib_callback_cFv() {
// NONMATCHING
}
/* 80C5E81C-80C5E824 000B5C 0008+00 1/0 0/0 0/0 .text eventStart__17dEvLib_callback_cFv
*/
// bool dEvLib_callback_c::eventStart() {
extern "C" bool eventStart__17dEvLib_callback_cFv() {
return true;
}
/* 80C5E824-80C5E82C 000B64 0008+00 2/0 0/0 0/0 .text eventRun__17dEvLib_callback_cFv */
// bool dEvLib_callback_c::eventRun() {
extern "C" bool eventRun__17dEvLib_callback_cFv() {
return true;
}
/* 80C5E82C-80C5E834 000B6C 0008+00 2/0 0/0 0/0 .text eventEnd__17dEvLib_callback_cFv */
// bool dEvLib_callback_c::eventEnd() {
extern "C" bool eventEnd__17dEvLib_callback_cFv() {
return true;
}
/* 80C5E834-80C5E8C8 000B74 0094+00 2/1 0/0 0/0 .text __dt__16daLv4EdShutter_cFv */
daLv4EdShutter_c::~daLv4EdShutter_c() {
// NONMATCHING
}
/* 80C5E8FC-80C5E8FC 000020 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

File diff suppressed because it is too large Load Diff

View File

@ -2515,9 +2515,9 @@ int dMsgFlow_c::event027(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speak
// NONMATCHING regalloc
int dMsgFlow_c::event028(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
u8 pos = dComIfGs_getTmpReg(0xFBFF) - 1;
dMsgObject_c::setSelectCursorPos(pos);
u8 BombBag = dMsgObject_c::getSelectBombBagID();
s16 BombPrice = dMsgObject_c::getSelectBombPrice();
dMsgObject_setSelectCursorPos(pos);
u8 BombBag = dMsgObject_getSelectBombBagID();
s16 BombPrice = dMsgObject_getSelectBombPrice();
dComIfGp_setItemRupeeCount(BombPrice);
dComIfGs_setBombNum(BombBag, 0);