summaryrefslogtreecommitdiff
path: root/src/d
diff options
context:
space:
mode:
Diffstat (limited to 'src/d')
-rw-r--r--src/d/actor/d_a_obj_twGate.cpp2
-rw-r--r--src/d/actor/d_a_tag_TWgate.cpp689
-rw-r--r--src/d/actor/d_a_tag_qs.cpp549
-rw-r--r--src/d/d_menu_collect.cpp338
-rw-r--r--src/d/d_menu_option.cpp993
5 files changed, 830 insertions, 1741 deletions
diff --git a/src/d/actor/d_a_obj_twGate.cpp b/src/d/actor/d_a_obj_twGate.cpp
index d32f368f0b..f56e02eef0 100644
--- a/src/d/actor/d_a_obj_twGate.cpp
+++ b/src/d/actor/d_a_obj_twGate.cpp
@@ -416,4 +416,4 @@ void __sinit_d_a_obj_twGate_cpp() {
REGISTER_CTORS(0x80D202B8, __sinit_d_a_obj_twGate_cpp);
#pragma pop
-/* 80D20554-80D20554 00024C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file
+/* 80D20554-80D20554 00024C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
diff --git a/src/d/actor/d_a_tag_TWgate.cpp b/src/d/actor/d_a_tag_TWgate.cpp
index 3a9bcd633c..4493134370 100644
--- a/src/d/actor/d_a_tag_TWgate.cpp
+++ b/src/d/actor/d_a_tag_TWgate.cpp
@@ -1,19 +1,13 @@
//
-// Generated By: dol2asm
-// Translation Unit: d_a_tag_TWgate
+// d_a_tag_TWgate
//
#include "d/actor/d_a_tag_TWgate.h"
#include "d/actor/d_a_player.h"
#include "d/d_com_inf_game.h"
#include "d/d_msg_object.h"
-#include "dol2asm.h"
#include "f_op/f_op_actor_mng.h"
-//
-// Types:
-//
-
struct daTagTWGate_zevParam {
/* 0x00 */ char* mArcName;
/* 0x04 */ char* mEventName;
@@ -26,195 +20,18 @@ struct daTagTWGate_zevParam {
/* 0x1B */ s8 mLayer;
};
-//
-// Forward References:
-//
-
-extern "C" void initWait__13daTagTWGate_cFv();
-extern "C" void executeWait__13daTagTWGate_cFv();
-extern "C" void initDemoFilone1__13daTagTWGate_cFv();
-extern "C" void executeDemoFilone1__13daTagTWGate_cFv();
-extern "C" void initDemoFilone2__13daTagTWGate_cFv();
-extern "C" void executeDemoFilone2__13daTagTWGate_cFv();
-extern "C" void initDemoFilone3__13daTagTWGate_cFv();
-extern "C" void executeDemoFilone3__13daTagTWGate_cFv();
-extern "C" void initDemoOrdin1__13daTagTWGate_cFv();
-extern "C" void executeDemoOrdin1__13daTagTWGate_cFv();
-extern "C" void initDemoOrdin2__13daTagTWGate_cFv();
-extern "C" void executeDemoOrdin2__13daTagTWGate_cFv();
-extern "C" void initDemoOrdin3__13daTagTWGate_cFv();
-extern "C" void executeDemoOrdin3__13daTagTWGate_cFv();
-extern "C" void initDemoRanail1__13daTagTWGate_cFv();
-extern "C" void executeDemoRanail1__13daTagTWGate_cFv();
-extern "C" void initDemoRanail2__13daTagTWGate_cFv();
-extern "C" void executeDemoRanail2__13daTagTWGate_cFv();
-extern "C" void initDemoRanail3__13daTagTWGate_cFv();
-extern "C" void executeDemoRanail3__13daTagTWGate_cFv();
-extern "C" void initDemoHyral1__13daTagTWGate_cFv();
-extern "C" void executeDemoHyral1__13daTagTWGate_cFv();
-extern "C" void initDemoHyral2__13daTagTWGate_cFv();
-extern "C" void executeDemoHyral2__13daTagTWGate_cFv();
-extern "C" void initDemoHyral3__13daTagTWGate_cFv();
-extern "C" void executeDemoHyral3__13daTagTWGate_cFv();
-extern "C" void initBaseMtx__13daTagTWGate_cFv();
-extern "C" void downloadModels__13daTagTWGate_cFv();
-extern "C" void initTalk__13daTagTWGate_cFiPP10fopAc_ac_c();
-extern "C" void talkProc__13daTagTWGate_cFPiiPP10fopAc_ac_c();
-extern "C" void createHeapCallBack__13daTagTWGate_cFP10fopAc_ac_c();
-extern "C" void CreateHeap__13daTagTWGate_cFv();
-extern "C" static void daTagTWGate_Create__FP10fopAc_ac_c();
-extern "C" static void daTagTWGate_Delete__FP13daTagTWGate_c();
-extern "C" static void daTagTWGate_Execute__FP13daTagTWGate_c();
-extern "C" static void daTagTWGate_Draw__FP13daTagTWGate_c();
-extern "C" static bool daTagTWGate_IsDelete__FP13daTagTWGate_c();
-extern "C" void __sinit_d_a_tag_TWgate_cpp();
-extern "C" u8 const mAttr__13daTagTWGate_c[1 + 3 /* padding */];
-extern "C" extern char const* const d_a_tag_TWgate__stringBase0;
-extern "C" u8 ActionTable__13daTagTWGate_c[312];
-extern "C" extern void* g_profile_Tag_TWGate[12];
-
-//
-// External References:
-//
-
-extern "C" void mDoMtx_YrotM__FPA4_fs();
-extern "C" void transS__14mDoMtx_stack_cFRC4cXyz();
-extern "C" void transM__14mDoMtx_stack_cFfff();
-extern "C" void
-__ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl();
-extern "C" void play__16mDoExt_McaMorfSOFUlSc();
-extern "C" void entryDL__16mDoExt_McaMorfSOFv();
-extern "C" void modelCalc__16mDoExt_McaMorfSOFv();
-extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv();
-extern "C" void __ct__10fopAc_ac_cFv();
-extern "C" void __dt__10fopAc_ac_cFv();
-extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
-extern "C" void fopAcM_searchActorDistanceXZ2__FPC10fopAc_ac_cPC10fopAc_ac_c();
-extern "C" void fopAcM_orderChangeEventId__FP10fopAc_ac_csUsUs();
-extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs();
-extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
-extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
-extern "C" void dComIfGp_setNextStage__FPCcsScSc();
-extern "C" void isDarkClearLV__21dSv_player_status_b_cCFi();
-extern "C" void onEventBit__11dSv_event_cFUs();
-extern "C" void onSwitch__10dSv_info_cFii();
-extern "C" void isSwitch__10dSv_info_cCFii();
-extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
-extern "C" void reset__14dEvt_control_cFv();
-extern "C" void reset__14dEvt_control_cFPv();
-extern "C" void dEv_noFinishSkipProc__FPvi();
-extern "C" void setSkipProc__14dEvt_control_cFPvPFPvi_ii();
-extern "C" void onSkipFade__14dEvt_control_cFv();
-extern "C" void setObjectArchive__16dEvent_manager_cFPc();
-extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc();
-extern "C" void endCheck__16dEvent_manager_cFs();
-extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci();
-extern "C" void getIsAddvance__16dEvent_manager_cFi();
-extern "C" void getMyNowCutName__16dEvent_manager_cFi();
-extern "C" void cutEnd__16dEvent_manager_cFi();
-extern "C" void
-set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
-extern "C" void offMsgSendControl__12dMsgObject_cFv();
-extern "C" void isMsgSendControl__12dMsgObject_cFv();
-extern "C" void __ct__10dMsgFlow_cFv();
-extern "C" void __dt__10dMsgFlow_cFv();
-extern "C" void init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c();
-extern "C" void doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci();
-extern "C" void getMsgNo__10dMsgFlow_cFv();
-extern "C" void getMsg__10dMsgFlow_cFv();
-extern "C" void __ct__5csXyzFsss();
-extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
-extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
-extern "C" void* __nw__FUl();
-extern "C" void __ptmf_scall();
-extern "C" void _savegpr_26();
-extern "C" void _savegpr_27();
-extern "C" void _savegpr_28();
-extern "C" void _savegpr_29();
-extern "C" void _restgpr_26();
-extern "C" void _restgpr_27();
-extern "C" void _restgpr_28();
-extern "C" void _restgpr_29();
-extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
-extern "C" u8 now__14mDoMtx_stack_c[48];
-extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
-
-//
-// Declarations:
-//
-
/* 80D525F8-80D52604 000078 000C+00 1/0 0/0 0/0 .text initWait__13daTagTWGate_cFv */
void daTagTWGate_c::initWait() {
mEventID = -1;
}
-/* ############################################################################################## */
-/* 80D55848-80D55852 00009C 000A+00 4/3 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55848;
-
-/* 80D55852-80D55861 0000A6 000F+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55852;
-
-/* 80D55861-80D55875 0000B5 0014+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55861;
-
-/* 80D55875-80D55887 0000C9 0012+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55875;
-
-/* 80D55887-80D5588F 0000DB 0008+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55887;
-
-/* 80D5588F-80D55899 0000E3 000A+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D5588F;
-
-/* 80D55899-80D558A7 0000ED 000E+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55899;
-
-/* 80D558A7-80D558BA 0000FB 0013+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558A7;
-
-/* 80D558BA-80D558CB 00010E 0011+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558BA;
-
-/* 80D558CB-80D558D3 00011F 0008+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558CB;
-
-/* 80D558D3-80D558DD 000127 000A+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558D3;
-
-/* 80D558DD-80D558EC 000131 000F+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558DD;
-
-/* 80D558EC-80D55900 000140 0014+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D558EC;
-
-/* 80D55900-80D55912 000154 0012+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55900;
-
-/* 80D55912-80D5591C 000166 000A+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D55912;
-
-/* 80D5591C-80D5592A 000170 000E+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D5591C;
-
-/* 80D5592A-80D5593D 00017E 0013+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D5592A;
-
-/* 80D5593D-80D5594E 000191 0011+00 1/0 0/0 0/0 .rodata None */
-extern "C" char const* const stringBase_80D5593D;
-
/* 80D557AC-80D557B0 000000 0001+03 5/5 0/0 0/0 .rodata mAttr__13daTagTWGate_c */
-SECTION_RODATA u8 const daTagTWGate_c::mAttr[1 + 3 /* padding */] = {
- 0x00,
- /* padding */
- 0x00,
- 0x00,
+u8 const daTagTWGate_c::mAttr[1] = {
0x00,
};
-COMPILER_STRIP_GATE(0x80D557AC, &daTagTWGate_c::mAttr);
/* 80D557B0-80D55820 -00001 0070+00 14/18 0/0 0/0 .rodata l_zevParamTbl */
-SECTION_RODATA static daTagTWGate_zevParam const l_zevParamTbl[4] = {
+static daTagTWGate_zevParam const l_zevParamTbl[4] = {
{
"TWGate_FL",
"TW_GATE_FILONE",
@@ -260,51 +77,16 @@ SECTION_RODATA static daTagTWGate_zevParam const l_zevParamTbl[4] = {
14,
},
};
-COMPILER_STRIP_GATE(0x80D557B0, &l_zevParamTbl);
-
-/* 80D55820-80D55824 000074 0004+00 1/1 0/0 0/0 .rodata @3857 */
-SECTION_RODATA static f32 const lit_3857 = 100.0f;
-COMPILER_STRIP_GATE(0x80D55820, &lit_3857);
-
-/* 80D55824-80D5582C 000078 0008+00 1/1 0/0 0/0 .rodata @3858 */
-SECTION_RODATA static u8 const lit_3858[8] = {
- 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80D55824, &lit_3858);
-
-/* 80D55848-80D55848 00009C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80D55848 = "TWGate_FL";
-SECTION_DEAD static char const* const stringBase_80D55852 = "TW_GATE_FILONE";
-SECTION_DEAD static char const* const stringBase_80D55861 = "TW_GATE_FILONE_TALK";
-SECTION_DEAD static char const* const stringBase_80D55875 = "TW_GATE_FILONE_IN";
-SECTION_DEAD static char const* const stringBase_80D55887 = "F_SP108";
-SECTION_DEAD static char const* const stringBase_80D5588F = "TWGate_OD";
-SECTION_DEAD static char const* const stringBase_80D55899 = "TW_GATE_ORDIN";
-SECTION_DEAD static char const* const stringBase_80D558A7 = "TW_GATE_ORDIN_TALK";
-SECTION_DEAD static char const* const stringBase_80D558BA = "TW_GATE_ORDIN_IN";
-SECTION_DEAD static char const* const stringBase_80D558CB = "F_SP121";
-SECTION_DEAD static char const* const stringBase_80D558D3 = "TWGate_RN";
-SECTION_DEAD static char const* const stringBase_80D558DD = "TW_GATE_RANAIL";
-SECTION_DEAD static char const* const stringBase_80D558EC = "TW_GATE_RANAIL_TALK";
-SECTION_DEAD static char const* const stringBase_80D55900 = "TW_GATE_RANAIL_IN";
-SECTION_DEAD static char const* const stringBase_80D55912 = "TWGate_HY";
-SECTION_DEAD static char const* const stringBase_80D5591C = "TW_GATE_HYRAL";
-SECTION_DEAD static char const* const stringBase_80D5592A = "TW_GATE_HYRAL_TALK";
-SECTION_DEAD static char const* const stringBase_80D5593D = "TW_GATE_HYRAL_IN";
-SECTION_DEAD static char const* const stringBase_80D5594E = "Gate";
-#pragma pop
/* 80D55974-80D55980 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
-SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
+static u8 cNullVec__6Z2Calc[12] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 80D55980-80D55994 00000C 0004+10 0/0 0/0 0/0 .data @1787 */
#pragma push
#pragma force_active on
-SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
+static u32 lit_1787[1 + 4 /* padding */] = {
0x02000201,
/* padding */
0x40080000,
@@ -315,10 +97,10 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = {
#pragma pop
/* 80D55994-80D55998 -00001 0004+00 12/12 0/0 0/0 .data l_myName */
-SECTION_DATA static const char* l_myName = "Gate";
+static const char* l_myName = "Gate";
/* 80D55AD0-80D55C08 00015C 0138+00 14/15 0/0 0/0 .data ActionTable__13daTagTWGate_c */
-SECTION_DATA actionFunc daTagTWGate_c::ActionTable[13][2] = {
+actionFunc daTagTWGate_c::ActionTable[13][2] = {
{&daTagTWGate_c::initWait, &daTagTWGate_c::executeWait},
{&daTagTWGate_c::initDemoFilone1, &daTagTWGate_c::executeDemoFilone1},
{&daTagTWGate_c::initDemoFilone2, &daTagTWGate_c::executeDemoFilone2},
@@ -442,26 +224,22 @@ void daTagTWGate_c::executeDemoFilone1() {
/* 80D52AF4-80D52BF0 000574 00FC+00 1/0 0/0 0/0 .text initDemoFilone2__13daTagTWGate_cFv
*/
-#ifdef NONMATCHING
void daTagTWGate_c::initDemoFilone2() {
fopAcM_onSwitch(this, getSwitch());
eventInfo.setArchiveName(l_zevParamTbl[mType].mArcName);
- dComIfGp_getEventManager().setObjectArchive(eventInfo.getArchiveName());
+ dComIfG_play_c& play = g_dComIfG_gameInfo.play;
+ dEvent_manager_c& mng = play.getEvtManager();
+ mng.setObjectArchive(eventInfo.getArchiveName());
mEventID =
- dComIfGp_getEventManager().getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, -1);
+ mng.getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, -1);
- if (dComIfGp_event_runCheck()) {
+ if (play.getEvent().mEventStatus != 0) {
dComIfGp_getEvent().reset(this);
fopAcM_orderChangeEventId(this, mEventID, 1, -1);
} else {
fopAcM_orderOtherEventId(this, mEventID, -1, -1, 4, 1);
}
}
-#else
-void daTagTWGate_c::initDemoFilone2() {
- // NONMATCHING
-}
-#endif
/* 80D52BF0-80D52DB4 000670 01C4+00 1/0 0/0 0/0 .text executeDemoFilone2__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoFilone2() {
@@ -522,38 +300,6 @@ void daTagTWGate_c::initDemoFilone3() {
fopAcM_orderChangeEventId(this, mEventID, 1, -1);
}
-/* ############################################################################################## */
-/* 80D5582C-80D55830 000080 0004+00 1/5 0/0 0/0 .rodata @4079 */
-SECTION_RODATA static f32 const lit_4079 = 1.0f;
-COMPILER_STRIP_GATE(0x80D5582C, &lit_4079);
-
-/* 80D55830-80D55834 000084 0004+00 1/6 0/0 0/0 .rodata @4080 */
-SECTION_RODATA static u8 const lit_4080[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-COMPILER_STRIP_GATE(0x80D55830, &lit_4080);
-
-/* 80D55834-80D55838 000088 0004+00 0/4 0/0 0/0 .rodata @4081 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4081 = 240.0f;
-COMPILER_STRIP_GATE(0x80D55834, &lit_4081);
-#pragma pop
-
-/* 80D55838-80D5583C 00008C 0004+00 0/4 0/0 0/0 .rodata @4082 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4082 = -710.0f;
-COMPILER_STRIP_GATE(0x80D55838, &lit_4082);
-#pragma pop
-
-/* 80D5583C-80D55840 000090 0004+00 1/5 0/0 0/0 .rodata @4083 */
-SECTION_RODATA static f32 const lit_4083 = -1.0f;
-COMPILER_STRIP_GATE(0x80D5583C, &lit_4083);
-
/* 80D52E7C-80D53250 0008FC 03D4+00 1/0 0/0 0/0 .text executeDemoFilone3__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoFilone3() {
s32 staffId = dComIfGp_evmng_getMyStaffId(l_myName, NULL, 0);
@@ -644,7 +390,6 @@ void daTagTWGate_c::executeDemoFilone3() {
}
}
-
/* 80D53250-80D532DC 000CD0 008C+00 1/0 0/0 0/0 .text initDemoOrdin1__13daTagTWGate_cFv
*/
void daTagTWGate_c::initDemoOrdin1() {
@@ -655,18 +400,90 @@ void daTagTWGate_c::initDemoOrdin1() {
/* 80D532DC-80D53454 000D5C 0178+00 1/0 0/0 0/0 .text executeDemoOrdin1__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoOrdin1() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId != -1) {
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch (*cutName) {
+ case '0001':
+ dComIfGp_getEvent().startCheckSkipEdge(this);
+ break;
+ }
+ }
+ switch (*cutName) {
+ case '0001':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ setAction(ACT_DEMO_ORDIN_2);
+ }
+ evtMng.cutEnd(staffId);
+ break;
+ }
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 && evtMng.endCheck(mEventID)) {
+ setAction(ACT_DEMO_ORDIN_2);
+ }
+ }
}
/* 80D53454-80D53550 000ED4 00FC+00 1/0 0/0 0/0 .text initDemoOrdin2__13daTagTWGate_cFv
*/
void daTagTWGate_c::initDemoOrdin2() {
- // NONMATCHING
+ fopAcM_onSwitch(this, getSwitch());
+ eventInfo.setArchiveName(l_zevParamTbl[mType].mArcName);
+ dComIfG_play_c& play = g_dComIfG_gameInfo.play;
+ dEvent_manager_c& mng = play.getEvtManager();
+ mng.setObjectArchive(eventInfo.getArchiveName());
+ mEventID = mng.getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, 0xff);
+ if (play.getEvent().mEventStatus != 0) {
+ dComIfGp_getEvent().reset(this);
+ fopAcM_orderChangeEventId(this, mEventID, 1, 0xffff);
+ } else {
+ fopAcM_orderOtherEventId(this, mEventID, 0xff, 0xffff, 4, 1);
+ }
}
/* 80D53550-80D53714 000FD0 01C4+00 1/0 0/0 0/0 .text executeDemoOrdin2__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoOrdin2() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId == -1) {
+ return;
+ }
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch(*cutName) {
+ case '0001':
+ break;
+ case '0002':
+ initTalk(0xbc1, NULL);
+ break;
+ case '0003':
+ break;
+ }
+ }
+ switch(*cutName) {
+ case '0001':
+ case '0003':
+ evtMng.cutEnd(staffId);
+ break;
+ case '0002':
+ if (talkProc(NULL, 1, NULL)) {
+ if (mMsgFlow.getChoiceNo() == 0) {
+ setAction(ACT_DEMO_ORDIN_3);
+ }
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ }
+
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 &&
+ evtMng.endCheck(mEventID))
+ {
+ dComIfGp_event_reset();
+ field_0x5e0 = 0;
+ setAction(ACT_WAIT);
+ }
}
/* 80D53714-80D537DC 001194 00C8+00 1/0 0/0 0/0 .text initDemoOrdin3__13daTagTWGate_cFv
@@ -684,7 +501,84 @@ void daTagTWGate_c::initDemoOrdin3() {
/* 80D537DC-80D53BD0 00125C 03F4+00 1/0 0/0 0/0 .text executeDemoOrdin3__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoOrdin3() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId == -1) {
+ return;
+ }
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch(*cutName) {
+ case '0001':
+ break;
+ case '0002':
+ dComIfGp_getEvent().startCheckSkipEdge(this);
+ field_0x5e1 = 0;
+ break;
+ case '0003':
+ initBaseMtx();
+ mpMorf->setPlaySpeed(1.0f);
+ field_0x5e0 = 1;
+ break;
+ }
+ }
+ switch(*cutName) {
+ case '0001':
+ int downloadResult = downloadModels();
+ if (downloadResult == 1) {
+ evtMng.cutEnd(staffId);
+ } else if (downloadResult == -1) {
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ break;
+ case '0002':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ int dVar2 = daPy_py_c::i_checkNowWolf() ? 0x2e : 0x4a;
+ if (field_0x5e1++ == dVar2) {
+ daPy_py_c* player = daPy_getPlayerActorClass();
+ cXyz cStack_30;
+ csXyz cStack_38(0, fopAcM_GetShapeAngle_p(player)->y + 0x8000, 0);
+ mDoMtx_stack_c::transS(fopAcM_GetPosition(player));
+ mDoMtx_stack_c::YrotM(cStack_38.y);
+ mDoMtx_stack_c::transM(0.0f, 240.0f, -710.0f);
+ mDoMtx_stack_c::multVecZero(&cStack_30);
+ dComIfGp_particle_set(0x86c5, &cStack_30, &cStack_38, NULL);
+ Z2GetAudioMgr()->seStart(Z2SE_OBJ_DARK_GATE_RIPPLE, &cStack_30, 0, 0,
+ 1.0f, 1.0f, -1.0f, -1.0f, 0);
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ case '0003':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ if (mpMorf->isStop()) {
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ }
+
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 && evtMng.endCheck(mEventID)) {
+ dComIfGp_event_reset();
+ field_0x5e0 = 0;
+ setAction(ACT_WAIT);
+ }
}
/* 80D53BD0-80D53C5C 001650 008C+00 1/0 0/0 0/0 .text initDemoRanail1__13daTagTWGate_cFv
@@ -697,18 +591,90 @@ void daTagTWGate_c::initDemoRanail1() {
/* 80D53C5C-80D53DD4 0016DC 0178+00 1/0 0/0 0/0 .text executeDemoRanail1__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoRanail1() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId != -1) {
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch (*cutName) {
+ case '0001':
+ dComIfGp_getEvent().startCheckSkipEdge(this);
+ break;
+ }
+ }
+ switch (*cutName) {
+ case '0001':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ setAction(ACT_DEMO_RANAIL_2);
+ }
+ evtMng.cutEnd(staffId);
+ break;
+ }
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 && evtMng.endCheck(mEventID)) {
+ setAction(ACT_DEMO_RANAIL_2);
+ }
+ }
}
/* 80D53DD4-80D53ED0 001854 00FC+00 1/0 0/0 0/0 .text initDemoRanail2__13daTagTWGate_cFv
*/
void daTagTWGate_c::initDemoRanail2() {
- // NONMATCHING
+ fopAcM_onSwitch(this, getSwitch());
+ eventInfo.setArchiveName(l_zevParamTbl[mType].mArcName);
+ dComIfG_play_c& play = g_dComIfG_gameInfo.play;
+ dEvent_manager_c& mng = play.getEvtManager();
+ mng.setObjectArchive(eventInfo.getArchiveName());
+ mEventID = mng.getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, 0xff);
+ if (play.getEvent().mEventStatus != 0) {
+ dComIfGp_getEvent().reset(this);
+ fopAcM_orderChangeEventId(this, mEventID, 1, 0xffff);
+ } else {
+ fopAcM_orderOtherEventId(this, mEventID, 0xff, 0xffff, 4, 1);
+ }
}
/* 80D53ED0-80D54094 001950 01C4+00 1/0 0/0 0/0 .text executeDemoRanail2__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoRanail2() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId == -1) {
+ return;
+ }
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch(*cutName) {
+ case '0001':
+ break;
+ case '0002':
+ initTalk(0xbc1, NULL);
+ break;
+ case '0003':
+ break;
+ }
+ }
+ switch(*cutName) {
+ case '0001':
+ case '0003':
+ evtMng.cutEnd(staffId);
+ break;
+ case '0002':
+ if (talkProc(NULL, 1, NULL)) {
+ if (mMsgFlow.getChoiceNo() == 0) {
+ setAction(ACT_DEMO_RANAIL_3);
+ }
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ }
+
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 &&
+ evtMng.endCheck(mEventID))
+ {
+ dComIfGp_event_reset();
+ field_0x5e0 = 0;
+ setAction(ACT_WAIT);
+ }
}
/* 80D54094-80D54178 001B14 00E4+00 1/0 0/0 0/0 .text initDemoRanail3__13daTagTWGate_cFv
@@ -727,7 +693,84 @@ void daTagTWGate_c::initDemoRanail3() {
/* 80D54178-80D5456C 001BF8 03F4+00 1/0 0/0 0/0 .text executeDemoRanail3__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoRanail3() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId == -1) {
+ return;
+ }
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch(*cutName) {
+ case '0001':
+ break;
+ case '0002':
+ dComIfGp_getEvent().startCheckSkipEdge(this);
+ field_0x5e1 = 0;
+ break;
+ case '0003':
+ initBaseMtx();
+ mpMorf->setPlaySpeed(1.0f);
+ field_0x5e0 = 1;
+ break;
+ }
+ }
+ switch(*cutName) {
+ case '0001':
+ int downloadResult = downloadModels();
+ if (downloadResult == 1) {
+ evtMng.cutEnd(staffId);
+ } else if (downloadResult == -1) {
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ break;
+ case '0002':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ int dVar2 = daPy_py_c::i_checkNowWolf() ? 0x2e : 0x4a;
+ if (field_0x5e1++ == dVar2) {
+ daPy_py_c* player = daPy_getPlayerActorClass();
+ cXyz cStack_30;
+ csXyz cStack_38(0, fopAcM_GetShapeAngle_p(player)->y + 0x8000, 0);
+ mDoMtx_stack_c::transS(fopAcM_GetPosition(player));
+ mDoMtx_stack_c::YrotM(cStack_38.y);
+ mDoMtx_stack_c::transM(0.0f, 240.0f, -710.0f);
+ mDoMtx_stack_c::multVecZero(&cStack_30);
+ dComIfGp_particle_set(0x86c5, &cStack_30, &cStack_38, NULL);
+ Z2GetAudioMgr()->seStart(Z2SE_OBJ_DARK_GATE_RIPPLE, &cStack_30, 0, 0,
+ 1.0f, 1.0f, -1.0f, -1.0f, 0);
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ case '0003':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ dComIfGp_setNextStage(
+ l_zevParamTbl[mType].mStage,
+ l_zevParamTbl[mType].mPoint,
+ l_zevParamTbl[mType].mRoomNo,
+ l_zevParamTbl[mType].mLayer);
+ }
+ if (mpMorf->isStop()) {
+ evtMng.cutEnd(staffId);
+ }
+ break;
+ }
+
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 && evtMng.endCheck(mEventID)) {
+ dComIfGp_event_reset();
+ field_0x5e0 = 0;
+ setAction(ACT_WAIT);
+ }
}
/* 80D5456C-80D545F8 001FEC 008C+00 1/0 0/0 0/0 .text initDemoHyral1__13daTagTWGate_cFv
@@ -740,30 +783,48 @@ void daTagTWGate_c::initDemoHyral1() {
/* 80D545F8-80D54770 002078 0178+00 1/0 0/0 0/0 .text executeDemoHyral1__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoHyral1() {
- // NONMATCHING
+ dEvent_manager_c& evtMng = dComIfGp_getEventManager();
+ int staffId = evtMng.getMyStaffId(l_myName, NULL, 0);
+ if (staffId != -1) {
+ int* cutName = (int*)evtMng.getMyNowCutName(staffId);
+ if (evtMng.getIsAddvance(staffId)) {
+ switch (*cutName) {
+ case '0001':
+ dComIfGp_getEvent().startCheckSkipEdge(this);
+ break;
+ }
+ }
+ switch (*cutName) {
+ case '0001':
+ if (dComIfGp_getEvent().checkSkipEdge()) {
+ dComIfGp_getEvent().onSkipFade();
+ setAction(ACT_DEMO_HYRAL_2);
+ }
+ evtMng.cutEnd(staffId);
+ break;
+ }
+ if (eventInfo.checkCommandDemoAccrpt() && mEventID != -1 && evtMng.endCheck(mEventID)) {
+ setAction(ACT_DEMO_HYRAL_2);
+ }
+ }
}
/* 80D54770-80D5486C 0021F0 00FC+00 1/0 0/0 0/0 .text initDemoHyral2__13daTagTWGate_cFv
*/
-// load order
-#ifdef NONMATCHING
void daTagTWGate_c::initDemoHyral2() {
fopAcM_onSwitch(this, getSwitch());
eventInfo.setArchiveName(l_zevParamTbl[mType].mArcName);
- dComIfGp_getEventManager().setObjectArchive(eventInfo.getArchiveName());
- mEventID = dComIfGp_getEventManager().getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, 0xff);
- if (dComIfGp_event_runCheck()) {
+ dComIfG_play_c& play = g_dComIfG_gameInfo.play;
+ dEvent_manager_c& mng = play.getEvtManager();
+ mng.setObjectArchive(eventInfo.getArchiveName());
+ mEventID = mng.getEventIdx(this, l_zevParamTbl[mType].mTalkEventName, 0xff);
+ if (play.getEvent().mEventStatus != 0) {
dComIfGp_getEvent().reset(this);
fopAcM_orderChangeEventId(this, mEventID, 1, 0xffff);
} else {
fopAcM_orderOtherEventId(this, mEventID, 0xff, 0xffff, 4, 1);
}
}
-#else
-void daTagTWGate_c::initDemoHyral2() {
- // NONMATCHING
-}
-#endif
/* 80D5486C-80D54A30 0022EC 01C4+00 1/0 0/0 0/0 .text executeDemoHyral2__13daTagTWGate_cFv */
void daTagTWGate_c::executeDemoHyral2() {
@@ -892,22 +953,6 @@ void daTagTWGate_c::executeDemoHyral3() {
}
}
-
-/* ############################################################################################## */
-/* 80D55840-80D55844 000094 0004+00 0/1 0/0 0/0 .rodata @4790 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4790 = 250.0f;
-COMPILER_STRIP_GATE(0x80D55840, &lit_4790);
-#pragma pop
-
-/* 80D55844-80D55848 000098 0004+00 0/1 0/0 0/0 .rodata @4791 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4791 = -840.0f;
-COMPILER_STRIP_GATE(0x80D55844, &lit_4791);
-#pragma pop
-
/* 80D54ECC-80D54F88 00294C 00BC+00 4/4 0/0 0/0 .text initBaseMtx__13daTagTWGate_cFv */
void daTagTWGate_c::initBaseMtx() {
cullMtx = mpMorf->getModel()->getBaseTRMtx();
@@ -925,7 +970,6 @@ void daTagTWGate_c::initBaseMtx() {
mpMorf->getModel()->setBaseTRMtx(mDoMtx_stack_c::get());
}
-
/* 80D54F88-80D5502C 002A08 00A4+00 4/4 0/0 0/0 .text downloadModels__13daTagTWGate_cFv
*/
int daTagTWGate_c::downloadModels() {
@@ -1004,7 +1048,6 @@ int daTagTWGate_c::CreateHeap() {
}
}
-
int daTagTWGate_c::create() {
fopAcM_SetupActor(this, daTagTWGate_c);
@@ -1052,7 +1095,6 @@ static int daTagTWGate_Execute(daTagTWGate_c* i_gate) {
return i_gate->execute();
}
-
/* 80D554E4-80D55518 002F64 0034+00 1/0 0/0 0/0 .text daTagTWGate_Draw__FP13daTagTWGate_c
*/
static int daTagTWGate_Draw(daTagTWGate_c* i_gate) {
@@ -1066,25 +1108,28 @@ static int daTagTWGate_IsDelete(daTagTWGate_c*) {
/* ############################################################################################## */
/* 80D55C08-80D55C28 -00001 0020+00 1/0 0/0 0/0 .data l_daTagTWGate_Method */
-SECTION_DATA static void* l_daTagTWGate_Method[8] = {
- (void*)daTagTWGate_Create__FP10fopAc_ac_c,
- (void*)daTagTWGate_Delete__FP13daTagTWGate_c,
- (void*)daTagTWGate_Execute__FP13daTagTWGate_c,
- (void*)daTagTWGate_IsDelete__FP13daTagTWGate_c,
- (void*)daTagTWGate_Draw__FP13daTagTWGate_c,
- (void*)NULL,
- (void*)NULL,
- (void*)NULL,
+static actor_method_class l_daTagTWGate_Method = {
+ (process_method_func)daTagTWGate_Create, (process_method_func)daTagTWGate_Delete,
+ (process_method_func)daTagTWGate_Execute, (process_method_func)daTagTWGate_IsDelete,
+ (process_method_func)daTagTWGate_Draw,
};
/* 80D55C28-80D55C58 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_TWGate */
-SECTION_DATA extern void* g_profile_Tag_TWGate[12] = {
- (void*)0xFFFFFFFD, (void*)0x0007FFFD,
- (void*)0x02C80000, (void*)&g_fpcLf_Method,
- (void*)0x000005E4, (void*)NULL,
- (void*)NULL, (void*)&g_fopAc_Method,
- (void*)0x01050000, (void*)&l_daTagTWGate_Method,
- (void*)0x00040000, (void*)0x000E0000,
+extern actor_process_profile_definition g_profile_Tag_TWGate = {
+ fpcLy_CURRENT_e,
+ 7,
+ fpcPi_CURRENT_e,
+ PROC_Tag_TWGate,
+ &g_fpcLf_Method.mBase,
+ sizeof(daTagTWGate_c),
+ 0,
+ 0,
+ &g_fopAc_Method.base,
+ 0x105,
+ &l_daTagTWGate_Method,
+ 0x40000,
+ fopAc_ACTOR_e,
+ fopAc_CULLBOX_CUSTOM_e,
};
-/* 80D55848-80D55848 00009C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file
+/* 80D55848-80D55848 00009C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
diff --git a/src/d/actor/d_a_tag_qs.cpp b/src/d/actor/d_a_tag_qs.cpp
index 8bef61ab73..0b7416bc72 100644
--- a/src/d/actor/d_a_tag_qs.cpp
+++ b/src/d/actor/d_a_tag_qs.cpp
@@ -1,111 +1,15 @@
//
-// Generated By: dol2asm
-// Translation Unit: d_a_tag_qs
+// d_a_tag_qs
//
#include "d/actor/d_a_tag_qs.h"
+#include "d/actor/d_a_obj_carry.h"
+#include "d/actor/d_a_player.h"
#include "d/d_cc_d.h"
-#include "dol2asm.h"
-
-//
-// Types:
-//
-
-struct fopAc_ac_c {
- /* 80018B64 */ fopAc_ac_c();
- /* 80018C8C */ ~fopAc_ac_c();
-};
-
-struct daTagQs_c {
- /* 80D5DE78 */ ~daTagQs_c();
- /* 80D5DFB0 */ void create();
- /* 80D5E1FC */ void getPower();
- /* 80D5E220 */ void getSafeArea();
- /* 80D5E244 */ void getPower80();
- /* 80D5E268 */ void getCenterPower();
- /* 80D5E28C */ void calcPower(f32, f32);
- /* 80D5E9F8 */ void execute();
- /* 80D5EBF8 */ bool draw();
-};
-
-struct daItem_c {
- /* 80037BE0 */ void startCtrl();
-};
-
-struct daItemBase_c {
- /* 80037A5C */ void getItemNo();
-};
-
-struct dSv_info_c {
- /* 80035360 */ void isSwitch(int, int) const;
-};
-
-//
-// Forward References:
-//
-
-extern "C" void __dt__9daTagQs_cFv();
-extern "C" void create__9daTagQs_cFv();
-extern "C" void __dt__10dCcD_GSttsFv();
-extern "C" void __dt__8cM3dGCylFv();
-extern "C" void __dt__8cM3dGAabFv();
-extern "C" void getPower__9daTagQs_cFv();
-extern "C" void getSafeArea__9daTagQs_cFv();
-extern "C" void getPower80__9daTagQs_cFv();
-extern "C" void getCenterPower__9daTagQs_cFv();
-extern "C" void calcPower__9daTagQs_cFff();
-extern "C" static void hikiyose__FP4cXyzP4cXyzP4cXyzf();
-extern "C" static void search__FPvPv();
-extern "C" void execute__9daTagQs_cFv();
-extern "C" bool draw__9daTagQs_cFv();
-extern "C" static void daTagQs_Draw__FP9daTagQs_c();
-extern "C" static void daTagQs_Execute__FP9daTagQs_c();
-extern "C" static bool daTagQs_IsDelete__FP9daTagQs_c();
-extern "C" static void daTagQs_Delete__FP9daTagQs_c();
-extern "C" static void daTagQs_Create__FP10fopAc_ac_c();
-extern "C" void __dt__10cCcD_GSttsFv();
-
-//
-// External References:
-//
-
-extern "C" void __ct__10fopAc_ac_cFv();
-extern "C" void __dt__10fopAc_ac_cFv();
-extern "C" void fopAc_IsActor__FPv();
-extern "C" void fopAcIt_Judge__FPFPvPv_PvPv();
-extern "C" void fopAcM_delete__FP10fopAc_ac_c();
-extern "C" void dComIfGp_getReverb__Fi();
-extern "C" void dComIfGs_BossLife_public_Set__FSc();
-extern "C" void isSwitch__10dSv_info_cCFii();
-extern "C" void getItemNo__12daItemBase_cFv();
-extern "C" void startCtrl__8daItem_cFv();
-extern "C" void __ct__10dCcD_GSttsFv();
-extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
-extern "C" void __ct__12dCcD_GObjInfFv();
-extern "C" void __dt__12dCcD_GObjInfFv();
-extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl();
-extern "C" void __mi__4cXyzCFRC3Vec();
-extern "C" void normalize__4cXyzFv();
-extern "C" void cM_atan2s__Fff();
-extern "C" void cM_rndFX__Ff();
-extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
-extern "C" void __dl__FPv();
-extern "C" void _savegpr_28();
-extern "C" void _savegpr_29();
-extern "C" void _restgpr_28();
-extern "C" void _restgpr_29();
-extern "C" extern void* g_fopAc_Method[8];
-extern "C" extern void* __vt__8dCcD_Cyl[36];
-extern "C" extern void* __vt__9dCcD_Stts[11];
-extern "C" extern void* __vt__12cCcD_CylAttr[25];
-extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
-extern "C" extern void* __vt__9cCcD_Stts[8];
-extern "C" extern u8 g_dComIfG_gameInfo[122384];
-extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
-
-//
-// Declarations:
-//
+#include "d/d_a_item_static.h"
+#include "d/d_save.h"
+#include "d/d_com_inf_game.h"
+#include "SSystem/SComponent/c_math.h"
/* ############################################################################################## */
/* 80D5ED44-80D5ED88 000000 0044+00 1/1 0/0 0/0 .data l_cc_cyl_src */
@@ -123,295 +27,244 @@ static dCcD_SrcCyl l_cc_cyl_src = {
} // mCyl
};
-/* 80D5ED88-80D5EDA8 -00001 0020+00 1/0 0/0 0/0 .data l_daTagQs_Method */
-SECTION_DATA static void* l_daTagQs_Method[8] = {
- (void*)daTagQs_Create__FP10fopAc_ac_c,
- (void*)daTagQs_Delete__FP9daTagQs_c,
- (void*)daTagQs_Execute__FP9daTagQs_c,
- (void*)daTagQs_IsDelete__FP9daTagQs_c,
- (void*)daTagQs_Draw__FP9daTagQs_c,
- (void*)NULL,
- (void*)NULL,
- (void*)NULL,
-};
-
-/* 80D5EDA8-80D5EDD8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_TAG_QS */
-SECTION_DATA extern void* g_profile_TAG_QS[12] = {
- (void*)0xFFFFFFFD, (void*)0x0007FFFD,
- (void*)0x02230000, (void*)&g_fpcLf_Method,
- (void*)0x000006F0, (void*)NULL,
- (void*)NULL, (void*)&g_fopAc_Method,
- (void*)0x01120000, (void*)&l_daTagQs_Method,
- (void*)0x00040000, (void*)NULL,
-};
-
-/* 80D5EDD8-80D5EDE4 000094 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGAab */
-SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGAabFv,
-};
-
-/* 80D5EDE4-80D5EDF0 0000A0 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGCyl */
-SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__8cM3dGCylFv,
-};
-
-/* 80D5EDF0-80D5EDFC 0000AC 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */
-SECTION_DATA extern void* __vt__10cCcD_GStts[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__10cCcD_GSttsFv,
-};
-
-/* 80D5EDFC-80D5EE08 0000B8 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */
-SECTION_DATA extern void* __vt__10dCcD_GStts[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__10dCcD_GSttsFv,
-};
-
/* 80D5DE78-80D5DFB0 000078 0138+00 1/1 0/0 0/0 .text __dt__9daTagQs_cFv */
-daTagQs_c::~daTagQs_c() {
- // NONMATCHING
-}
-
-/* ############################################################################################## */
-/* 80D5ECE0-80D5ECE4 000000 0004+00 5/5 0/0 0/0 .rodata @3734 */
-SECTION_RODATA static f32 const lit_3734 = 1.0f;
-COMPILER_STRIP_GATE(0x80D5ECE0, &lit_3734);
-
-/* 80D5ECE4-80D5ECE8 000004 0004+00 1/3 0/0 0/0 .rodata @3735 */
-SECTION_RODATA static f32 const lit_3735 = 20.0f;
-COMPILER_STRIP_GATE(0x80D5ECE4, &lit_3735);
-
-/* 80D5ECE8-80D5ECEC 000008 0004+00 0/1 0/0 0/0 .rodata @3736 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_3736 = 50.0f;
-COMPILER_STRIP_GATE(0x80D5ECE8, &lit_3736);
-#pragma pop
+daTagQs_c::~daTagQs_c() {}
/* 80D5DFB0-80D5E110 0001B0 0160+00 1/1 0/0 0/0 .text create__9daTagQs_cFv */
-void daTagQs_c::create() {
- // NONMATCHING
+int daTagQs_c::create() {
+ fopAcM_SetupActor(this, daTagQs_c);
+ f32 typeScale;
+ if (getType() == 0) {
+ typeScale = 1.0f;
+ } else {
+ typeScale = 20.0f;
+ }
+ field_0x568 = scale.x * 50.0f * typeScale;
+ field_0x56c = scale.y * 50.0f * typeScale;
+ field_0x570 = 0;
+ field_0x574 = 0;
+ mStts.Init(0xff, 0, this);
+ mCyl.Set(l_cc_cyl_src);
+ mCyl.SetStts(&mStts);
+ return cPhs_COMPLEATE_e;
}
-/* 80D5E110-80D5E16C 000310 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
-// dCcD_GStts::~dCcD_GStts() {
-extern "C" void __dt__10dCcD_GSttsFv() {
- // NONMATCHING
-}
-
-/* 80D5E16C-80D5E1B4 00036C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
-// cM3dGCyl::~cM3dGCyl() {
-extern "C" void __dt__8cM3dGCylFv() {
- // NONMATCHING
-}
-
-/* 80D5E1B4-80D5E1FC 0003B4 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
-// cM3dGAab::~cM3dGAab() {
-extern "C" void __dt__8cM3dGAabFv() {
- // NONMATCHING
-}
-
-/* ############################################################################################## */
-/* 80D5ECEC-80D5ECF0 00000C 0004+00 1/2 0/0 0/0 .rodata @3813 */
-SECTION_RODATA static f32 const lit_3813 = 4.0f;
-COMPILER_STRIP_GATE(0x80D5ECEC, &lit_3813);
-
-/* 80D5ECF0-80D5ECF4 000010 0004+00 1/1 0/0 0/0 .rodata @3814 */
-SECTION_RODATA static f32 const lit_3814 = 5.0f;
-COMPILER_STRIP_GATE(0x80D5ECF0, &lit_3814);
-
/* 80D5E1FC-80D5E220 0003FC 0024+00 2/2 0/0 0/0 .text getPower__9daTagQs_cFv */
-void daTagQs_c::getPower() {
- // NONMATCHING
+f32 daTagQs_c::getPower() {
+ return getType() == 0 ? 4.0f : 5.0f;
}
-/* ############################################################################################## */
-/* 80D5ECF4-80D5ECF8 000014 0004+00 1/2 0/0 0/0 .rodata @3823 */
-SECTION_RODATA static f32 const lit_3823 = 4.0f / 5.0f;
-COMPILER_STRIP_GATE(0x80D5ECF4, &lit_3823);
-
-/* 80D5ECF8-80D5ECFC 000018 0004+00 1/2 0/0 0/0 .rodata @3824 */
-SECTION_RODATA static f32 const lit_3824 = 0.5f;
-COMPILER_STRIP_GATE(0x80D5ECF8, &lit_3824);
-
/* 80D5E220-80D5E244 000420 0024+00 1/1 0/0 0/0 .text getSafeArea__9daTagQs_cFv */
-void daTagQs_c::getSafeArea() {
- // NONMATCHING
+f32 daTagQs_c::getSafeArea() {
+ return getType() == 0 ? 0.8f : 0.5f;
}
-/* ############################################################################################## */
-/* 80D5ECFC-80D5ED00 00001C 0004+00 1/1 0/0 0/0 .rodata @3833 */
-SECTION_RODATA static f32 const lit_3833 = 6.0f;
-COMPILER_STRIP_GATE(0x80D5ECFC, &lit_3833);
-
-/* 80D5ED00-80D5ED04 000020 0004+00 1/1 0/0 0/0 .rodata @3834 */
-SECTION_RODATA static f32 const lit_3834 = 10.0f;
-COMPILER_STRIP_GATE(0x80D5ED00, &lit_3834);
-
/* 80D5E244-80D5E268 000444 0024+00 1/1 0/0 0/0 .text getPower80__9daTagQs_cFv */
-void daTagQs_c::getPower80() {
- // NONMATCHING
+f32 daTagQs_c::getPower80() {
+ return getType() == 0 ? 6.0f : 10.0f;
}
-/* ############################################################################################## */
-/* 80D5ED04-80D5ED08 000024 0004+00 1/1 0/0 0/0 .rodata @3843 */
-SECTION_RODATA static f32 const lit_3843 = 12.0f;
-COMPILER_STRIP_GATE(0x80D5ED04, &lit_3843);
-
/* 80D5E268-80D5E28C 000468 0024+00 1/1 0/0 0/0 .text getCenterPower__9daTagQs_cFv */
-void daTagQs_c::getCenterPower() {
- // NONMATCHING
+f32 daTagQs_c::getCenterPower() {
+ return getType() == 0 ? 12.0f : 20.0f;
}
-/* ############################################################################################## */
-/* 80D5ED08-80D5ED10 000028 0004+04 0/2 0/0 0/0 .rodata @3863 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_3863[1 + 1 /* padding */] = {
- 30.0f,
- /* padding */
- 0.0f,
-};
-COMPILER_STRIP_GATE(0x80D5ED08, &lit_3863);
-#pragma pop
-
-/* 80D5ED10-80D5ED18 000030 0008+00 0/2 0/0 0/0 .rodata @3865 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_3865[8] = {
- 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80D5ED10, &lit_3865);
-#pragma pop
-
/* 80D5E28C-80D5E3F8 00048C 016C+00 1/1 0/0 0/0 .text calcPower__9daTagQs_cFff */
-void daTagQs_c::calcPower(f32 param_0, f32 param_1) {
- // NONMATCHING
+f32 daTagQs_c::calcPower(f32 param_1, f32 param_2) {
+ f32 dVar12 = 1.0f;
+ if (getSwNo() != 0xff) {
+ if (fopAcM_isSwitch(this, getSwNo())) {
+ dVar12 = field_0x570 / 30.0f;
+ } else {
+ dVar12 = (30 - field_0x574) / 30.0f;
+ }
+ }
+ if (param_2 > (param_1 * 0.8f)) {
+ return dVar12 * getPower();
+ }
+
+ return dVar12 *
+ ((1.0f - (param_2 / (param_1 * getSafeArea()))) * (getCenterPower() - getPower80()) +
+ getPower80());
}
-/* ############################################################################################## */
-/* 80D5ED18-80D5ED1C 000038 0004+00 0/2 0/0 0/0 .rodata @3934 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_3934[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-COMPILER_STRIP_GATE(0x80D5ED18, &lit_3934);
-#pragma pop
-
-/* 80D5ED1C-80D5ED20 00003C 0004+00 0/2 0/0 0/0 .rodata @3935 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_3935 = 100.0f;
-COMPILER_STRIP_GATE(0x80D5ED1C, &lit_3935);
-#pragma pop
-
-/* 80D5ED20-80D5ED28 000040 0008+00 0/2 0/0 0/0 .rodata @3936 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_3936[8] = {
- 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80D5ED20, &lit_3936);
-#pragma pop
-
-/* 80D5ED28-80D5ED30 000048 0008+00 0/2 0/0 0/0 .rodata @3937 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_3937[8] = {
- 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80D5ED28, &lit_3937);
-#pragma pop
-
-/* 80D5ED30-80D5ED38 000050 0008+00 0/2 0/0 0/0 .rodata @3938 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static u8 const lit_3938[8] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-COMPILER_STRIP_GATE(0x80D5ED30, &lit_3938);
-#pragma pop
-
/* 80D5E3F8-80D5E64C 0005F8 0254+00 1/1 0/0 0/0 .text hikiyose__FP4cXyzP4cXyzP4cXyzf */
-static void hikiyose(cXyz* param_0, cXyz* param_1, cXyz* param_2, f32 param_3) {
- // NONMATCHING
+static int hikiyose(cXyz* param_1, cXyz* param_2, cXyz* param_3, f32 param_4) {
+ cXyz cStack_44 = *param_1 - *param_2;
+ cXyz cStack_50(cStack_44);
+ cStack_50.y = 0.0f;
+ f32 dVar6 = fabsf(cStack_50.getSquareMag());
+ if (dVar6 < 4.0f) {
+ param_2->x = param_1->x + cM_rndFX(1.0f);
+ param_2->y -= 0.5f;
+ param_2->z = param_1->z + cM_rndFX(1.0f);
+ param_3->y = param_2->y;
+ if (param_2->y < param_1->y - 100.0f) {
+ return 2;
+ }
+ return 1;
+ } else if (cStack_44.abs() < param_4) {
+ param_2->x = param_1->x;
+ param_2->y = param_1->y;
+ param_2->z = param_1->z;
+ } else {
+ cStack_44.normalize();
+ cStack_44 *= param_4;
+ *param_2 += cStack_44;
+ }
+ return 0;
}
-/* ############################################################################################## */
-/* 80D5ED38-80D5ED3C 000058 0004+00 0/1 0/0 0/0 .rodata @4042 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4042 = 110.0f;
-COMPILER_STRIP_GATE(0x80D5ED38, &lit_4042);
-#pragma pop
-
-/* 80D5ED3C-80D5ED40 00005C 0004+00 0/1 0/0 0/0 .rodata @4043 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4043 = 9.0f / 10.0f;
-COMPILER_STRIP_GATE(0x80D5ED3C, &lit_4043);
-#pragma pop
-
/* 80D5E64C-80D5E9F8 00084C 03AC+00 1/1 0/0 0/0 .text search__FPvPv */
-static void search(void* param_0, void* param_1) {
- // NONMATCHING
+static void* search(void* param_1, void* param_2) {
+ if (param_1 == NULL || !fopAcM_IsActor(param_1)) {
+ return NULL;
+ }
+ fopAc_ac_c* actor1 = (fopAc_ac_c*) param_1;
+ daTagQs_c* actor2 = (daTagQs_c*) param_2;
+ f32 dVar9 = actor2->current.pos.absXZ(actor1->current.pos);
+ if (dVar9 > actor2->field_0x568) {
+ return NULL;
+ }
+ if (actor2->current.pos.y - 110.0f > actor1->current.pos.y ||
+ actor2->current.pos.y + actor2->field_0x56c < actor1->current.pos.y)
+ {
+ return NULL;
+ }
+ if (actor1->current.pos.y >
+ actor2->current.pos.y + (actor2->field_0x56c * dVar9) / (actor2->field_0x568 * 0.9f) + 20.0f)
+ {
+ return NULL;
+ }
+ if (fopAcM_GetProfName(param_1) == PROC_ITEM) {
+ daItem_c* item = (daItem_c*)param_1;
+ item->getItemNo();
+ if (item->getItemNo() <= 3) {
+ int iVar3 = hikiyose(&actor2->current.pos, &actor1->current.pos, &actor1->old.pos,
+ actor2->calcPower(actor2->field_0x568, dVar9));
+ if (iVar3 == 1) {
+ item->startCtrl();
+ } else if (iVar3 == 2) {
+ fopAcM_delete(actor1);
+ }
+ }
+ return NULL;
+ }
+ if (fopAcM_GetProfName(param_1) == PROC_Obj_Carry) {
+ daObjCarry_c* carry = (daObjCarry_c*)param_1;
+ if (carry->getType() == 7 || carry->getType() == 1 || carry->getType() == 5) {
+ int iVar3 = hikiyose(&actor2->current.pos, &carry->current.pos, &carry->old.pos, actor2->calcPower(actor2->field_0x568, dVar9));
+ if (iVar3 == 1) {
+ carry->startCtrl();
+ } else if (iVar3 == 2) {
+ fopAcM_delete(carry);
+ }
+ }
+ return NULL;
+ }
+ if (param_1 == daPy_getPlayerActorClass()) {
+ daPy_py_c* player = daPy_getPlayerActorClass();
+ cXyz local_58 = actor2->current.pos - player->current.pos;
+ if (local_58.getSquareMag() >= actor2->getPower()) {
+ s16 sVar6 = cM_atan2s(local_58.x, local_58.z);
+ if (!player->checkPlayerFly()) {
+ player->setOutPower(actor2->calcPower(actor2->field_0x568, dVar9), sVar6, 0);
+ }
+ }
+ return NULL;
+ }
+
+ return NULL;
}
-/* ############################################################################################## */
-/* 80D5ED40-80D5ED44 000060 0004+00 0/1 0/0 0/0 .rodata @4090 */
-#pragma push
-#pragma force_active on
-SECTION_RODATA static f32 const lit_4090 = -1.0f;
-COMPILER_STRIP_GATE(0x80D5ED40, &lit_4090);
-#pragma pop
-
/* 80D5E9F8-80D5EBF8 000BF8 0200+00 1/1 0/0 0/0 .text execute__9daTagQs_cFv */
-void daTagQs_c::execute() {
- // NONMATCHING
+int daTagQs_c::execute() {
+ fopAcM_Search(search, this);
+ if (getSwNo() != 0xff) {
+ int bossLife;
+ if (fopAcM_isSwitch(this, getSwNo())) {
+ field_0x570++;
+ if (field_0x570 > 30) {
+ field_0x570 = 30;
+ }
+ field_0x574 = 0;
+ bossLife = (field_0x570 * 100.0f) / 30.0f;
+ if (getType() == 0) {
+ Z2GetAudioMgr()->seStartLevel(Z2SE_ENV_QUICKSAND_LOOP, &current.pos, 0,
+ dComIfGp_getReverb(fopAcM_GetRoomNo(this)), 1.0f,
+ 1.0f, -1.0f, -1.0f, 0);
+ }
+ } else {
+ field_0x574++;
+ if (field_0x574 > 30) {
+ field_0x574 = 30;
+ }
+ field_0x570 = 0;
+ bossLife = 100.0f - field_0x574 * 100.0f / 30.0f;
+ }
+ dComIfGs_BossLife_public_Set(bossLife);
+ } else {
+ if (getType() == 0) {
+ Z2GetAudioMgr()->seStartLevel(Z2SE_ENV_QUICKSAND_LOOP, &current.pos, 0,
+ dComIfGp_getReverb(fopAcM_GetRoomNo(this)), 1.0f, 1.0f,
+ -1.0f, -1.0f, 0);
+ }
+ }
+ return 1;
}
/* 80D5EBF8-80D5EC00 000DF8 0008+00 1/1 0/0 0/0 .text draw__9daTagQs_cFv */
-bool daTagQs_c::draw() {
- return true;
+int daTagQs_c::draw() {
+ return 1;
}
/* 80D5EC00-80D5EC20 000E00 0020+00 1/0 0/0 0/0 .text daTagQs_Draw__FP9daTagQs_c */
-static void daTagQs_Draw(daTagQs_c* param_0) {
- // NONMATCHING
+static int daTagQs_Draw(daTagQs_c* i_this) {
+ return i_this->draw();
}
/* 80D5EC20-80D5EC40 000E20 0020+00 1/0 0/0 0/0 .text daTagQs_Execute__FP9daTagQs_c */
-static void daTagQs_Execute(daTagQs_c* param_0) {
- // NONMATCHING
+static int daTagQs_Execute(daTagQs_c* i_this) {
+ return i_this->execute();
}
/* 80D5EC40-80D5EC48 000E40 0008+00 1/0 0/0 0/0 .text daTagQs_IsDelete__FP9daTagQs_c */
-static bool daTagQs_IsDelete(daTagQs_c* param_0) {
- return true;
+static int daTagQs_IsDelete(daTagQs_c* i_this) {
+ return 1;
}
/* 80D5EC48-80D5EC70 000E48 0028+00 1/0 0/0 0/0 .text daTagQs_Delete__FP9daTagQs_c */
-static void daTagQs_Delete(daTagQs_c* param_0) {
- // NONMATCHING
+static int daTagQs_Delete(daTagQs_c* i_this) {
+ i_this->~daTagQs_c();
+ return 1;
}
/* 80D5EC70-80D5EC90 000E70 0020+00 1/0 0/0 0/0 .text daTagQs_Create__FP10fopAc_ac_c */
-static void daTagQs_Create(fopAc_ac_c* param_0) {
- // NONMATCHING
+static int daTagQs_Create(fopAc_ac_c* i_this) {
+ return static_cast<daTagQs_c*>(i_this)->create();
}
-/* 80D5EC90-80D5ECD8 000E90 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
-// cCcD_GStts::~cCcD_GStts() {
-extern "C" void __dt__10cCcD_GSttsFv() {
- // NONMATCHING
-} \ No newline at end of file
+/* 80D5ED88-80D5EDA8 -00001 0020+00 1/0 0/0 0/0 .data l_daTagQs_Method */
+static actor_method_class l_daTagQs_Method = {
+ (process_method_func)daTagQs_Create, (process_method_func)daTagQs_Delete,
+ (process_method_func)daTagQs_Execute, (process_method_func)daTagQs_IsDelete,
+ (process_method_func)daTagQs_Draw,
+};
+
+/* 80D5EDA8-80D5EDD8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_TAG_QS */
+extern actor_process_profile_definition g_profile_TAG_QS = {
+ fpcLy_CURRENT_e,
+ 7,
+ fpcPi_CURRENT_e,
+ PROC_TAG_QS,
+ &g_fpcLf_Method.mBase,
+ sizeof(daTagQs_c),
+ 0,
+ 0,
+ &g_fopAc_Method.base,
+ 274,
+ &l_daTagQs_Method,
+ 0x40000,
+ fopAc_ACTOR_e,
+ fopAc_CULLBOX_0_e,
+};
diff --git a/src/d/d_menu_collect.cpp b/src/d/d_menu_collect.cpp
index 57bc52ac28..61d8f4106e 100644
--- a/src/d/d_menu_collect.cpp
+++ b/src/d/d_menu_collect.cpp
@@ -20,6 +20,8 @@
#include "d/d_msg_object.h"
#include "d/d_msg_string.h"
#include "d/d_pane_class.h"
+#include "d/d_item.h"
+#include "d/d_lib.h"
#include "dol2asm.h"
#include "dolphin/os.h"
#include "dolphin/types.h"
@@ -389,69 +391,6 @@ SECTION_DATA static void* brk_name_7688[4] = {
(void*)(((char*)&d_menu_d_menu_collect__stringBase0) + 0x1B2),
};
-/* 803BC75C-803BC768 01987C 000C+00 2/2 0/0 0/0 .data __vt__15dMenu_Collect_c */
-SECTION_DATA extern void* __vt__15dMenu_Collect_c[3] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__15dMenu_Collect_cFv,
-};
-
-/* 803BC768-803BC790 019888 0010+18 2/2 0/0 0/0 .data __vt__20dMenu_Collect2DTop_c */
-SECTION_DATA extern void* __vt__20dMenu_Collect2DTop_c[4 + 6 /* padding */] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)draw__20dMenu_Collect2DTop_cFv,
- (void*)__dt__20dMenu_Collect2DTop_cFv,
- /* padding */
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
-};
-
-/* 803BC790-803BC7C4 0198B0 000C+28 2/2 0/0 0/0 .data __vt__17dMenu_Collect3D_c */
-SECTION_DATA extern void* __vt__17dMenu_Collect3D_c[3 + 10 /* padding */] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)__dt__17dMenu_Collect3D_cFv,
- /* padding */
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
-};
-
-/* 803BC7C4-803BC7E0 0198E4 0010+0C 2/2 0/0 0/0 .data __vt__17dMenu_Collect2D_c */
-SECTION_DATA extern void* __vt__17dMenu_Collect2D_c[4 + 3 /* padding */] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)draw__17dMenu_Collect2D_cFv,
- (void*)__dt__17dMenu_Collect2D_cFv,
- /* padding */
- NULL,
- NULL,
- NULL,
-};
-
-/* 80453F28-80453F2C 002528 0004+00 14/14 0/0 0/0 .sdata2 @4481 */
-SECTION_SDATA2 static u8 lit_4481[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-
-/* 80453F2C-80453F30 00252C 0004+00 15/15 0/0 0/0 .sdata2 @4482 */
-SECTION_SDATA2 static f32 lit_4482 = 1.0f;
-
/* 801AFD48-801AFE34 1AA688 00EC+00 1/1 0/0 0/0 .text
* __ct__17dMenu_Collect2D_cFP10JKRExpHeapP9STControlP10CSTControl */
dMenu_Collect2D_c::dMenu_Collect2D_c(JKRExpHeap* param_0, STControl* param_1, CSTControl* param_2) {
@@ -507,7 +446,7 @@ void dMenu_Collect2D_c::_create() {
mpBlackTex = new J2DPicture(image);
mpBlackTex->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255));
mpBlackTex->setAlpha(0);
- mpDrawCursor = new dSelect_cursor_c(2, lit_4482, NULL);
+ mpDrawCursor = new dSelect_cursor_c(2, 1.0f, NULL);
mpString = new dMsgString_c();
mpSaveScrn = NULL;
mpOptionScrn = NULL;
@@ -723,15 +662,7 @@ static const u64 text_b_tag_4778[5] = {
};
#pragma pop
-/* 80453F30-80453F34 002530 0004+00 2/2 0/0 0/0 .sdata2 @5173 */
-SECTION_SDATA2 static f32 lit_5173 = 0.5f;
-
-/* 80453F34-80453F38 002534 0004+00 2/2 0/0 0/0 .sdata2 @5174 */
-SECTION_SDATA2 static f32 lit_5174 = -1000.0f;
-
/* 801B074C-801B1C3C 1AB08C 14F0+00 1/1 0/0 0/0 .text screenSet__17dMenu_Collect2D_cFv */
-// issues with addi instructions
-#ifdef NONMATCHING
void dMenu_Collect2D_c::screenSet() {
static_cast<J2DTextBox*>(mpScreen->search('f_t00'))->setFont(mDoExt_getRubyFont());
static_cast<J2DTextBox*>(mpScreen->search('f_t00'))->setString(0x20, "");
@@ -748,8 +679,8 @@ void dMenu_Collect2D_c::screenSet() {
0x60, static_cast<J2DTextBox*>(mpScreen->search(ftext_sv[i]))->getStringPtr(), NULL);
dMeter2Info_getStringKanji(
0x5F, static_cast<J2DTextBox*>(mpScreen->search(ftext_op[i]))->getStringPtr(), NULL);
- mpScreen->search(ftext_sv[i])->hide();
- mpScreen->search(ftext_op[i])->hide();
+ mpScreen->search(text_sv[i])->hide();
+ mpScreen->search(text_op[i])->hide();
}
for (int i = 0; i < 5; i++) {
@@ -1005,8 +936,8 @@ void dMenu_Collect2D_c::screenSet() {
field_0x1d8[0][3] = field_0x184[0][3] + 0x100;
field_0x1d8[1][3] = field_0x184[1][3] + 0x100;
field_0x1d8[2][3] = 0x5b9;
- field_0x1d8[2][3] = 0x5b1;
- field_0x1d8[3][3] = 0;
+ field_0x1d8[3][3] = 0x5b1;
+ field_0x1d8[4][3] = 0;
field_0x1d8[5][3] = 0;
field_0x1d8[6][3] = 0;
field_0x1d8[0][4] = dMsgObject_getSmellTypeMessageID() + 0x100;
@@ -1103,11 +1034,6 @@ void dMenu_Collect2D_c::screenSet() {
setHeartPiece();
setPohMaxNum(dComIfGs_getPohSpiritNum());
}
-#else
-void dMenu_Collect2D_c::screenSet() {
- // NONMATCHING
-}
-#endif
/* 801B1C3C-801B1CE0 1AC57C 00A4+00 1/1 0/0 0/0 .text animationSet__17dMenu_Collect2D_cFv
*/
@@ -1122,11 +1048,6 @@ void dMenu_Collect2D_c::animationSet() {
field_0x3c = 0.0f;
}
-
-/* ############################################################################################## */
-/* 80453F38-80453F40 002538 0008+00 2/2 0/0 0/0 .sdata2 @5199 */
-SECTION_SDATA2 static f64 lit_5199 = 4503601774854144.0 /* cast s32 to float */;
-
/* 801B1CE0-801B1EDC 1AC620 01FC+00 1/1 0/0 0/0 .text
* btkAnimeLoop0__17dMenu_Collect2D_cFP19J2DAnmTextureSRTKey */
void dMenu_Collect2D_c::btkAnimeLoop0(J2DAnmTextureSRTKey* i_SRTKey) {
@@ -1147,17 +1068,6 @@ void dMenu_Collect2D_c::btkAnimeLoop0(J2DAnmTextureSRTKey* i_SRTKey) {
static_cast<J2DTextBox*>(mpScreen->search('modelbg5'))->setAnimation(i_SRTKey);
}
-
-/* ############################################################################################## */
-/* 80453F40-80453F44 002540 0004+00 1/1 0/0 0/0 .sdata2 @5268 */
-SECTION_SDATA2 static f32 lit_5268 = 150.0f;
-
-/* 80453F44-80453F48 002544 0004+00 1/1 0/0 0/0 .sdata2 @5269 */
-SECTION_SDATA2 static f32 lit_5269 = 1.0f / 5.0f;
-
-/* 80453F48-80453F50 002548 0008+00 1/1 0/0 0/0 .sdata2 @5271 */
-SECTION_SDATA2 static f64 lit_5271 = 4503599627370496.0 /* cast u32 to float */;
-
/* 801B1EDC-801B1FAC 1AC81C 00D0+00 1/1 0/0 0/0 .text setBackAlpha__17dMenu_Collect2D_cFv
*/
void dMenu_Collect2D_c::setBackAlpha() {
@@ -1258,8 +1168,225 @@ SECTION_SDATA2 static f32 lit_5531 = -1.0f;
/* 801B1FAC-801B27EC 1AC8EC 0840+00 1/1 0/0 0/0 .text cursorMove__17dMenu_Collect2D_cFv
*/
+// NONMATCHING
+// goto logic is wrong
void dMenu_Collect2D_c::cursorMove() {
- // NONMATCHING
+ u8 dVar1 = mCursorX;
+ u8 dVar2 = mCursorY;
+ mpStick->checkTrigger();
+ if (mpStick->checkRightTrigger()) {
+ if (mCursorX < 6) {
+ if (mCursorX == 0 && mCursorY == 0 &&
+ field_0x259 >= 3 && field_0x25a < 3)
+ {
+ mCursorX = field_0x259;
+ mCursorY = field_0x25a;
+ } else {
+ do {
+ mCursorX++;
+ if (mCursorX == 6 && mCursorY < 3) {
+ if (field_0x22d[6][0] != 0) {
+ if (getItemTag(6, 0, false) && field_0x22d[6][0] != 0) {
+ mCursorX = 6;
+ mCursorY = 0;
+ }
+ } else {
+ mCursorX = dVar1;
+ mCursorY = dVar2;
+ goto LAB_802ba744;
+ }
+ }
+ if (dVar1 == 4 && dVar2 == 1) {
+ mCursorX = 5;
+ mCursorY = 0;
+ goto LAB_802ba744;
+ }
+ if (getItemTag(mCursorX, mCursorY, true)) {
+ goto LAB_802ba744;
+ }
+ } while (mCursorX < 6);
+ mCursorX = dVar1;
+ }
+ }
+ } else {
+ if (mpStick->checkLeftTrigger() && mCursorX != 0) {
+ if (mCursorX == 6 &&
+ mCursorY == 0 && field_0x259 >= 3 &&
+ field_0x25a < 3)
+ {
+ mCursorX = field_0x259;
+ mCursorY = field_0x25a;
+ } else if (dVar1 == 5 && dVar2 == 0 &&
+ field_0x259 == 4 &&
+ field_0x25a == 1)
+ {
+ mCursorX = field_0x259;
+ mCursorY = field_0x25a;
+ } else {
+ do {
+ mCursorX--;
+ if (getItemTag(mCursorX, mCursorY, true)) {
+ goto LAB_802ba744;
+ }
+ } while (mCursorX != 0);
+ mCursorX = dVar1;
+ }
+ }
+ }
+LAB_802ba744:
+ if (mpStick->checkUpTrigger()) {
+ if (mCursorY != 0) {
+ bool bVar3;
+ restart_loop:
+ do {
+ mCursorY--;
+ if (mCursorY == 2) {
+ u8 local_3c[9] = {3,3,4,3,4,5,4,5,5};
+ u8 local_48[9] = {2,1,2,0,1,2,0,1,0};
+ for (int i = 0; i < 9; i++) {
+ if (getItemTag(local_3c[i], local_48[i], true)) {
+ mCursorX = local_3c[i];
+ mCursorY = local_48[i];
+ break;
+ }
+ }
+ }
+ if (dVar2 == 5) {
+
+ if (dVar1 == 0) {
+ if (field_0x25a < 5) {
+ mCursorX = field_0x259;
+ mCursorY = field_0x25a;
+ break;
+ }
+ bVar3 = false;
+ for (int i = 0; i < 4; i++) {
+ if (getItemTag(i, mCursorY, true)) {
+ mCursorX = i;
+ bVar3 = true;
+ break;
+ }
+ }
+ if (mCursorY == 0) {
+ mCursorX = dVar1;
+ mCursorY = dVar2;
+ bVar3 = true;
+ }
+ if (bVar3) {
+ break;
+ }
+ goto restart_loop;
+ }
+ if (field_0x25a < 5) {
+ mCursorX = field_0x259;
+ mCursorY = field_0x25a;
+ break;
+ }
+ bVar3 = false;
+ for (int i = 3; i < 7; i++) {
+ if (getItemTag(i, mCursorY, true)) {
+ mCursorX = i;
+ bVar3 = true;
+ break;
+ }
+ }
+ if (mCursorY == 0) {
+ mCursorX = dVar1;
+ mCursorY = dVar2;
+ bVar3 = true;
+ }
+ }
+ } while (!bVar3);
+ if (!getItemTag(mCursorX, mCursorY, true)) {
+ if (mCursorY != 0) {
+ goto restart_loop;
+ }
+ }
+ mCursorY = dVar2;
+ }
+ } else {
+ if (mpStick->checkDownTrigger()) {
+ if (mCursorY < 4) {
+ do {
+ mCursorY++;
+ if (mCursorY == 3) {
+ u8 local_50[8] = {3, 2, 3, 1, 2, 0, 1, 0};
+ u8 local_58[8] = {3, 3, 4, 3, 4, 3, 4, 4};
+ for (int i = 0; i < 8; i++) {
+ if (getItemTag(local_50[i], local_58[i], true)) {
+ mCursorX = local_50[i];
+ mCursorY = local_58[i];
+ break;
+ }
+ }
+ }
+ if (getItemTag(mCursorX, mCursorY, true)) {
+ goto LAB_802bab54;
+ }
+ } while (mCursorY < 4);
+ mCursorY = 5;
+ if (mCursorX <= 2) {
+ mCursorX = 0;
+ } else {
+ mCursorX = 1;
+ }
+ } else if (mCursorY == 4) {
+ mCursorY = 5;
+ if (mCursorX <= 3) {
+ mCursorX = 0;
+ } else {
+ mCursorX = 1;
+ }
+ }
+ }
+ }
+LAB_802bab54:
+ if (mCursorX != dVar1 || mCursorY != dVar2) {
+ field_0x259 = dVar1;
+ field_0x25a = dVar2;
+ if ((mCursorX == 1 && mCursorY == 5) || (mCursorX == 0 && mCursorY == 5)) {
+ Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_OPTION, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f,
+ 0);
+ } else {
+ Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
+ }
+ cursorPosSet();
+ setItemNameString(mCursorX, mCursorY);
+ }
+ if (field_0x44[0] != g_drawHIO.mCollectScreen.mUnselectItemScale ||
+ field_0x44[1] != g_drawHIO.mCollectScreen.mSelectItemScale ||
+ field_0x4c[0] != g_drawHIO.mCollectScreen.mUnselectSaveOptionScale ||
+ field_0x4c[1] != g_drawHIO.mCollectScreen.mSelectSaveOptionScale)
+ {
+ field_0x44[0] = g_drawHIO.mCollectScreen.mUnselectItemScale;
+ field_0x44[1] = g_drawHIO.mCollectScreen.mSelectItemScale;
+ field_0x4c[0] = g_drawHIO.mCollectScreen.mUnselectSaveOptionScale;
+ field_0x4c[1] = g_drawHIO.mCollectScreen.mSelectSaveOptionScale;
+ for (int i = 0; i < 7; i++) {
+ for (int j = 0; j < 6; j++) {
+ if (getItemTag(i, j, true)) {
+ J2DPane* pane = mpScreen->search(getItemTag(i, j, true));
+ if ((i != 0 || j != 0) && (i != 6 || j != 0)) {
+ if (j == 5) {
+ if (i == mCursorX && j == mCursorY) {
+ pane->scale(g_drawHIO.mCollectScreen.mSelectSaveOptionScale,
+ g_drawHIO.mCollectScreen.mSelectSaveOptionScale);
+ } else {
+ pane->scale(g_drawHIO.mCollectScreen.mUnselectSaveOptionScale,
+ g_drawHIO.mCollectScreen.mUnselectSaveOptionScale);
+ }
+ } else if (i == mCursorX && j == mCursorY) {
+ pane->scale(g_drawHIO.mCollectScreen.mSelectItemScale,
+ g_drawHIO.mCollectScreen.mSelectItemScale);
+ } else {
+ pane->scale(g_drawHIO.mCollectScreen.mUnselectItemScale,
+ g_drawHIO.mCollectScreen.mUnselectItemScale);
+ }
+ }
+ }
+ }
+ }
+ }
}
/* ############################################################################################## */
@@ -2766,19 +2893,6 @@ void dMenu_Collect3D_c::setJ3D(const char* param_0, const char* param_1, const c
}
#endif
-/* ############################################################################################## */
-/* 80453FB4-80453FB8 0025B4 0004+00 1/1 0/0 0/0 .sdata2 @7505 */
-SECTION_SDATA2 static f32 lit_7505 = -1.0f / 10.0f;
-
-/* 80453FB8-80453FBC 0025B8 0004+00 1/1 0/0 0/0 .sdata2 @7506 */
-SECTION_SDATA2 static f32 lit_7506 = -3.0f / 5.0f;
-
-/* 80453FBC-80453FC0 0025BC 0004+00 1/1 0/0 0/0 .sdata2 @7507 */
-SECTION_SDATA2 static f32 lit_7507 = -2.0f / 5.0f;
-
-/* 80453FC0-80453FC4 0025C0 0004+00 1/1 0/0 0/0 .sdata2 @7508 */
-SECTION_SDATA2 static f32 lit_7508 = -3.0f / 10.0f;
-
/* 801B6D30-801B6E70 1B1670 0140+00 2/2 0/0 0/0 .text set_mtx__17dMenu_Collect3D_cFv */
void dMenu_Collect3D_c::set_mtx() {
f32 scale = 0.0f;
@@ -3154,4 +3268,4 @@ dMenu_Collect2DTop_c::~dMenu_Collect2DTop_c() {
// void dMenu_Collect2D_c::draw() {
extern "C" void draw__17dMenu_Collect2D_cFv() {
// NONMATCHING
-} \ No newline at end of file
+}
diff --git a/src/d/d_menu_option.cpp b/src/d/d_menu_option.cpp
index d09dce3540..05b5a096ec 100644
--- a/src/d/d_menu_option.cpp
+++ b/src/d/d_menu_option.cpp
@@ -1,10 +1,10 @@
//
-// Generated By: dol2asm
-// Translation Unit: d/d_menu_option
+// Option Menu
//
#include "d/d_menu_option.h"
#include "JSystem/JKernel/JKRMemArchive.h"
+#include "JSystem/J2DGraph/J2DAnmLoader.h"
#include "d/d_com_inf_game.h"
#include "d/d_lib.h"
#include "d/d_select_cursor.h"
@@ -15,200 +15,19 @@
#include "d/d_meter_HIO.h"
#include "d/d_meter_haihai.h"
#include "d/d_msg_string.h"
-#include "dol2asm.h"
#include "dolphin/os/OSRtc.h"
#include "dolphin/types.h"
#include "f_op/f_op_msg_mng.h"
#include "m_Do/m_Do_controller_pad.h"
#include "m_Do/m_Do_graphic.h"
#include "string.h"
-#include "JSystem/J2DGraph/J2DAnmLoader.h"
-
-//
-// Forward References:
-//
-
-extern "C" void __ct__14dMenu_Option_cFP10JKRArchiveP9STControl();
-extern "C" void __dt__14dMenu_Option_cFv();
-extern "C" void _create__14dMenu_Option_cFv();
-extern "C" void _delete__14dMenu_Option_cFv();
-extern "C" void _move__14dMenu_Option_cFv();
-extern "C" void _draw__14dMenu_Option_cFv();
-extern "C" void drawHaihai__14dMenu_Option_cFv();
-extern "C" void isSync__14dMenu_Option_cFv();
-extern "C" void checkLeftTrigger__14dMenu_Option_cFv();
-extern "C" void checkRightTrigger__14dMenu_Option_cFv();
-extern "C" void setAnimation__14dMenu_Option_cFv();
-extern "C" void _open__14dMenu_Option_cFv();
-extern "C" void _close__14dMenu_Option_cFv();
-extern "C" void atten_init__14dMenu_Option_cFv();
-extern "C" void atten_move__14dMenu_Option_cFv();
-extern "C" void vib_init__14dMenu_Option_cFv();
-extern "C" void vib_move__14dMenu_Option_cFv();
-extern "C" void sound_init__14dMenu_Option_cFv();
-extern "C" void sound_move__14dMenu_Option_cFv();
-extern "C" void change_init__14dMenu_Option_cFv();
-extern "C" void change_move__14dMenu_Option_cFv();
-extern "C" void confirm_open_init__14dMenu_Option_cFv();
-extern "C" void confirm_open_move__14dMenu_Option_cFv();
-extern "C" void confirm_move_init__14dMenu_Option_cFv();
-extern "C" void confirm_move_move__14dMenu_Option_cFv();
-extern "C" void confirm_select_init__14dMenu_Option_cFv();
-extern "C" void confirm_select_move__14dMenu_Option_cFv();
-extern "C" void confirm_close_init__14dMenu_Option_cFv();
-extern "C" void confirm_close_move__14dMenu_Option_cFv();
-extern "C" void tv_open1_move__14dMenu_Option_cFv();
-extern "C" void tv_open2_move__14dMenu_Option_cFv();
-extern "C" void tv_move_move__14dMenu_Option_cFv();
-extern "C" void tv_close1_move__14dMenu_Option_cFv();
-extern "C" void tv_close2_move__14dMenu_Option_cFv();
-extern "C" void calibration_open1_move__14dMenu_Option_cFv();
-extern "C" void calibration_open2_move__14dMenu_Option_cFv();
-extern "C" void calibration_move_move__14dMenu_Option_cFv();
-extern "C" void calibration_close1_move__14dMenu_Option_cFv();
-extern "C" void calibration_close2_move__14dMenu_Option_cFv();
-extern "C" void menuVisible__14dMenu_Option_cFv();
-extern "C" void menuShow__14dMenu_Option_cFi();
-extern "C" void menuHide__14dMenu_Option_cFi();
-extern "C" void screenSet__14dMenu_Option_cFv();
-extern "C" void setSoundMode__14dMenu_Option_cFUl();
-extern "C" void setAttenString__14dMenu_Option_cFv();
-extern "C" void setVibString__14dMenu_Option_cFv();
-extern "C" void setSoundString__14dMenu_Option_cFv();
-extern "C" void setCursorPos__14dMenu_Option_cFUc();
-extern "C" void setSelectColor__14dMenu_Option_cFUcb();
-extern "C" void getSelectType__14dMenu_Option_cFv();
-extern "C" void changeBarColor__14dMenu_Option_cFb();
-extern "C" void setHIO__14dMenu_Option_cFb();
-extern "C" void cursorAnime__14dMenu_Option_cFf();
-extern "C" void setZButtonString__14dMenu_Option_cFUs();
-extern "C" void changeTVCheck__14dMenu_Option_cFv();
-extern "C" void setAButtonString__14dMenu_Option_cFUs();
-extern "C" void setBButtonString__14dMenu_Option_cFUs();
-extern "C" void isRumbleSupported__14dMenu_Option_cFv();
-extern "C" bool dpdMenuMove__14dMenu_Option_cFv();
-extern "C" void paneResize__14dMenu_Option_cFUx();
-extern "C" void initialize__14dMenu_Option_cFv();
-extern "C" void yesnoMenuMoveAnmInitSet__14dMenu_Option_cFii();
-extern "C" void yesnoMenuMoveAnm__14dMenu_Option_cFv();
-extern "C" void yesnoSelectMoveAnm__14dMenu_Option_cFv();
-extern "C" void yesnoCursorShow__14dMenu_Option_cFv();
-extern "C" void yesNoSelectStart__14dMenu_Option_cFv();
-extern "C" void yesnoSelectAnmSet__14dMenu_Option_cFv();
-extern "C" void yesnoCancelAnmSet__14dMenu_Option_cFv();
-extern "C" void yesnoWakuAlpahAnmInit__14dMenu_Option_cFUcUcUcUc();
-extern "C" void yesnoWakuAlpahAnm__14dMenu_Option_cFUc();
-extern "C" void draw__14dMenu_Option_cFv();
-extern "C" void __sinit_d_menu_option_cpp();
-extern "C" extern char const* const d_menu_d_menu_option__stringBase0;
-
-//
-// External References:
-//
-
-extern "C" void mDoExt_getMesgFont__Fv();
-extern "C" void mDoExt_getRubyFont__Fv();
-extern "C" void create__24mDoDvdThd_mountArchive_cFPCcUcP7JKRHeap();
-extern "C" void fopMsgM_messageGet__FPcUl();
-extern "C" void setNowVibration__14dComIfG_play_cFUc();
-extern "C" void getNowVibration__14dComIfG_play_cFv();
-extern "C" void checkTrigger__9STControlFv();
-extern "C" void checkLeftTrigger__9STControlFv();
-extern "C" void checkRightTrigger__9STControlFv();
-extern "C" void checkUpTrigger__9STControlFv();
-extern "C" void checkDownTrigger__9STControlFv();
-extern "C" void getSound__19dSv_player_config_cFv();
-extern "C" void setSound__19dSv_player_config_cFUc();
-extern "C" void setVibration__19dSv_player_config_cFUc();
-extern "C" void __ct__15dFile_warning_cFP10JKRArchiveUc();
-extern "C" void _move__15dFile_warning_cFv();
-extern "C" void openInit__15dFile_warning_cFv();
-extern "C" void closeInit__15dFile_warning_cFv();
-extern "C" void drawSelf__15dFile_warning_cFv();
-extern "C" void setText__15dFile_warning_cFUl();
-extern "C" void setFontColor__15dFile_warning_cFQ28JUtility6TColorQ28JUtility6TColor();
-extern "C" void __ct__Q28JUtility6TColorFv();
-extern "C" void __ct__16dSelect_cursor_cFUcfP10JKRArchive();
-extern "C" void setPos__16dSelect_cursor_cFffP7J2DPaneb();
-extern "C" void setParam__16dSelect_cursor_cFfffff();
-extern "C" void setScale__16dSelect_cursor_cFf();
-extern "C" void setAlphaRate__16dSelect_cursor_cFf();
-extern "C" void _move__19dMenu_Calibration_cFv();
-extern "C" void dMw_fade_out__5dMw_cFv();
-extern "C" void dMw_fade_in__5dMw_cFv();
-extern "C" void __ct__14dMeterHaihai_cFUc();
-extern "C" void drawHaihai__14dMeterHaihai_cFUcffff();
-extern "C" void getStringKanji__13dMeter2Info_cFUlPcP14JMSMesgEntry_c();
-extern "C" void dMeter2Info_set2DVibration__Fv();
-extern "C" void dMeter2Info_set2DVibrationM__Fv();
-extern "C" void __ct__12dMsgString_cFv();
-extern "C" void __dt__12dMsgString_cFv();
-extern "C" void __ct__8CPaneMgrFv();
-extern "C" void __ct__8CPaneMgrFP9J2DScreenUxUcP10JKRExpHeap();
-extern "C" void __dt__8CPaneMgrFv();
-extern "C" void paneTrans__8CPaneMgrFff();
-extern "C" void
-colorAnime__8CPaneMgrFsQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorUc();
-extern "C" void getGlobalVtxCenter__8CPaneMgrFP7J2DPanebs();
-extern "C" void dPaneClass_showNullPane__FP9J2DScreen();
-extern "C" void show__13CPaneMgrAlphaFv();
-extern "C" void hide__13CPaneMgrAlphaFv();
-extern "C" void setAlphaRate__13CPaneMgrAlphaFf();
-extern "C" void alphaAnime__13CPaneMgrAlphaFsUcUcUc();
-extern "C" void cLib_addCalc2__FPffff();
-extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
-extern "C" void setOutputMode__10Z2AudioMgrFUl();
-extern "C" void* __nw__FUl();
-extern "C" void __dl__FPv();
-extern "C" void getGlbResource__13JKRFileLoaderFPCcP13JKRFileLoader();
-extern "C" void startPatternedRumble__Q210JUTGamePad7CRumbleFPvQ310JUTGamePad7CRumble7ERumbleUl();
-extern "C" void getBounds__7J2DPaneFv();
-extern "C" void setBasePosition__7J2DPaneF15J2DBasePosition();
-extern "C" void animationTransform__7J2DPaneFv();
-extern "C" void __ct__9J2DScreenFv();
-extern "C" void setPriority__9J2DScreenFPCcUlP10JKRArchive();
-extern "C" void draw__9J2DScreenFffPC14J2DGrafContext();
-extern "C" void animation__9J2DScreenFv();
-extern "C" void __ct__10J2DPictureFPC7ResTIMG();
-extern "C" void getStringPtr__10J2DTextBoxCFv();
-extern "C" void setString__10J2DTextBoxFsPCce();
-extern "C" void load__20J2DAnmLoaderDataBaseFPCv();
-extern "C" void __construct_array();
-extern "C" void __ptmf_scall();
-extern "C" void _savegpr_20();
-extern "C" void _savegpr_23();
-extern "C" void _savegpr_24();
-extern "C" void _savegpr_25();
-extern "C" void _savegpr_26();
-extern "C" void _savegpr_27();
-extern "C" void _savegpr_28();
-extern "C" void _savegpr_29();
-extern "C" void _restgpr_20();
-extern "C" void _restgpr_23();
-extern "C" void _restgpr_24();
-extern "C" void _restgpr_25();
-extern "C" void _restgpr_26();
-extern "C" void _restgpr_27();
-extern "C" void _restgpr_28();
-extern "C" void _restgpr_29();
-extern "C" extern void* __vt__12dDlst_base_c[3];
-extern "C" u8 m_gamePad__8mDoCPd_c[16];
-extern "C" u8 m_cpadInfo__8mDoCPd_c[256];
-extern "C" u8 mFader__13mDoGph_gInf_c[4];
-extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
-extern "C" u8 sRumbleSupported__10JUTGamePad[4];
-
-//
-// Declarations:
-//
/* ############################################################################################## */
/* 803BDBA8-803BDBB4 01ACC8 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
-SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
+static u8 cNullVec__6Z2Calc[12] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
-#ifdef NONMATCHING
typedef void (dMenu_Option_c::*initFunc)();
static initFunc init[] = {
&dMenu_Option_c::atten_init, &dMenu_Option_c::vib_init,
@@ -238,423 +57,16 @@ static calibrationFunc calibration_process[] = {
&dMenu_Option_c::calibration_close2_move,
};
-#else
-/* 803BDBB4-803BDBC0 -00001 000C+00 0/1 0/0 0/0 .data @3838 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3838[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)atten_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBC0-803BDBCC -00001 000C+00 0/1 0/0 0/0 .data @3839 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3839[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)vib_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBCC-803BDBD8 -00001 000C+00 0/1 0/0 0/0 .data @3840 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3840[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)sound_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBD8-803BDBE4 -00001 000C+00 0/1 0/0 0/0 .data @3841 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3841[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)change_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBE4-803BDBF0 -00001 000C+00 0/1 0/0 0/0 .data @3842 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3842[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_open_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBF0-803BDBFC -00001 000C+00 0/1 0/0 0/0 .data @3843 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3843[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_move_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDBFC-803BDC08 -00001 000C+00 0/1 0/0 0/0 .data @3844 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3844[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_select_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDC08-803BDC14 -00001 000C+00 0/1 0/0 0/0 .data @3845 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3845[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_close_init__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDC14-803BDC74 01AD34 0060+00 1/2 0/0 0/0 .data init */
-SECTION_DATA static u8 init[96] = {
- 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,
- 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,
-};
-
-/* 803BDC74-803BDC80 -00001 000C+00 0/1 0/0 0/0 .data @3846 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3846[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)atten_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDC80-803BDC8C -00001 000C+00 0/1 0/0 0/0 .data @3847 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3847[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)vib_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDC8C-803BDC98 -00001 000C+00 0/1 0/0 0/0 .data @3848 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3848[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)sound_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDC98-803BDCA4 -00001 000C+00 0/1 0/0 0/0 .data @3849 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3849[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)change_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDCA4-803BDCB0 -00001 000C+00 0/1 0/0 0/0 .data @3850 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3850[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_open_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDCB0-803BDCBC -00001 000C+00 0/1 0/0 0/0 .data @3851 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3851[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_move_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDCBC-803BDCC8 -00001 000C+00 0/1 0/0 0/0 .data @3852 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3852[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_select_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDCC8-803BDCD4 -00001 000C+00 0/1 0/0 0/0 .data @3853 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3853[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)confirm_close_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDCD4-803BDD34 01ADF4 0060+00 1/2 0/0 0/0 .data process */
-SECTION_DATA static u8 process[96] = {
- 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,
- 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,
-};
-
-/* 803BDD34-803BDD40 -00001 000C+00 0/1 0/0 0/0 .data @3854 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3854[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)tv_open1_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDD40-803BDD4C -00001 000C+00 0/1 0/0 0/0 .data @3855 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3855[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)tv_open2_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDD4C-803BDD58 -00001 000C+00 0/1 0/0 0/0 .data @3856 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3856[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)tv_move_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDD58-803BDD64 -00001 000C+00 0/1 0/0 0/0 .data @3857 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3857[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)tv_close1_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDD64-803BDD70 -00001 000C+00 0/1 0/0 0/0 .data @3858 */
+// Unclear why this is created
#pragma push
#pragma force_active on
-SECTION_DATA static void* lit_3858[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)tv_close2_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDD70-803BDDAC 01AE90 003C+00 3/4 0/0 0/0 .data tv_process */
-SECTION_DATA static u8 tv_process[60] = {
- 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-
-/* 803BDDAC-803BDDB8 -00001 000C+00 0/1 0/0 0/0 .data @3859 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3859[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)calibration_open1_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDDB8-803BDDC4 -00001 000C+00 0/1 0/0 0/0 .data @3860 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3860[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)calibration_open2_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDDC4-803BDDD0 -00001 000C+00 0/1 0/0 0/0 .data @3861 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3861[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)calibration_move_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDDD0-803BDDDC -00001 000C+00 0/1 0/0 0/0 .data @3862 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3862[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)calibration_close1_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDDDC-803BDDE8 -00001 000C+00 0/1 0/0 0/0 .data @3863 */
-#pragma push
-#pragma force_active on
-SECTION_DATA static void* lit_3863[3] = {
- (void*)NULL,
- (void*)0xFFFFFFFF,
- (void*)calibration_close2_move__14dMenu_Option_cFv,
-};
-#pragma pop
-
-/* 803BDDE8-803BDE54 01AF08 003C+30 0/1 0/0 0/0 .data calibration_process */
-#pragma push
-#pragma force_active on
-SECTION_DATA static u8 calibration_process[60 + 48 /* padding */] = {
- 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,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
- 0x00,
+static u8 calibration_padding[36 /* padding */] = {
/* padding */
- 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,
+ 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
-#endif
-
-/* 803BDE54-803BDE70 01AF74 0010+0C 2/2 0/0 0/0 .data __vt__14dMenu_Option_c */
-SECTION_DATA extern void* __vt__14dMenu_Option_c[4 + 3 /* padding */] = {
- (void*)NULL /* RTTI */,
- (void*)NULL,
- (void*)draw__14dMenu_Option_cFv,
- (void*)__dt__14dMenu_Option_cFv,
- /* padding */
- NULL,
- NULL,
- NULL,
-};
/* 801E1F10-801E2014 1DC850 0104+00 0/0 2/2 0/0 .text
* __ct__14dMenu_Option_cFP10JKRArchiveP9STControl */
@@ -676,103 +88,51 @@ dMenu_Option_c::~dMenu_Option_c() {}
static const u32 dMo_soundMode[3] = {0, 1, 2};
/* 80396EB8-80396EE0 023518 0028+00 0/1 0/0 0/0 .rodata text_a_tag$3904 */
-#pragma push
-#pragma force_active on
static const u64 text_a_tag_3904[5] = {
'atext1_1', 'atext1_2', 'atext1_3', 'atext1_4', 'atext1_5',
};
-#pragma pop
/* 80396EE0-80396F08 023540 0028+00 0/1 0/0 0/0 .rodata text_b_tag$3905 */
-#pragma push
-#pragma force_active on
static const u64 text_b_tag_3905[5] = {
'btext1_1', 'btext1_2', 'btext1_3', 'btext1_4', 'btext1_5',
};
-#pragma pop
/* 80396F08-80396F18 023568 0010+00 0/1 0/0 0/0 .rodata l_tagName012$3918 */
-#pragma push
-#pragma force_active on
static const u64 l_tagName012[2] = {
'w_no_n',
'w_yes_n',
};
-#pragma pop
/* 80396F18-80396F28 023578 0010+00 0/1 0/0 0/0 .rodata l_tagName013$3919 */
-#pragma push
-#pragma force_active on
static const u64 l_tagName013[2] = {
'w_no_t',
'w_yes_t',
};
-#pragma pop
/* 80396F28-80396F38 023588 0010+00 0/1 0/0 0/0 .rodata l_tagName9$3928 */
-#pragma push
-#pragma force_active on
static const u64 l_tagName9[2] = {
'w_no_m',
'w_yes_m',
};
-#pragma pop
/* 80396F38-80396F48 023598 0010+00 0/1 0/0 0/0 .rodata l_tagName10$3929 */
-#pragma push
-#pragma force_active on
static const u64 l_tagName10[2] = {
'w_no_g',
'w_yes_g',
};
-#pragma pop
/* 80396F48-80396F58 0235A8 0010+00 0/1 0/0 0/0 .rodata l_tagName11$3930 */
-#pragma push
-#pragma force_active on
static const u64 l_tagName11[2] = {
'w_no_gr',
'w_yes_gr',
};
-#pragma pop
-
-/* 803975D8-803975D8 023C38 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_803975D8 = "zelda_option_select_menu.blo";
-SECTION_DEAD static char const* const stringBase_803975F5 = "";
-SECTION_DEAD static char const* const stringBase_803975F6 = "zelda_option_base.blo";
-SECTION_DEAD static char const* const stringBase_8039760C = "zelda_option_menu_text.blo";
-SECTION_DEAD static char const* const stringBase_80397627 = "zelda_option_menu_shadow.blo";
-SECTION_DEAD static char const* const stringBase_80397644 = "zelda_option_check.blo";
-SECTION_DEAD static char const* const stringBase_8039765B = "zelda_collect_soubi_do_icon_parts.blo";
-SECTION_DEAD static char const* const stringBase_80397681 = "tt_block8x8.bti";
-SECTION_DEAD static char const* const stringBase_80397691 = "zelda_file_select_yes_no_window.blo";
-SECTION_DEAD static char const* const stringBase_803976B5 = "zelda_file_select_yes_no_window.bck";
-SECTION_DEAD static char const* const stringBase_803976D9 = "zelda_file_select_yes_no_window.bpk";
-SECTION_DEAD static char const* const stringBase_803976FD = "zelda_file_select_yes_no_window.btk";
-#pragma pop
/* 80454328-8045432C 002928 0002+02 1/1 0/0 0/0 .sdata2 l_msgNum2$3920 */
-SECTION_SDATA2 static u8 l_msgNum2[2 + 2 /* padding */] = {
+static const u8 l_msgNum2[2] = {
0x08,
0x07,
- /* padding */
- 0x00,
- 0x00,
};
-/* 8045432C-80454330 00292C 0004+00 11/11 0/0 0/0 .sdata2 @4068 */
-SECTION_SDATA2 static u8 lit_4068[4] = {
- 0x00,
- 0x00,
- 0x00,
- 0x00,
-};
-
-/* 80454330-80454334 002930 0004+00 18/18 0/0 0/0 .sdata2 @4069 */
-SECTION_SDATA2 static f32 lit_4069 = 1.0f;
-
/* 801E205C-801E2C1C 1DC99C 0BC0+00 1/1 0/0 0/0 .text _create__14dMenu_Option_cFv */
void dMenu_Option_c::_create() {
mpFont = mDoExt_getMesgFont();
@@ -920,7 +280,6 @@ void dMenu_Option_c::_create() {
setHIO(true);
}
-
/* 801E2C1C-801E3408 1DD55C 07EC+00 0/0 3/3 0/0 .text _delete__14dMenu_Option_cFv */
void dMenu_Option_c::_delete() {
delete mpString;
@@ -1100,8 +459,6 @@ void dMenu_Option_c::_delete() {
}
/* 801E3408-801E36CC 1DDD48 02C4+00 0/0 2/2 0/0 .text _move__14dMenu_Option_cFv */
-#ifdef NONMATCHING
-// matches but sinit and literals
void dMenu_Option_c::_move() {
mpStick->checkTrigger();
if (field_0x3ea != 0 && !isRumbleSupported()) {
@@ -1163,25 +520,6 @@ skip:
}
setHIO(false);
}
-#else
-void dMenu_Option_c::_move() {
- // NONMATCHING
-}
-#endif
-
-/* ############################################################################################## */
-/* 80454334-80454338 002934 0004+00 1/1 0/0 0/0 .sdata2 @4442 */
-SECTION_SDATA2 static f32 lit_4442 = 608.0f;
-
-/* 80454338-80454340 002938 0004+04 1/1 0/0 0/0 .sdata2 @4443 */
-SECTION_SDATA2 static f32 lit_4443[1 + 1 /* padding */] = {
- 448.0f,
- /* padding */
- 0.0f,
-};
-
-/* 80454340-80454348 002940 0008+00 1/1 0/0 0/0 .sdata2 @4445 */
-SECTION_SDATA2 static f64 lit_4445 = 4503599627370496.0 /* cast u32 to float */;
/* 801E36CC-801E38CC 1DE00C 0200+00 1/1 1/1 0/0 .text _draw__14dMenu_Option_cFv */
void dMenu_Option_c::_draw() {
@@ -1211,20 +549,6 @@ void dMenu_Option_c::_draw() {
}
}
-
-/* ############################################################################################## */
-/* 80454348-8045434C 002948 0004+00 1/1 0/0 0/0 .sdata2 @4469 */
-SECTION_SDATA2 static f32 lit_4469 = 43.0f / 10.0f;
-
-/* 8045434C-80454350 00294C 0004+00 1/1 0/0 0/0 .sdata2 @4470 */
-SECTION_SDATA2 static f32 lit_4470 = -5.0f;
-
-/* 80454350-80454354 002950 0004+00 5/5 0/0 0/0 .sdata2 @4471 */
-SECTION_SDATA2 static f32 lit_4471 = 0.5f;
-
-/* 80454354-80454358 002954 0004+00 11/11 0/0 0/0 .sdata2 @4472 */
-SECTION_SDATA2 static f32 lit_4472 = -1.0f;
-
/* 801E38CC-801E3A7C 1DE20C 01B0+00 1/1 0/0 0/0 .text drawHaihai__14dMenu_Option_cFv */
void dMenu_Option_c::drawHaihai() {
CPaneMgr pane;
@@ -1251,7 +575,6 @@ void dMenu_Option_c::drawHaihai() {
}
}
-
/* 801E3A7C-801E3AA4 1DE3BC 0028+00 0/0 1/1 0/0 .text isSync__14dMenu_Option_cFv */
bool dMenu_Option_c::isSync() {
if (mpMount != NULL && mpMount->sync() == false) {
@@ -1270,10 +593,6 @@ bool dMenu_Option_c::checkRightTrigger() {
return mpStick->checkRightTrigger();
}
-/* ############################################################################################## */
-/* 80454358-80454360 002958 0008+00 8/8 0/0 0/0 .sdata2 @4520 */
-SECTION_SDATA2 static f64 lit_4520 = 4503601774854144.0 /* cast s32 to float */;
-
/* 801E3AEC-801E3B98 1DE42C 00AC+00 4/4 0/0 0/0 .text setAnimation__14dMenu_Option_cFv */
void dMenu_Option_c::setAnimation() {
s16 frameMax;
@@ -1293,14 +612,6 @@ void dMenu_Option_c::setAnimation() {
field_0x30->setFrame(field_0x3c4);
}
-
-/* ############################################################################################## */
-/* 803975D8-803975D8 023C38 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
-#pragma push
-#pragma force_active on
-SECTION_DEAD static char const* const stringBase_80397721 = "/res/Layout/optres.arc";
-#pragma pop
-
/* 801E3B98-801E3DE0 1DE4D8 0248+00 0/0 2/2 0/0 .text _open__14dMenu_Option_cFv */
bool dMenu_Option_c::_open() {
if (!mpMount) {
@@ -1349,7 +660,6 @@ bool dMenu_Option_c::_open() {
}
}
-
/* 801E3DE0-801E3F6C 1DE720 018C+00 0/0 1/1 0/0 .text _close__14dMenu_Option_cFv */
bool dMenu_Option_c::_close() {
s16 closeFrame = g_drawHIO.mOptionScreen.mCloseFrames;
@@ -1379,7 +689,6 @@ bool dMenu_Option_c::_close() {
}
}
-
/* 801E3F6C-801E3FC4 1DE8AC 0058+00 2/1 0/0 0/0 .text atten_init__14dMenu_Option_cFv */
void dMenu_Option_c::atten_init() {
mpDrawCursor->setAlphaRate(1.0f);
@@ -1388,10 +697,7 @@ void dMenu_Option_c::atten_init() {
setBButtonString(0x3F9);
}
-
/* 801E3FC4-801E41A0 1DE904 01DC+00 1/0 0/0 0/0 .text atten_move__14dMenu_Option_cFv */
-#ifdef NONMATCHING
-// matches but sinit and literals
void dMenu_Option_c::atten_move() {
bool downTrigger = mpStick->checkDownTrigger();
bool leftTrigger = checkLeftTrigger();
@@ -1428,11 +734,6 @@ void dMenu_Option_c::atten_move() {
changeTVCheck();
}
}
-#else
-void dMenu_Option_c::atten_move() {
- // NONMATCHING
-}
-#endif
/* 801E41A0-801E41F8 1DEAE0 0058+00 1/0 0/0 0/0 .text vib_init__14dMenu_Option_cFv */
void dMenu_Option_c::vib_init() {
@@ -1442,10 +743,7 @@ void dMenu_Option_c::vib_init() {
setBButtonString(0x3F9);
}
-
/* 801E41F8-801E4488 1DEB38 0290+00 1/0 0/0 0/0 .text vib_move__14dMenu_Option_cFv */
-#ifdef NONMATCHING
-// matches but sinit and literals
void dMenu_Option_c::vib_move() {
bool upTrigger = mpStick->checkUpTrigger();
bool downTrigger = mpStick->checkDownTrigger();
@@ -1494,11 +792,6 @@ void dMenu_Option_c::vib_move() {
changeTVCheck();
}
}
-#else
-void dMenu_Option_c::vib_move() {
- // NONMATCHING
-}
-#endif
/* 801E4488-801E44E0 1DEDC8 0058+00 1/0 0/0 0/0 .text sound_init__14dMenu_Option_cFv */
void dMenu_Option_c::sound_init() {
@@ -1508,10 +801,7 @@ void dMenu_Option_c::sound_init() {
setBButtonString(0x3F9);
}
-
/* 801E44E0-801E48AC 1DEE20 03CC+00 1/0 0/0 0/0 .text sound_move__14dMenu_Option_cFv */
-#ifdef NONMATCHING
-// matches but sinit and literals
void dMenu_Option_c::sound_move() {
bool upTrigger = mpStick->checkUpTrigger();
mpStick->checkDownTrigger();
@@ -1579,11 +869,6 @@ void dMenu_Option_c::sound_move() {
changeTVCheck();
}
}
-#else
-void dMenu_Option_c::sound_move() {
- // NONMATCHING
-}
-#endif
/* 801E48AC-801E48E8 1DF1EC 003C+00 1/0 0/0 0/0 .text change_init__14dMenu_Option_cFv */
void dMenu_Option_c::change_init() {
@@ -1591,13 +876,7 @@ void dMenu_Option_c::change_init() {
setBButtonString(0x3F9);
}
-/* ############################################################################################## */
-/* 80454360-80454364 002960 0004+00 2/2 0/0 0/0 .sdata2 @4862 */
-SECTION_SDATA2 static f32 lit_4862 = 5.0f;
-
/* 801E48E8-801E4B34 1DF228 024C+00 1/0 0/0 0/0 .text change_move__14dMenu_Option_cFv */
-#ifdef NONMATCHING
-// matches but sinit and literals
void dMenu_Option_c::change_move() {
f32 x = 0.0f;
@@ -1658,11 +937,6 @@ void dMenu_Option_c::change_move() {
field_0x3ef = field_0x3f5;
}
}
-#else
-void dMenu_Option_c::change_move() {
- // NONMATCHING
-}
-#endif
/* 801E4B34-801E4C10 1DF474 00DC+00 1/0 0/0 0/0 .text confirm_open_init__14dMenu_Option_cFv */
void dMenu_Option_c::confirm_open_init() {
@@ -1681,14 +955,6 @@ void dMenu_Option_c::confirm_open_init() {
Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_OPEN, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
}
-
-/* ############################################################################################## */
-/* 80454364-80454368 002964 0004+00 2/2 0/0 0/0 .sdata2 @4893 */
-SECTION_SDATA2 static f32 lit_4893 = 2.0f / 5.0f;
-
-/* 80454368-8045436C 002968 0004+00 2/2 0/0 0/0 .sdata2 @4894 */
-SECTION_SDATA2 static f32 lit_4894 = 1.0f / 10.0f;
-
/* 801E4C10-801E4CE4 1DF550 00D4+00 1/0 0/0 0/0 .text confirm_open_move__14dMenu_Option_cFv */
void dMenu_Option_c::confirm_open_move() {
bool status = mpWarning->getStatus();
@@ -1708,7 +974,6 @@ void dMenu_Option_c::confirm_open_move() {
setAnimation();
}
-
/* 801E4CE4-801E4D20 1DF624 003C+00 1/0 0/0 0/0 .text confirm_move_init__14dMenu_Option_cFv */
void dMenu_Option_c::confirm_move_init() {
setAButtonString(0x40C);
@@ -1752,10 +1017,8 @@ void dMenu_Option_c::confirm_move_move() {
setAnimation();
}
-
/* 801E4E98-801E4E9C 1DF7D8 0004+00 1/0 0/0 0/0 .text confirm_select_init__14dMenu_Option_cFv */
void dMenu_Option_c::confirm_select_init() {
- /* empty function */
}
/* 801E4E9C-801E4F18 1DF7DC 007C+00 1/0 0/0 0/0 .text confirm_select_move__14dMenu_Option_cFv */
@@ -1781,17 +1044,6 @@ void dMenu_Option_c::confirm_close_init() {
Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
}
-
-/* ############################################################################################## */
-/* 8045436C-80454370 00296C 0004+00 2/2 0/0 0/0 .sdata2 @5026 */
-SECTION_SDATA2 static f32 lit_5026 = 101.0f / 100.0f;
-
-/* 80454370-80454374 002970 0004+00 2/2 0/0 0/0 .sdata2 @5027 */
-SECTION_SDATA2 static f32 lit_5027 = 17.0f / 20.0f;
-
-/* 80454374-80454378 002974 0004+00 2/2 0/0 0/0 .sdata2 @5028 */
-SECTION_SDATA2 static f32 lit_5028 = 1.0f / 50.0f;
-
/* 801E4FB0-801E51CC 1DF8F0 021C+00 1/0 0/0 0/0 .text confirm_close_move__14dMenu_Option_cFv */
void dMenu_Option_c::confirm_close_move() {
bool status = mpWarning->getStatus();
@@ -1835,7 +1087,6 @@ void dMenu_Option_c::confirm_close_move() {
setAnimation();
}
-
/* 801E51CC-801E5244 1DFB0C 0078+00 1/0 0/0 0/0 .text tv_open1_move__14dMenu_Option_cFv
*/
void dMenu_Option_c::tv_open1_move() {
@@ -1849,7 +1100,6 @@ void dMenu_Option_c::tv_open1_move() {
}
}
-
/* 801E5244-801E5260 1DFB84 001C+00 1/0 0/0 0/0 .text tv_open2_move__14dMenu_Option_cFv
*/
void dMenu_Option_c::tv_open2_move() {
@@ -1870,7 +1120,6 @@ void dMenu_Option_c::tv_move_move() {
}
}
-
/* 801E5300-801E5364 1DFC40 0064+00 1/0 0/0 0/0 .text tv_close1_move__14dMenu_Option_cFv
*/
void dMenu_Option_c::tv_close1_move() {
@@ -1987,345 +1236,222 @@ void dMenu_Option_c::menuHide(int index) {
/* ############################################################################################## */
/* 80396F58-80396F88 0235B8 0030+00 0/1 0/0 0/0 .rodata tag_frame$5201 */
-#pragma push
-#pragma force_active on
static const u64 tag_frame[6] = {
'flame_00', 'flame_01', 'flame_02', 'flame_03', 'flame_04', 'flame_05',
};
-#pragma pop
/* 80396F88-80396FB8 0235E8 0030+00 0/1 0/0 0/0 .rodata tag_menu0$5202 */
-#pragma push
-#pragma force_active on
static const u64 tag_menu0[6] = {
'fenu_t0', 'fenu_t1', 'fenu_t2', 'fenu_t3', 'fenu_t4', 'fenu_t5',
};
-#pragma pop
/* 80396FB8-80396FE8 023618 0030+00 0/1 0/0 0/0 .rodata let_n$5214 */
-#pragma push
-#pragma force_active on
static const u64 let_n[6] = {
'let_00_n', 'let_01_n', 'let_02_n', 'let_03_n', 'let_04_n', 'let_05_n',
};
-#pragma pop
/* 80396FE8-80397018 023648 0030+00 0/1 0/0 0/0 .rodata let2_n$5215 */
-#pragma push
-#pragma force_active on
static const u64 let2_n[6] = {
'let_00_n', 'let_01_n', 'let_02_n', 'let_03_n', 'let_04_n',
};
-#pragma pop
/* 80397018-80397048 023678 0030+00 0/1 0/0 0/0 .rodata menu_n$5216 */
-#pragma push
-#pragma force_active on
static const u64 menu_n[6] = {
'menu_n0', 'menu_n1', 'menu_n2', 'menu_n3', 'menu_n4', 'menu_n5',
};
-#pragma pop
/* 80397048-80397078 0236A8 0030+00 0/1 0/0 0/0 .rodata menu2_n$5217 */
-#pragma push
-#pragma force_active on
static const u64 menu2_n[6] = {
'mw_n_0', 'mw_n_1', 'mw_n_2', 'mw_n_3', 'mw_n_4',
};
-#pragma pop
/* 80397078-803970A8 0236D8 0030+00 0/1 0/0 0/0 .rodata al0_n$5218 */
-#pragma push
-#pragma force_active on
static const u64 al0_n[6] = {
's_grr_00', 's_grr_01', 's_grr_02', 's_grr_03', 's_grr_04', 's_grr_05',
};
-#pragma pop
/* 803970A8-803970D8 023708 0030+00 0/1 0/0 0/0 .rodata al1_n$5219 */
-#pragma push
-#pragma force_active on
static const u64 al1_n[6] = {
'c_grr_00', 'c_grr_01', 'c_grr_02', 'c_grr_03', 'c_grr_04', 'c_grr_05',
};
-#pragma pop
/* 803970D8-80397108 023738 0030+00 0/1 0/0 0/0 .rodata al2_n$5220 */
-#pragma push
-#pragma force_active on
static const u64 al2_n[6] = {
's_grl_00', 's_grl_01', 's_grl_02', 's_grl_03', 's_grl_04', 's_grl_05',
};
-#pragma pop
/* 80397108-80397138 023768 0030+00 0/1 0/0 0/0 .rodata al3_n$5221 */
-#pragma push
-#pragma force_active on
static const u64 al3_n[6] = {
'c_grl_00', 'c_grl_01', 'c_grl_02', 'c_grl_03', 'c_grl_04', 'c_grl_05',
};
-#pragma pop
/* 80397138-80397160 023798 0028+00 0/1 0/0 0/0 .rodata haihail_n$5238 */
-#pragma push
-#pragma force_active on
static const u64 haihail_n[5] = {
'y_set_l0', 'y_set_l1', 'y_set_l2', 'y_set_l3', 'y_set_l4',
};
-#pragma pop
/* 80397160-80397188 0237C0 0028+00 0/1 0/0 0/0 .rodata haihair_n$5239 */
-#pragma push
-#pragma force_active on
static const u64 haihair_n[5] = {
'y_set_r0', 'y_set_r1', 'y_set_r2', 'y_set_r3', 'y_set_r4',
};
-#pragma pop
/* 80397188-803971B8 0237E8 0030+00 0/1 0/0 0/0 .rodata menu3_n$5256 */
-#pragma push
-#pragma force_active on
static const u64 menu3_n[6] = {
'menuapn0', 'menuapn1', 'menuapn2', 'menuapn3', 'menuapn4',
};
-#pragma pop
/* 803971B8-803971E0 023818 0028+00 0/1 0/0 0/0 .rodata tv_btnA$5275 */
-#pragma push
-#pragma force_active on
static const u64 tv_btnA[5] = {
'cont_at1', 'cont_at2', 'cont_at3', 'cont_at4', 'cont_at',
};
-#pragma pop
/* 803971E0-80397208 023840 0028+00 0/1 0/0 0/0 .rodata ftv_btnA$5276 */
-#pragma push
-#pragma force_active on
static const u64 ftv_btnA[5] = {
'font_a1', 'font_at2', 'font_at3', 'font_at4', 'font_at',
};
-#pragma pop
/* 80397208-80397218 023868 0010+00 0/1 0/0 0/0 .rodata fenu_t0$5282 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t0[2] = {
'fenu_t0s',
'fenu_t0',
};
-#pragma pop
/* 80397218-80397228 023878 0010+00 0/1 0/0 0/0 .rodata menu_t0$5283 */
-#pragma push
-#pragma force_active on
static const u64 menu_t0[2] = {
'menu_t0s',
'menu_t0',
};
-#pragma pop
/* 80397228-80397238 023888 0010+00 0/1 0/0 0/0 .rodata fenu_t2$5289 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t2[2] = {
'fenu_t1s',
'fenu_t1',
};
-#pragma pop
/* 80397238-80397248 023898 0010+00 0/1 0/0 0/0 .rodata menu_t2$5290 */
-#pragma push
-#pragma force_active on
static const u64 menu_t2[2] = {
'menu_t1s',
'menu_t1',
};
-#pragma pop
/* 80397248-80397258 0238A8 0010+00 0/1 0/0 0/0 .rodata fenu_t3$5296 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t3[2] = {'fenu_t2s', 'fenu_t2'};
-#pragma pop
/* 80397258-80397268 0238B8 0010+00 0/1 0/0 0/0 .rodata menu_t3$5297 */
-#pragma push
-#pragma force_active on
static const u64 menu_t3[2] = {
'menu_t2s',
'menu_t2',
};
-#pragma pop
/* 80397268-80397278 0238C8 0010+00 0/1 0/0 0/0 .rodata fenu_t4$5303 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t4[2] = {
'fenu_t3s',
'fenu_t3',
};
-#pragma pop
/* 80397278-80397288 0238D8 0010+00 0/1 0/0 0/0 .rodata menu_t4$5304 */
-#pragma push
-#pragma force_active on
static const u64 menu_t4[2] = {
'menu_t3s',
'menu_t3',
};
-#pragma pop
/* 80397288-80397298 0238E8 0010+00 0/1 0/0 0/0 .rodata fenu_t1$5310 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t1[2] = {
'fenu_t4s',
'fenu_t4',
};
-#pragma pop
/* 80397298-803972A8 0238F8 0010+00 0/1 0/0 0/0 .rodata menu_t1$5311 */
-#pragma push
-#pragma force_active on
static const u64 menu_t1[2] = {
'menu_t4s',
'menu_t4',
};
-#pragma pop
/* 803972A8-803972B8 023908 0010+00 0/1 0/0 0/0 .rodata fenu_t5$5317 */
-#pragma push
-#pragma force_active on
static const u64 fenu_t5[2] = {
'fenu_t5s',
'fenu_t5',
};
-#pragma pop
/* 803972B8-803972C8 023918 0010+00 0/1 0/0 0/0 .rodata menu_t5$5318 */
-#pragma push
-#pragma force_active on
static const u64 menu_t5[2] = {
'menu_t5s',
'menu_t5',
};
-#pragma pop
/* 803972C8-803972F8 023928 0030+00 0/1 0/0 0/0 .rodata menut_0$5324 */
-#pragma push
-#pragma force_active on
static const u64 menut_0[6] = {
'menut0as', 'menut0a', 'menut0a2', 'menut0a1', 'menut0a4', 'menut0a3',
};
-#pragma pop
/* 803972F8-80397328 023958 0030+00 0/1 0/0 0/0 .rodata fenut_0$5325 */
-#pragma push
-#pragma force_active on
static const u64 fenut_0[6] = {
'menut010', 'menut0a9', 'menut0a8', 'menut0a7', 'menut0a6', 'menut0a5',
};
-#pragma pop
/* 80397328-80397358 023988 0030+00 0/1 0/0 0/0 .rodata menut_1$5332 */
-#pragma push
-#pragma force_active on
static const u64 menut_1[6] = {
'menut1as', 'menut1a', 'menut1a2', 'menut1a1', 'menut1a4', 'menut1a3',
};
-#pragma pop
/* 80397358-80397388 0239B8 0030+00 0/1 0/0 0/0 .rodata fenut_1$5333 */
-#pragma push
-#pragma force_active on
static const u64 fenut_1[6] = {
'menut110', 'menut1a9', 'menut1a8', 'menut1a7', 'menut1a6', 'menut1a5',
};
-#pragma pop
/* 80397388-803973B8 0239E8 0030+00 0/1 0/0 0/0 .rodata menut_2$5340 */
-#pragma push
-#pragma force_active on
static const u64 menut_2[6] = {
'menut2as', 'menut2a', 'menut2a2', 'menut2a1', 'menut2a4', 'menut2a3',
};
-#pragma pop
/* 803973B8-803973E8 023A18 0030+00 0/1 0/0 0/0 .rodata fenut_2$5341 */
-#pragma push
-#pragma force_active on
static const u64 fenut_2[6] = {
'menut210', 'menut2a9', 'menut2a8', 'menut2a7', 'menut2a6', 'menut2a5',
};
-#pragma pop
/* 803973E8-80397418 023A48 0030+00 0/1 0/0 0/0 .rodata menut_3$5348 */
-#pragma push
-#pragma force_active on
static const u64 menut_3[6] = {
'menut3a5', 'menut3a6', 'menut3a7', 'menut3a8', 'menut3a9', 'menut310',
};
-#pragma pop
/* 80397418-80397448 023A78 0030+00 0/1 0/0 0/0 .rodata fenut_3$5349 */
-#pragma push
-#pragma force_active on
static const u64 fenut_3[6] = {
'menut315', 'menut314', 'menut313', 'menut312', 'menut311', 'menut001',
};
-#pragma pop
/* 80397448-80397478 023AA8 0030+00 0/1 0/0 0/0 .rodata menut_4$5356 */
-#pragma push
-#pragma force_active on
static const u64 menut_4[6] = {
'menut3as', 'menut3a', 'menut3a2', 'menut3a1', 'menut3a4', 'menut3a3',
};
-#pragma pop
/* 80397478-803974A8 023AD8 0030+00 0/1 0/0 0/0 .rodata fenut_4$5357 */
-#pragma push
-#pragma force_active on
static const u64 fenut_4[6] = {
'menut321', 'menut320', 'menut319', 'menut318', 'menut317', 'menut316',
};
-#pragma pop
/* 803974A8-803974D8 023B08 0030+00 0/1 0/0 0/0 .rodata tx$5381 */
-#pragma push
-#pragma force_active on
static const u64 tx[6] = {
'w_p_tex5', 'w_p_tex6', 'w_p_tex3', 'w_p_tex4', 'fps_tex1', 'f_p_tex1',
};
-#pragma pop
/* 803974D8-803974F8 023B38 0020+00 0/0 0/0 0/0 .rodata op_tx$5393 */
-#pragma push
-#pragma force_active on
static const u64 op_tx[4] = {
'w_text_n',
'w_btn_n',
'w_k_t_n',
'w_abtn_n',
};
-#pragma pop
/* 803974F8-80397510 023B58 0018+00 0/1 0/0 0/0 .rodata z_tx$5399 */
-#pragma push
-#pragma force_active on
static const u64 z_tx[3] = {
'z_gc_n',
};
-#pragma pop
/* 80397510-80397560 023B70 0050+00 0/1 0/0 0/0 .rodata txTV$5409 */
-#pragma push
-#pragma force_active on
static const u64 txTV[10] = {
'menu_t61', 'menu_t2', 'menu_t91', 'menu_t1', 'menut101',
'menu_t01', 'menu_t71', 'menu_t3', 'menu_t81', 'menu_t4',
};
-#pragma pop
/* 801E5678-801E6FBC 1DFFB8 1944+00 1/1 0/0 0/0 .text screenSet__14dMenu_Option_cFv */
void dMenu_Option_c::screenSet() {
@@ -2569,7 +1695,6 @@ void dMenu_Option_c::screenSet() {
}
}
-
/* 801E6FBC-801E7004 1E18FC 0048+00 2/2 0/0 0/0 .text setSoundMode__14dMenu_Option_cFUl
*/
void dMenu_Option_c::setSoundMode(u32 param_0) {
@@ -2871,14 +1996,10 @@ void dMenu_Option_c::changeTVCheck() {
}
}
-
/* 80397560-80397588 023BC0 0028+00 0/0 0/0 0/0 .rodata txTVhide$5410 */
-#pragma push
-#pragma force_active on
static const u64 txTVhide[5] = {
'menu_6n', 'menu_9n', 'menu_10n', 'menu_7n', 'menu_8n',
};
-#pragma pop
/* 80397588-803975B0 023BE8 0028+00 1/1 0/0 0/0 .rodata text_a_tag$6194 */
static const u64 text_a_tag_6194[5] = {
@@ -2890,22 +2011,20 @@ void dMenu_Option_c::setAButtonString(u16 i_stringID) {
u32 stringId = i_stringID;
if (stringId != field_0x3dc) {
field_0x3dc = i_stringID;
- }
-
- if (stringId == 0) {
- for (int i = 0; i < 5; i++) {
- J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_a_tag_6194[i]);
- strcpy(textBox->getStringPtr(), "");
- }
- } else {
- for (int i = 0; i < 5; i++) {
- J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_a_tag_6194[i]);
- dMeter2Info_getStringKanji(stringId, textBox->getStringPtr(), NULL);
+ if (stringId == 0) {
+ for (int i = 0; i < 5; i++) {
+ J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_a_tag_6194[i]);
+ strcpy(textBox->getStringPtr(), "");
+ }
+ } else {
+ for (int i = 0; i < 5; i++) {
+ J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_a_tag_6194[i]);
+ dMeter2Info_getStringKanji(stringId, textBox->getStringPtr(), NULL);
+ }
}
}
}
-
/* 803975B0-803975D8 023C10 0028+00 1/1 0/0 0/0 .rodata text_b_tag$6217 */
static const u64 text_b_tag_6217[5] = {
'btext1_1', 'btext1_2', 'btext1_3', 'btext1_4', 'btext1_5',
@@ -2916,22 +2035,21 @@ void dMenu_Option_c::setBButtonString(u16 i_stringID) {
u32 stringId = i_stringID;
if (stringId != field_0x3de) {
field_0x3de = i_stringID;
- }
- if (stringId == 0) {
- for (int i = 0; i < 5; i++) {
- J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_b_tag_6217[i]);
- strcpy(textBox->getStringPtr(), "");
- }
- } else {
- for (int i = 0; i < 5; i++) {
- J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_b_tag_6217[i]);
- dMeter2Info_getStringKanji(stringId, textBox->getStringPtr(), NULL);
+ if (stringId == 0) {
+ for (int i = 0; i < 5; i++) {
+ J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_b_tag_6217[i]);
+ strcpy(textBox->getStringPtr(), "");
+ }
+ } else {
+ for (int i = 0; i < 5; i++) {
+ J2DTextBox* textBox = (J2DTextBox*)mpScreenIcon->search(text_b_tag_6217[i]);
+ dMeter2Info_getStringKanji(stringId, textBox->getStringPtr(), NULL);
+ }
}
}
}
-
/* 801E80A0-801E80AC 1E29E0 000C+00 4/4 0/0 0/0 .text isRumbleSupported__14dMenu_Option_cFv */
bool dMenu_Option_c::isRumbleSupported() {
return JUTGamePad::sRumbleSupported >> 0x1f;
@@ -2944,26 +2062,21 @@ bool dMenu_Option_c::dpdMenuMove() {
/* ############################################################################################## */
/* 80454378-8045437C 002978 0004+00 1/1 0/0 0/0 .sdata2 @6256 */
-SECTION_SDATA2 static f32 lit_6256 = 10.0f;
+// SECTION_SDATA2 static f32 lit_6256 = 10.0f;
/* 801E80B4-801E8210 1E29F4 015C+00 1/1 0/0 0/0 .text paneResize__14dMenu_Option_cFUx */
-#ifdef NONMATCHING
-// float regswap
void dMenu_Option_c::paneResize(u64 i_tag) {
f32 boundsY = mpClipScreen->search(i_tag)->getBounds().i.y;
f32 boundsX = mpClipScreen->search(i_tag)->getBounds().i.x - 5.0f;
mpClipScreen->search(i_tag)->move(boundsX, boundsY);
- f32 height = mpClipScreen->search(i_tag)->getHeight();
- f32 width = mpClipScreen->search(i_tag)->getWidth();
+ // Fake match
+ JGeometry::TBox2<f32>& bounds = mpClipScreen->search(i_tag)->mBounds;
+ boundsY = bounds.f.y - bounds.i.y;
+ boundsX = mpClipScreen->search(i_tag)->getWidth();
- mpClipScreen->search(i_tag)->resize(width + 10.0f, height);
+ mpClipScreen->search(i_tag)->resize(boundsX + 10.0f, boundsY);
}
-#else
-void dMenu_Option_c::paneResize(u64 param_0) {
- // NONMATCHING
-}
-#endif
/* 801E8210-801E82C4 1E2B50 00B4+00 1/1 1/1 0/0 .text initialize__14dMenu_Option_cFv */
void dMenu_Option_c::initialize() {
@@ -3009,7 +2122,6 @@ void dMenu_Option_c::yesnoMenuMoveAnmInitSet(int param_0, int param_1) {
mpYesNoSelBase_c[1]->getPanePtr()->animationTransform();
}
-
/* 801E8438-801E85D4 1E2D78 019C+00 2/2 0/0 0/0 .text yesnoMenuMoveAnm__14dMenu_Option_cFv */
bool dMenu_Option_c::yesnoMenuMoveAnm() {
bool ret;
@@ -3048,7 +2160,6 @@ bool dMenu_Option_c::yesnoMenuMoveAnm() {
return ret;
}
-
/* 80450730-80450738 0001B0 0008+00 2/2 0/0 0/0 .sdata OptYnSelStartFrameTbl */
static s32 OptYnSelStartFrameTbl[2] = {1251, 1236};
@@ -3121,16 +2232,6 @@ u8 dMenu_Option_c::yesnoSelectMoveAnm() {
return ret;
}
-
-/* 8045437C-80454380 00297C 0004+00 1/1 0/0 0/0 .sdata2 @6507 */
-SECTION_SDATA2 static f32 lit_6507 = 24.0f / 25.0f;
-
-/* 80454380-80454384 002980 0004+00 1/1 0/0 0/0 .sdata2 @6508 */
-SECTION_SDATA2 static f32 lit_6508 = 21.0f / 25.0f;
-
-/* 80454384-80454388 002984 0004+00 1/1 0/0 0/0 .sdata2 @6509 */
-SECTION_SDATA2 static f32 lit_6509 = 3.0f / 50.0f;
-
/* 801E8888-801E89F8 1E31C8 0170+00 2/2 0/0 0/0 .text yesnoCursorShow__14dMenu_Option_cFv
*/
void dMenu_Option_c::yesnoCursorShow() {
@@ -3148,7 +2249,6 @@ void dMenu_Option_c::yesnoCursorShow() {
}
}
-
/* 801E89F8-801E8AC8 1E3338 00D0+00 1/1 0/0 0/0 .text yesNoSelectStart__14dMenu_Option_cFv */
void dMenu_Option_c::yesNoSelectStart() {
if (field_0x3f9 != 0) {
@@ -3164,7 +2264,6 @@ void dMenu_Option_c::yesNoSelectStart() {
}
}
-
/* 801E8AC8-801E8C38 1E3408 0170+00 1/1 0/0 0/0 .text yesnoSelectAnmSet__14dMenu_Option_cFv */
void dMenu_Option_c::yesnoSelectAnmSet() {
if (field_0x3fa != 0xff) {
@@ -3183,7 +2282,6 @@ void dMenu_Option_c::yesnoSelectAnmSet() {
}
}
-
/* 801E8C38-801E8CB0 1E3578 0078+00 2/2 0/0 0/0 .text yesnoCancelAnmSet__14dMenu_Option_cFv */
void dMenu_Option_c::yesnoCancelAnmSet() {
Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_CANCEL, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
@@ -3191,7 +2289,6 @@ void dMenu_Option_c::yesnoCancelAnmSet() {
yesnoMenuMoveAnmInitSet(0x47D, 0x473);
}
-
/* 801E8CB0-801E8CFC 1E35F0 004C+00 1/1 0/0 0/0 .text
* yesnoWakuAlpahAnmInit__14dMenu_Option_cFUcUcUcUc */
void dMenu_Option_c::yesnoWakuAlpahAnmInit(u8 i_idx, u8 param_1, u8 param_2, u8 param_3) {
@@ -3236,23 +2333,3 @@ u8 dMenu_Option_c::yesnoWakuAlpahAnm(u8 i_idx) {
}
return ret;
}
-
-/* 801E8E6C-801E8E8C 1E37AC 0020+00 1/0 0/0 0/0 .text draw__14dMenu_Option_cFv */
-// void dMenu_Option_c::draw() {
-extern "C" void draw__14dMenu_Option_cFv() {
- // NONMATCHING
-}
-
-/* 801E8E8C-801E9118 1E37CC 028C+00 0/0 1/0 0/0 .text __sinit_d_menu_option_cpp */
-#ifdef NONMATCHING
-
-#else
-void __sinit_d_menu_option_cpp(){// NONMATCHING
-}
-
-#pragma push
-#pragma force_active on
-REGISTER_CTORS(0x801E8E8C, __sinit_d_menu_option_cpp);
-#pragma pop
-
-#endif \ No newline at end of file