d_lyt_control_game OK

This commit is contained in:
robojumper
2025-11-23 15:59:09 +01:00
parent 57557d1128
commit 88075f00a9
27 changed files with 1417 additions and 400 deletions
+3 -1
View File
@@ -1712,8 +1712,10 @@ d/lyt/d_lyt_control_game.cpp:
.text start:0x802CC7B0 end:0x802D16A8 align:16
.ctors start:0x804DB8A0 end:0x804DB8A4
.data start:0x805403F8 end:0x80540C88
.sdata start:0x80573EF0 end:0x80573F28
.sbss start:0x80575A00 end:0x80575A18
.bss start:0x805B7DD0 end:0x805B8040
.sdata2 start:0x8057CA68 end:0x8057CAA0
.bss start:0x805B7DD0 end:0x805B8030
d/lyt/d_lyt_control_title.cpp:
.text start:0x802D16B0 end:0x802D17BC align:16
+439 -330
View File
@@ -3565,7 +3565,7 @@ copyQueuedEventToCurrentAndHandleSkipEvent = .text:0x8009EB30; // type:function
fn_8009EEA0 = .text:0x8009EEA0; // type:function size:0x53C
alsoSetAsCurrentEvent__12EventManagerFP9dAcBase_cP5EventPv = .text:0x8009F3E0; // type:function size:0x470
fn_8009F850 = .text:0x8009F850; // type:function size:0x134
fn_8009F990 = .text:0x8009F990; // type:function size:0x80
fn_8009F990__12EventManagerFv = .text:0x8009F990; // type:function size:0x80
fn_8009FA10 = .text:0x8009FA10; // type:function size:0x8
attachSkipEvent = .text:0x8009FA20; // type:function size:0x1A0
setAsEvent = .text:0x8009FBC0; // type:function size:0x120
@@ -3788,12 +3788,12 @@ remove__Q23d2d9AnmGroupsFv = .text:0x800ACA30; // type:function size:0x64
draw__Q23d2d9LytBase_cFv = .text:0x800ACAA0; // type:function size:0x18 scope:weak
fn_800ACAC0 = .text:0x800ACAC0; // type:function size:0x5C
fn_800ACB20 = .text:0x800ACB20; // type:function size:0x40
fn_800ACB60 = .text:0x800ACB60; // type:function size:0x208
fn_800ACD70 = .text:0x800ACD70; // type:function size:0x10
fn_800ACD80 = .text:0x800ACD80; // type:function size:0x3C
fn_800ACDC0 = .text:0x800ACDC0; // type:function size:0xBC
fn_800ACE80 = .text:0x800ACE80; // type:function size:0x10
fn_800ACE90 = .text:0x800ACE90; // type:function size:0x28
build__14dLytDrawMark_cFi = .text:0x800ACB60; // type:function size:0x208
changeState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x800ACD70; // type:function size:0x10
remove__14dLytDrawMark_cFv = .text:0x800ACD80; // type:function size:0x3C
execute__14dLytDrawMark_cFv = .text:0x800ACDC0; // type:function size:0xBC
executeState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x800ACE80; // type:function size:0x10
draw__14dLytDrawMark_cFv = .text:0x800ACE90; // type:function size:0x28
fn_800ACEC0 = .text:0x800ACEC0; // type:function size:0x4
fn_800ACED0 = .text:0x800ACED0; // type:function size:0x4
fn_800ACEE0 = .text:0x800ACEE0; // type:function size:0x4
@@ -7059,7 +7059,7 @@ convertScreenPosToDpdPos__15SelectBtnHelperCFP7mVec2_cP7mVec2_c = .text:0x8011E0
fn_8011E110__15SelectBtnHelperCF7mVec2_c = .text:0x8011E110; // type:function size:0x38
initializeState_Wait__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E150; // type:function size:0x4
executeState_Wait__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E160; // type:function size:0xA4
changeState__98sStateMgr_c<29dLytMsgWindowSelectBtnParts_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8011E210; // type:function size:0x10
changeState__98sStateMgr_c<29dLytMsgWindowSelectBtnParts_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8011E210; // type:function size:0x10 scope:weak
finalizeState_Wait__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E220; // type:function size:0x4
initializeState_On__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E230; // type:function size:0x4
executeState_On__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E240; // type:function size:0xF4
@@ -7072,9 +7072,9 @@ executeState_Off__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E430; // type:
finalizeState_Off__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E500; // type:function size:0x4
init__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E510; // type:function size:0x54
execute__29dLytMsgWindowSelectBtnParts_cFv = .text:0x8011E570; // type:function size:0x4C
executeState__98sStateMgr_c<29dLytMsgWindowSelectBtnParts_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8011E5C0; // type:function size:0x10
executeState__98sStateMgr_c<29dLytMsgWindowSelectBtnParts_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8011E5C0; // type:function size:0x10 scope:weak
requestIn__24dLytMsgWindowSelectBtn_cFlb = .text:0x8011E5D0; // type:function size:0x138
changeState__93sStateMgr_c<24dLytMsgWindowSelectBtn_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8011E710; // type:function size:0x10
changeState__93sStateMgr_c<24dLytMsgWindowSelectBtn_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8011E710; // type:function size:0x10 scope:weak
initializeState_Wait__24dLytMsgWindowSelectBtn_cFv = .text:0x8011E720; // type:function size:0x2C
executeState_Wait__24dLytMsgWindowSelectBtn_cFv = .text:0x8011E750; // type:function size:0x4
finalizeState_Wait__24dLytMsgWindowSelectBtn_cFv = .text:0x8011E760; // type:function size:0x4
@@ -7099,23 +7099,23 @@ finalizeState_Out__24dLytMsgWindowSelectBtn_cFv = .text:0x8011F520; // type:func
build__24dLytMsgWindowSelectBtn_cFPQ23d2d10ResAccIf_c = .text:0x8011F530; // type:function size:0x3E4
remove__24dLytMsgWindowSelectBtn_cFv = .text:0x8011F920; // type:function size:0x84
execute__24dLytMsgWindowSelectBtn_cFv = .text:0x8011F9B0; // type:function size:0x444
executeState__93sStateMgr_c<24dLytMsgWindowSelectBtn_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8011FE00; // type:function size:0x10
executeState__93sStateMgr_c<24dLytMsgWindowSelectBtn_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8011FE00; // type:function size:0x10 scope:weak
draw__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FE10; // type:function size:0x34
getSelectBtnMode__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FE50; // type:function size:0x24
getName__24dLytMsgWindowSelectBtn_cCFv = .text:0x8011FE80; // type:function size:0x8
getLyt__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FE90; // type:function size:0x8
getPane__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FEA0; // type:function size:0x8
finalizeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FEB0; // type:function size:0x30
executeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FEE0; // type:function size:0x30
initializeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FF10; // type:function size:0x30
finalizeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FF40; // type:function size:0x30
executeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FF70; // type:function size:0x30
initializeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FFA0; // type:function size:0x30
__sinit_\d_lyt_msg_window_select_btn_cpp = .text:0x8011FFD0; // type:function size:0x868
__dt__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>Fv = .text:0x80120840; // type:function size:0x58
__dt__39sFStateID_c<24dLytMsgWindowSelectBtn_c>Fv = .text:0x801208A0; // type:function size:0x58
isSameName__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFPCc = .text:0x80120900; // type:function size:0x88
isSameName__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFPCc = .text:0x80120990; // type:function size:0x88
getName__24dLytMsgWindowSelectBtn_cCFv = .text:0x8011FE80; // type:function size:0x8 scope:weak
getLyt__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FE90; // type:function size:0x8 scope:weak
getPane__24dLytMsgWindowSelectBtn_cFv = .text:0x8011FEA0; // type:function size:0x8 scope:weak
finalizeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FEB0; // type:function size:0x30 scope:weak
executeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FEE0; // type:function size:0x30 scope:weak
initializeState__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFR29dLytMsgWindowSelectBtnParts_c = .text:0x8011FF10; // type:function size:0x30 scope:weak
finalizeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FF40; // type:function size:0x30 scope:weak
executeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FF70; // type:function size:0x30 scope:weak
initializeState__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFR24dLytMsgWindowSelectBtn_c = .text:0x8011FFA0; // type:function size:0x30 scope:weak
__sinit_\d_lyt_msg_window_select_btn_cpp = .text:0x8011FFD0; // type:function size:0x868 scope:local
__dt__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>Fv = .text:0x80120840; // type:function size:0x58 scope:weak
__dt__39sFStateID_c<24dLytMsgWindowSelectBtn_c>Fv = .text:0x801208A0; // type:function size:0x58 scope:weak
isSameName__39sFStateID_c<24dLytMsgWindowSelectBtn_c>CFPCc = .text:0x80120900; // type:function size:0x88 scope:weak
isSameName__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c>CFPCc = .text:0x80120990; // type:function size:0x88 scope:weak
build__20dLytMsgWindowSubtypeFPQ23d2d10ResAccIf_cPQ23d2d10ResAccIf_cP15dTagProcessor_c = .text:0x80120A20; // type:function size:0x8
remove__20dLytMsgWindowSubtypeFv = .text:0x80120A30; // type:function size:0x8
execute__20dLytMsgWindowSubtypeFv = .text:0x80120A40; // type:function size:0x8
@@ -10103,7 +10103,7 @@ fn_8018B3A0 = .text:0x8018B3A0; // type:function size:0x80
shouldDropItemForChance = .text:0x8018B420; // type:function size:0x84
getMaxBeaconCount__Fv = .text:0x8018B4B0; // type:function size:0x44
doesStageForbidBeaconPlacement__Fv = .text:0x8018B500; // type:function size:0x40
getBeaconPositionByIndex = .text:0x8018B540; // type:function size:0x60
getBeaconPosition__FUl = .text:0x8018B540; // type:function size:0x60
setBeaconPosition__FPC7mVec3_cUl = .text:0x8018B5A0; // type:function size:0x7C
setBeaconPositionChecked__FPC7mVec3_cUl = .text:0x8018B620; // type:function size:0x194
fn_8018B7C0 = .text:0x8018B7C0; // type:function size:0x40
@@ -16763,158 +16763,158 @@ fn_802CC270 = .text:0x802CC270; // type:function size:0x448
fn_802CC6C0 = .text:0x802CC6C0; // type:function size:0x8
CreateJStudioysObj = .text:0x802CC6D0; // type:function size:0x7C
fn_802CC750 = .text:0x802CC750; // type:function size:0x58
fn_802CC7B0 = .text:0x802CC7B0; // type:function size:0x38
fn_802CC7F0 = .text:0x802CC7F0; // type:function size:0x40
__ct__21dLytControlGame_HIO_cFv = .text:0x802CC7B0; // type:function size:0x38
__dt__21dLytControlGame_HIO_cFv = .text:0x802CC7F0; // type:function size:0x40
dLytControlGame_c_classInit__Fv = .text:0x802CC830; // type:function size:0x34
fn_802CC870 = .text:0x802CC870; // type:function size:0x4
fn_802CC880 = .text:0x802CC880; // type:function size:0x4
fn_802CC890 = .text:0x802CC890; // type:function size:0x4
fn_802CC8A0 = .text:0x802CC8A0; // type:function size:0x58
fn_802CC900 = .text:0x802CC900; // type:function size:0x54
changeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x802CC960; // type:function size:0x10
fn_802CC970 = .text:0x802CC970; // type:function size:0x4
fn_802CC980 = .text:0x802CC980; // type:function size:0x4
fn_802CC990 = .text:0x802CC990; // type:function size:0x68
fn_802CCA00 = .text:0x802CCA00; // type:function size:0x4
LytControlGame__statePauseEnter = .text:0x802CCA10; // type:function size:0x74
LytControlGame__statePauseUpdate = .text:0x802CCA90; // type:function size:0x34
LytControlGame__statePauseLeave = .text:0x802CCAD0; // type:function size:0x4
LytControlGame__statePauseDelResEnter = .text:0x802CCAE0; // type:function size:0x4
LytControlGame__statePauseDelResUpdate = .text:0x802CCAF0; // type:function size:0x70
LytControlGame__statePauseDelResLeave = .text:0x802CCB60; // type:function size:0x14
LytControlGame__stateMapSetResEnter = .text:0x802CCB80; // type:function size:0x58
LytControlGame__stateMapSetResUpdate = .text:0x802CCBE0; // type:function size:0x8C
LytControlGame__stateMapSetResLeave = .text:0x802CCC70; // type:function size:0x4
LytControlGame__stateMapSyncResEnter = .text:0x802CCC80; // type:function size:0x4
LytControlGame__stateMapSetResUpdate2 = .text:0x802CCC90; // type:function size:0x9C
LytControlGame__stateMapSyncResLeave = .text:0x802CCD30; // type:function size:0x4
fn_802CCD40__17dLytControlGame_cFb = .text:0x802CCD40; // type:function size:0x10
LytControlGame__stateMapEnter = .text:0x802CCD50; // type:function size:0x110
LytControlGame__stateMapUpdate = .text:0x802CCE60; // type:function size:0x138
LytControlGame__stateMapLeave = .text:0x802CCFA0; // type:function size:0x4
LytControlGame__stateMapDelResEnter = .text:0x802CCFB0; // type:function size:0x4
LytControlGame__stateMapDelResUpdate = .text:0x802CCFC0; // type:function size:0x158
fn_802CD120 = .text:0x802CD120; // type:function size:0xD8
LytControlGame__stateMapDelResLeave = .text:0x802CD200; // type:function size:0x30
initializeState_Normal__17dLytControlGame_cFv = .text:0x802CC870; // type:function size:0x4
executeState_Normal__17dLytControlGame_cFv = .text:0x802CC880; // type:function size:0x4
finalizeState_Normal__17dLytControlGame_cFv = .text:0x802CC890; // type:function size:0x4
initializeState_Pause_SetRes__17dLytControlGame_cFv = .text:0x802CC8A0; // type:function size:0x58
executeState_Pause_SetRes__17dLytControlGame_cFv = .text:0x802CC900; // type:function size:0x54
changeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x802CC960; // type:function size:0x10 scope:weak
finalizeState_Pause_SetRes__17dLytControlGame_cFv = .text:0x802CC970; // type:function size:0x4
initializeState_Pause_SyncRes__17dLytControlGame_cFv = .text:0x802CC980; // type:function size:0x4
executeState_Pause_SyncRes__17dLytControlGame_cFv = .text:0x802CC990; // type:function size:0x68
finalizeState_Pause_SyncRes__17dLytControlGame_cFv = .text:0x802CCA00; // type:function size:0x4
initializeState_Pause__17dLytControlGame_cFv = .text:0x802CCA10; // type:function size:0x74
executeState_Pause__17dLytControlGame_cFv = .text:0x802CCA90; // type:function size:0x34
finalizeState_Pause__17dLytControlGame_cFv = .text:0x802CCAD0; // type:function size:0x4
initializeState_Pause_DelRes__17dLytControlGame_cFv = .text:0x802CCAE0; // type:function size:0x4
executeState_Pause_DelRes__17dLytControlGame_cFv = .text:0x802CCAF0; // type:function size:0x70
finalizeState_Pause_DelRes__17dLytControlGame_cFv = .text:0x802CCB60; // type:function size:0x14
initializeState_Map_SetRes__17dLytControlGame_cFv = .text:0x802CCB80; // type:function size:0x58
executeState_Map_SetRes__17dLytControlGame_cFv = .text:0x802CCBE0; // type:function size:0x8C
finalizeState_Map_SetRes__17dLytControlGame_cFv = .text:0x802CCC70; // type:function size:0x4
initializeState_Map_SyncRes__17dLytControlGame_cFv = .text:0x802CCC80; // type:function size:0x4
executeState_Map_SyncRes__17dLytControlGame_cFv = .text:0x802CCC90; // type:function size:0x9C
finalizeState_Map_SyncRes__17dLytControlGame_cFv = .text:0x802CCD30; // type:function size:0x4
setMapEventDone__17dLytControlGame_cFb = .text:0x802CCD40; // type:function size:0x10
initializeState_Map__17dLytControlGame_cFv = .text:0x802CCD50; // type:function size:0x110
executeState_Map__17dLytControlGame_cFv = .text:0x802CCE60; // type:function size:0x138
finalizeState_Map__17dLytControlGame_cFv = .text:0x802CCFA0; // type:function size:0x4
initializeState_Map_DelRes__17dLytControlGame_cFv = .text:0x802CCFB0; // type:function size:0x4
executeState_Map_DelRes__17dLytControlGame_cFv = .text:0x802CCFC0; // type:function size:0x158
__dt__9dLytMap_cFv = .text:0x802CD120; // type:function size:0xD8 scope:weak
finalizeState_Map_DelRes__17dLytControlGame_cFv = .text:0x802CD200; // type:function size:0x30
__ct__17dLytControlGame_cFv = .text:0x802CD230; // type:function size:0x3F0
__dt__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802CD620; // type:function size:0x58
__dt__31sFStateFct_c<15dLytMsgWindow_c>Fv = .text:0x802CD680; // type:function size:0x6C
__dt__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CD6F0; // type:function size:0xA0
__dt__54sFStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CD790; // type:function size:0xA4
__dt__15dLytMsgWindow_cFv = .text:0x802CD840; // type:function size:0x1BC
__dt__23sFState_c<10dLytWipe_c>Fv = .text:0x802CDA00; // type:function size:0x58
__dt__26sFStateFct_c<10dLytWipe_c>Fv = .text:0x802CDA60; // type:function size:0x6C
__dt__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CDAD0; // type:function size:0xA0
__dt__49sFStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CDB70; // type:function size:0xA4
__ct__18dMapFootPrintEntryFv = .text:0x802CDC20; // type:function size:0x4
__dt__18dMapFootPrintEntryFv = .text:0x802CDC30; // type:function size:0x40
__dt__19dMapFootPrintsMgr_cFv = .text:0x802CDC70; // type:function size:0x6C
__dt__30sFState_c<17dLytControlGame_c>Fv = .text:0x802CDCE0; // type:function size:0x58
__dt__33sFStateFct_c<17dLytControlGame_c>Fv = .text:0x802CDD40; // type:function size:0x6C
__dt__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CDDB0; // type:function size:0xA0
__dt__56sFStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CDE50; // type:function size:0xA4
__dt__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802CD620; // type:function size:0x58 scope:weak
__dt__31sFStateFct_c<15dLytMsgWindow_c>Fv = .text:0x802CD680; // type:function size:0x6C scope:weak
__dt__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CD6F0; // type:function size:0xA0 scope:weak
__dt__54sFStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CD790; // type:function size:0xA4 scope:weak
__dt__15dLytMsgWindow_cFv = .text:0x802CD840; // type:function size:0x1BC scope:weak
__dt__23sFState_c<10dLytWipe_c>Fv = .text:0x802CDA00; // type:function size:0x58 scope:weak
__dt__26sFStateFct_c<10dLytWipe_c>Fv = .text:0x802CDA60; // type:function size:0x6C scope:weak
__dt__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CDAD0; // type:function size:0xA0 scope:weak
__dt__49sFStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CDB70; // type:function size:0xA4 scope:weak
__ct__18dMapFootPrintEntryFv = .text:0x802CDC20; // type:function size:0x4 scope:weak
__dt__18dMapFootPrintEntryFv = .text:0x802CDC30; // type:function size:0x40 scope:weak
__dt__19dMapFootPrintsMgr_cFv = .text:0x802CDC70; // type:function size:0x6C scope:weak
__dt__30sFState_c<17dLytControlGame_c>Fv = .text:0x802CDCE0; // type:function size:0x58 scope:weak
__dt__33sFStateFct_c<17dLytControlGame_c>Fv = .text:0x802CDD40; // type:function size:0x6C scope:weak
__dt__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CDDB0; // type:function size:0xA0 scope:weak
__dt__56sFStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CDE50; // type:function size:0xA4 scope:weak
__dt__17dLytControlGame_cFv = .text:0x802CDF00; // type:function size:0xFDC
LytControlGame__init = .text:0x802CEEE0; // type:function size:0x218
fn_802CF100 = .text:0x802CF100; // type:function size:0x22C
fn_802CF330 = .text:0x802CF330; // type:function size:0xA4
fn_802CF3E0 = .text:0x802CF3E0; // type:function size:0xA0
fn_802CF480 = .text:0x802CF480; // type:function size:0x6C
fn_802CF4F0 = .text:0x802CF4F0; // type:function size:0x58
LytControlGame__update = .text:0x802CF550; // type:function size:0x42C
executeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CF980; // type:function size:0x10
fn_802CF990 = .text:0x802CF990; // type:function size:0xA4
checkStoryflag2 = .text:0x802CFA40; // type:function size:0x44
fn_802CFA90 = .text:0x802CFA90; // type:function size:0x2E0
fn_802CFD70 = .text:0x802CFD70; // type:function size:0x20
updateHelpText = .text:0x802CFD90; // type:function size:0x1C
isStateNormalOrNotInEvent__17dLytControlGame_cCFv = .text:0x802CFDB0; // type:function size:0x74
create__17dLytControlGame_cFv = .text:0x802CEEE0; // type:function size:0x218
doDelete__17dLytControlGame_cFv = .text:0x802CF100; // type:function size:0x22C
__dt__53sFStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c>Fv = .text:0x802CF330; // type:function size:0xA4 scope:weak
__dt__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CF3E0; // type:function size:0xA0 scope:weak
__dt__30sFStateFct_c<14dLytDrawMark_c>Fv = .text:0x802CF480; // type:function size:0x6C scope:weak
__dt__27sFState_c<14dLytDrawMark_c>Fv = .text:0x802CF4F0; // type:function size:0x58 scope:weak
execute__17dLytControlGame_cFv = .text:0x802CF550; // type:function size:0x42C
executeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802CF980; // type:function size:0x10 scope:weak
draw__17dLytControlGame_cFv = .text:0x802CF990; // type:function size:0xA4
checkStoryflag__17dLytControlGame_cCFl = .text:0x802CFA40; // type:function size:0x44
fn_802CFA90__17dLytControlGame_cFv = .text:0x802CFA90; // type:function size:0x2E0
hideHelp__17dLytControlGame_cFv = .text:0x802CFD70; // type:function size:0x20
changeHelpText__17dLytControlGame_cFl = .text:0x802CFD90; // type:function size:0x1C
isStateNotNormalOrInEvent__17dLytControlGame_cCFv = .text:0x802CFDB0; // type:function size:0x74
isInSomeMapState__17dLytControlGame_cCFv = .text:0x802CFE30; // type:function size:0xD8
isNotInStateMap__17dLytControlGame_cCFv = .text:0x802CFF10; // type:function size:0x4C
fn_802CFF60 = .text:0x802CFF60; // type:function size:0x90
fn_802CFFF0 = .text:0x802CFFF0; // type:function size:0x1C
somehowRelatedToEnteringLightPillars__17dLytControlGame_cFlll = .text:0x802D0010; // type:function size:0x254
fn_802D0270 = .text:0x802D0270; // type:function size:0x4C
openCollectionScreenDemo__17dLytControlGame_cFv = .text:0x802D02C0; // type:function size:0xA0
fn_802D0360 = .text:0x802D0360; // type:function size:0xA0
fn_802D0400 = .text:0x802D0400; // type:function size:0xC
fn_802D0410 = .text:0x802D0410; // type:function size:0xD4
fn_802CFF60__17dLytControlGame_cCFv = .text:0x802CFF60; // type:function size:0x90
openMap__17dLytControlGame_cFv = .text:0x802CFFF0; // type:function size:0x1C
openMapEvent__17dLytControlGame_cFlll = .text:0x802D0010; // type:function size:0x254
openPause__17dLytControlGame_cFv = .text:0x802D0270; // type:function size:0x4C
openPauseDemo__17dLytControlGame_cFv = .text:0x802D02C0; // type:function size:0xA0
openHelp__17dLytControlGame_cFl = .text:0x802D0360; // type:function size:0xA0
releaseRes__17dLytControlGame_cFv = .text:0x802D0400; // type:function size:0xC
decrementRes__17dLytControlGame_cFv = .text:0x802D0410; // type:function size:0xD4
fn_802D04F0__17dLytControlGame_cFv = .text:0x802D04F0; // type:function size:0x10
fn_802D0500 = .text:0x802D0500; // type:function size:0x9C
fn_802D05A0 = .text:0x802D05A0; // type:function size:0x148
fn_802D06F0 = .text:0x802D06F0; // type:function size:0xC
fn_802D0700 = .text:0x802D0700; // type:function size:0x60
fn_802D0760 = .text:0x802D0760; // type:function size:0xC
build__33sFStateFct_c<17dLytControlGame_c>FRC12sStateIDIf_c = .text:0x802D0770; // type:function size:0x60
dispose__33sFStateFct_c<17dLytControlGame_c>FRP10sStateIf_c = .text:0x802D07D0; // type:function size:0xC
build__26sFStateFct_c<10dLytHelp_c>FRC12sStateIDIf_c = .text:0x802D07E0; // type:function size:0x60
dispose__26sFStateFct_c<10dLytHelp_c>FRP10sStateIf_c = .text:0x802D0840; // type:function size:0xC
build__26sFStateFct_c<10dLytWipe_c>FRC12sStateIDIf_c = .text:0x802D0850; // type:function size:0x60
dispose__26sFStateFct_c<10dLytWipe_c>FRP10sStateIf_c = .text:0x802D08B0; // type:function size:0xC
build__34sFStateFct_c<18dLytSimpleWindow_c>FRC12sStateIDIf_c = .text:0x802D08C0; // type:function size:0x60
dispose__34sFStateFct_c<18dLytSimpleWindow_c>FRP10sStateIf_c = .text:0x802D0920; // type:function size:0xC
build__31sFStateFct_c<15dLytMsgWindow_c>FRC12sStateIDIf_c = .text:0x802D0930; // type:function size:0x60
dispose__31sFStateFct_c<15dLytMsgWindow_c>FRP10sStateIf_c = .text:0x802D0990; // type:function size:0xC
fn_802D09A0 = .text:0x802D09A0; // type:function size:0x1C
fn_802D09C0 = .text:0x802D09C0; // type:function size:0x1C
fn_802D09E0 = .text:0x802D09E0; // type:function size:0x1C
initialize__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A00; // type:function size:0x1C
execute__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A20; // type:function size:0x1C
finalize__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A40; // type:function size:0x1C
initialize__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0A60; // type:function size:0x1C
execute__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0A80; // type:function size:0x1C
finalize__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0AA0; // type:function size:0x1C
initialize__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0AC0; // type:function size:0x1C
execute__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0AE0; // type:function size:0x1C
finalize__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0B00; // type:function size:0x1C
initialize__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B20; // type:function size:0x1C
execute__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B40; // type:function size:0x1C
finalize__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B60; // type:function size:0x1C
initialize__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0B80; // type:function size:0x1C
execute__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0BA0; // type:function size:0x1C
finalize__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0BC0; // type:function size:0x1C
fn_802D0BE0 = .text:0x802D0BE0; // type:function size:0x10
fn_802D0BF0 = .text:0x802D0BF0; // type:function size:0x10
fn_802D0C00 = .text:0x802D0C00; // type:function size:0x10
fn_802D0C10 = .text:0x802D0C10; // type:function size:0x10
fn_802D0C20 = .text:0x802D0C20; // type:function size:0x10
fn_802D0C30 = .text:0x802D0C30; // type:function size:0x10
fn_802D0C40 = .text:0x802D0C40; // type:function size:0x10
initializeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C50; // type:function size:0x10
finalizeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C60; // type:function size:0x10
refreshState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C70; // type:function size:0x10
getState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C80; // type:function size:0x10
getNewStateID__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C90; // type:function size:0x10
getOldStateID__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CA0; // type:function size:0x10
initializeState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CB0; // type:function size:0x10
finalizeState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CC0; // type:function size:0x10
refreshState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CD0; // type:function size:0x10
getState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CE0; // type:function size:0x10
getNewStateID__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CF0; // type:function size:0x10
getOldStateID__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D00; // type:function size:0x10
initializeState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D10; // type:function size:0x10
finalizeState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D20; // type:function size:0x10
refreshState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D30; // type:function size:0x10
getState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D40; // type:function size:0x10
getNewStateID__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D50; // type:function size:0x10
getOldStateID__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D60; // type:function size:0x10
initializeState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D70; // type:function size:0x10
finalizeState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D80; // type:function size:0x10
refreshState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D90; // type:function size:0x10
getState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DA0; // type:function size:0x10
getNewStateID__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DB0; // type:function size:0x10
getOldStateID__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DC0; // type:function size:0x10
initializeState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DD0; // type:function size:0x10
finalizeState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DE0; // type:function size:0x10
refreshState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DF0; // type:function size:0x10
getState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E00; // type:function size:0x10
getNewStateID__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E10; // type:function size:0x10
getOldStateID__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E20; // type:function size:0x10
fn_802D0E30 = .text:0x802D0E30; // type:function size:0x30
fn_802D0E60 = .text:0x802D0E60; // type:function size:0x30
fn_802D0E90 = .text:0x802D0E90; // type:function size:0x30
LytControlGame__initStates = .text:0x802D0EC0; // type:function size:0x700
LytControlGame__dtor = .text:0x802D15C0; // type:function size:0x58
fn_802D1620 = .text:0x802D1620; // type:function size:0x88
canOpenPause__17dLytControlGame_cFv = .text:0x802D0500; // type:function size:0x9C
checkForBeaconNextToMark__17dLytControlGame_cFv = .text:0x802D05A0; // type:function size:0x148
resetFootsteps__17dLytControlGame_cFv = .text:0x802D06F0; // type:function size:0xC
build__30sFStateFct_c<14dLytDrawMark_c>FRC12sStateIDIf_c = .text:0x802D0700; // type:function size:0x60 scope:weak
dispose__30sFStateFct_c<14dLytDrawMark_c>FRP10sStateIf_c = .text:0x802D0760; // type:function size:0xC scope:weak
build__33sFStateFct_c<17dLytControlGame_c>FRC12sStateIDIf_c = .text:0x802D0770; // type:function size:0x60 scope:weak
dispose__33sFStateFct_c<17dLytControlGame_c>FRP10sStateIf_c = .text:0x802D07D0; // type:function size:0xC scope:weak
build__26sFStateFct_c<10dLytHelp_c>FRC12sStateIDIf_c = .text:0x802D07E0; // type:function size:0x60 scope:weak
dispose__26sFStateFct_c<10dLytHelp_c>FRP10sStateIf_c = .text:0x802D0840; // type:function size:0xC scope:weak
build__26sFStateFct_c<10dLytWipe_c>FRC12sStateIDIf_c = .text:0x802D0850; // type:function size:0x60 scope:weak
dispose__26sFStateFct_c<10dLytWipe_c>FRP10sStateIf_c = .text:0x802D08B0; // type:function size:0xC scope:weak
build__34sFStateFct_c<18dLytSimpleWindow_c>FRC12sStateIDIf_c = .text:0x802D08C0; // type:function size:0x60 scope:weak
dispose__34sFStateFct_c<18dLytSimpleWindow_c>FRP10sStateIf_c = .text:0x802D0920; // type:function size:0xC scope:weak
build__31sFStateFct_c<15dLytMsgWindow_c>FRC12sStateIDIf_c = .text:0x802D0930; // type:function size:0x60 scope:weak
dispose__31sFStateFct_c<15dLytMsgWindow_c>FRP10sStateIf_c = .text:0x802D0990; // type:function size:0xC scope:weak
initialize__27sFState_c<14dLytDrawMark_c>Fv = .text:0x802D09A0; // type:function size:0x1C scope:weak
execute__27sFState_c<14dLytDrawMark_c>Fv = .text:0x802D09C0; // type:function size:0x1C scope:weak
finalize__27sFState_c<14dLytDrawMark_c>Fv = .text:0x802D09E0; // type:function size:0x1C scope:weak
initialize__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A00; // type:function size:0x1C scope:weak
execute__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A20; // type:function size:0x1C scope:weak
finalize__30sFState_c<17dLytControlGame_c>Fv = .text:0x802D0A40; // type:function size:0x1C scope:weak
initialize__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0A60; // type:function size:0x1C scope:weak
execute__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0A80; // type:function size:0x1C scope:weak
finalize__23sFState_c<10dLytHelp_c>Fv = .text:0x802D0AA0; // type:function size:0x1C scope:weak
initialize__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0AC0; // type:function size:0x1C scope:weak
execute__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0AE0; // type:function size:0x1C scope:weak
finalize__23sFState_c<10dLytWipe_c>Fv = .text:0x802D0B00; // type:function size:0x1C scope:weak
initialize__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B20; // type:function size:0x1C scope:weak
execute__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B40; // type:function size:0x1C scope:weak
finalize__31sFState_c<18dLytSimpleWindow_c>Fv = .text:0x802D0B60; // type:function size:0x1C scope:weak
initialize__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0B80; // type:function size:0x1C scope:weak
execute__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0BA0; // type:function size:0x1C scope:weak
finalize__28sFState_c<15dLytMsgWindow_c>Fv = .text:0x802D0BC0; // type:function size:0x1C scope:weak
initializeState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0BE0; // type:function size:0x10 scope:weak
finalizeState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0BF0; // type:function size:0x10 scope:weak
refreshState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C00; // type:function size:0x10 scope:weak
getState__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C10; // type:function size:0x10 scope:weak
getNewStateID__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C20; // type:function size:0x10 scope:weak
getStateID__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C30; // type:function size:0x10 scope:weak
getOldStateID__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C40; // type:function size:0x10 scope:weak
initializeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C50; // type:function size:0x10 scope:weak
finalizeState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C60; // type:function size:0x10 scope:weak
refreshState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0C70; // type:function size:0x10 scope:weak
getState__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C80; // type:function size:0x10 scope:weak
getNewStateID__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0C90; // type:function size:0x10 scope:weak
getOldStateID__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CA0; // type:function size:0x10 scope:weak
initializeState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CB0; // type:function size:0x10 scope:weak
finalizeState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CC0; // type:function size:0x10 scope:weak
refreshState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0CD0; // type:function size:0x10 scope:weak
getState__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CE0; // type:function size:0x10 scope:weak
getNewStateID__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0CF0; // type:function size:0x10 scope:weak
getOldStateID__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D00; // type:function size:0x10 scope:weak
initializeState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D10; // type:function size:0x10 scope:weak
finalizeState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D20; // type:function size:0x10 scope:weak
refreshState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D30; // type:function size:0x10 scope:weak
getState__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D40; // type:function size:0x10 scope:weak
getNewStateID__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D50; // type:function size:0x10 scope:weak
getOldStateID__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0D60; // type:function size:0x10 scope:weak
initializeState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D70; // type:function size:0x10 scope:weak
finalizeState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D80; // type:function size:0x10 scope:weak
refreshState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0D90; // type:function size:0x10 scope:weak
getState__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DA0; // type:function size:0x10 scope:weak
getNewStateID__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DB0; // type:function size:0x10 scope:weak
getOldStateID__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0DC0; // type:function size:0x10 scope:weak
initializeState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DD0; // type:function size:0x10 scope:weak
finalizeState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DE0; // type:function size:0x10 scope:weak
refreshState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802D0DF0; // type:function size:0x10 scope:weak
getState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E00; // type:function size:0x10 scope:weak
getNewStateID__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E10; // type:function size:0x10 scope:weak
getOldStateID__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802D0E20; // type:function size:0x10 scope:weak
finalizeState__32sFStateID_c<17dLytControlGame_c>CFR17dLytControlGame_c = .text:0x802D0E30; // type:function size:0x30 scope:weak
executeState__32sFStateID_c<17dLytControlGame_c>CFR17dLytControlGame_c = .text:0x802D0E60; // type:function size:0x30 scope:weak
initializeState__32sFStateID_c<17dLytControlGame_c>CFR17dLytControlGame_c = .text:0x802D0E90; // type:function size:0x30 scope:weak
__sinit_\d_lyt_control_game_cpp = .text:0x802D0EC0; // type:function size:0x700 scope:local
__dt__32sFStateID_c<17dLytControlGame_c>Fv = .text:0x802D15C0; // type:function size:0x58 scope:weak
isSameName__32sFStateID_c<17dLytControlGame_c>CFPCc = .text:0x802D1620; // type:function size:0x88 scope:weak
fn_802D16B0 = .text:0x802D16B0; // type:function size:0x30
fn_802D16E0 = .text:0x802D16E0; // type:function size:0x3C
fn_802D1720 = .text:0x802D1720; // type:function size:0x8
@@ -20991,8 +20991,8 @@ fn_80385090 = .text:0x80385090; // type:function size:0x18
fn_803850B0 = .text:0x803850B0; // type:function size:0x108
fn_803851C0 = .text:0x803851C0; // type:function size:0x74
clearSourceList__15dSndSourceMgr_cFPQ34nw4r2ut4List = .text:0x80385240; // type:function size:0x64
fn_803852B0 = .text:0x803852B0; // type:function size:0x3C
fn_803852F0 = .text:0x803852F0; // type:function size:0x3C
fn_803852B0__15dSndSourceMgr_cFv = .text:0x803852B0; // type:function size:0x3C
fn_803852F0__15dSndSourceMgr_cFv = .text:0x803852F0; // type:function size:0x3C
pauseAllSound__15dSndSourceMgr_cFv = .text:0x80385330; // type:function size:0x94
fn_803853D0 = .text:0x803853D0; // type:function size:0xA0
stopAllSound__15dSndSourceMgr_cFv = .text:0x80385470; // type:function size:0x78
@@ -28283,7 +28283,7 @@ brlanMapPart1 = .rodata:0x804E7390; // type:object size:0x38 scope:local data:4b
brlanMapPart2 = .rodata:0x804E73C8; // type:object size:0x50 scope:local data:4byte
brlanMapPart3 = .rodata:0x804E7418; // type:object size:0x18 scope:local data:4byte
lbl_804E7430 = .rodata:0x804E7430; // type:object size:0x38 data:4byte
lbl_804E7468 = .rodata:0x804E7468; // type:object size:0xD8 data:4byte
brlanMap = .rodata:0x804E7468; // type:object size:0xD8 scope:local data:4byte
brlanMap = .rodata:0x804E7540; // type:object size:0x20 scope:local data:4byte
brlanMap = .rodata:0x804E7560; // type:object size:0x20 scope:local data:4byte
brlanMap = .rodata:0x804E7580; // type:object size:0x18 scope:local data:4byte
@@ -33087,63 +33087,112 @@ __vt__13dLytTextLight = .data:0x8051BCB4; // type:object size:0xC
__vt__13dLytTextSword = .data:0x8051BCC0; // type:object size:0xC
lbl_8051BCCC = .data:0x8051BCCC; // type:object size:0x600
__vt__30sFStateID_c<15dLytMsgWindow_c> = .data:0x8051C2CC; // type:object size:0x34
lbl_8051C300 = .data:0x8051C300; // type:object size:0x9 data:string
lbl_8051C30C = .data:0x8051C30C; // type:object size:0xC data:string
lbl_8051C318 = .data:0x8051C318; // type:object size:0xD data:string
lbl_8051C328 = .data:0x8051C328; // type:object size:0x17 data:string
lbl_8051C340 = .data:0x8051C340; // type:object size:0xB data:string
lbl_8051C350 = .data:0x8051C350; // type:object size:0x20 data:string
lbl_8051C370 = .data:0x8051C370; // type:object size:0x11 data:string
lbl_8051C388 = .data:0x8051C388; // type:object size:0x20 data:string
lbl_8051C3A8 = .data:0x8051C3A8; // type:object size:0x10 data:string
lbl_8051C3B8 = .data:0x8051C3B8; // type:object size:0x1F data:string
lbl_8051C3D8 = .data:0x8051C3D8; // type:object size:0x10 data:string
lbl_8051C3E8 = .data:0x8051C3E8; // type:object size:0x1E data:string
lbl_8051C408 = .data:0x8051C408; // type:object size:0xF data:string
lbl_8051C418 = .data:0x8051C418; // type:object size:0xF data:string
lbl_8051C428 = .data:0x8051C428; // type:object size:0x19 data:string
lbl_8051C444 = .data:0x8051C444; // type:object size:0x9 data:string
lbl_8051C450 = .data:0x8051C450; // type:object size:0x9 data:string
lbl_8051C45C = .data:0x8051C45C; // type:object size:0x9 data:string
lbl_8051C468 = .data:0x8051C468; // type:object size:0x9 data:string
lbl_8051C474 = .data:0x8051C474; // type:object size:0x1B data:string
lbl_8051C490 = .data:0x8051C490; // type:object size:0xC data:string
lbl_8051C49C = .data:0x8051C49C; // type:object size:0xC data:string
lbl_8051C4A8 = .data:0x8051C4A8; // type:object size:0xC data:string
lbl_8051C4B4 = .data:0x8051C4B4; // type:object size:0xC data:string
lbl_8051C4C0 = .data:0x8051C4C0; // type:object size:0x1B data:string
lbl_8051C4DC = .data:0x8051C4DC; // type:object size:0xC data:string
lbl_8051C4E8 = .data:0x8051C4E8; // type:object size:0xC data:string
lbl_8051C4F4 = .data:0x8051C4F4; // type:object size:0xC data:string
lbl_8051C500 = .data:0x8051C500; // type:object size:0xC data:string
lbl_8051C50C = .data:0x8051C50C; // type:object size:0x1B data:string
lbl_8051C528 = .data:0x8051C528; // type:object size:0x1B data:string
lbl_8051C548 = .data:0x8051C548; // type:object size:0x18 data:string
lbl_8051C560 = .data:0x8051C560; // type:object size:0xD data:string
lbl_8051C570 = .data:0x8051C570; // type:object size:0xC data:string
lbl_8051C57C = .data:0x8051C57C; // type:object size:0xD data:string
lbl_8051C58C = .data:0x8051C58C; // type:object size:0xC data:string
lbl_8051C598 = .data:0x8051C598; // type:object size:0xD data:string
lbl_8051C5A8 = .data:0x8051C5A8; // type:object size:0xC data:string
lbl_8051C5B4 = .data:0x8051C5B4; // type:object size:0xD data:string
lbl_8051C5C4 = .data:0x8051C5C4; // type:object size:0x2C
lbl_8051C5F0 = .data:0x8051C5F0; // type:object size:0xC data:string
lbl_8051C5FC = .data:0x8051C5FC; // type:object size:0xD data:string
lbl_8051C60C = .data:0x8051C60C; // type:object size:0x9 data:string
lbl_8051C618 = .data:0x8051C618; // type:object size:0x9 data:string
lbl_8051C624 = .data:0x8051C624; // type:object size:0x9 data:string
lbl_8051C630 = .data:0x8051C630; // type:object size:0x9 data:string
lbl_8051C63C = .data:0x8051C63C; // type:object size:0x1C
lbl_8051C658 = .data:0x8051C658; // type:object size:0xF data:string
lbl_8051C668 = .data:0x8051C668; // type:object size:0xF data:string
lbl_8051C678 = .data:0x8051C678; // type:object size:0xA data:string
lbl_8051C688 = .data:0x8051C688; // type:object size:0x10 data:string
lbl_8051C698 = .data:0x8051C698; // type:object size:0x10 data:string
lbl_8051C6A8 = .data:0x8051C6A8; // type:object size:0x10 data:string
lbl_8051C6B8 = .data:0x8051C6B8; // type:object size:0x40
__vt__24dLytMsgWindowSelectBtn_c = .data:0x8051C6F8; // type:object size:0x3AC
lbl_8051CAA4 = .data:0x8051CAA4; // type:object size:0x34
lbl_8051CAD8 = .data:0x8051CAD8; // type:object size:0x38
@34830 = .data:0x8051C300; // type:object size:0x9 scope:local data:string
...data.0 = .data:0x8051C300; // type:label scope:local
@35537 = .data:0x8051C30C; // type:object size:0xC scope:local data:string
@35539 = .data:0x8051C318; // type:object size:0xD scope:local data:string
@29701 = .data:0x8051C328; // type:object size:0x17 scope:local data:string
@29702 = .data:0x8051C340; // type:object size:0xB scope:local data:string
@29703 = .data:0x8051C350; // type:object size:0x20 scope:local data:string
@29704 = .data:0x8051C370; // type:object size:0x11 scope:local data:string
@29705 = .data:0x8051C388; // type:object size:0x20 scope:local data:string
@29706 = .data:0x8051C3A8; // type:object size:0x10 scope:local data:string
@29707 = .data:0x8051C3B8; // type:object size:0x1F scope:local data:string
@29708 = .data:0x8051C3D8; // type:object size:0x10 scope:local data:string
@29709 = .data:0x8051C3E8; // type:object size:0x1E scope:local data:string
@29710 = .data:0x8051C408; // type:object size:0xF scope:local data:string
@29711 = .data:0x8051C418; // type:object size:0xF scope:local data:string
@29712 = .data:0x8051C428; // type:object size:0x19 scope:local data:string
@29713 = .data:0x8051C444; // type:object size:0x9 scope:local data:string
@29714 = .data:0x8051C450; // type:object size:0x9 scope:local data:string
@29715 = .data:0x8051C45C; // type:object size:0x9 scope:local data:string
@29716 = .data:0x8051C468; // type:object size:0x9 scope:local data:string
@29717 = .data:0x8051C474; // type:object size:0x1B scope:local data:string
@29718 = .data:0x8051C490; // type:object size:0xC scope:local data:string
@29719 = .data:0x8051C49C; // type:object size:0xC scope:local data:string
@29720 = .data:0x8051C4A8; // type:object size:0xC scope:local data:string
@29721 = .data:0x8051C4B4; // type:object size:0xC scope:local data:string
@29722 = .data:0x8051C4C0; // type:object size:0x1B scope:local data:string
@29723 = .data:0x8051C4DC; // type:object size:0xC scope:local data:string
@29724 = .data:0x8051C4E8; // type:object size:0xC scope:local data:string
@29725 = .data:0x8051C4F4; // type:object size:0xC scope:local data:string
@29726 = .data:0x8051C500; // type:object size:0xC scope:local data:string
@29727 = .data:0x8051C50C; // type:object size:0x1B scope:local data:string
@29728 = .data:0x8051C528; // type:object size:0x1B scope:local data:string
@29729 = .data:0x8051C548; // type:object size:0x18 scope:local data:string
@29730 = .data:0x8051C560; // type:object size:0xD scope:local data:string
@29731 = .data:0x8051C570; // type:object size:0xC scope:local data:string
@29732 = .data:0x8051C57C; // type:object size:0xD scope:local data:string
@29733 = .data:0x8051C58C; // type:object size:0xC scope:local data:string
@29734 = .data:0x8051C598; // type:object size:0xD scope:local data:string
@29735 = .data:0x8051C5A8; // type:object size:0xC scope:local data:string
@29736 = .data:0x8051C5B4; // type:object size:0xD scope:local data:string
@29737 = .data:0x8051C5C4; // type:object size:0xC scope:local data:string
sSelectTextBoxes = .data:0x8051C5D0; // type:object size:0x20 scope:local
@29738 = .data:0x8051C5F0; // type:object size:0xC scope:local data:string
@29739 = .data:0x8051C5FC; // type:object size:0xD scope:local data:string
@29740 = .data:0x8051C60C; // type:object size:0x9 scope:local data:string
@29741 = .data:0x8051C618; // type:object size:0x9 scope:local data:string
@29742 = .data:0x8051C624; // type:object size:0x9 scope:local data:string
@29743 = .data:0x8051C630; // type:object size:0x9 scope:local data:string
@29744 = .data:0x8051C63C; // type:object size:0x9 scope:local data:string
sBoundings = .data:0x8051C648; // type:object size:0x10 scope:local
@29745 = .data:0x8051C658; // type:object size:0xF scope:local data:string
@29746 = .data:0x8051C668; // type:object size:0xF scope:local data:string
@29747 = .data:0x8051C678; // type:object size:0xA scope:local data:string
@29748 = .data:0x8051C688; // type:object size:0x10 scope:local data:string
@29749 = .data:0x8051C698; // type:object size:0x10 scope:local data:string
@29750 = .data:0x8051C6A8; // type:object size:0x10 scope:local data:string
@29751 = .data:0x8051C6B8; // type:object size:0x10 scope:local data:string
sSelectPanes = .data:0x8051C6C8; // type:object size:0x1C scope:local
@35871 = .data:0x8051C6E4; // type:object size:0x14 scope:local data:string
__vt__24dLytMsgWindowSelectBtn_c = .data:0x8051C6F8; // type:object size:0x34
@36090 = .data:0x8051C72C; // type:object size:0xC scope:local
@36091 = .data:0x8051C738; // type:object size:0xC scope:local
@36092 = .data:0x8051C744; // type:object size:0xC scope:local
@36093 = .data:0x8051C750; // type:object size:0xC scope:local
@36094 = .data:0x8051C75C; // type:object size:0xC scope:local
@36095 = .data:0x8051C768; // type:object size:0xC scope:local
@36096 = .data:0x8051C774; // type:object size:0xC scope:local
@36097 = .data:0x8051C780; // type:object size:0xC scope:local
@36098 = .data:0x8051C78C; // type:object size:0xC scope:local
@36099 = .data:0x8051C798; // type:object size:0xC scope:local
@36100 = .data:0x8051C7A4; // type:object size:0xC scope:local
@36101 = .data:0x8051C7B0; // type:object size:0xC scope:local
@36102 = .data:0x8051C7BC; // type:object size:0xC scope:local
@36103 = .data:0x8051C7C8; // type:object size:0xC scope:local
@36104 = .data:0x8051C7D4; // type:object size:0xC scope:local
@36105 = .data:0x8051C7E0; // type:object size:0xC scope:local
@36106 = .data:0x8051C7EC; // type:object size:0xC scope:local
@36107 = .data:0x8051C7F8; // type:object size:0xC scope:local
@36108 = .data:0x8051C804; // type:object size:0xC scope:local
@36109 = .data:0x8051C810; // type:object size:0xC scope:local
@36110 = .data:0x8051C81C; // type:object size:0xC scope:local
@36111 = .data:0x8051C828; // type:object size:0xC scope:local
@36112 = .data:0x8051C834; // type:object size:0xC scope:local
@36113 = .data:0x8051C840; // type:object size:0xC scope:local
@36114 = .data:0x8051C84C; // type:object size:0xC scope:local
@36115 = .data:0x8051C858; // type:object size:0xC scope:local
@36116 = .data:0x8051C864; // type:object size:0xC scope:local
@36117 = .data:0x8051C870; // type:object size:0xC scope:local
@36118 = .data:0x8051C87C; // type:object size:0xC scope:local
@36119 = .data:0x8051C888; // type:object size:0xC scope:local
@36120 = .data:0x8051C894; // type:object size:0xC scope:local
@36121 = .data:0x8051C8A0; // type:object size:0xC scope:local
@36122 = .data:0x8051C8AC; // type:object size:0xC scope:local
@36124 = .data:0x8051C8B8; // type:object size:0x2C scope:local data:string
@36125 = .data:0x8051C8E4; // type:object size:0x2A scope:local data:string
@36126 = .data:0x8051C910; // type:object size:0x2E scope:local data:string
@36127 = .data:0x8051C940; // type:object size:0x2B scope:local data:string
@36128 = .data:0x8051C96C; // type:object size:0x27 scope:local data:string
@36129 = .data:0x8051C994; // type:object size:0x25 scope:local data:string
@36130 = .data:0x8051C9BC; // type:object size:0x2D scope:local data:string
@36131 = .data:0x8051C9EC; // type:object size:0x2E scope:local data:string
@36132 = .data:0x8051CA1C; // type:object size:0x2D scope:local data:string
@36133 = .data:0x8051CA4C; // type:object size:0x2D scope:local data:string
@36134 = .data:0x8051CA7C; // type:object size:0x26 scope:local data:string
__vt__39sFStateID_c<24dLytMsgWindowSelectBtn_c> = .data:0x8051CAA4; // type:object size:0x34 scope:weak
__vt__44sFStateID_c<29dLytMsgWindowSelectBtnParts_c> = .data:0x8051CAD8; // type:object size:0x34 scope:weak
@17001 = .data:0x8051CB10; // type:object size:0x9 scope:local data:string
...data.0 = .data:0x8051CB10; // type:label scope:local
@17002 = .data:0x8051CB1C; // type:object size:0xA scope:local data:string
@@ -37526,39 +37575,76 @@ g_profile_JSTUDIO_SYSOBJ = .data:0x805402D8; // type:object size:0x10
lbl_805402E8 = .data:0x805402E8; // type:object size:0x9C data:4byte
lbl_80540384 = .data:0x80540384; // type:object size:0x74
g_profile_LYT_CONTROL_GAME = .data:0x805403F8; // type:object size:0xC
lbl_80540404 = .data:0x80540404; // type:object size:0xA data:string
lbl_80540410 = .data:0x80540410; // type:object size:0x9 data:string
lbl_8054041C = .data:0x8054041C; // type:object size:0xC data:string
lbl_80540428 = .data:0x80540428; // type:object size:0x10
lbl_80540438 = .data:0x80540438; // type:object size:0x30
lbl_80540468 = .data:0x80540468; // type:object size:0x30
lbl_80540498 = .data:0x80540498; // type:object size:0x18
lbl_805404B0 = .data:0x805404B0; // type:object size:0x18
__vt__17dLytControlGame_c = .data:0x805404C8; // type:object size:0x50
__vt__56sFStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c> = .data:0x80540518; // type:object size:0x30
__vt__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540548; // type:object size:0x30
__vt__33sFStateFct_c<17dLytControlGame_c> = .data:0x80540578; // type:object size:0x18
__vt__30sFState_c<17dLytControlGame_c> = .data:0x80540590; // type:object size:0x18
lbl_805405A8 = .data:0x805405A8; // type:object size:0xC
__vt__19dMapFootPrintsMgr_c = .data:0x805405B4; // type:object size:0xC
__vt__49sFStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c> = .data:0x805405C0; // type:object size:0x30
__vt__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x805405F0; // type:object size:0x30
__vt__26sFStateFct_c<10dLytHelp_c> = .data:0x80540620; // type:object size:0x18
__vt__23sFState_c<10dLytHelp_c> = .data:0x80540638; // type:object size:0x18
__vt__49sFStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c> = .data:0x80540650; // type:object size:0x30
__vt__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540680; // type:object size:0x30
__vt__26sFStateFct_c<10dLytWipe_c> = .data:0x805406B0; // type:object size:0x18
__vt__23sFState_c<10dLytWipe_c> = .data:0x805406C8; // type:object size:0x18
__vt__57sFStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c> = .data:0x805406E0; // type:object size:0x30
__vt__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540710; // type:object size:0x30
__vt__34sFStateFct_c<18dLytSimpleWindow_c> = .data:0x80540740; // type:object size:0x18
__vt__31sFState_c<18dLytSimpleWindow_c> = .data:0x80540758; // type:object size:0x18
__vt__15dLytMsgWindow_c = .data:0x80540770; // type:object size:0x10
__vt__54sFStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c> = .data:0x80540780; // type:object size:0x30
__vt__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x805407B0; // type:object size:0x30
__vt__31sFStateFct_c<15dLytMsgWindow_c> = .data:0x805407E0; // type:object size:0x18
__vt__28sFState_c<15dLytMsgWindow_c> = .data:0x805407F8; // type:object size:0x458
lbl_80540C50 = .data:0x80540C50; // type:object size:0x38
...data.0 = .data:0x805403F8; // type:label scope:local
@36306 = .data:0x80540404; // type:object size:0xA scope:local data:string
@36308 = .data:0x80540410; // type:object size:0x9 scope:local data:string
@36310 = .data:0x8054041C; // type:object size:0xC scope:local data:string
__vt__21dLytControlGame_HIO_c = .data:0x80540428; // type:object size:0xC
__vt__53sFStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c> = .data:0x80540438; // type:object size:0x30 scope:weak
__vt__83sStateMgr_c<14dLytDrawMark_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540468; // type:object size:0x30 scope:weak
__vt__30sFStateFct_c<14dLytDrawMark_c> = .data:0x80540498; // type:object size:0x14 scope:weak
__vt__27sFState_c<14dLytDrawMark_c> = .data:0x805404B0; // type:object size:0x18 scope:weak
__vt__17dLytControlGame_c = .data:0x805404C8; // type:object size:0x4C
__vt__56sFStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c> = .data:0x80540518; // type:object size:0x30 scope:weak
__vt__86sStateMgr_c<17dLytControlGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540548; // type:object size:0x30 scope:weak
__vt__33sFStateFct_c<17dLytControlGame_c> = .data:0x80540578; // type:object size:0x14 scope:weak
__vt__30sFState_c<17dLytControlGame_c> = .data:0x80540590; // type:object size:0x18 scope:weak
__vt__9dLytMap_c = .data:0x805405A8; // type:object size:0xC scope:weak
__vt__19dMapFootPrintsMgr_c = .data:0x805405B4; // type:object size:0xC scope:weak
__vt__49sFStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c> = .data:0x805405C0; // type:object size:0x30 scope:weak
__vt__79sStateMgr_c<10dLytHelp_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x805405F0; // type:object size:0x30 scope:weak
__vt__26sFStateFct_c<10dLytHelp_c> = .data:0x80540620; // type:object size:0x14 scope:weak
__vt__23sFState_c<10dLytHelp_c> = .data:0x80540638; // type:object size:0x18 scope:weak
__vt__49sFStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c> = .data:0x80540650; // type:object size:0x30 scope:weak
__vt__79sStateMgr_c<10dLytWipe_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540680; // type:object size:0x30 scope:weak
__vt__26sFStateFct_c<10dLytWipe_c> = .data:0x805406B0; // type:object size:0x14 scope:weak
__vt__23sFState_c<10dLytWipe_c> = .data:0x805406C8; // type:object size:0x18 scope:weak
__vt__57sFStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c> = .data:0x805406E0; // type:object size:0x30 scope:weak
__vt__87sStateMgr_c<18dLytSimpleWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80540710; // type:object size:0x30 scope:weak
__vt__34sFStateFct_c<18dLytSimpleWindow_c> = .data:0x80540740; // type:object size:0x14 scope:weak
__vt__31sFState_c<18dLytSimpleWindow_c> = .data:0x80540758; // type:object size:0x18 scope:weak
__vt__15dLytMsgWindow_c = .data:0x80540770; // type:object size:0xC scope:weak
__vt__54sFStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c> = .data:0x80540780; // type:object size:0x30 scope:weak
__vt__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x805407B0; // type:object size:0x30 scope:weak
__vt__31sFStateFct_c<15dLytMsgWindow_c> = .data:0x805407E0; // type:object size:0x14 scope:weak
__vt__28sFState_c<15dLytMsgWindow_c> = .data:0x805407F8; // type:object size:0x18 scope:weak
@51175 = .data:0x805409AC; // type:object size:0xC scope:local
@51176 = .data:0x805409B8; // type:object size:0xC scope:local
@51177 = .data:0x805409C4; // type:object size:0xC scope:local
@51178 = .data:0x805409D0; // type:object size:0xC scope:local
@51179 = .data:0x805409DC; // type:object size:0xC scope:local
@51180 = .data:0x805409E8; // type:object size:0xC scope:local
@51181 = .data:0x805409F4; // type:object size:0xC scope:local
@51182 = .data:0x80540A00; // type:object size:0xC scope:local
@51183 = .data:0x80540A0C; // type:object size:0xC scope:local
@51184 = .data:0x80540A18; // type:object size:0xC scope:local
@51185 = .data:0x80540A24; // type:object size:0xC scope:local
@51186 = .data:0x80540A30; // type:object size:0xC scope:local
@51187 = .data:0x80540A3C; // type:object size:0xC scope:local
@51188 = .data:0x80540A48; // type:object size:0xC scope:local
@51189 = .data:0x80540A54; // type:object size:0xC scope:local
@51190 = .data:0x80540A60; // type:object size:0xC scope:local
@51191 = .data:0x80540A6C; // type:object size:0xC scope:local
@51192 = .data:0x80540A78; // type:object size:0xC scope:local
@51193 = .data:0x80540A84; // type:object size:0xC scope:local
@51194 = .data:0x80540A90; // type:object size:0xC scope:local
@51195 = .data:0x80540A9C; // type:object size:0xC scope:local
@51196 = .data:0x80540AA8; // type:object size:0xC scope:local
@51197 = .data:0x80540AB4; // type:object size:0xC scope:local
@51198 = .data:0x80540AC0; // type:object size:0xC scope:local
@51199 = .data:0x80540ACC; // type:object size:0xC scope:local
@51200 = .data:0x80540AD8; // type:object size:0xC scope:local
@51201 = .data:0x80540AE4; // type:object size:0xC scope:local
@51203 = .data:0x80540AF0; // type:object size:0x22 scope:local data:string
@51204 = .data:0x80540B18; // type:object size:0x28 scope:local data:string
@51205 = .data:0x80540B40; // type:object size:0x29 scope:local data:string
@51206 = .data:0x80540B6C; // type:object size:0x21 scope:local data:string
@51207 = .data:0x80540B90; // type:object size:0x28 scope:local data:string
@51208 = .data:0x80540BB8; // type:object size:0x26 scope:local data:string
@51209 = .data:0x80540BE0; // type:object size:0x27 scope:local data:string
@51210 = .data:0x80540C08; // type:object size:0x1F scope:local data:string
@51211 = .data:0x80540C28; // type:object size:0x26 scope:local data:string
__vt__32sFStateID_c<17dLytControlGame_c> = .data:0x80540C50; // type:object size:0x34 scope:weak
g_profile_LYT_CONTROL_TITLE = .data:0x80540C88; // type:object size:0xC
lbl_80540C94 = .data:0x80540C94; // type:object size:0x4C
g_profile_MAP_AREA_TAG = .data:0x80540CE0; // type:object size:0x10
@@ -40119,8 +40205,8 @@ part2TextBoxes = .sdata:0x80572570; // type:object size:0x8 scope:local data:4by
part2Bounding = .sdata:0x80572578; // type:object size:0x4 scope:local data:4byte
part3Bounding = .sdata:0x8057257C; // type:object size:0x4 scope:local data:4byte
lbl_80572580 = .sdata:0x80572580; // type:object size:0x8
lbl_80572588 = .sdata:0x80572588; // type:object size:0x8 data:4byte
lbl_80572590 = .sdata:0x80572590; // type:object size:0x8 data:4byte
sDecideTextBoxes = .sdata:0x80572588; // type:object size:0x8 scope:local data:4byte
sWindowNames = .sdata:0x80572590; // type:object size:0x4 scope:local data:4byte
sSwordPane = .sdata:0x80572598; // type:object size:0x4 scope:local data:4byte
sLightPane = .sdata:0x8057259C; // type:object size:0x4 scope:local data:4byte
sTextBoxes = .sdata:0x805725A0; // type:object size:0x8 scope:local data:4byte
@@ -41140,13 +41226,13 @@ lbl_80573ED4 = .sdata:0x80573ED4; // type:object size:0x4 data:4byte
lbl_80573ED8 = .sdata:0x80573ED8; // type:object size:0x5 data:string
lbl_80573EE0 = .sdata:0x80573EE0; // type:object size:0x5 data:string
lbl_80573EE8 = .sdata:0x80573EE8; // type:object size:0x5 data:string
lbl_80573EF0 = .sdata:0x80573EF0; // type:object size:0x6 data:string
lbl_80573EF8 = .sdata:0x80573EF8; // type:object size:0x7 data:string
lbl_80573F00 = .sdata:0x80573F00; // type:object size:0x7 data:string
lbl_80573F08 = .sdata:0x80573F08; // type:object size:0x8 data:string
lbl_80573F10 = .sdata:0x80573F10; // type:object size:0x5 data:string
lbl_80573F18 = .sdata:0x80573F18; // type:object size:0x8 data:string
lbl_80573F20 = .sdata:0x80573F20; // type:object size:0x5 data:string
@36307 = .sdata:0x80573EF0; // type:object size:0x6 scope:local data:string
@36309 = .sdata:0x80573EF8; // type:object size:0x7 scope:local data:string
@50393 = .sdata:0x80573F00; // type:object size:0x7 scope:local data:string
@50394 = .sdata:0x80573F08; // type:object size:0x8 scope:local data:string
@50395 = .sdata:0x80573F10; // type:object size:0x5 scope:local data:string
@50396 = .sdata:0x80573F18; // type:object size:0x8 scope:local data:string
@50397 = .sdata:0x80573F20; // type:object size:0x5 scope:local data:string
lbl_80573F28 = .sdata:0x80573F28; // type:object size:0x4 data:4byte
lbl_80573F2C = .sdata:0x80573F2C; // type:object size:0x4 data:4byte
lbl_80573F30 = .sdata:0x80573F30; // type:object size:0x8 data:string
@@ -42283,7 +42369,7 @@ lbl_805758C8 = .sbss:0x805758C8; // type:object size:0x8 data:4byte
NUMBER_OF_ITEMS = .sbss:0x805758D0; // type:object size:0x4 data:4byte
sIsPerformingInitialCollection__9dAcItem_c = .sbss:0x805758D4; // type:object size:0x1 data:byte
TREASURE_TEMP_COLLECT = .sbss:0x805758D8; // type:object size:0x4 data:4byte
CURRENT_COUNT_VALUE = .sbss:0x805758DC; // type:object size:0x4 data:4byte
sCollectionCurrentCount__9dAcItem_c = .sbss:0x805758DC; // type:object size:0x4 data:4byte
lbl_805758E0 = .sbss:0x805758E0; // type:object size:0x4 align:4 data:float
lbl_805758E4 = .sbss:0x805758E4; // type:object size:0x4 align:4 data:float
lbl_805758E8 = .sbss:0x805758E8; // type:object size:0x4 align:4 data:float
@@ -42348,9 +42434,9 @@ lbl_805759F0 = .sbss:0x805759F0; // type:object size:0x1 data:byte
lbl_805759F1 = .sbss:0x805759F1; // type:object size:0x1 data:byte
lbl_805759F4 = .sbss:0x805759F4; // type:object size:0x4 align:4 data:float
lbl_805759F8 = .sbss:0x805759F8; // type:object size:0x8 data:byte
sInstance__17dLytControlGame_c = .sbss:0x80575A00; // type:object size:0x8 data:4byte
MENU_PAUSE = .sbss:0x80575A08; // type:object size:0x8 data:4byte
lbl_80575A10 = .sbss:0x80575A10; // type:object size:0x8 data:byte
sInstance__17dLytControlGame_c = .sbss:0x80575A00; // type:object size:0x4 data:4byte
@LOCAL@initializeState_Pause_SetRes__17dLytControlGame_cFv@sLytArcs = .sbss:0x80575A08; // type:object size:0x8 scope:local data:4byte
@GUARD@initializeState_Pause_SetRes__17dLytControlGame_cFv@sLytArcs = .sbss:0x80575A10; // type:object size:0x1 scope:local data:byte
lbl_80575A18 = .sbss:0x80575A18; // type:object size:0x1 data:byte
lbl_80575A19 = .sbss:0x80575A19; // type:object size:0x1 data:byte
lbl_80575A1A = .sbss:0x80575A1A; // type:object size:0x6 data:byte
@@ -42437,8 +42523,8 @@ mVec2__Zero = .sbss:0x80575C70; // type:object size:0x4 align:4 data:float
mVec2__Ex = .sbss:0x80575C78; // type:object size:0x4 align:4 data:float
mVec2__Ey = .sbss:0x80575C80; // type:object size:0x4 align:4 data:float
m_video__6mVideo = .sbss:0x80575C88; // type:object size:0x8 data:4byte
MSB_ALLOC_FUNC = .sbss:0x80575C90; // type:object size:0x4 data:4byte
MSB_FREE_FUNC = .sbss:0x80575C94; // type:object size:0x4 data:4byte
MSB_ALLOC_FUNC = .sbss:0x80575C90; // type:object size:0x4 scope:local data:4byte
MSB_FREE_FUNC = .sbss:0x80575C94; // type:object size:0x4 scope:local data:4byte
AudioDecodeThreadCreated = .sbss:0x80575C98; // type:object size:0x8 scope:local data:4byte
lbl_80575CA0 = .sbss:0x80575CA0; // type:object size:0x4 scope:local data:4byte
OldVIPostCallback = .sbss:0x80575CA4; // type:object size:0x4 data:4byte
@@ -45374,22 +45460,22 @@ lbl_80579DF8 = .sdata2:0x80579DF8; // type:object size:0x4 align:4 data:float
lbl_80579E00 = .sdata2:0x80579E00; // type:object size:0x8 align:8 data:double
lbl_80579E08 = .sdata2:0x80579E08; // type:object size:0x4 align:4 data:float
lbl_80579E10 = .sdata2:0x80579E10; // type:object size:0x8 align:8 data:double
lbl_80579E18 = .sdata2:0x80579E18; // type:object size:0x4 align:4 data:float
lbl_80579E20 = .sdata2:0x80579E20; // type:object size:0x8 align:8 data:double
lbl_80579E28 = .sdata2:0x80579E28; // type:object size:0x4 align:4 data:float
lbl_80579E2C = .sdata2:0x80579E2C; // type:object size:0x4 align:4 data:float
lbl_80579E30 = .sdata2:0x80579E30; // type:object size:0x4 align:4 data:float
lbl_80579E34 = .sdata2:0x80579E34; // type:object size:0x4 align:4 data:float
lbl_80579E38 = .sdata2:0x80579E38; // type:object size:0x4 align:4 data:float
lbl_80579E3C = .sdata2:0x80579E3C; // type:object size:0x4 align:4 data:float
lbl_80579E40 = .sdata2:0x80579E40; // type:object size:0x4 align:4 data:float
lbl_80579E44 = .sdata2:0x80579E44; // type:object size:0x4 align:4 data:float
lbl_80579E48 = .sdata2:0x80579E48; // type:object size:0x4 align:4 data:float
lbl_80579E4C = .sdata2:0x80579E4C; // type:object size:0x4 align:4 data:float
lbl_80579E50 = .sdata2:0x80579E50; // type:object size:0x4 align:4 data:float
lbl_80579E54 = .sdata2:0x80579E54; // type:object size:0x4 align:4 data:float
lbl_80579E58 = .sdata2:0x80579E58; // type:object size:0x4 align:4 data:float
lbl_80579E5C = .sdata2:0x80579E5C; // type:object size:0x4 align:4 data:float
@34553 = .sdata2:0x80579E18; // type:object size:0x4 scope:local align:4 data:float
@34621 = .sdata2:0x80579E20; // type:object size:0x8 scope:local align:8 data:double
@34831 = .sdata2:0x80579E28; // type:object size:0x4 scope:local align:4 data:float
@34832 = .sdata2:0x80579E2C; // type:object size:0x4 scope:local align:4 data:float
@34833 = .sdata2:0x80579E30; // type:object size:0x4 scope:local align:4 data:float
@35090 = .sdata2:0x80579E34; // type:object size:0x4 scope:local align:4 data:float
@35091 = .sdata2:0x80579E38; // type:object size:0x4 scope:local align:4 data:float
@35092 = .sdata2:0x80579E3C; // type:object size:0x4 scope:local align:4 data:float
@35093 = .sdata2:0x80579E40; // type:object size:0x4 scope:local align:4 data:float
@35094 = .sdata2:0x80579E44; // type:object size:0x4 scope:local align:4 data:float
@35095 = .sdata2:0x80579E48; // type:object size:0x4 scope:local align:4 data:float
@35096 = .sdata2:0x80579E4C; // type:object size:0x4 scope:local align:4 data:float
@35456 = .sdata2:0x80579E50; // type:object size:0x4 scope:local align:4 data:float
@35457 = .sdata2:0x80579E54; // type:object size:0x4 scope:local align:4 data:float
@35550 = .sdata2:0x80579E58; // type:object size:0x4 scope:local align:4 data:float
@35624 = .sdata2:0x80579E5C; // type:object size:0x4 scope:local align:4 data:float
@17201 = .sdata2:0x80579E60; // type:object size:0x8 scope:local align:8 data:double
@19382 = .sdata2:0x80579E68; // type:object size:0x4 scope:local align:4 data:float
@19383 = .sdata2:0x80579E6C; // type:object size:0x4 scope:local align:4 data:float
@@ -48463,19 +48549,19 @@ lbl_8057CA54 = .sdata2:0x8057CA54; // type:object size:0x4 align:4 data:float
lbl_8057CA58 = .sdata2:0x8057CA58; // type:object size:0x4 align:4 data:float
lbl_8057CA5C = .sdata2:0x8057CA5C; // type:object size:0x4 align:4 data:float
lbl_8057CA60 = .sdata2:0x8057CA60; // type:object size:0x8 align:8 data:double
lbl_8057CA68 = .sdata2:0x8057CA68; // type:object size:0x4 align:4 data:float
lbl_8057CA6C = .sdata2:0x8057CA6C; // type:object size:0x4 align:4 data:float
lbl_8057CA70 = .sdata2:0x8057CA70; // type:object size:0x4 data:4byte
lbl_8057CA74 = .sdata2:0x8057CA74; // type:object size:0x4 data:4byte
lbl_8057CA78 = .sdata2:0x8057CA78; // type:object size:0x4 data:4byte
lbl_8057CA7C = .sdata2:0x8057CA7C; // type:object size:0x4 data:4byte
lbl_8057CA80 = .sdata2:0x8057CA80; // type:object size:0x4 data:4byte
lbl_8057CA84 = .sdata2:0x8057CA84; // type:object size:0x4 align:4 data:float
lbl_8057CA88 = .sdata2:0x8057CA88; // type:object size:0x4 align:4 data:float
lbl_8057CA8C = .sdata2:0x8057CA8C; // type:object size:0x4 align:4 data:float
lbl_8057CA90 = .sdata2:0x8057CA90; // type:object size:0x4 align:4 data:float
lbl_8057CA94 = .sdata2:0x8057CA94; // type:object size:0x4 align:4 data:float
lbl_8057CA98 = .sdata2:0x8057CA98; // type:object size:0x8 align:8 data:double
@48591 = .sdata2:0x8057CA68; // type:object size:0x4 scope:local align:4 data:float
@48592 = .sdata2:0x8057CA6C; // type:object size:0x4 scope:local align:4 data:float
sMenuPause = .sdata2:0x8057CA70; // type:object size:0x4 scope:local data:4byte
sMap2D = .sdata2:0x8057CA74; // type:object size:0x4 scope:local data:4byte
sMapField = .sdata2:0x8057CA78; // type:object size:0x4 scope:local data:4byte
sMapSky = .sdata2:0x8057CA7C; // type:object size:0x4 scope:local data:4byte
sCommonArrow = .sdata2:0x8057CA80; // type:object size:0x4 scope:local data:4byte
@48940 = .sdata2:0x8057CA84; // type:object size:0x4 scope:local align:4 data:float
@50709 = .sdata2:0x8057CA88; // type:object size:0x4 scope:local align:4 data:float
@50710 = .sdata2:0x8057CA8C; // type:object size:0x4 scope:local align:4 data:float
@50711 = .sdata2:0x8057CA90; // type:object size:0x4 scope:local align:4 data:float
@50712 = .sdata2:0x8057CA94; // type:object size:0x4 scope:local align:4 data:float
@50839 = .sdata2:0x8057CA98; // type:object size:0x8 scope:local align:8 data:double
lbl_8057CAA0 = .sdata2:0x8057CAA0; // type:object size:0x4 align:4 data:float
lbl_8057CAA4 = .sdata2:0x8057CAA4; // type:object size:0x4 align:4 data:float
lbl_8057CAA8 = .sdata2:0x8057CAA8; // type:object size:0x4 align:4 data:float
@@ -51502,16 +51588,29 @@ LytMsgWindow__STATE_DEMO_IN = .bss:0x805AD5B0; // type:object size:0x40 data:4by
LytMsgWindow__STATE_DEMO_VISIBLE = .bss:0x805AD5F0; // type:object size:0x40 data:4byte
LytMsgWindow__STATE_DEMO_OUT = .bss:0x805AD630; // type:object size:0x30 data:4byte
lbl_805AD660 = .bss:0x805AD660; // type:object size:0x1010 data:4byte
lbl_805AE670 = .bss:0x805AE670; // type:object size:0x10
LytMsgWindowSelectBtn__LytMsgWindowSelectBtnParts__STATE_WAIT = .bss:0x805AE680; // type:object size:0x40 data:4byte
LytMsgWindowSelectBtn__LytMsgWindowSelectBtnParts__STATE_ON = .bss:0x805AE6C0; // type:object size:0x40 data:4byte
LytMsgWindowSelectBtn__LytMsgWindowSelectBtnParts__STATE_SELECT = .bss:0x805AE700; // type:object size:0x40 data:4byte
LytMsgWindowSelectBtn__LytMsgWindowSelectBtnParts__STATE_OFF = .bss:0x805AE740; // type:object size:0x40 data:4byte
StateID_Wait__24dLytMsgWindowSelectBtn_c = .bss:0x805AE780; // type:object size:0x40 data:4byte
LytMsgWindowSelectBtn__STATE_IN = .bss:0x805AE7C0; // type:object size:0x40 data:4byte
LytMsgWindowSelectBtn__STATE_WAIT_SELECT = .bss:0x805AE800; // type:object size:0x80 data:4byte
LytMsgWindowSelectBtn__STATE_WAIT_DECIDE = .bss:0x805AE880; // type:object size:0x80 data:4byte
LytMsgWindowSelectBtn__STATE_OUT = .bss:0x805AE900; // type:object size:0x30 data:4byte
@28943 = .bss:0x805AE670; // type:object size:0xC scope:local
...bss.0 = .bss:0x805AE670; // type:label scope:local
StateID_Wait__29dLytMsgWindowSelectBtnParts_c = .bss:0x805AE680; // type:object size:0x30 data:4byte
@28947 = .bss:0x805AE6B0; // type:object size:0xC scope:local
StateID_On__29dLytMsgWindowSelectBtnParts_c = .bss:0x805AE6C0; // type:object size:0x30 data:4byte
@28951 = .bss:0x805AE6F0; // type:object size:0xC scope:local
StateID_Select__29dLytMsgWindowSelectBtnParts_c = .bss:0x805AE700; // type:object size:0x30 data:4byte
@28955 = .bss:0x805AE730; // type:object size:0xC scope:local
StateID_Off__29dLytMsgWindowSelectBtnParts_c = .bss:0x805AE740; // type:object size:0x30 data:4byte
@28959 = .bss:0x805AE770; // type:object size:0xC scope:local
StateID_Wait__24dLytMsgWindowSelectBtn_c = .bss:0x805AE780; // type:object size:0x30 data:4byte
@28963 = .bss:0x805AE7B0; // type:object size:0xC scope:local
StateID_In__24dLytMsgWindowSelectBtn_c = .bss:0x805AE7C0; // type:object size:0x30 data:4byte
@28967 = .bss:0x805AE7F0; // type:object size:0xC scope:local
StateID_WaitSelect__24dLytMsgWindowSelectBtn_c = .bss:0x805AE800; // type:object size:0x30 data:4byte
@28971 = .bss:0x805AE830; // type:object size:0xC scope:local
StateID_CursorInOut__24dLytMsgWindowSelectBtn_c = .bss:0x805AE840; // type:object size:0x30 scope:global
@28975 = .bss:0x805AE870; // type:object size:0xC scope:local
StateID_WaitDecide__24dLytMsgWindowSelectBtn_c = .bss:0x805AE880; // type:object size:0x30 data:4byte
@28979 = .bss:0x805AE8B0; // type:object size:0xC scope:local
StateID_WaitCancel__24dLytMsgWindowSelectBtn_c = .bss:0x805AE8C0; // type:object size:0x30 scope:global
@28983 = .bss:0x805AE8F0; // type:object size:0xC scope:local
StateID_Out__24dLytMsgWindowSelectBtn_c = .bss:0x805AE900; // type:object size:0x30 data:4byte
@18287 = .bss:0x805AE930; // type:object size:0xC scope:local
...bss.0 = .bss:0x805AE930; // type:label scope:local
StateID_Invisible__19dLytMsgWindowTalk_c = .bss:0x805AE940; // type:object size:0x30 data:4byte
@@ -52294,17 +52393,27 @@ AcJstudioAct__STATE_PERFORMANCE = .bss:0x805B7CF0; // type:object size:0x40 data
AcJstudioAct__STATE_LEAVING = .bss:0x805B7D30; // type:object size:0x30 data:4byte
lbl_805B7D60 = .bss:0x805B7D60; // type:object size:0x10 data:4byte
lbl_805B7D70 = .bss:0x805B7D70; // type:object size:0x60 data:4byte
lbl_805B7DD0 = .bss:0x805B7DD0; // type:object size:0x10
lbl_805B7DE0 = .bss:0x805B7DE0; // type:object size:0x20
StateID_Normal__17dLytControlGame_c = .bss:0x805B7E00; // type:object size:0x40 data:4byte
LytControlGame__StateID_Pause_SetRes = .bss:0x805B7E40; // type:object size:0x40 data:4byte
LytControlGame__StateID_Pause_SyncRes = .bss:0x805B7E80; // type:object size:0x40 data:4byte
LytControlGame__StateID_Pause = .bss:0x805B7EC0; // type:object size:0x40 data:4byte
LytControlGame__StateID_DelRes = .bss:0x805B7F00; // type:object size:0x40 data:4byte
LytControlGame__StateID_Map_SetRes = .bss:0x805B7F40; // type:object size:0x40 data:4byte
LytControlGame__StateID_Map_SyncRes = .bss:0x805B7F80; // type:object size:0x40 data:4byte
LytControlGame__StateID_Map = .bss:0x805B7FC0; // type:object size:0x40 data:4byte
LytControlGame__StateID_DelRes2 = .bss:0x805B8000; // type:object size:0x40 data:4byte
@36242 = .bss:0x805B7DD0; // type:object size:0xC scope:local
...bss.0 = .bss:0x805B7DD0; // type:label scope:local
sHio = .bss:0x805B7DE0; // type:object size:0x10
@36261 = .bss:0x805B7DF0; // type:object size:0xC scope:local
StateID_Normal__17dLytControlGame_c = .bss:0x805B7E00; // type:object size:0x30 data:4byte
@36265 = .bss:0x805B7E30; // type:object size:0xC scope:local
StateID_Pause_SetRes__17dLytControlGame_c = .bss:0x805B7E40; // type:object size:0x30 data:4byte
@36269 = .bss:0x805B7E70; // type:object size:0xC scope:local
StateID_Pause_SyncRes__17dLytControlGame_c = .bss:0x805B7E80; // type:object size:0x30 data:4byte
@36273 = .bss:0x805B7EB0; // type:object size:0xC scope:local
StateID_Pause__17dLytControlGame_c = .bss:0x805B7EC0; // type:object size:0x30 data:4byte
@36277 = .bss:0x805B7EF0; // type:object size:0xC scope:local
StateID_Pause_DelRes__17dLytControlGame_c = .bss:0x805B7F00; // type:object size:0x30 data:4byte
@36281 = .bss:0x805B7F30; // type:object size:0xC scope:local
StateID_Map_SetRes__17dLytControlGame_c = .bss:0x805B7F40; // type:object size:0x30 data:4byte
@36285 = .bss:0x805B7F70; // type:object size:0xC scope:local
StateID_Map_SyncRes__17dLytControlGame_c = .bss:0x805B7F80; // type:object size:0x30 data:4byte
@36289 = .bss:0x805B7FB0; // type:object size:0xC scope:local
StateID_Map__17dLytControlGame_c = .bss:0x805B7FC0; // type:object size:0x30 data:4byte
@36293 = .bss:0x805B7FF0; // type:object size:0xC scope:local
StateID_Map_DelRes__17dLytControlGame_c = .bss:0x805B8000; // type:object size:0x30 data:4byte
lbl_805B8040 = .bss:0x805B8040; // type:object size:0xE0 align:4 data:float
lbl_805B8120 = .bss:0x805B8120; // type:object size:0x10
lbl_805B8130 = .bss:0x805B8130; // type:object size:0x60 data:4byte
+1 -1
View File
@@ -663,7 +663,7 @@ config.libs = [
Object(NonMatching, "toBeSorted/d_a_npc_ken_talk.cpp"),
Object(NonMatching, "toBeSorted/d_a_jstudio_act.cpp"),
Object(NonMatching, "toBeSorted/d_a_jstudio_sys.cpp"),
Object(NonMatching, "d/lyt/d_lyt_control_game.cpp"),
Object(Matching, "d/lyt/d_lyt_control_game.cpp"),
Object(NonMatching, "d/lyt/d_lyt_control_title.cpp"),
Object(NonMatching, "d/tg/d_t_map_area.cpp"),
Object(NonMatching, "d/tg/d_t_truck_rails.cpp"),
+9
View File
@@ -105,8 +105,17 @@ public:
return sIsPerformingInitialCollection;
}
static s32 getCollectionCurrentCount() {
return sCollectionCurrentCount;
}
s32 getQuantity() const {
return mItemQuantity;
}
private:
static bool sIsPerformingInitialCollection;
static s32 sCollectionCurrentCount;
/* 0x334 */ UNKTYPE *mpMdl; // Model has its own handling system
/* 0x338 */ dShadowCircle_c mShdw;
+4
View File
@@ -250,6 +250,10 @@ public:
static u16 getTearBit(int tearNum);
static bool setDungeonFlagForTear(int tearNum);
u16 getItemId_i() const {
return mId;
}
private:
u16 mId;
+3 -2
View File
@@ -436,8 +436,9 @@ public:
bool isCursorActive() const {
return mCursorActive;
}
void setField0x9A0(u8 val) {
mCursorActive = val;
void setField_0x9A2(bool value) {
field_0x9A2 = value;
}
void offNextCursor() {
+10 -6
View File
@@ -247,12 +247,12 @@ public:
mInMapEvent = val;
}
s32 getField_0x32C() const {
return field_0x32C;
s32 getMapEvent() const {
return mMapEvent;
}
void setField_0x32C(s32 val) {
field_0x32C = val;
void setMapEvent(s32 val) {
mMapEvent = val;
}
void setField_0x329(bool v) {
@@ -267,6 +267,10 @@ public:
return field_0x32A;
}
bool getField_0x330() const {
return field_0x330;
}
void setField_0x330(bool v) {
field_0x330 = v;
}
@@ -367,8 +371,8 @@ private:
/* 0x32A */ bool field_0x32A;
/* 0x32B */ u8 field_0x32B;
/* 0x32C */ s32 field_0x32C;
/* 0x330 */ u8 field_0x330;
/* 0x32C */ s32 mMapEvent;
/* 0x330 */ bool field_0x330;
/* 0x334 */ u32 mMinigameResultPoints;
/* 0x338 */ u32 mMinigameTime;
+7 -7
View File
@@ -60,7 +60,7 @@ enum StoryFlags_e {
/** [Harp Cutscene (Lanayru Desert layer 2 / Lanayru Mines layer 2 / Temple of Time layer 2 / Behind The Temple
* layer 3)] Story Flag #9 (0x0009) - JP 805ACD58 0x04 / US 805A9AD8 0x04
*/
STORYFLAG_9,
STORYFLAG_HARP_CUTSCENE,
/** [Entering Ancient Cistern Cutscene]
* Story Flag #10 (0x000A) - JP 805ACD58 0x08 / US 805A9AD8 0x08
@@ -111,7 +111,7 @@ enum StoryFlags_e {
/** [Fire Dragon Text after SotH part Cutscene (Eldin Volcano, Digging Mitts Cave, Volcano Summit Waterfall layer
* 4)] Story Flag #19 (0x0013) - JP 805ACD5B 0x08 / US 805A9ADB 0x08
*/
STORYFLAG_19,
STORYFLAG_BOKO_BASE_BEATEN,
/** [Set when learning 3rd SotH part (Groosenator to Lanayru ready)]
* Story Flag #20 (0x0014) - JP 805ACD5B 0x10 / US 805A9ADB 0x10
@@ -718,7 +718,7 @@ enum StoryFlags_e {
/** [Groose lands in Faron after Harp (Sealed Temple layer 2)]
* Story Flag #140 (0x008C) - JP 805ACD67 0x04 / US 805A9AE7 0x04
*/
STORYFLAG_140,
STORYFLAG_GROOSE_LANDS_IN_FARON,
/** [Ballad of the Goddess played with Impa (Sealed Grounds layer 2)]
* Story Flag #141 (0x008D) - JP 805ACD6C 0x01 / US 805A9AEC 0x01
@@ -863,7 +863,7 @@ enum StoryFlags_e {
/** [Eldin Eruption Cutscene ready to play (set when Levias explains SotH quest, set and unset by Faron and Lanayru
* SotH)] Story Flag #169 (0x00A9) - JP 805ACD62 0x01 / US 805A9AE2 0x01
*/
STORYFLAG_169,
STORYFLAG_ELDIN_VOLCANO_CAN_ERUPT,
/** [Fire Dragon teaches SotH part Cutscene (Fire Dragon's Lair layer 2)]
* Story Flag #170 (0x00AA) - JP 805ACD62 0x02 / US 805A9AE2 0x02
@@ -948,12 +948,12 @@ enum StoryFlags_e {
/** [Water Basin collected (unsets when scrapper picks up anything else)]
* Story Flag #186 (0x00BA) - JP 805ACD69 0x02 / US 805A9AE9 0x02
*/
STORYFLAG_186,
STORYFLAG_SCRAPPER_HAS_WATER_BASIN,
/** [Big Frog Watered]
* Story Flag #187 (0x00BB) - JP 805ACD69 0x04 / US 805A9AE9 0x04
*/
STORYFLAG_187,
STORYFLAG_SUMMIT_BIG_FROG_WATERED,
/** [Asking Fi about the Water Basin after finding the Big Flames in fromt of FS]
* Story Flag #188 (0x00BC) - JP 805ACD69 0x08 / US 805A9AE9 0x08
@@ -3738,7 +3738,7 @@ enum StoryFlags_e {
/** [set after scrappers text at start of Water Basin Escord]
* Story Flag #743 (0x02E7) - JP 805ACDA6 0x80 / US 805A9B26 0x80
*/
STORYFLAG_743,
STORYFLAG_WATER_BASIN_ESCORT_STARTED,
/** [Scrapper text at start of scrapper escort]
* Story Flag #744 (0x02E8) - JP 805ACDA9 0x01 / US 805A9B29 0x01
+58 -17
View File
@@ -1,29 +1,58 @@
#ifndef D_LYT_CONTROL_GAME_H
#define D_LYT_CONTROL_GAME_H
// clang-format off
// vtable order
#include "common.h"
#include "d/d_base.h"
#include "d/lyt/d_lyt_map.h"
#include "d/lyt/d_lyt_wipe.h"
#include "d/lyt/meter/d_lyt_meter.h"
#include "d/lyt/msg_window/d_lyt_msg_window.h"
#include "d/lyt/msg_window/d_lyt_simple_window.h"
#include "d/lyt/d_lyt_wipe.h"
#include "d/lyt/d_lyt_help.h"
#include "d/lyt/d_lyt_map.h"
#include "s/s_State.hpp"
#include "toBeSorted/arc_managers/layout_arc_manager.h"
#include "toBeSorted/raii_ptr.h"
// clang-format on
class dLytDrawMark_c;
class dLytControlGame_c : public dBase_c {
public:
dLytControlGame_c();
virtual ~dLytControlGame_c();
enum Cmd_e {
CMD_NONE = 0,
CMD_MAP = 1,
CMD_PAUSE = 2,
CMD_HELP = 3,
};
virtual int create() override;
virtual int doDelete() override;
virtual int execute() override;
virtual int draw() override;
bool isInSomeMapState() const;
bool isNotInStateMap() const;
void openCollectionScreenDemo();
bool isStateNormalOrNotInEvent() const;
void somehowRelatedToEnteringLightPillars(s32, s32, s32);
void fn_802CCD40(bool);
bool isStateNotNormalOrInEvent() const;
bool fn_802CFF60() const;
void setMapEventDone(bool);
void fn_802D04F0();
void checkForBeaconNextToMark();
void hideHelp();
void changeHelpText(s32 textIndex);
void openPause();
void openPauseDemo();
void openHelp(s32 textIndex);
void openMap();
void openMapEvent(s32 mapEvent, s32 arg1, s32 arg2);
void resetFootsteps();
const dMapFootPrintsQueue_c *getFootprintsQueue() const {
return mFootprintsMgr.getQueue();
@@ -80,31 +109,43 @@ public:
}
private:
bool checkStoryflag(s32 flag) const;
void fn_802CFA90();
bool canOpenPause();
bool releaseRes();
bool decrementRes();
/* 0x00068 */ UI_STATE_MGR_DECLARE(dLytControlGame_c);
/* 0x000A4 */ RaiiPtr<void*> field_0x000A4;
/* 0x000A4 */ RaiiPtr<dLytMap_c> mpMap;
/* 0x000A8 */ dLytMeter_c mMeter;
/* 0x13C10 */ dLytMsgWindow_c mMsgWindow;
/* 0x14E34 */ dLytSimpleWindow_c mSimpleWindow;
/* 0x152A0 */ dLytWipe_c mWipe;
/* 0x15848 */ u8 _0x15848[0x15850 - 0x15848];
/* 0x15848 */ dLytHelp_c *mpHelp;
/* 0x1584C */ dLytDrawMark_c *mpDrawMark;
/* 0x15850 */ dMapFootPrintsMgr_c mFootprintsMgr;
/* 0x15C24 */ UNKWORD field_0x15C24;
/* 0x15C28 */ UNKWORD field_0x15C28;
/* 0x15C24 */ s32 mCommand;
/* 0x15C28 */ s32 mHelpTextIndex;
/* 0x15C2C */ s32 mCurrentPauseDisp;
/* 0x15C30 */ s32 mPauseDisp00Tab;
/* 0x15C34 */ u8 mIsEvent;
/* 0x15C38 */ s32 mMapEvent;
/* 0x15C34 */ u8 _0x15C34[0x15C40 - 0x15C34];
/* 0x15C3C */ u8 _0x15C3C[0x15C40 - 0x15C3C];
/* 0x15C40 */ LayoutArcControl mLytArcControl;
/* 0x15C4C */ u8 _0x15C4C[0x15C60 - 0x15C4C];
/* 0x15C4C */ s32 mMapEventArg1;
/* 0x15C50 */ s32 mMapEventArg2;
/* 0x15C54 */ UNKWORD field_0x15C54;
/* 0x15C58 */ UNKWORD field_0x15C58;
/* 0x15C5C */ u8 _0x15C5C[0x15C60 - 0x15C5C];
/* 0x15C60 */ u16 mItemForPauseDemo;
/* 0x15C62 */ u8 _0x15C62[0x15C64 - 0x15C62];
/* 0x15C62 */ u16 mPickupItemCount;
/* 0x15C64 */ u16 mItemCountForPauseDemo;
/* 0x15C66 */ u8 field_0x15C66;
/* 0x15C67 */ bool mIsPauseDemo;
+48
View File
@@ -0,0 +1,48 @@
#ifndef D_LYT_DRAW_MARK_H
#define D_LYT_DRAW_MARK_H
#include "d/lyt/d2d.h"
#include "m/m_vec.h"
#include "s/s_State.hpp"
class dLytDrawMark_c {
public:
dLytDrawMark_c() : mStateMgr(*this) {}
~dLytDrawMark_c() {}
bool build(UNKWORD);
bool remove();
bool execute();
bool draw();
u8 getField_0x940() const {
return field_0x940;
}
void setField_0x941(u8 v) {
field_0x941 = v;
}
private:
/* 0x000 */ UI_STATE_MGR_DECLARE(dLytDrawMark_c);
/* 0x018 */ d2d::LytBase_c mLyt;
/* 0x0CC */ d2d::AnmGroup_c mAnm[16];
/* 0x4CC */ u8 _0x4CC[0x504 - 0x4CC];
/* 0x504 */ d2d::ResAccIf_c mResAcc;
/* 0x874 */ u8 _0x874[0x88C - 0x874];
/* 0x88C */ mVec2_c field_0x88C[6];
/* 0x8BC */ mVec2_c field_0x8BC[6];
/* 0x8EC */ u8 _0x8EC[0x940 - 0x8EC];
/* 0x940 */ u8 field_0x940;
/* 0x941 */ u8 field_0x941;
/* 0x942 */ u8 _0x942[0x958 - 0x942];
};
#endif
+18 -2
View File
@@ -65,6 +65,22 @@ public:
bool setText(s32 textIndex);
void changeText(s32 textIndex);
static dLytHelp_c *GetInstance() {
return sInstance;
}
bool isStateEnd() const {
return *mStateMgr.getStateID() == StateID_End;
}
void requestOut() {
mOutRequest = true;
}
bool isWaiting() const {
return mIsWaiting;
}
private:
static dLytHelp_c *sInstance;
@@ -80,8 +96,8 @@ private:
/* 0x04C */ d2d::ResAccIf_c mResAcc;
/* 0x3BC */ dLytHelpMain_c *mpMain;
/* 0x3C0 */ bool field_0x3C0;
/* 0x3C1 */ bool field_0x3C1;
/* 0x3C2 */ bool field_0x3C2;
/* 0x3C1 */ bool mOutRequest;
/* 0x3C2 */ bool mIsWaiting;
/* 0x3C4 */ s32 mTextIndex;
/* 0x3C8 */ s32 field_0x3C8;
};
+49 -5
View File
@@ -4,6 +4,7 @@
#include "common.h"
#include "d/d_cursor_hit_check.h"
#include "d/d_message.h"
#include "d/d_sc_game.h"
#include "d/lyt/d2d.h"
#include "d/lyt/d_lyt_map_capture.h"
#include "d/lyt/d_lyt_map_global.h"
@@ -13,6 +14,7 @@
#include "egg/core/eggColorFader.h"
#include "egg/core/eggFader.h"
#include "m/m2d.h"
#include "m/m_allocator.h"
#include "m/m_angle.h"
#include "m/m_vec.h"
#include "nw4r/lyt/lyt_bounding.h"
@@ -87,10 +89,18 @@ public:
void execute();
void reset() {
mQueue.init();
}
const dMapFootPrintsQueue_c *getQueue() const {
return &mQueue;
}
void setFootstepMinDistSq(f32 value) {
mMinStepDistanceSq = value;
}
private:
/* 0x004 */ dMapFootPrintsQueue_c mQueue;
/* 0x3D0 */ f32 mMinStepDistanceSq;
@@ -636,10 +646,9 @@ public:
/** arg1 = surface province */
MAP_EVENT_SAVE_OBJ = 10,
MAP_EVENT_11 = 11,
};
private:
// TODO - need to come up with better names for all of these enums and concepts
MAP_EVENT_MAX = 12,
};
enum SurfaceProvince_e {
SURFACE_PROVINCE_FARON = 0,
@@ -647,6 +656,9 @@ private:
SURFACE_PROVINCE_LANAYRU = 2,
};
private:
// TODO - need to come up with better names for all of these enums and concepts
enum AreaGroup_e {
AREAGROUP_SKY = 1,
AREAGROUP_FARON = 2,
@@ -716,7 +728,7 @@ private:
void loadTextboxes();
void saveMapState();
void initMapState();
static void initMapState();
void loadMapState();
void checkCursorPointedAtMap();
@@ -747,6 +759,10 @@ private:
mMapEvent == MAP_EVENT_11;
}
void setMapEventDone(bool done) {
mEventDone = done;
}
/* 0x0010 */ UI_STATE_MGR_DECLARE(dLytMapMain_c);
/* 0x004C */ dFlowMgrBase_c mFlowMgr;
/* 0x00A4 */ dFlow_c mFlow;
@@ -896,9 +912,13 @@ private:
class dLytMap_c {
public:
dLytMap_c() {
mMapFader.setVisible(false);
sInstance = this;
}
virtual ~dLytMap_c() {
if (dScGame_c::GetInstance() != nullptr) {
dScGame_c::GetInstance()->setTargetingScreenPrio(0x85);
}
sInstance = nullptr;
}
@@ -918,6 +938,22 @@ public:
return mMapMain.isOpen();
}
bool checkClose() const {
return mMapMain.checkClose();
}
bool isMapIntroDone() const {
return mMapMain.isMapIntroDone();
}
void close() {
mMapMain.close();
}
static void initMapState() {
dLytMapMain_c::initMapState();
}
bool isVisibleNoIntro() const {
return mMapMain.isVisibleNoIntro();
}
@@ -938,6 +974,14 @@ public:
return mMapMain.mMapEvent == dLytMapMain_c::MAP_EVENT_SAVE_OBJ;
}
void startMapEvent(s32 mapEvent, s32 arg1, s32 arg2) {
mMapMain.startMapEvent(mapEvent, arg1, arg2);
}
void setMapEventDone(bool done) {
mMapMain.setMapEventDone(done);
}
void queueMapEvent(s32 mapEvent, s32 arg1, s32 arg2) {
mMapMain.queueMapEvent(mapEvent, arg1, arg2);
}
@@ -951,7 +995,7 @@ public:
private:
/* 0x0004 */ d2d::ResAccIf_c mResAcc;
/* 0x0374 */ dLytMapMain_c mMapMain;
/* 0x91A4 */ u8 _0x91A4[0x91C0 - 0x91A4];
/* 0x91A4 */ mHeapAllocator_c field_0x91A4;
/* 0x91C0 */ dLytMapFader_c mMapFader;
static dLytMap_c *sInstance;
+7 -3
View File
@@ -176,8 +176,12 @@ public:
mMapEvent = v;
}
u8 getField_0x54() const {
return field_0x54;
bool isInMapEvent() const {
return mInMapEvent;
}
void setInMapEvent(bool v) {
mInMapEvent = v;
}
void projectOntoMap(mVec2_c &result, const mVec3_c &position) const;
@@ -213,7 +217,7 @@ private:
/* 0x4E */ u8 mAlpha;
/* 0x4F */ u8 field_0x4F;
/* 0x50 */ s32 mMapEvent;
/* 0x54 */ u8 field_0x54;
/* 0x54 */ bool mInMapEvent;
/* 0x55 */ u8 field_0x55;
/* 0x56 */ mAng field_0x56;
/* 0x58 */ f32 field_0x58;
+5 -1
View File
@@ -215,6 +215,10 @@ public:
void inRequest();
bool isActive() const {
return mIsActive;
}
static f32 sDisp00ArrowRotation;
static f32 sDisp00ArrowLength;
@@ -256,7 +260,7 @@ private:
/* 0x0833 */ u8 mCurrentSelectionTab;
/* 0x0834 */ u8 mTimer;
/* 0x0835 */ u8 field_0x0835;
/* 0x0836 */ bool field_0x0836;
/* 0x0836 */ bool mIsActive;
/* 0x0837 */ bool field_0x0837;
/* 0x0838 */ bool field_0x0838;
/* 0x0839 */ bool field_0x0839;
+25
View File
@@ -74,6 +74,13 @@ public:
POSITION_MAP = 1,
};
enum Mode_e {
MODE_MAP_INIT = 0,
MODE_MAP = 1,
MODE_PAUSE = 2,
MODE_NONE = 4,
};
dLytMeterMain_c();
virtual ~dLytMeterMain_c() {}
@@ -250,6 +257,18 @@ public:
return mMain.mItemSelect.fn_800F0220(arg);
}
bool itemSelectFn800EFDF0(bool b) const {
return mMain.mItemSelect.fn_800EFDF0(b);
}
bool minusBtnFn800F7600() const {
return mMain.mMinusBtn.fn_800F7600();
}
bool dowsingFn800FE4B0() const {
return mMain.mDowsing.fn_800FE4B0();
}
bool dowsingDemoRelated(s32 arg) {
return mMain.mDowsing.fn_800FE3C0(arg);
}
@@ -484,6 +503,12 @@ public:
}
}
static void setPlusBtnCall(bool call) {
if (sInstance != nullptr) {
sInstance->mMain.mPlusBtn.setCall(call);
}
}
static void setSelectBtn(f32 angle, f32 length) {
if (sInstance != nullptr) {
dLytMeterMain_c *main = &sInstance->mMain;
+2
View File
@@ -66,6 +66,8 @@ public:
void setMutedFromFader(bool muteFlag);
void onEventStart();
void onEventEnd();
void fn_803852B0();
void fn_803852F0();
private:
void calcEnemyObjVolume();
+2
View File
@@ -19,4 +19,6 @@ void setBeaconPositionChecked(const mVec3_c *position, u32 beaconIndex);
/** Checks whether the current stage is ineligible for beacon placement */
bool doesStageForbidBeaconPlacement();
const mVec3_c *getBeaconPosition(u32 beaconIndex);
#endif
+1
View File
@@ -52,6 +52,7 @@ public:
// Something like isActorInEvent maybe?
static bool FUN_800a0570(const dAcBase_c *actor);
static bool FUN_800a0ba0();
static bool fn_8009F990();
private:
/* 0x000 */ u8 _000[0x084 - 0x000];
+7
View File
@@ -17,6 +17,13 @@ public:
}
}
void destruct() {
if (mPtr != nullptr) {
delete mPtr;
mPtr = nullptr;
}
}
void operator=(T *ptr) {
mPtr = ptr;
}
+11 -10
View File
@@ -431,13 +431,13 @@ bool dFlow_c::handleEventInternal(const MsbFlowInfo *element) {
case 6: mapEvent = dLytMapMain_c::MAP_EVENT_FIELD_MAP_CHANGE_8; break;
case 7: mapEvent = dLytMapMain_c::MAP_EVENT_GODDESS_CUBE; break;
}
dMessage_c::getInstance()->setField_0x32C(mapEvent);
dMessage_c::getInstance()->setMapEvent(mapEvent);
dMessage_c::getInstance()->setField_0x329(true);
if (dMessage_c::getInstance()->getInMapEvent() == false) {
dMessage_c::getInstance()->setInMapEvent(true);
dMessage_c::getInstance()->clearLightPillarRelatedArgs();
if (dLytControlGame_c::getInstance()->isStateNormalOrNotInEvent()) {
dLytControlGame_c::getInstance()->somehowRelatedToEnteringLightPillars(
if (dLytControlGame_c::getInstance()->isStateNotNormalOrInEvent()) {
dLytControlGame_c::getInstance()->openMapEvent(
mapEvent, arg1, arg2
);
}
@@ -450,18 +450,19 @@ bool dFlow_c::handleEventInternal(const MsbFlowInfo *element) {
case EVENT_END_MAP_EVENT: {
// TODO what do these modes do?
if (params1n2 == 1) {
// Close map
if (!dLytControlGame_c::getInstance()->isNotInStateMap()) {
dLytControlGame_c::getInstance()->fn_802CCD40(true);
dLytControlGame_c::getInstance()->setMapEventDone(true);
}
} else if (params1n2 == 2) {
dMessage_c::getInstance()->setField_0x330(1);
if (dMessage_c::getInstance()->getField_0x32C() != 4 &&
dMessage_c::getInstance()->getField_0x32C() != 12) {
if (dMessage_c::getInstance()->getMapEvent() != dLytMapMain_c::MAP_EVENT_DUNGEON_MAP_GET &&
dMessage_c::getInstance()->getMapEvent() != dLytMapMain_c::MAP_EVENT_MAX) {
dMessage_c::getInstance()->setField_0x32A(1);
}
} else {
if (dMessage_c::getInstance()->getField_0x32C() != 4 &&
dMessage_c::getInstance()->getField_0x32C() != 12) {
if (dMessage_c::getInstance()->getMapEvent() != dLytMapMain_c::MAP_EVENT_DUNGEON_MAP_GET &&
dMessage_c::getInstance()->getMapEvent() != dLytMapMain_c::MAP_EVENT_MAX) {
dMessage_c::getInstance()->setField_0x32A(1);
}
}
@@ -517,7 +518,7 @@ bool dFlow_c::handleEventInternal(const MsbFlowInfo *element) {
break;
case EVENT_DEMO_COLLECTION_SCREEN:
if (!MinigameManager::isInMinigameState(MinigameManager::INSECT_CAPTURE)) {
dLytControlGame_c::getInstance()->openCollectionScreenDemo();
dLytControlGame_c::getInstance()->openPauseDemo();
}
break;
}
@@ -1767,7 +1768,7 @@ void dMessage_c::init() {
mInMapEvent = false;
field_0x329 = 0;
field_0x32A = 0;
sInstance->setField_0x32C(12);
sInstance->setMapEvent(dLytMapMain_c::MAP_EVENT_MAX);
field_0x330 = 0;
}
+694 -2
View File
@@ -1,14 +1,706 @@
#include "d/lyt/d_lyt_control_game.h"
#include "common.h"
#include "d/a/d_a_base.h"
#include "d/a/d_a_item.h"
#include "d/a/d_a_itembase.h"
#include "d/a/d_a_player.h"
#include "d/d_base.h"
#include "d/d_cs_game.h"
#include "d/d_d2d.h"
#include "d/d_heap.h"
#include "d/d_message.h"
#include "d/d_rawarchive.h"
#include "d/d_sc_game.h"
#include "d/d_stage.h"
#include "d/d_stage_mgr.h"
#include "d/flag/sceneflag_manager.h"
#include "d/flag/storyflag_manager.h"
#include "d/lyt/d_lyt_draw_mark.h"
#include "d/lyt/d_lyt_help.h"
#include "d/lyt/d_lyt_map.h"
#include "d/lyt/d_lyt_map_global.h"
#include "d/lyt/d_lyt_pause.h"
#include "d/lyt/meter/d_lyt_meter.h"
#include "d/snd/d_snd_player_mgr.h"
#include "d/snd/d_snd_source_mgr.h"
#include "d/t/d_t_map_mark.h"
#include "f/f_base.h"
#include "f/f_manager.h"
#include "f/f_profile_name.h"
#include "m/m2d.h"
#include "m/m_vec.h"
#include "toBeSorted/arc_managers/layout_arc_manager.h"
#include "toBeSorted/d_beacon.h"
#include "toBeSorted/event_manager.h"
#include "toBeSorted/raii_ptr.h"
SPECIAL_BASE_PROFILE(LYT_CONTROL_GAME, dLytControlGame_c, fProfile::LYT_CONTROL_GAME, 0x9, 96);
class dLytControlGame_HIO_c {
public:
dLytControlGame_HIO_c();
virtual ~dLytControlGame_HIO_c();
dLytControlGame_c::dLytControlGame_c() : mStateMgr(*this), field_0x15C24(0), field_0x15C28(0) {
/* 0x04 */ f32 field_0x04;
/* 0x08 */ f32 field_0x08;
/* 0x0C */ s16 field_0x0C;
/* 0x0E */ u8 field_0x0E;
/* 0x0F */ u8 field_0x0F;
};
dLytControlGame_HIO_c sHio;
dLytControlGame_HIO_c::dLytControlGame_HIO_c() : field_0x04(300.0f), field_0x08(1.0f), field_0x0E(1), field_0x0F(0) {
field_0x0C = 0x1F4;
}
dLytControlGame_HIO_c::~dLytControlGame_HIO_c() {}
SPECIAL_BASE_PROFILE(LYT_CONTROL_GAME, dLytControlGame_c, fProfile::LYT_CONTROL_GAME, 0x2A9, 0x19);
dLytControlGame_c *dLytControlGame_c::sInstance;
STATE_DEFINE(dLytControlGame_c, Normal);
STATE_DEFINE(dLytControlGame_c, Pause_SetRes);
STATE_DEFINE(dLytControlGame_c, Pause_SyncRes);
STATE_DEFINE(dLytControlGame_c, Pause);
STATE_DEFINE(dLytControlGame_c, Pause_DelRes);
STATE_DEFINE(dLytControlGame_c, Map_SetRes);
STATE_DEFINE(dLytControlGame_c, Map_SyncRes);
STATE_DEFINE(dLytControlGame_c, Map);
STATE_DEFINE(dLytControlGame_c, Map_DelRes);
void dLytControlGame_c::initializeState_Normal() {}
void dLytControlGame_c::executeState_Normal() {}
void dLytControlGame_c::finalizeState_Normal() {}
static const char *const sMenuPause = "MenuPause";
static const char *const sMap2D = "Map2D";
static const char *const sMapField = "MapField";
static const char *const sMapSky = "MapSky";
static const char *const sCommonArrow = "CommonArrow";
void dLytControlGame_c::initializeState_Pause_SetRes() {
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_PAUSE);
dBase_c::s_NextExecuteControlFlags |= BASE_PROP_0x1;
static const char *sLytArcs[] = {sMenuPause, sCommonArrow};
mLytArcControl.set(sLytArcs, ARRAY_LENGTH(sLytArcs));
}
void dLytControlGame_c::executeState_Pause_SetRes() {
mLytArcControl.load(nullptr);
mStateMgr.changeState(StateID_Pause_SyncRes);
}
void dLytControlGame_c::finalizeState_Pause_SetRes() {}
void dLytControlGame_c::initializeState_Pause_SyncRes() {}
void dLytControlGame_c::executeState_Pause_SyncRes() {
if (!mLytArcControl.allLoaded()) {
return;
}
if (mpHelp != nullptr) {
return;
}
mStateMgr.changeState(StateID_Pause);
}
void dLytControlGame_c::finalizeState_Pause_SyncRes() {}
void dLytControlGame_c::initializeState_Pause() {
dBase_c::createBase(fProfile::LYT_PAUSE, this, 0, OTHER);
if (dLytPauseMgr_c::GetInstance() == nullptr) {
return;
}
dLytPauseMgr_c::GetInstance()->inRequest();
if (dCsGame_c::GetInstance()->shouldDraw()) {
dCsGame_c::GetInstance()->offNextCursor();
}
mCommand = CMD_NONE;
}
void dLytControlGame_c::executeState_Pause() {
if (dLytPauseMgr_c::GetInstance() != nullptr && !dLytPauseMgr_c::GetInstance()->isActive()) {
mStateMgr.changeState(StateID_Pause_DelRes);
}
}
void dLytControlGame_c::finalizeState_Pause() {}
void dLytControlGame_c::initializeState_Pause_DelRes() {}
void dLytControlGame_c::executeState_Pause_DelRes() {
if (!mLytArcControl.release()) {
return;
}
if (dLytPauseMgr_c::GetInstance() != nullptr) {
dLytPauseMgr_c::GetInstance()->deleteRequest();
}
dSndSourceMgr_c::GetInstance()->fn_803852F0();
mStateMgr.changeState(StateID_Normal);
}
void dLytControlGame_c::finalizeState_Pause_DelRes() {
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_NONE);
}
void dLytControlGame_c::initializeState_Map_SetRes() {
// Not sure if this is the right enum
if (!EventManager::isInEvent() || mMapEvent == dLytMapMain_c::MAP_EVENT_11) {
dBase_c::s_NextExecuteControlFlags |= BASE_PROP_0x10;
}
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_MAP_INIT);
}
void dLytControlGame_c::executeState_Map_SetRes() {
LayoutArcManager::GetInstance()->loadLayoutArcFromDisk(sMap2D, nullptr);
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
LayoutArcManager::GetInstance()->loadLayoutArcFromDisk(sMapSky, nullptr);
} else {
LayoutArcManager::GetInstance()->loadLayoutArcFromDisk(sMapField, nullptr);
}
mStateMgr.changeState(StateID_Map_SyncRes);
}
void dLytControlGame_c::finalizeState_Map_SetRes() {}
void dLytControlGame_c::initializeState_Map_SyncRes() {}
void dLytControlGame_c::executeState_Map_SyncRes() {
dArcResult_e result1 = LayoutArcManager::GetInstance()->ensureLoaded1(sMap2D);
dArcResult_e result2;
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
result2 = LayoutArcManager::GetInstance()->ensureLoaded1(sMapSky);
} else {
result2 = LayoutArcManager::GetInstance()->ensureLoaded1(sMapField);
}
if (result1 == D_ARC_RESULT_OK && result2 == D_ARC_RESULT_OK) {
mStateMgr.changeState(StateID_Map);
}
}
void dLytControlGame_c::finalizeState_Map_SyncRes() {}
void dLytControlGame_c::setMapEventDone(bool b) {
mpMap->setMapEventDone(b);
}
void dLytControlGame_c::initializeState_Map() {
mpMap = new (dHeap::layoutEx2Heap.heap) dLytMap_c();
mpMap->build();
mpMap->startMapEvent(mMapEvent, mMapEventArg1, mMapEventArg2);
dLytMapGlobal_c::GetInstance()->setInMapEvent(mMapEvent != dLytMapMain_c::MAP_EVENT_NONE);
}
void dLytControlGame_c::executeState_Map() {
if (dLytMap_c::GetInstance()->isOpen()) {
if (dLytMeter_c::GetInstance()->getMeterField_0x13750() != dLytMeterMain_c::MODE_MAP) {
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_MAP);
if (StoryflagManager::sInstance->getCounterOrFlag(STORYFLAG_PLUS_BTN_NOTICE)) {
StoryflagManager::sInstance->unsetFlag(STORYFLAG_PLUS_BTN_NOTICE);
}
}
if (dLytMeter_c::GetInstance()->getBasicPosition() != dLytMeterMain_c::POSITION_MAP) {
dLytMeter_c::GetInstance()->setBasicPosition(dLytMeterMain_c::POSITION_MAP);
}
}
if (mpMap->checkClose()) {
mpMap->close();
if (dMessage_c::getInstance()->getField_0x330()) {
checkForBeaconNextToMark();
}
mStateMgr.changeState(StateID_Map_DelRes);
}
if (mpMap->isMapIntroDone()) {
mStateMgr.changeState(StateID_Map_DelRes);
}
mpMap->execute();
}
void dLytControlGame_c::finalizeState_Map() {}
void dLytControlGame_c::initializeState_Map_DelRes() {}
void dLytControlGame_c::executeState_Map_DelRes() {
// Maybe an inline
if (dLytMap_c::GetInstance()->isVisible()) {
mpMap->execute();
return;
}
dArcResult_e result1 = LayoutArcManager::GetInstance()->ensureLoaded1(sMap2D);
dArcResult_e result2;
if (result1 != D_ARC_RESULT_ERROR_NOT_FOUND) {
if (result1 != D_ARC_RESULT_OK) {
return;
}
if (LayoutArcManager::GetInstance()->decrement(sMap2D)) {
if (mpMap != nullptr) {
mpMap->remove();
mpMap.destruct();
m2d::setLytAllocator();
}
dSndSourceMgr_c::GetInstance()->fn_803852F0();
mStateMgr.changeState(StateID_Normal);
}
}
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
result2 = LayoutArcManager::GetInstance()->ensureLoaded1(sMapSky);
} else {
result2 = LayoutArcManager::GetInstance()->ensureLoaded1(sMapField);
}
if (result2 != D_ARC_RESULT_ERROR_NOT_FOUND) {
if (result2 != D_ARC_RESULT_OK) {
return;
}
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
LayoutArcManager::GetInstance()->decrement(sMapSky);
} else {
LayoutArcManager::GetInstance()->decrement(sMapField);
}
}
}
void dLytControlGame_c::finalizeState_Map_DelRes() {
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_NONE);
dLytMeter_c::GetInstance()->setBasicPosition(dLytMeterMain_c::POSITION_NORMAL);
dMessage_c::getInstance()->setMapEvent(dLytMapMain_c::MAP_EVENT_MAX);
}
dLytControlGame_c::dLytControlGame_c() : mStateMgr(*this), mCommand(CMD_NONE), mHelpTextIndex(0) {
sInstance = this;
}
dLytControlGame_c::~dLytControlGame_c() {
sInstance = nullptr;
}
int dLytControlGame_c::create() {
if (dStage_c::GetInstance() == nullptr) {
return NOT_READY;
}
dLytMap_c::initMapState();
mMeter.build();
mMsgWindow.build();
mSimpleWindow.build();
mWipe.build();
dBase_c::createBase(fProfile::LYT_ENEMY_ICON, this, 0, OTHER);
dBase_c::createBase(fProfile::LYT_DROP_LINE, this, 0, OTHER);
dBase_c::createBase(fProfile::LYT_FORCE_LINE, this, 0, OTHER);
dBase_c::createBase(fProfile::LYT_SAVE_MGR, this, 0, OTHER);
if (dScGame_c::currentSpawnInfo.stageName == "F103_1" || dScGame_c::currentSpawnInfo.stageName == "t_tkm26" ||
dScGame_c::currentSpawnInfo.stageName == "F103" || dScGame_c::currentSpawnInfo.stageName == "t_tkm24") {
dBase_c::createBase(fProfile::LYT_SUIRYU_SCORE, this, 0, OTHER);
dBase_c::createBase(fProfile::LYT_SUIRYU_SCORE_COMP, this, 0, OTHER);
} else if (dScGame_c::isCurrentStage("B301")) {
dBase_c::createBase(fProfile::LYT_DEMO_DOWSING, this, 0, OTHER);
}
mCommand = CMD_NONE;
mHelpTextIndex = 0;
StoryflagManager *mgr = StoryflagManager::sInstance;
mCurrentPauseDisp = mgr->getCounterOrFlag(STORYFLAG_ON_COLLECTION_SCREEN);
mPauseDisp00Tab = mgr->getCounterOrFlag(STORYFLAG_SAVED_DISP00_TAB);
field_0x15C66 = 0;
mIsPauseDemo = false;
mItemForPauseDemo = 0;
mPickupItemCount = 0;
mItemCountForPauseDemo = 0;
mPauseDemoDisp = 0;
mStateMgr.changeState(StateID_Normal);
mpHelp = nullptr;
mpDrawMark = nullptr;
field_0x15C54 = 0;
field_0x15C58 = 0;
return SUCCEEDED;
}
int dLytControlGame_c::doDelete() {
if (!releaseRes()) {
return NOT_READY;
}
if (!decrementRes()) {
return NOT_READY;
}
mMsgWindow.remove();
mSimpleWindow.remove();
mMeter.remove();
mWipe.remove();
if (mpHelp != nullptr) {
mpHelp->remove();
delete mpHelp;
mpHelp = nullptr;
}
if (mpDrawMark != nullptr) {
mpDrawMark->remove();
delete mpDrawMark;
mpDrawMark = nullptr;
}
if (mpMap != nullptr) {
mpMap->remove();
mpMap.destruct();
m2d::setLytAllocator();
}
return SUCCEEDED;
}
int dLytControlGame_c::execute() {
if (!isInSomeMapState()) {
mFootprintsMgr.setFootstepMinDistSq(sHio.field_0x04 * sHio.field_0x04);
mFootprintsMgr.execute();
}
if (*mStateMgr.getStateID() == StateID_Normal) {
fn_802CFA90();
} else {
if (dCsGame_c::GetInstance() != nullptr) {
dCsGame_c::GetInstance()->setField_0x9A2(true);
}
}
if (mpDrawMark != nullptr) {
if (field_0x15C54 == 0) {
mpDrawMark->setField_0x941(1);
}
mpDrawMark->execute();
if (mpDrawMark->getField_0x940() != 0) {
mpDrawMark->remove();
delete mpDrawMark;
mpDrawMark = nullptr;
}
} else {
if (field_0x15C54 != 0) {
mpDrawMark = new dLytDrawMark_c();
mpDrawMark->build(field_0x15C58);
}
}
mMeter.execute();
mMsgWindow.execute();
mSimpleWindow.execute();
mWipe.execute();
if (mpHelp != nullptr) {
mpHelp->execute();
if (dLytHelp_c::GetInstance() != nullptr) {
if (mpHelp->isStateEnd()) {
mpHelp->remove();
delete mpHelp;
mpHelp = nullptr;
}
}
}
mStateMgr.executeState();
return SUCCEEDED;
}
int dLytControlGame_c::draw() {
mMeter.draw();
// okay
if (dLytMap_c::GetInstance() != nullptr && dLytMap_c::GetInstance() != nullptr) {
mpMap->draw();
}
mMsgWindow.draw();
mSimpleWindow.addToDrawList();
mWipe.draw();
if (mpHelp != nullptr) {
mpHelp->draw();
}
if (mpDrawMark != nullptr) {
mpDrawMark->draw();
}
return SUCCEEDED;
}
bool dLytControlGame_c::checkStoryflag(s32 flag) const {
return StoryflagManager::sInstance->getCounterOrFlag(flag);
}
void dLytControlGame_c::fn_802CFA90() {
if (mCommand != CMD_NONE) {
if (dLytMeter_c::GetInstance()->itemSelectFn800EFDF0(true) ||
dLytMeter_c::GetInstance()->minusBtnFn800F7600() || dLytMeter_c::GetInstance()->dowsingFn800FE4B0()) {
mCommand = CMD_NONE;
return;
}
if (!mIsEvent && !EventManager::fn_8009F990() && mCommand != CMD_HELP) {
mCommand = CMD_NONE;
}
}
if (mCommand == CMD_MAP) {
if (mMapEvent == dLytMapMain_c::MAP_EVENT_SAVE_OBJ) {
mCommand = CMD_NONE;
}
bool b = false;
if (dLytMap_c::GetInstance() != nullptr) {
b = dLytMap_c::GetInstance()->isVisible();
}
if (!b) {
mStateMgr.changeState(StateID_Map_SetRes);
dSndPlayerMgr_c::GetInstance()->enterMap();
dSndSourceMgr_c::GetInstance()->fn_803852B0();
hideHelp();
dLytMeter_c::setPlusBtnCall(false);
}
mCommand = CMD_NONE;
}
if (mCommand == CMD_PAUSE) {
mStateMgr.changeState(StateID_Pause_SetRes);
dSndPlayerMgr_c::GetInstance()->enterMenu();
dSndSourceMgr_c::GetInstance()->fn_803852B0();
hideHelp();
mCommand = CMD_NONE;
}
if (mCommand == CMD_HELP) {
if (mpHelp == nullptr) {
mpHelp = new dLytHelp_c();
mpHelp->build();
}
if (dLytHelp_c::GetInstance() != nullptr) {
mpHelp->setText(mHelpTextIndex);
mCommand = CMD_NONE;
}
}
}
void dLytControlGame_c::hideHelp() {
if (dLytHelp_c::GetInstance() != nullptr) {
mpHelp->requestOut();
}
}
void dLytControlGame_c::changeHelpText(s32 textIndex) {
if (dLytHelp_c::GetInstance() != nullptr) {
mpHelp->changeText(textIndex);
}
}
bool dLytControlGame_c::isStateNotNormalOrInEvent() const {
if (*mStateMgr.getStateID() != StateID_Normal) {
return false;
}
return EventManager::isInEvent();
}
bool dLytControlGame_c::isInSomeMapState() const {
bool ret = false;
const sStateIDIf_c &id = *mStateMgr.getStateID();
if (id == StateID_Map_SetRes || id == StateID_Map_SyncRes || id == StateID_Map || id == StateID_Map_DelRes) {
ret = true;
}
return ret;
}
bool dLytControlGame_c::isNotInStateMap() const {
return !(*mStateMgr.getStateID() == StateID_Map);
}
bool dLytControlGame_c::fn_802CFF60() const {
bool ret = false;
const sStateIDIf_c &id = *mStateMgr.getStateID();
if (id == StateID_Map_SetRes || id == StateID_Map_SyncRes) {
ret = true;
}
return ret;
}
void dLytControlGame_c::openMap() {
mCommand = CMD_MAP;
mMapEvent = dLytMapMain_c::MAP_EVENT_NONE;
mIsEvent = false;
}
void dLytControlGame_c::openMapEvent(s32 mapEvent, s32 arg1, s32 arg2) {
mCommand = CMD_MAP;
mMapEvent = mapEvent;
mIsEvent = true;
mMapEventArg1 = arg1;
mMapEventArg2 = arg2;
if (mapEvent != dLytMapMain_c::MAP_EVENT_SAVE_OBJ) {
return;
}
bool showStatueSelect = true;
u8 exitId = 0;
if (dAcPy_c::GetLinkM()->getPosition().z > -78700.0f && dAcPy_c::GetLinkM()->getPosition().z < -76700.0f) {
mMapEventArg1 = dLytMapMain_c::SURFACE_PROVINCE_ELDIN;
if (!checkStoryflag(STORYFLAG_ELDIN_DISCOVERED)) {
exitId = 1;
showStatueSelect = false;
}
} else if (dAcPy_c::GetLinkM()->getPosition().z > 62800.0f && dAcPy_c::GetLinkM()->getPosition().z < 64800) {
mMapEventArg1 = dLytMapMain_c::SURFACE_PROVINCE_LANAYRU;
if (!checkStoryflag(STORYFLAG_LANAYRU_DISCOVERED)) {
exitId = 2;
showStatueSelect = false;
}
} else {
mMapEventArg1 = dLytMapMain_c::SURFACE_PROVINCE_FARON;
if (!checkStoryflag(STORYFLAG_FARON_DISCOVERED)) {
exitId = 0;
showStatueSelect = false;
}
}
if (mMapEventArg1 == dLytMapMain_c::SURFACE_PROVINCE_FARON && checkStoryflag(STORYFLAG_HARP_CUTSCENE) &&
!checkStoryflag(STORYFLAG_GROOSE_LANDS_IN_FARON)) {
// Forced descent to Sealed Grounds with Groose
exitId = 15;
showStatueSelect = false;
} else if (mMapEventArg1 == dLytMapMain_c::SURFACE_PROVINCE_ELDIN &&
checkStoryflag(STORYFLAG_ELDIN_VOLCANO_CAN_ERUPT) && !checkStoryflag(STORYFLAG_BOKO_BASE_BEATEN)) {
// Forced descent to Boko Base
exitId = 8;
showStatueSelect = false;
} else if (mMapEventArg1 == dLytMapMain_c::SURFACE_PROVINCE_ELDIN &&
checkStoryflag(STORYFLAG_SCRAPPER_HAS_WATER_BASIN) &&
!checkStoryflag(STORYFLAG_SUMMIT_BIG_FROG_WATERED) &&
!checkStoryflag(STORYFLAG_WATER_BASIN_ESCORT_STARTED)) {
// Forced descent to Eldin entry with Scrapper and the water basin
exitId = 1;
showStatueSelect = false;
} else if (checkStoryflag(STORYFLAG_LEVIAS_FIGHT_DEFEATED) && !checkStoryflag(STORYFLAG_WATER_DRAGON_SOTH_PART)) {
// TODO: When is this condition hit? showStatueSelect is only false here if we haven't discovered a surface
// province, but with Levias beaten we should've set foot in each province
showStatueSelect = true;
}
if (!showStatueSelect) {
dScGame_c::GetInstance()->triggerExit(dAcPy_c::GetLink()->mRoomID, exitId);
mCommand = CMD_NONE;
}
}
void dLytControlGame_c::openPause() {
if (canOpenPause() == true) {
mCommand = CMD_PAUSE;
mIsEvent = false;
mIsPauseDemo = false;
}
}
extern "C" dAcBase_c *getCurrentEventActor();
void dLytControlGame_c::openPauseDemo() {
if (canOpenPause() == true) {
dAcItem_c *item = static_cast<dAcItem_c *>(getCurrentEventActor());
if (item != nullptr) {
mItemForPauseDemo = item->getItemId_i();
mCommand = CMD_PAUSE;
mIsEvent = true;
mIsPauseDemo = true;
if (mItemForPauseDemo == ITEM_EXTRA_WALLET) {
mPauseDemoDisp = dLytPauseMgr_c::DISP_00_INVENTORY;
} else {
mPauseDemoDisp = dLytPauseMgr_c::DISP_01_COLLECTION;
}
mItemCountForPauseDemo = dAcItem_c::getCollectionCurrentCount();
mPickupItemCount = item->getQuantity() != 0 ? item->getQuantity() : 1;
}
}
}
void dLytControlGame_c::openHelp(s32 textIndex) {
if (dLytMeter_c::GetInstance()->itemSelectFn800EFDF0(true) || dLytMeter_c::GetInstance()->minusBtnFn800F7600() ||
dLytMeter_c::GetInstance()->dowsingFn800FE4B0()) {
return;
}
if (mpHelp == nullptr) {
mCommand = CMD_HELP;
mIsEvent = false;
mHelpTextIndex = textIndex;
}
}
bool dLytControlGame_c::releaseRes() {
return mLytArcControl.release();
}
bool dLytControlGame_c::decrementRes() {
dArcResult_e result1 = LayoutArcManager::GetInstance()->ensureLoaded2(sMap2D);
if (result1 != D_ARC_RESULT_ERROR_NOT_FOUND) {
if (result1 != D_ARC_RESULT_OK) {
return false;
}
LayoutArcManager::GetInstance()->decrement(sMap2D);
}
dArcResult_e result2;
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
result2 = LayoutArcManager::GetInstance()->ensureLoaded2(sMapSky);
} else {
result2 = LayoutArcManager::GetInstance()->ensureLoaded2(sMapField);
}
if (result2 != D_ARC_RESULT_ERROR_NOT_FOUND) {
if (result2 != D_ARC_RESULT_OK) {
return false;
}
if (dStageMgr_c::GetInstance()->isSTIFAreaSky()) {
LayoutArcManager::GetInstance()->decrement(sMapSky);
} else {
LayoutArcManager::GetInstance()->decrement(sMapField);
}
}
return true;
}
void dLytControlGame_c::fn_802D04F0() {
field_0x15C66 = 0;
d2d::defaultSet();
}
bool dLytControlGame_c::canOpenPause() {
if (dLytMeter_c::GetInstance()->itemSelectFn800EFDF0(true) || dLytMeter_c::GetInstance()->minusBtnFn800F7600() ||
dLytMeter_c::GetInstance()->dowsingFn800FE4B0()) {
return false;
}
if (mpHelp == nullptr || mpHelp->isWaiting()) {
return true;
}
return false;
}
void dLytControlGame_c::checkForBeaconNextToMark() {
fBase_c *base = nullptr;
bool found = false;
mVec3_c markPos;
while ((base = fManager_c::searchBaseByGroupType(STAGE, base)) != nullptr) {
if (base->mProfileName == fProfile::T_MAP_MARK) {
dTgMapMark_c *mark = static_cast<dTgMapMark_c *>(base);
if (!mark->checkActorProperty(dAcBase_c::AC_PROP_0x100) && mark->rotz_shift0_0xf == 0) {
found = true;
markPos = mark->mPosition;
}
}
}
if (found) {
for (u32 i = 0; i < 5; i++) {
const mVec3_c *pos = getBeaconPosition(i);
if (pos != nullptr) {
mVec3_c diff = markPos - *pos;
if (diff.mag() <= sHio.field_0x0C) {
SceneflagManager::sInstance->setFlag(0x3F, 0x18);
}
}
}
}
}
void dLytControlGame_c::resetFootsteps() {
mFootprintsMgr.reset();
}
+6 -6
View File
@@ -345,7 +345,7 @@ void dLytHelp_c::finalizeState_None() {}
void dLytHelp_c::initializeState_In() {}
void dLytHelp_c::executeState_In() {
if (mpMain->isIdle()) {
field_0x3C2 = true;
mIsWaiting = true;
mpMain->modeRequestWait();
mStateMgr.changeState(StateID_Wait);
field_0x3C8 = 0;
@@ -355,7 +355,7 @@ void dLytHelp_c::finalizeState_In() {}
void dLytHelp_c::initializeState_Wait() {}
void dLytHelp_c::executeState_Wait() {
if (dPad::getDownTrig2() || dPad::getDownTrigMinus() || dPad::getDownTrigB() || field_0x3C1) {
if (dPad::getDownTrig2() || dPad::getDownTrigMinus() || dPad::getDownTrigB() || mOutRequest) {
mpMain->modeRequestOut();
dSndPlayerMgr_c::GetInstance()->leaveHelp();
dLytMeter_c::GetInstance()->setHelpOpen(false);
@@ -381,7 +381,7 @@ void dLytHelp_c::finalizeState_End() {}
bool dLytHelp_c::setText(s32 textIndex) {
if (*mStateMgr.getStateID() == StateID_None) {
field_0x3C0 = true;
field_0x3C1 = false;
mOutRequest = false;
if (textIndex <= ARRAY_LENGTH(sHelpTextKeys) - 1) {
mTextIndex = textIndex;
} else {
@@ -497,7 +497,7 @@ void dLytHelp_c::changeText(s32 textIndex) {
mpMain->setText(mTextIndex);
} else if (mTextIndex != textIndex) {
mTextIndex = textIndex;
field_0x3C1 = true;
mOutRequest = true;
}
}
@@ -509,8 +509,8 @@ bool dLytHelp_c::build() {
mpMain->build(&mResAcc);
mStateMgr.changeState(StateID_None);
field_0x3C0 = false;
field_0x3C1 = false;
field_0x3C2 = false;
mOutRequest = false;
mIsWaiting = false;
mTextIndex = -1;
field_0x3C8 = 0;
m2d::setLytAllocator();
+1 -1
View File
@@ -1538,7 +1538,7 @@ void dLytMapIcon01_c::setupStageDrawCommands() {
while ((ac = static_cast<dAcBase_c *>(fManager_c::searchBaseByGroupType(fBase_c::STAGE, ac))) != nullptr) {
setupTgMapMarkDrawCommand(ac);
if (dLytMapGlobal_c::GetInstance()->getField_0x54()) {
if (dLytMapGlobal_c::GetInstance()->isInMapEvent()) {
setupTgMapInstDrawCommand(ac);
}
+2 -2
View File
@@ -559,7 +559,7 @@ void dLytPauseMgr_c::initializeState_None() {
mPrevSelectionId = 0;
field_0x083C = false;
field_0x083D = false;
field_0x0836 = false;
mIsActive = false;
field_0x0837 = false;
field_0x0838 = false;
mIsNavLeft = false;
@@ -830,7 +830,7 @@ void dLytPauseMgr_c::finalizeState_Out() {
void dLytPauseMgr_c::inRequest() {
mInRequest = true;
field_0x0836 = 1;
mIsActive = true;
}
bool dLytPauseMgr_c::isStateWait() const {
+1 -1
View File
@@ -1088,7 +1088,7 @@ bool dLytMeterMain_c::fn_800D56B0() {
}
if ((EventManager::isInEvent() && field_0x1377E == 0 && dAcPy_c::GetLink()->getCurrentAction() != 0x8C &&
dMessage_c::getInstance()->getField_0x32C() == 0xC) ||
dMessage_c::getInstance()->getMapEvent() == dLytMapMain_c::MAP_EVENT_MAX) ||
mHelpOpen) {
return true;
}
+3 -2
View File
@@ -5,6 +5,7 @@
#include "d/d_message.h"
#include "d/flag/storyflag_manager.h"
#include "d/lyt/d2d.h"
#include "d/lyt/d_lyt_map.h"
#include "d/lyt/d_lyt_unknowns.h"
#include "d/lyt/meter/d_lyt_meter.h"
#include "d/snd/d_snd_small_effect_mgr.h"
@@ -172,8 +173,8 @@ void dLytMeterCrossBtnParts_c::execute(bool bIsVisible) {
mpLyt->calc();
}
if ((EventManager::isInEvent() && dMessage_c::getInstance()->getField_0x32C() == 12 && !checkIsInSkykeepPuzzle() &&
!dLytMeter_c::GetInstance()->fn_800D5670()) ||
if ((EventManager::isInEvent() && dMessage_c::getInstance()->getMapEvent() == dLytMapMain_c::MAP_EVENT_MAX &&
!checkIsInSkykeepPuzzle() && !dLytMeter_c::GetInstance()->fn_800D5670()) ||
((dLytMeter_c::getItemSelect0x75A2() && (mIndex != 1 || mCurrentIcon != 0)) || !bIsVisible)) {
field_0x7C = 0;
+1 -1
View File
@@ -562,7 +562,7 @@ void dLytMsgWindow_c::finalizeState_MapOpen() {}
void dLytMsgWindow_c::initializeState_WaitKeyMapClose() {}
void dLytMsgWindow_c::executeState_WaitKeyMapClose() {
if ((dPad::getDownTrigB() || dPad::getDownTrigPlus()) && !dLytControlGame_c::getInstance()->isNotInStateMap()) {
dLytControlGame_c::getInstance()->fn_802CCD40(true);
dLytControlGame_c::getInstance()->setMapEventDone(true);
mStateMgr.changeState(StateID_MapClose);
}
}