diff options
| author | robojumper <robojumper@gmail.com> | 2026-07-26 21:18:08 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-26 21:18:08 +0200 |
| commit | 4e1dc6c40328a100492d93074cc29b23a511a2f5 (patch) | |
| tree | a05e0c3b300202c83e2e65e9514f153cfdc4d8eb | |
| parent | 38bdcb4ca9272e1c8cdea6856052a503e8b13a1a (diff) | |
| parent | e5c423bf6e9068b3166cfdac64a3b1ba8e966ab6 (diff) | |
Merge pull request #335 from compugab/matchin_title_lyt
Matchin title lyt
| -rw-r--r-- | config/SOUE01/splits.txt | 8 | ||||
| -rw-r--r-- | config/SOUE01/symbols.txt | 389 | ||||
| -rw-r--r-- | configure.py | 4 | ||||
| -rw-r--r-- | include/d/d_stage.h | 2 | ||||
| -rw-r--r-- | include/d/d_stage_mgr.h | 8 | ||||
| -rw-r--r-- | include/d/lyt/d_lyt_control_title.h | 18 | ||||
| -rw-r--r-- | include/d/lyt/d_lyt_demo_title.h | 72 | ||||
| -rw-r--r-- | src/d/lyt/d_lyt_control_title.cpp | 27 | ||||
| -rw-r--r-- | src/d/lyt/d_lyt_demo_title.cpp | 318 |
9 files changed, 678 insertions, 168 deletions
diff --git a/config/SOUE01/splits.txt b/config/SOUE01/splits.txt index 9e47132a..7d3f498f 100644 --- a/config/SOUE01/splits.txt +++ b/config/SOUE01/splits.txt @@ -1755,17 +1755,21 @@ d/lyt/d_lyt_deposit.cpp: d/lyt/d_lyt_demo_title.cpp: .text start:0x802B02D0 end:0x802B22E8 align:16 .ctors start:0x804DB88C end:0x804DB890 - .rodata start:0x804EFA90 end:0x804EFAB8 + .rodata start:0x804EFA90 end:0x804EFAA0 .data start:0x8053DFC8 end:0x8053E510 + .sdata start:0x80573C30 end:0x80573C38 .sbss start:0x805759D0 end:0x805759D8 + .sdata2 start:0x8057C7E0 end:0x8057C7E8 .bss start:0x805B7120 end:0x805B73A0 d/lyt/d_lyt_end_roll.cpp: .text start:0x802B22F0 end:0x802B6B98 align:16 .ctors start:0x804DB890 end:0x804DB894 - .rodata start:0x804EFAB8 end:0x804EFAE0 + .rodata start:0x804EFAA0 end:0x804EFAE0 .data start:0x8053E510 end:0x8053F0F8 + .sdata start:0x80573C38 end:0x80573C58 .sbss start:0x805759D8 end:0x805759E0 + .sdata2 start:0x8057C7E8 end:0x8057C818 .bss start:0x805B73A0 end:0x805B7B20 toBeSorted/d_a_bullet.cpp: diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index 66e0a011..2416fd90 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -628,7 +628,7 @@ create3__Q23d3d13AnmMdlWrapperFR9dAcBase_cPvPCcPCcPQ33m3d5mdl_c13mdlCallback_cUl setAnm__Q23d3d13AnmMdlWrapperFPCcQ23m3d10playMode_e = .text:0x80019D50; // type:function size:0x14 __dt__Q23d3d14AnmMdlWrapper2Fv = .text:0x80019D70; // type:function size:0x58 __dt__Q23d3d7XluProcFv = .text:0x80019DD0; // type:function size:0x5C -__sinit_\d_d3d_cpp = .text:0x80019E30; // type:function size:0x44 +__sinit_\d_d3d_cpp = .text:0x80019E30; // type:function size:0x44 scope:local ExecCallback_CALC_MAT__14dScnCallback_cFQ44nw4r3g3d6ScnObj6TimingPQ34nw4r3g3d6ScnObjUlPv = .text:0x80019E80; // type:function size:0x3A8 attach__14dScnCallback_cFRQ23m3d9scnLeaf_c = .text:0x8001A230; // type:function size:0x50 setPCAMPos2__FPC4PCAM = .text:0x8001A280; // type:function size:0x144 @@ -2626,7 +2626,7 @@ set0x43DE__17daPlayerActBase_cFv = .text:0x8005CE00; // type:function size:0x4 set0x439F__17daPlayerActBase_cFP9dAcBase_ci = .text:0x8005CE10; // type:function size:0x4 vt_0x084__17daPlayerActBase_cFP9dAcBase_ci = .text:0x8005CE20; // type:function size:0x8 IfCurrentActionToActor__17daPlayerActBase_cFP9dAcBase_ci = .text:0x8005CE30; // type:function size:0x8 -__sinit_\d_player_act_cpp = .text:0x8005CE40; // type:function size:0x4C +__sinit_\d_player_act_cpp = .text:0x8005CE40; // type:function size:0x4C scope:local ExecCallback_DRAW_OPA__24daPlBaseScnObjCallback_cFQ44nw4r3g3d6ScnObj6TimingPQ34nw4r3g3d6ScnObjUlPv = .text:0x8005CE90; // type:function size:0x134 ExecCallback_CALC_MAT__24daPlBaseScnObjCallback_cFQ44nw4r3g3d6ScnObj6TimingPQ34nw4r3g3d6ScnObjUlPv = .text:0x8005CFD0; // type:function size:0x10 ExecCallbackA__21daPlBaseMdlCallback_cFPQ34nw4r3g3d12ChrAnmResultQ34nw4r3g3d6ResMdlPQ34nw4r3g3d16FuncObjCalcWorld = .text:0x8005CFE0; // type:function size:0x134 @@ -3186,7 +3186,7 @@ fn_800822C0 = .text:0x800822C0; // type:function size:0x10 fn_800822D0 = .text:0x800822D0; // type:function size:0x24 fn_80082300 = .text:0x80082300; // type:function size:0xC __dt__13dCameraGame_cFv = .text:0x80082310; // type:function size:0xB0 -__sinit_\d_camera_game_cpp = .text:0x800823C0; // type:function size:0xCF8 +__sinit_\d_camera_game_cpp = .text:0x800823C0; // type:function size:0xCF8 scope:local __dt__19GameCameraHandler06Fv = .text:0x800830C0; // type:function size:0x60 __dt__19GameCameraHandler08Fv = .text:0x80083120; // type:function size:0x60 __dt__19GameCameraHandler02Fv = .text:0x80083180; // type:function size:0x60 @@ -3290,7 +3290,7 @@ fn_80091B90 = .text:0x80091B90; // type:function size:0x8C fn_80091C20 = .text:0x80091C20; // type:function size:0x8 fn_80091C30 = .text:0x80091C30; // type:function size:0x74 fn_80091CB0 = .text:0x80091CB0; // type:function size:0x40 -__sinit_\d_camera_event_cpp = .text:0x80091CF0; // type:function size:0x6A4 +__sinit_\d_camera_event_cpp = .text:0x80091CF0; // type:function size:0x6A4 scope:local ActorReference__ActorReference = .text:0x800923A0; // type:function size:0x14 EventSystemActorRelation__EventSystemActorRelation = .text:0x800923C0; // type:function size:0x44 EventSystemActorRelation____dt = .text:0x80092410; // type:function size:0x60 @@ -4291,7 +4291,7 @@ __dt__10dFlowMgr_cFv = .text:0x800C4420; // type:function size:0x5C __ct__10dLytBase_cFv = .text:0x800C4480; // type:function size:0x54 __dt__10dLytBase_cFv = .text:0x800C44E0; // type:function size:0x94 allocateLytWork1Heap__10dLytBase_cFPCcb = .text:0x800C4580; // type:function size:0xB4 -fn_800C4640 = .text:0x800C4640; // type:function size:0x8 +build__10dLytBase_cFv = .text:0x800C4640; // type:function size:0x8 removeLyt__10dLytBase_cFv = .text:0x800C4650; // type:function size:0x14 fn_800C4670 = .text:0x800C4670; // type:function size:0x20 fn_800C4690 = .text:0x800C4690; // type:function size:0x14 @@ -7483,7 +7483,7 @@ unprojectFromMap__15dLytMapGlobal_cCFR7mVec3_cRC7mVec2_cRC7mVec3_cRC4mAng = .tex unprojectFromMap__15dLytMapGlobal_cCFR7mVec3_cRC7mVec2_cRC7mVec2_cRC7mVec3_cRC7mVec3_cRC4mAngff = .text:0x8012D390; // type:function size:0x118 initializeState_RenderingWait__16dLytMapCapture_cFv = .text:0x8012D4B0; // type:function size:0x4 executeState_RenderingWait__16dLytMapCapture_cFv = .text:0x8012D4C0; // type:function size:0x70 -changeState__85sStateMgr_c<16dLytMapCapture_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8012D530; // type:function size:0x10 +changeState__85sStateMgr_c<16dLytMapCapture_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x8012D530; // type:function size:0x10 scope:weak finalizeState_RenderingWait__16dLytMapCapture_cFv = .text:0x8012D540; // type:function size:0x4 initializeState_RenderingWaitStep2__16dLytMapCapture_cFv = .text:0x8012D550; // type:function size:0x4 executeState_RenderingWaitStep2__16dLytMapCapture_cFv = .text:0x8012D560; // type:function size:0x94 @@ -7495,12 +7495,12 @@ fn_8012D6F0__16dLytMapCapture_cFv = .text:0x8012D6F0; // type:function size:0xE4 execute__16dLytMapCapture_cFv = .text:0x8012D7E0; // type:function size:0x10 isBusyRendering__16dLytMapCapture_cCFv = .text:0x8012D7F0; // type:function size:0x8 fn_8012D800__16dLytMapCapture_cFPQ34nw4r3lyt4PaneP9_GXTexObj = .text:0x8012D800; // type:function size:0xEC -finalizeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D8F0; // type:function size:0x30 -executeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D920; // type:function size:0x30 -initializeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D950; // type:function size:0x30 -__sinit_\d_lyt_map_capture_cpp = .text:0x8012D980; // type:function size:0x1C0 -__dt__31sFStateID_c<16dLytMapCapture_c>Fv = .text:0x8012DB40; // type:function size:0x58 -isSameName__31sFStateID_c<16dLytMapCapture_c>CFPCc = .text:0x8012DBA0; // type:function size:0x88 +finalizeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D8F0; // type:function size:0x30 scope:weak +executeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D920; // type:function size:0x30 scope:weak +initializeState__31sFStateID_c<16dLytMapCapture_c>CFR16dLytMapCapture_c = .text:0x8012D950; // type:function size:0x30 scope:weak +__sinit_\d_lyt_map_capture_cpp = .text:0x8012D980; // type:function size:0x1C0 scope:local +__dt__31sFStateID_c<16dLytMapCapture_c>Fv = .text:0x8012DB40; // type:function size:0x58 scope:weak +isSameName__31sFStateID_c<16dLytMapCapture_c>CFPCc = .text:0x8012DBA0; // type:function size:0x88 scope:weak __ct__13dLytMap_HIO_cFv = .text:0x8012DC30; // type:function size:0xEC __dt__13dLytMap_HIO_cFv = .text:0x8012DD20; // type:function size:0x40 init__21dMapFootPrintsQueue_cFv = .text:0x8012DD60; // type:function size:0x17C @@ -14165,7 +14165,7 @@ getOldStateID__83sStateMgr_c<14dAcBoomerang_c,20sStateMethodUsr_FI_c,12sFStateFc finalizeState__29sFStateID_c<14dAcBoomerang_c>CFR14dAcBoomerang_c = .text:0x80265080; // type:function size:0x30 executeState__29sFStateID_c<14dAcBoomerang_c>CFR14dAcBoomerang_c = .text:0x802650B0; // type:function size:0x30 initializeState__29sFStateID_c<14dAcBoomerang_c>CFR14dAcBoomerang_c = .text:0x802650E0; // type:function size:0x30 -__sinit_\d_a_obj_boomerang_cpp = .text:0x80265110; // type:function size:0x41C +__sinit_\d_a_obj_boomerang_cpp = .text:0x80265110; // type:function size:0x41C scope:local __dt__29sFStateID_c<14dAcBoomerang_c>Fv = .text:0x80265530; // type:function size:0x58 isSameName__29sFStateID_c<14dAcBoomerang_c>CFPCc = .text:0x80265590; // type:function size:0x88 dAcOFairy_c_classInit__Fv = .text:0x80265620; // type:function size:0x144 @@ -15012,7 +15012,7 @@ initializeState__29sFStateID_c<14dLytGameOver_c>CFR14dLytGameOver_c = .text:0x80 finalizeState__32sFStateID_c<17dLytGameOverMgr_c>CFR17dLytGameOverMgr_c = .text:0x802847C0; // type:function size:0x30 executeState__32sFStateID_c<17dLytGameOverMgr_c>CFR17dLytGameOverMgr_c = .text:0x802847F0; // type:function size:0x30 initializeState__32sFStateID_c<17dLytGameOverMgr_c>CFR17dLytGameOverMgr_c = .text:0x80284820; // type:function size:0x30 -__sinit_\d_lyt_game_over_cpp = .text:0x80284850; // type:function size:0x578 +__sinit_\d_lyt_game_over_cpp = .text:0x80284850; // type:function size:0x578 scope:local __dt__29sFStateID_c<14dLytGameOver_c>Fv = .text:0x80284DD0; // type:function size:0x58 __dt__32sFStateID_c<17dLytGameOverMgr_c>Fv = .text:0x80284E30; // type:function size:0x58 isSameName__32sFStateID_c<17dLytGameOverMgr_c>CFPCc = .text:0x80284E90; // type:function size:0x88 @@ -15616,7 +15616,7 @@ initializeState__41sFStateID_c<26dLytMeterSuiryuScoreBase_c>CFR26dLytMeterSuiryu finalizeState__34sFStateID_c<19dLytMeterClefMain_c>CFR19dLytMeterClefMain_c = .text:0x8029BA20; // type:function size:0x30 executeState__34sFStateID_c<19dLytMeterClefMain_c>CFR19dLytMeterClefMain_c = .text:0x8029BA50; // type:function size:0x30 initializeState__34sFStateID_c<19dLytMeterClefMain_c>CFR19dLytMeterClefMain_c = .text:0x8029BA80; // type:function size:0x30 -__sinit_\d_lyt_suiryu_score_cpp = .text:0x8029BAB0; // type:function size:0x634 +__sinit_\d_lyt_suiryu_score_cpp = .text:0x8029BAB0; // type:function size:0x634 scope:local __dt__41sFStateID_c<26dLytMeterSuiryuScoreBase_c>Fv = .text:0x8029C0F0; // type:function size:0x58 __dt__34sFStateID_c<19dLytMeterClefMain_c>Fv = .text:0x8029C150; // type:function size:0x58 isSameName__34sFStateID_c<19dLytMeterClefMain_c>CFPCc = .text:0x8029C1B0; // type:function size:0x88 @@ -15825,7 +15825,7 @@ getOldStateID__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStat finalizeState__32sFStateID_c<17dLytDemoDowsing_c>CFR17dLytDemoDowsing_c = .text:0x802A1490; // type:function size:0x30 executeState__32sFStateID_c<17dLytDemoDowsing_c>CFR17dLytDemoDowsing_c = .text:0x802A14C0; // type:function size:0x30 initializeState__32sFStateID_c<17dLytDemoDowsing_c>CFR17dLytDemoDowsing_c = .text:0x802A14F0; // type:function size:0x30 -__sinit_\d_lyt_demo_dowsing_cpp = .text:0x802A1520; // type:function size:0x1C0 +__sinit_\d_lyt_demo_dowsing_cpp = .text:0x802A1520; // type:function size:0x1C0 scope:local __dt__32sFStateID_c<17dLytDemoDowsing_c>Fv = .text:0x802A16E0; // type:function size:0x58 isSameName__32sFStateID_c<17dLytDemoDowsing_c>CFPCc = .text:0x802A1740; // type:function size:0x88 initializeState_ModeNone__14dLytShopMain_cFv = .text:0x802A17D0; // type:function size:0x4 @@ -15963,7 +15963,7 @@ initializeState__29sFStateID_c<14dLytShopMain_c>CFR14dLytShopMain_c = .text:0x80 finalizeState__25sFStateID_c<10dLytShop_c>CFR10dLytShop_c = .text:0x802A70A0; // type:function size:0x30 executeState__25sFStateID_c<10dLytShop_c>CFR10dLytShop_c = .text:0x802A70D0; // type:function size:0x30 initializeState__25sFStateID_c<10dLytShop_c>CFR10dLytShop_c = .text:0x802A7100; // type:function size:0x30 -__sinit_\d_lyt_shop_cpp = .text:0x802A7130; // type:function size:0xCD0 +__sinit_\d_lyt_shop_cpp = .text:0x802A7130; // type:function size:0xCD0 scope:local __dt__29sFStateID_c<14dLytShopMain_c>Fv = .text:0x802A7E00; // type:function size:0x58 __dt__25sFStateID_c<10dLytShop_c>Fv = .text:0x802A7E60; // type:function size:0x58 isSameName__25sFStateID_c<10dLytShop_c>CFPCc = .text:0x802A7EC0; // type:function size:0x88 @@ -16139,100 +16139,100 @@ __dt__32sFStateID_c<17dLytDepositMain_c>Fv = .text:0x802B00F0; // type:function __dt__28sFStateID_c<13dLytDeposit_c>Fv = .text:0x802B0150; // type:function size:0x58 scope:weak isSameName__28sFStateID_c<13dLytDeposit_c>CFPCc = .text:0x802B01B0; // type:function size:0x88 scope:weak isSameName__32sFStateID_c<17dLytDepositMain_c>CFPCc = .text:0x802B0240; // type:function size:0x88 scope:weak -fn_802B02D0 = .text:0x802B02D0; // type:function size:0x4 -fn_802B02E0 = .text:0x802B02E0; // type:function size:0xC -fn_802B02F0 = .text:0x802B02F0; // type:function size:0x4 -fn_802B0300 = .text:0x802B0300; // type:function size:0x4 -fn_802B0310 = .text:0x802B0310; // type:function size:0x64 -fn_802B0380 = .text:0x802B0380; // type:function size:0x4 -fn_802B0390 = .text:0x802B0390; // type:function size:0x4 -fn_802B03A0 = .text:0x802B03A0; // type:function size:0xC -fn_802B03B0 = .text:0x802B03B0; // type:function size:0x4 -fn_802B03C0 = .text:0x802B03C0; // type:function size:0x4 -fn_802B03D0 = .text:0x802B03D0; // type:function size:0x64 -fn_802B0440 = .text:0x802B0440; // type:function size:0x4 -fn_802B0450 = .text:0x802B0450; // type:function size:0x4 -fn_802B0460 = .text:0x802B0460; // type:function size:0xC -fn_802B0470 = .text:0x802B0470; // type:function size:0x4 -fn_802B0480 = .text:0x802B0480; // type:function size:0xC0 -fn_802B0540 = .text:0x802B0540; // type:function size:0xA4 -fn_802B05F0 = .text:0x802B05F0; // type:function size:0xA0 -fn_802B0690 = .text:0x802B0690; // type:function size:0x6C -fn_802B0700 = .text:0x802B0700; // type:function size:0x58 -fn_802B0760 = .text:0x802B0760; // type:function size:0x100 -fn_802B0860 = .text:0x802B0860; // type:function size:0xD4 -fn_802B0940 = .text:0x802B0940; // type:function size:0x10 -fn_802B0950 = .text:0x802B0950; // type:function size:0x28 -fn_802B0980 = .text:0x802B0980; // type:function size:0x70 -fn_802B09F0 = .text:0x802B09F0; // type:function size:0x4C -fn_802B0A40 = .text:0x802B0A40; // type:function size:0x10 -fn_802B0A50 = .text:0x802B0A50; // type:function size:0xA4 -fn_802B0B00 = .text:0x802B0B00; // type:function size:0x4C -fn_802B0B50 = .text:0x802B0B50; // type:function size:0x80 -fn_802B0BD0 = .text:0x802B0BD0; // type:function size:0x4C -fn_802B0C20 = .text:0x802B0C20; // type:function size:0x4 -fn_802B0C30 = .text:0x802B0C30; // type:function size:0x60 -fn_802B0C90 = .text:0x802B0C90; // type:function size:0x10 -fn_802B0CA0 = .text:0x802B0CA0; // type:function size:0x4 -fn_802B0CB0 = .text:0x802B0CB0; // type:function size:0x4 -fn_802B0CC0 = .text:0x802B0CC0; // type:function size:0x58 -fn_802B0D20 = .text:0x802B0D20; // type:function size:0x4 -fn_802B0D30 = .text:0x802B0D30; // type:function size:0x4 -fn_802B0D40 = .text:0x802B0D40; // type:function size:0x6C -fn_802B0DB0 = .text:0x802B0DB0; // type:function size:0x4 -fn_802B0DC0 = .text:0x802B0DC0; // type:function size:0x4 -fn_802B0DD0 = .text:0x802B0DD0; // type:function size:0x5C -fn_802B0E30 = .text:0x802B0E30; // type:function size:0x4 -fn_802B0E40 = .text:0x802B0E40; // type:function size:0x4 -fn_802B0E50 = .text:0x802B0E50; // type:function size:0x4 -fn_802B0E60 = .text:0x802B0E60; // type:function size:0x4 -fn_802B0E70 = .text:0x802B0E70; // type:function size:0xF4 -fn_802B0F70 = .text:0x802B0F70; // type:function size:0x58 -fn_802B0FD0 = .text:0x802B0FD0; // type:function size:0x6C -fn_802B1040 = .text:0x802B1040; // type:function size:0xA0 -fn_802B10E0 = .text:0x802B10E0; // type:function size:0xA4 -fn_802B1190 = .text:0x802B1190; // type:function size:0xD8 -fn_802B1270 = .text:0x802B1270; // type:function size:0x88 -fn_802B1300 = .text:0x802B1300; // type:function size:0x7C -fn_802B1380 = .text:0x802B1380; // type:function size:0x10 -fn_802B1390 = .text:0x802B1390; // type:function size:0x10 -fn_802B13A0 = .text:0x802B13A0; // type:function size:0x68 -fn_802B1410 = .text:0x802B1410; // type:function size:0x44 -fn_802B1460 = .text:0x802B1460; // type:function size:0x16C -fn_802B15D0 = .text:0x802B15D0; // type:function size:0x60 -fn_802B1630 = .text:0x802B1630; // type:function size:0xC -fn_802B1640 = .text:0x802B1640; // type:function size:0x60 -fn_802B16A0 = .text:0x802B16A0; // type:function size:0xC -fn_802B16B0 = .text:0x802B16B0; // type:function size:0x1C -fn_802B16D0 = .text:0x802B16D0; // type:function size:0x1C -fn_802B16F0 = .text:0x802B16F0; // type:function size:0x1C -fn_802B1710 = .text:0x802B1710; // type:function size:0x1C -fn_802B1730 = .text:0x802B1730; // type:function size:0x1C -fn_802B1750 = .text:0x802B1750; // type:function size:0x1C -fn_802B1770 = .text:0x802B1770; // type:function size:0x10 -fn_802B1780 = .text:0x802B1780; // type:function size:0x10 -fn_802B1790 = .text:0x802B1790; // type:function size:0x10 -fn_802B17A0 = .text:0x802B17A0; // type:function size:0x10 -fn_802B17B0 = .text:0x802B17B0; // type:function size:0x10 -fn_802B17C0 = .text:0x802B17C0; // type:function size:0x10 -fn_802B17D0 = .text:0x802B17D0; // type:function size:0x10 -fn_802B17E0 = .text:0x802B17E0; // type:function size:0x10 -fn_802B17F0 = .text:0x802B17F0; // type:function size:0x10 -fn_802B1800 = .text:0x802B1800; // type:function size:0x10 -fn_802B1810 = .text:0x802B1810; // type:function size:0x10 -fn_802B1820 = .text:0x802B1820; // type:function size:0x10 -fn_802B1830 = .text:0x802B1830; // type:function size:0x10 -fn_802B1840 = .text:0x802B1840; // type:function size:0x30 -fn_802B1870 = .text:0x802B1870; // type:function size:0x30 -fn_802B18A0 = .text:0x802B18A0; // type:function size:0x30 -fn_802B18D0 = .text:0x802B18D0; // type:function size:0x30 -fn_802B1900 = .text:0x802B1900; // type:function size:0x30 -fn_802B1930 = .text:0x802B1930; // type:function size:0x30 -LytDemoTitle__initStates = .text:0x802B1960; // type:function size:0x7AC -LytDemoTitleMain__dtor = .text:0x802B2110; // type:function size:0x58 -LytDemoTitle__dtor = .text:0x802B2170; // type:function size:0x58 -fn_802B21D0 = .text:0x802B21D0; // type:function size:0x88 -fn_802B2260 = .text:0x802B2260; // type:function size:0x88 +initializeState_ModeNone__19dLytDemoTitleMain_cFv = .text:0x802B02D0; // type:function size:0x4 +executeState_ModeNone__19dLytDemoTitleMain_cFv = .text:0x802B02E0; // type:function size:0xC +finalizeState_ModeNone__19dLytDemoTitleMain_cFv = .text:0x802B02F0; // type:function size:0x4 +initializeState_ModeIn__19dLytDemoTitleMain_cFv = .text:0x802B0300; // type:function size:0x4 +executeState_ModeIn__19dLytDemoTitleMain_cFv = .text:0x802B0310; // type:function size:0x64 +finalizeState_ModeIn__19dLytDemoTitleMain_cFv = .text:0x802B0380; // type:function size:0x4 +initializeState_ModeMove__19dLytDemoTitleMain_cFv = .text:0x802B0390; // type:function size:0x4 +executeState_ModeMove__19dLytDemoTitleMain_cFv = .text:0x802B03A0; // type:function size:0xC +finalizeState_ModeMove__19dLytDemoTitleMain_cFv = .text:0x802B03B0; // type:function size:0x4 +initializeState_ModeOut__19dLytDemoTitleMain_cFv = .text:0x802B03C0; // type:function size:0x4 +executeState_ModeOut__19dLytDemoTitleMain_cFv = .text:0x802B03D0; // type:function size:0x64 +finalizeState_ModeOut__19dLytDemoTitleMain_cFv = .text:0x802B0440; // type:function size:0x4 +initializeState_ModeEnd__19dLytDemoTitleMain_cFv = .text:0x802B0450; // type:function size:0x4 +executeState_ModeEnd__19dLytDemoTitleMain_cFv = .text:0x802B0460; // type:function size:0xC +finalizeState_ModeEnd__19dLytDemoTitleMain_cFv = .text:0x802B0470; // type:function size:0x4 +__ct__19dLytDemoTitleMain_cFv = .text:0x802B0480; // type:function size:0xC0 +__dt__58sFStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c>Fv = .text:0x802B0540; // type:function size:0xA4 scope:weak +__dt__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B05F0; // type:function size:0xA0 scope:weak +__dt__35sFStateFct_c<19dLytDemoTitleMain_c>Fv = .text:0x802B0690; // type:function size:0x6C scope:weak +__dt__32sFState_c<19dLytDemoTitleMain_c>Fv = .text:0x802B0700; // type:function size:0x58 scope:weak +build__19dLytDemoTitleMain_cFPQ23d2d10ResAccIf_c = .text:0x802B0760; // type:function size:0x100 +execute__19dLytDemoTitleMain_cFv = .text:0x802B0860; // type:function size:0xD4 +executeState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B0940; // type:function size:0x10 scope:weak +draw__19dLytDemoTitleMain_cFv = .text:0x802B0950; // type:function size:0x28 +remove__19dLytDemoTitleMain_cFv = .text:0x802B0980; // type:function size:0x70 +fn_802B09F0__19dLytDemoTitleMain_cFv = .text:0x802B09F0; // type:function size:0x4C +changeState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x802B0A40; // type:function size:0x10 scope:weak +fn_802B0A50__19dLytDemoTitleMain_cFv = .text:0x802B0A50; // type:function size:0xA4 +fn_802B0B00__19dLytDemoTitleMain_cFv = .text:0x802B0B00; // type:function size:0x4C +fn_802B0B50__19dLytDemoTitleMain_cFv = .text:0x802B0B50; // type:function size:0x80 +fn_802B0BD0__19dLytDemoTitleMain_cFv = .text:0x802B0BD0; // type:function size:0x4C +initializeState_None__15dLytDemoTitle_cFv = .text:0x802B0C20; // type:function size:0x4 +executeState_None__15dLytDemoTitle_cFv = .text:0x802B0C30; // type:function size:0x60 +changeState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x802B0C90; // type:function size:0x10 scope:weak +finalizeState_None__15dLytDemoTitle_cFv = .text:0x802B0CA0; // type:function size:0x4 +initializeState_In__15dLytDemoTitle_cFv = .text:0x802B0CB0; // type:function size:0x4 +executeState_In__15dLytDemoTitle_cFv = .text:0x802B0CC0; // type:function size:0x58 +finalizeState_In__15dLytDemoTitle_cFv = .text:0x802B0D20; // type:function size:0x4 +initializeState_Move__15dLytDemoTitle_cFv = .text:0x802B0D30; // type:function size:0x4 +executeState_Move__15dLytDemoTitle_cFv = .text:0x802B0D40; // type:function size:0x6C +finalizeState_Move__15dLytDemoTitle_cFv = .text:0x802B0DB0; // type:function size:0x4 +initializeState_Out__15dLytDemoTitle_cFv = .text:0x802B0DC0; // type:function size:0x4 +executeState_Out__15dLytDemoTitle_cFv = .text:0x802B0DD0; // type:function size:0x5C +finalizeState_Out__15dLytDemoTitle_cFv = .text:0x802B0E30; // type:function size:0x4 +initializeState_End__15dLytDemoTitle_cFv = .text:0x802B0E40; // type:function size:0x4 +executeState_End__15dLytDemoTitle_cFv = .text:0x802B0E50; // type:function size:0x4 +finalizeState_End__15dLytDemoTitle_cFv = .text:0x802B0E60; // type:function size:0x4 +dLytDemoTitle_c_classInit__Fv = .text:0x802B0E70; // type:function size:0xF4 +__dt__28sFState_c<15dLytDemoTitle_c>Fv = .text:0x802B0F70; // type:function size:0x58 scope:weak +__dt__31sFStateFct_c<15dLytDemoTitle_c>Fv = .text:0x802B0FD0; // type:function size:0x6C scope:weak +__dt__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B1040; // type:function size:0xA0 scope:weak +__dt__54sFStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c>Fv = .text:0x802B10E0; // type:function size:0xA4 scope:weak +__dt__19dLytDemoTitleMain_cFv = .text:0x802B1190; // type:function size:0xD8 scope:weak +create__15dLytDemoTitle_cFv = .text:0x802B1270; // type:function size:0x88 +execute__15dLytDemoTitle_cFv = .text:0x802B1300; // type:function size:0x7C +getStateID__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B1380; // type:function size:0x10 scope:weak +executeState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B1390; // type:function size:0x10 scope:weak +draw__15dLytDemoTitle_cFv = .text:0x802B13A0; // type:function size:0x68 +doDelete__15dLytDemoTitle_cFv = .text:0x802B1410; // type:function size:0x44 +__dt__15dLytDemoTitle_cFv = .text:0x802B1460; // type:function size:0x16C scope:weak +build__31sFStateFct_c<15dLytDemoTitle_c>FRC12sStateIDIf_c = .text:0x802B15D0; // type:function size:0x60 scope:weak +dispose__31sFStateFct_c<15dLytDemoTitle_c>FRP10sStateIf_c = .text:0x802B1630; // type:function size:0xC scope:weak +build__35sFStateFct_c<19dLytDemoTitleMain_c>FRC12sStateIDIf_c = .text:0x802B1640; // type:function size:0x60 scope:weak +dispose__35sFStateFct_c<19dLytDemoTitleMain_c>FRP10sStateIf_c = .text:0x802B16A0; // type:function size:0xC scope:weak +initialize__28sFState_c<15dLytDemoTitle_c>Fv = .text:0x802B16B0; // type:function size:0x1C scope:weak +execute__28sFState_c<15dLytDemoTitle_c>Fv = .text:0x802B16D0; // type:function size:0x1C scope:weak +finalize__28sFState_c<15dLytDemoTitle_c>Fv = .text:0x802B16F0; // type:function size:0x1C scope:weak +initialize__32sFState_c<19dLytDemoTitleMain_c>Fv = .text:0x802B1710; // type:function size:0x1C scope:weak +execute__32sFState_c<19dLytDemoTitleMain_c>Fv = .text:0x802B1730; // type:function size:0x1C scope:weak +finalize__32sFState_c<19dLytDemoTitleMain_c>Fv = .text:0x802B1750; // type:function size:0x1C scope:weak +initializeState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B1770; // type:function size:0x10 scope:weak +finalizeState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B1780; // type:function size:0x10 scope:weak +refreshState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B1790; // type:function size:0x10 scope:weak +getState__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B17A0; // type:function size:0x10 scope:weak +getNewStateID__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B17B0; // type:function size:0x10 scope:weak +getOldStateID__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B17C0; // type:function size:0x10 scope:weak +initializeState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B17D0; // type:function size:0x10 scope:weak +finalizeState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B17E0; // type:function size:0x10 scope:weak +refreshState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802B17F0; // type:function size:0x10 scope:weak +getState__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B1800; // type:function size:0x10 scope:weak +getNewStateID__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B1810; // type:function size:0x10 scope:weak +getStateID__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B1820; // type:function size:0x10 scope:weak +getOldStateID__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802B1830; // type:function size:0x10 scope:weak +finalizeState__34sFStateID_c<19dLytDemoTitleMain_c>CFR19dLytDemoTitleMain_c = .text:0x802B1840; // type:function size:0x30 scope:weak +executeState__34sFStateID_c<19dLytDemoTitleMain_c>CFR19dLytDemoTitleMain_c = .text:0x802B1870; // type:function size:0x30 scope:weak +initializeState__34sFStateID_c<19dLytDemoTitleMain_c>CFR19dLytDemoTitleMain_c = .text:0x802B18A0; // type:function size:0x30 scope:weak +finalizeState__30sFStateID_c<15dLytDemoTitle_c>CFR15dLytDemoTitle_c = .text:0x802B18D0; // type:function size:0x30 scope:weak +executeState__30sFStateID_c<15dLytDemoTitle_c>CFR15dLytDemoTitle_c = .text:0x802B1900; // type:function size:0x30 scope:weak +initializeState__30sFStateID_c<15dLytDemoTitle_c>CFR15dLytDemoTitle_c = .text:0x802B1930; // type:function size:0x30 scope:weak +__sinit_\d_lyt_demo_title_cpp = .text:0x802B1960; // type:function size:0x7AC scope:local +__dt__34sFStateID_c<19dLytDemoTitleMain_c>Fv = .text:0x802B2110; // type:function size:0x58 scope:weak +__dt__30sFStateID_c<15dLytDemoTitle_c>Fv = .text:0x802B2170; // type:function size:0x58 scope:weak +isSameName__30sFStateID_c<15dLytDemoTitle_c>CFPCc = .text:0x802B21D0; // type:function size:0x88 scope:weak +isSameName__34sFStateID_c<19dLytDemoTitleMain_c>CFPCc = .text:0x802B2260; // type:function size:0x88 scope:weak fn_802B22F0 = .text:0x802B22F0; // type:function size:0x4 fn_802B2300 = .text:0x802B2300; // type:function size:0xC fn_802B2310 = .text:0x802B2310; // type:function size:0x4 @@ -16917,13 +16917,13 @@ initializeState__32sFStateID_c<17dLytControlGame_c>CFR17dLytControlGame_c = .tex __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 -fn_802D1730 = .text:0x802D1730; // type:function size:0x8 -fn_802D1740 = .text:0x802D1740; // type:function size:0x8 -fn_802D1750 = .text:0x802D1750; // type:function size:0x8 -fn_802D1760 = .text:0x802D1760; // type:function size:0x5C +dLytControlTitle_c_classInit__Fv = .text:0x802D16B0; // type:function size:0x30 +__ct__18dLytControlTitle_cFv = .text:0x802D16E0; // type:function size:0x3C +create__18dLytControlTitle_cFv = .text:0x802D1720; // type:function size:0x8 +doDelete__18dLytControlTitle_cFv = .text:0x802D1730; // type:function size:0x8 +execute__18dLytControlTitle_cFv = .text:0x802D1740; // type:function size:0x8 +draw__18dLytControlTitle_cFv = .text:0x802D1750; // type:function size:0x8 +__dt__18dLytControlTitle_cFv = .text:0x802D1760; // type:function size:0x5C TgMapArea__ctor = .text:0x802D17C0; // type:function size:0x4C TgMapArea__init = .text:0x802D1810; // type:function size:0x80 fn_802D1890 = .text:0x802D1890; // type:function size:0x5C @@ -17871,7 +17871,7 @@ normalizeRS__7mVec3_cFv = .text:0x802F2BF0; // type:function size:0x84 rotX__7mVec3_cFRC4mAng = .text:0x802F2C80; // type:function size:0xA8 rotY__7mVec3_cFRC4mAng = .text:0x802F2D30; // type:function size:0xAC rotZ__7mVec3_cFRC4mAng = .text:0x802F2DE0; // type:function size:0xA8 -__sinit_\m_vec_cpp = .text:0x802F2E90; // type:function size:0x78 +__sinit_\m_vec_cpp = .text:0x802F2E90; // type:function size:0x78 scope:local init__Q210homebutton15FrameControllerFifff = .text:0x802F2F10; // type:function size:0x38 initFrame__Q210homebutton15FrameControllerFv = .text:0x802F2F50; // type:function size:0x20 calc__Q210homebutton15FrameControllerFv = .text:0x802F2F70; // type:function size:0x14C @@ -20027,7 +20027,7 @@ setStageEffectsVolume__22dSndControlPlayerMgr_cFfl = .text:0x80360A60; // type:f setStageEffectsMuteVolume__22dSndControlPlayerMgr_cFf = .text:0x80360AD0; // type:function size:0x5C setEnemyMuteVolume__22dSndControlPlayerMgr_cFf = .text:0x80360B30; // type:function size:0x5C setObjectMuteVolume__22dSndControlPlayerMgr_cFf = .text:0x80360B90; // type:function size:0x64 -__sinit_\d_snd_control_player_mgr_cpp = .text:0x80360C00; // type:function size:0x28 +__sinit_\d_snd_control_player_mgr_cpp = .text:0x80360C00; // type:function size:0x28 scope:local __dt__33SndMgrDisposer<15dSnd3DManager_c>Fv = .text:0x80360C30; // type:function size:0x78 scope:weak create__33SndMgrDisposer<15dSnd3DManager_c>Fv = .text:0x80360CB0; // type:function size:0x48 scope:weak remove__33SndMgrDisposer<15dSnd3DManager_c>Fv = .text:0x80360D00; // type:function size:0x10 scope:weak @@ -27101,7 +27101,7 @@ __dt__Q27JStudio13TObject_lightFv = .text:0x804BF750; // type:function size:0x58 __dt__Q27JStudio15TObject_messageFv = .text:0x804BF7B0; // type:function size:0x58 __dt__Q27JStudio16TObject_particleFv = .text:0x804BF810; // type:function size:0x58 __dt__Q27JStudio13TObject_soundFv = .text:0x804BF870; // type:function size:0x58 -__sinit_\jstudio-object_cpp = .text:0x804BF8D0; // type:function size:0x300 +__sinit_\jstudio-object_cpp = .text:0x804BF8D0; // type:function size:0x300 scope:local __dt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_<Q27JStudio14TAdaptor_actor>Fv = .text:0x804BFBD0; // type:function size:0x58 __dt__Q37JStudio28@unnamed@jstudio_object_cpp@55TOutputVariableValue_BOOL_<Q27JStudio15TAdaptor_camera>Fv = .text:0x804BFC30; // type:function size:0x58 __dt__Q37JStudio28@unnamed@jstudio_object_cpp@54TOutputVariableValue_BOOL_<Q27JStudio14TAdaptor_light>Fv = .text:0x804BFC90; // type:function size:0x58 @@ -27200,7 +27200,7 @@ setJSG_SRT___Q214JStudio_JStage14TAdaptor_actorFPCQ27JStudio8TControl = .text:0x getJSG_SRT___Q214JStudio_JStage14TAdaptor_actorFPCQ27JStudio8TControl = .text:0x804C22E0; // type:function size:0x1A8 __cl__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_CFfPQ27JStudio8TAdaptor = .text:0x804C2490; // type:function size:0xE8 __dt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_Fv = .text:0x804C2580; // type:function size:0x58 -__sinit_\object-actor_cpp = .text:0x804C25E0; // type:function size:0x250 +__sinit_\object-actor_cpp = .text:0x804C25E0; // type:function size:0x250 scope:local __dt__Q214JStudio_JStage81TVariableValueOutput_object_<Q214JStudio_JStage14TAdaptor_actor,Q26JStage6TActor>Fv = .text:0x804C2830; // type:function size:0x58 __cl__Q214JStudio_JStage81TVariableValueOutput_object_<Q214JStudio_JStage14TAdaptor_actor,Q26JStage6TActor>CFfPQ27JStudio8TAdaptor = .text:0x804C2890; // type:function size:0x30 fn_804C28C0 = .text:0x804C28C0; // type:function size:0x10 @@ -27221,7 +27221,7 @@ adaptor_do_TARGET_PARENT_NODE__Q214JStudio_JStage15TAdaptor_cameraFQ37JStudio4da adaptor_do_TARGET_PARENT_ENABLE__Q214JStudio_JStage15TAdaptor_cameraFQ37JStudio4data15TEOperationDataPCvUl = .text:0x804C2E30; // type:function size:0x24 setJSG_position___Q214JStudio_JStage15TAdaptor_cameraFPCQ27JStudio8TControl = .text:0x804C2E60; // type:function size:0x10C getJSG_position___Q214JStudio_JStage15TAdaptor_cameraFPCQ27JStudio8TControl = .text:0x804C2F70; // type:function size:0x118 -__sinit_\object-camera_cpp = .text:0x804C3090; // type:function size:0x228 +__sinit_\object-camera_cpp = .text:0x804C3090; // type:function size:0x228 scope:local __dt__Q214JStudio_JStage83TVariableValueOutput_object_<Q214JStudio_JStage15TAdaptor_camera,Q26JStage7TCamera>Fv = .text:0x804C32C0; // type:function size:0x58 __cl__Q214JStudio_JStage83TVariableValueOutput_object_<Q214JStudio_JStage15TAdaptor_camera,Q26JStage7TCamera>CFfPQ27JStudio8TAdaptor = .text:0x804C3320; // type:function size:0x30 __ct__Q214JStudio_JStage14TAdaptor_lightFPCQ26JStage7TSystemPQ26JStage6TLight = .text:0x804C3350; // type:function size:0x154 @@ -27362,7 +27362,7 @@ fn_804C6150 = .text:0x804C6150; // type:function size:0x98 fn_804C61F0 = .text:0x804C61F0; // type:function size:0x8 fn_804C6200 = .text:0x804C6200; // type:function size:0x134 __dt__Q315JStudio_JAudio214TAdaptor_sound13TVVOSetValue_Fv = .text:0x804C6340; // type:function size:0x58 -__sinit_\object-sound_cpp = .text:0x804C63A0; // type:function size:0x13C +__sinit_\object-sound_cpp = .text:0x804C63A0; // type:function size:0x13C scope:local strlen = .text:0x804C64DC; // type:function size:0x1C scope:weak __va_arg = .text:0x804C64F8; // type:function size:0xC8 scope:global __register_global_object = .text:0x804C65C0; // type:function size:0x18 scope:global @@ -28685,7 +28685,7 @@ lbl_804EF780 = .rodata:0x804EF780; // type:object size:0x68 lbl_804EF7E8 = .rodata:0x804EF7E8; // type:object size:0xC8 sItemData = .rodata:0x804EF8B0; // type:object size:0xBC scope:local data:byte brlanMap = .rodata:0x804EF970; // type:object size:0x120 scope:local data:4byte -lbl_804EFA90 = .rodata:0x804EFA90; // type:object size:0x10 data:4byte +brlanMap = .rodata:0x804EFA90; // type:object size:0x10 scope:local data:4byte lbl_804EFAA0 = .rodata:0x804EFAA0; // type:object size:0x18 data:4byte lbl_804EFAB8 = .rodata:0x804EFAB8; // type:object size:0x18 data:4byte lbl_804EFAD0 = .rodata:0x804EFAD0; // type:object size:0x10 data:4byte @@ -33639,8 +33639,16 @@ __vt__17dLytAutoExplain_c = .data:0x8051E870; // type:object size:0x44 @25768 = .data:0x8051E98C; // type:object size:0x26 scope:local data:string @25769 = .data:0x8051E9B4; // type:object size:0x1F scope:local data:string __vt__32sFStateID_c<17dLytAutoExplain_c> = .data:0x8051E9D4; // type:object size:0x34 scope:weak -lbl_8051EA08 = .data:0x8051EA08; // type:object size:0xA0 data:4byte -lbl_8051EAA8 = .data:0x8051EAA8; // type:object size:0x38 +@21053 = .data:0x8051EA08; // type:object size:0xC scope:local data:4byte +...data.0 = .data:0x8051EA08; // type:label scope:local +@21054 = .data:0x8051EA14; // type:object size:0xC scope:local +@21055 = .data:0x8051EA20; // type:object size:0xC scope:local +@21056 = .data:0x8051EA2C; // type:object size:0xC scope:local +@21057 = .data:0x8051EA38; // type:object size:0xC scope:local +@21058 = .data:0x8051EA44; // type:object size:0xC scope:local +@21060 = .data:0x8051EA50; // type:object size:0x28 scope:local data:string +@21061 = .data:0x8051EA78; // type:object size:0x2D scope:local data:string +__vt__31sFStateID_c<16dLytMapCapture_c> = .data:0x8051EAA8; // type:object size:0x34 scope:weak lbl_8051EAE0 = .data:0x8051EAE0; // type:object size:0x13 data:string lbl_8051EAF4 = .data:0x8051EAF4; // type:object size:0x9 data:string lbl_8051EB00 = .data:0x8051EB00; // type:object size:0x14 data:string @@ -37634,24 +37642,65 @@ __vt__31sFState_c<18dLytDepositStock_c> = .data:0x8053D830; // type:object size: @32416 = .data:0x8053DF40; // type:object size:0x1B scope:local data:string __vt__32sFStateID_c<17dLytDepositMain_c> = .data:0x8053DF5C; // type:object size:0x34 scope:weak __vt__28sFStateID_c<13dLytDeposit_c> = .data:0x8053DF90; // type:object size:0x34 scope:weak -lbl_8053DFC8 = .data:0x8053DFC8; // type:object size:0x16 data:string -lbl_8053DFE0 = .data:0x8053DFE0; // type:object size:0xB data:string -lbl_8053DFEC = .data:0x8053DFEC; // type:object size:0x17 data:string -lbl_8053E004 = .data:0x8053E004; // type:object size:0x13 data:string +@23163 = .data:0x8053DFC8; // type:object size:0x16 scope:local data:string +...data.0 = .data:0x8053DFC8; // type:label scope:local +@23164 = .data:0x8053DFE0; // type:object size:0xB scope:local data:string +@23165 = .data:0x8053DFEC; // type:object size:0x17 scope:local data:string +@24236 = .data:0x8053E004; // type:object size:0x13 scope:local data:string g_profile_LYT_DEMO_TITLE = .data:0x8053E018; // type:object size:0xC -lbl_8053E024 = .data:0x8053E024; // type:object size:0xA data:string -lbl_8053E030 = .data:0x8053E030; // type:object size:0x50 -lbl_8053E080 = .data:0x8053E080; // type:object size:0x30 -lbl_8053E0B0 = .data:0x8053E0B0; // type:object size:0x30 -lbl_8053E0E0 = .data:0x8053E0E0; // type:object size:0x18 -lbl_8053E0F8 = .data:0x8053E0F8; // type:object size:0x18 -lbl_8053E110 = .data:0x8053E110; // type:object size:0x10 -lbl_8053E120 = .data:0x8053E120; // type:object size:0x30 -lbl_8053E150 = .data:0x8053E150; // type:object size:0x30 -lbl_8053E180 = .data:0x8053E180; // type:object size:0x18 -lbl_8053E198 = .data:0x8053E198; // type:object size:0x30C -lbl_8053E4A4 = .data:0x8053E4A4; // type:object size:0x34 -lbl_8053E4D8 = .data:0x8053E4D8; // type:object size:0x38 +@24400 = .data:0x8053E024; // type:object size:0xA scope:local data:string +__vt__15dLytDemoTitle_c = .data:0x8053E030; // type:object size:0x50 +__vt__54sFStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c> = .data:0x8053E080; // type:object size:0x30 scope:weak +__vt__84sStateMgr_c<15dLytDemoTitle_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x8053E0B0; // type:object size:0x30 scope:weak +__vt__31sFStateFct_c<15dLytDemoTitle_c> = .data:0x8053E0E0; // type:object size:0x14 scope:weak +__vt__28sFState_c<15dLytDemoTitle_c> = .data:0x8053E0F8; // type:object size:0x18 scope:weak +__vt__19dLytDemoTitleMain_c = .data:0x8053E110; // type:object size:0xC scope:weak +__vt__58sFStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c> = .data:0x8053E120; // type:object size:0x30 scope:weak +__vt__88sStateMgr_c<19dLytDemoTitleMain_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x8053E150; // type:object size:0x30 scope:weak +__vt__35sFStateFct_c<19dLytDemoTitleMain_c> = .data:0x8053E180; // type:object size:0x14 scope:weak +__vt__32sFState_c<19dLytDemoTitleMain_c> = .data:0x8053E198; // type:object size:0x18 scope:weak +@24506 = .data:0x8053E1DC; // type:object size:0xC scope:local +@24507 = .data:0x8053E1E8; // type:object size:0xC scope:local +@24508 = .data:0x8053E1F4; // type:object size:0xC scope:local +@24509 = .data:0x8053E200; // type:object size:0xC scope:local +@24510 = .data:0x8053E20C; // type:object size:0xC scope:local +@24511 = .data:0x8053E218; // type:object size:0xC scope:local +@24512 = .data:0x8053E224; // type:object size:0xC scope:local +@24513 = .data:0x8053E230; // type:object size:0xC scope:local +@24514 = .data:0x8053E23C; // type:object size:0xC scope:local +@24515 = .data:0x8053E248; // type:object size:0xC scope:local +@24516 = .data:0x8053E254; // type:object size:0xC scope:local +@24517 = .data:0x8053E260; // type:object size:0xC scope:local +@24518 = .data:0x8053E26C; // type:object size:0xC scope:local +@24519 = .data:0x8053E278; // type:object size:0xC scope:local +@24520 = .data:0x8053E284; // type:object size:0xC scope:local +@24521 = .data:0x8053E290; // type:object size:0xC scope:local +@24522 = .data:0x8053E29C; // type:object size:0xC scope:local +@24523 = .data:0x8053E2A8; // type:object size:0xC scope:local +@24524 = .data:0x8053E2B4; // type:object size:0xC scope:local +@24525 = .data:0x8053E2C0; // type:object size:0xC scope:local +@24526 = .data:0x8053E2CC; // type:object size:0xC scope:local +@24527 = .data:0x8053E2D8; // type:object size:0xC scope:local +@24528 = .data:0x8053E2E4; // type:object size:0xC scope:local +@24529 = .data:0x8053E2F0; // type:object size:0xC scope:local +@24530 = .data:0x8053E2FC; // type:object size:0xC scope:local +@24531 = .data:0x8053E308; // type:object size:0xC scope:local +@24532 = .data:0x8053E314; // type:object size:0xC scope:local +@24533 = .data:0x8053E320; // type:object size:0xC scope:local +@24534 = .data:0x8053E32C; // type:object size:0xC scope:local +@24535 = .data:0x8053E338; // type:object size:0xC scope:local +@24537 = .data:0x8053E344; // type:object size:0x26 scope:local data:string +@24538 = .data:0x8053E36C; // type:object size:0x24 scope:local data:string +@24539 = .data:0x8053E390; // type:object size:0x26 scope:local data:string +@24540 = .data:0x8053E3B8; // type:object size:0x25 scope:local data:string +@24541 = .data:0x8053E3E0; // type:object size:0x25 scope:local data:string +@24542 = .data:0x8053E408; // type:object size:0x1E scope:local data:string +@24543 = .data:0x8053E428; // type:object size:0x1C scope:local data:string +@24544 = .data:0x8053E444; // type:object size:0x1E scope:local data:string +@24545 = .data:0x8053E464; // type:object size:0x1D scope:local data:string +@24546 = .data:0x8053E484; // type:object size:0x1D scope:local data:string +__vt__34sFStateID_c<19dLytDemoTitleMain_c> = .data:0x8053E4A4; // type:object size:0x34 scope:weak +__vt__30sFStateID_c<15dLytDemoTitle_c> = .data:0x8053E4D8; // type:object size:0x34 scope:weak lbl_8053E510 = .data:0x8053E510; // type:object size:0xB data:string lbl_8053E51C = .data:0x8053E51C; // type:object size:0x4C lbl_8053E568 = .data:0x8053E568; // type:object size:0x12 data:string @@ -37877,7 +37926,7 @@ __vt__28sFState_c<15dLytMsgWindow_c> = .data:0x805407F8; // type:object size:0x1 @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 +__vt__18dLytControlTitle_c = .data:0x80540C94; // type:object size:0x4C g_profile_MAP_AREA_TAG = .data:0x80540CE0; // type:object size:0x10 TgMapArea__vtable = .data:0x80540CF0; // type:object size:0x78 g_profile_TRUCK_RAIL = .data:0x80540D68; // type:object size:0x10 @@ -41345,7 +41394,7 @@ sGroupName = .sdata:0x80573C18; // type:object size:0x4 scope:local data:4byte @31056 = .sdata:0x80573C1C; // type:object size:0x1 scope:local @31057 = .sdata:0x80573C20; // type:object size:0x5 scope:local data:string @31437 = .sdata:0x80573C28; // type:object size:0x6 scope:local data:wstring -lbl_80573C30 = .sdata:0x80573C30; // type:object size:0x8 +@24401 = .sdata:0x80573C30; // type:object size:0x1 scope:local lbl_80573C38 = .sdata:0x80573C38; // type:object size:0x3 data:string lbl_80573C3C = .sdata:0x80573C3C; // type:object size:0x5 data:string lbl_80573C44 = .sdata:0x80573C44; // type:object size:0x4 data:string @@ -42663,7 +42712,7 @@ sInstance__10dLytShop_c = .sbss:0x805759B4; // type:object size:0x4 data:4byte @LOCAL@loadItemText__17dLytDepositMain_cFll@empty = .sbss:0x805759B8; // type:object size:0x2 scope:local @LOCAL@loadPageText__17dLytDepositMain_cFv@buf = .sbss:0x805759C0; // type:object size:0x8 scope:local sInstance__13dLytDeposit_c = .sbss:0x805759C8; // type:object size:0x4 data:4byte -lbl_805759D0 = .sbss:0x805759D0; // type:object size:0x8 data:4byte +sInstance__15dLytDemoTitle_c = .sbss:0x805759D0; // type:object size:0x4 data:4byte LYT_END_ROLL_PTR = .sbss:0x805759D8; // type:object size:0x8 data:4byte GLOBAL_FI_POINTER = .sbss:0x805759E0; // type:object size:0x4 data:4byte lbl_805759E4 = .sbss:0x805759E4; // type:object size:0x1 data:byte @@ -45755,8 +45804,8 @@ lbl_80579E10 = .sdata2:0x80579E10; // type:object size:0x8 align:8 data:double @25578 = .sdata2:0x80579F20; // type:object size:0x4 scope:local align:4 data:float @2523 = .sdata2:0x80579F28; // type:object size:0x4 scope:local align:4 data:float @2524 = .sdata2:0x80579F2C; // type:object size:0x4 scope:local align:4 data:float -lbl_80579F30 = .sdata2:0x80579F30; // type:object size:0x4 align:4 data:float -lbl_80579F38 = .sdata2:0x80579F38; // type:object size:0x8 align:8 data:double +@21014 = .sdata2:0x80579F30; // type:object size:0x4 scope:local align:4 data:float +@21042 = .sdata2:0x80579F38; // type:object size:0x8 scope:local align:8 data:double lbl_80579F40 = .sdata2:0x80579F40; // type:object size:0x4 align:4 data:float lbl_80579F44 = .sdata2:0x80579F44; // type:object size:0x4 align:4 data:float lbl_80579F48 = .sdata2:0x80579F48; // type:object size:0x4 align:4 data:float @@ -48640,8 +48689,8 @@ lbl_8057C7B8 = .sdata2:0x8057C7B8; // type:object size:0x8 align:8 data:double @LOCAL@buildSubpanes__17dLytDepositMain_cFv@sInitialPageIndices = .sdata2:0x8057C7D0; // type:object size:0x3 scope:local data:byte @31162 = .sdata2:0x8057C7D4; // type:object size:0x4 scope:local align:4 data:float @31777 = .sdata2:0x8057C7D8; // type:object size:0x8 scope:local align:8 data:double -lbl_8057C7E0 = .sdata2:0x8057C7E0; // type:object size:0x4 align:4 data:float -lbl_8057C7E4 = .sdata2:0x8057C7E4; // type:object size:0x4 align:4 data:float +@24168 = .sdata2:0x8057C7E0; // type:object size:0x4 scope:local align:4 data:float +@24219 = .sdata2:0x8057C7E4; // type:object size:0x4 scope:local align:4 data:float lbl_8057C7E8 = .sdata2:0x8057C7E8; // type:object size:0x4 align:4 data:float lbl_8057C7F0 = .sdata2:0x8057C7F0; // type:object size:0x8 align:8 data:double lbl_8057C7F8 = .sdata2:0x8057C7F8; // type:object size:0x4 align:4 data:float @@ -51975,8 +52024,10 @@ StateID_In__17dLytAutoExplain_c = .bss:0x805AF340; // type:object size:0x30 data StateID_OutputText__17dLytAutoExplain_c = .bss:0x805AF380; // type:object size:0x30 data:4byte @22221 = .bss:0x805AF3B0; // type:object size:0xC scope:local StateID_Out__17dLytAutoExplain_c = .bss:0x805AF3C0; // type:object size:0x30 data:4byte -lbl_805AF3F0 = .bss:0x805AF3F0; // type:object size:0x10 -StateID_RenderingWait__16dLytMapCapture_c = .bss:0x805AF400; // type:object size:0x40 data:4byte +@20520 = .bss:0x805AF3F0; // type:object size:0xC scope:local +...bss.0 = .bss:0x805AF3F0; // type:label scope:local +StateID_RenderingWait__16dLytMapCapture_c = .bss:0x805AF400; // type:object size:0x30 data:4byte +@20524 = .bss:0x805AF430; // type:object size:0xC scope:local StateID_RenderingWaitStep2__16dLytMapCapture_c = .bss:0x805AF440; // type:object size:0x30 data:4byte lbl_805AF470 = .bss:0x805AF470; // type:object size:0x10 sHio = .bss:0x805AF480; // type:object size:0x40 scope:local @@ -52641,17 +52692,27 @@ StateID_Recycle__13dLytDeposit_c = .bss:0x805B7070; // type:object size:0x30 sco StateID_ArrangementOut__13dLytDeposit_c = .bss:0x805B70B0; // type:object size:0x30 scope:global @26147 = .bss:0x805B70E0; // type:object size:0xC scope:local StateID_Out__13dLytDeposit_c = .bss:0x805B70F0; // type:object size:0x30 scope:global -lbl_805B7120 = .bss:0x805B7120; // type:object size:0x10 -LytDemoTitleMain__STATE_MODE_NONE = .bss:0x805B7130; // type:object size:0x40 data:4byte -LytDemoTitleMain__STATE_MODE_IN = .bss:0x805B7170; // type:object size:0x40 data:4byte -LytDemoTitleMain__STATE_MODE_MOVE = .bss:0x805B71B0; // type:object size:0x40 data:4byte -LytDemoTitleMain__STATE_MODE_OUT = .bss:0x805B71F0; // type:object size:0x40 data:4byte -LytDemoTitleMain__STATE_MODE_END = .bss:0x805B7230; // type:object size:0x40 data:4byte -LytDemoTitle__STATE_NONE = .bss:0x805B7270; // type:object size:0x40 data:4byte -LytDemoTitle__STATE_IN = .bss:0x805B72B0; // type:object size:0x40 data:4byte -LytDemoTitle__STATE_MOVE = .bss:0x805B72F0; // type:object size:0x40 data:4byte -LytDemoTitle__STATE_OUT = .bss:0x805B7330; // type:object size:0x40 data:4byte -LytDemoTitle__STATE_END = .bss:0x805B7370; // type:object size:0x30 data:4byte +@23038 = .bss:0x805B7120; // type:object size:0xC scope:local +...bss.0 = .bss:0x805B7120; // type:label scope:local +StateID_ModeNone__19dLytDemoTitleMain_c = .bss:0x805B7130; // type:object size:0x30 data:4byte +@23042 = .bss:0x805B7160; // type:object size:0xC scope:local +StateID_ModeIn__19dLytDemoTitleMain_c = .bss:0x805B7170; // type:object size:0x30 data:4byte +@23046 = .bss:0x805B71A0; // type:object size:0xC scope:local +StateID_ModeMove__19dLytDemoTitleMain_c = .bss:0x805B71B0; // type:object size:0x30 data:4byte +@23050 = .bss:0x805B71E0; // type:object size:0xC scope:local +StateID_ModeOut__19dLytDemoTitleMain_c = .bss:0x805B71F0; // type:object size:0x30 data:4byte +@23054 = .bss:0x805B7220; // type:object size:0xC scope:local +StateID_ModeEnd__19dLytDemoTitleMain_c = .bss:0x805B7230; // type:object size:0x30 data:4byte +@23058 = .bss:0x805B7260; // type:object size:0xC scope:local +StateID_None__15dLytDemoTitle_c = .bss:0x805B7270; // type:object size:0x30 data:4byte +@23062 = .bss:0x805B72A0; // type:object size:0xC scope:local +StateID_In__15dLytDemoTitle_c = .bss:0x805B72B0; // type:object size:0x30 data:4byte +@23066 = .bss:0x805B72E0; // type:object size:0xC scope:local +StateID_Move__15dLytDemoTitle_c = .bss:0x805B72F0; // type:object size:0x30 data:4byte +@23070 = .bss:0x805B7320; // type:object size:0xC scope:local +StateID_Out__15dLytDemoTitle_c = .bss:0x805B7330; // type:object size:0x30 data:4byte +@23074 = .bss:0x805B7360; // type:object size:0xC scope:local +StateID_End__15dLytDemoTitle_c = .bss:0x805B7370; // type:object size:0x30 data:4byte lbl_805B73A0 = .bss:0x805B73A0; // type:object size:0x10 LytEndRollMain__STATE_MODE_NONE = .bss:0x805B73B0; // type:object size:0x40 data:4byte LytEndRollMain__STATE_MODE_IN = .bss:0x805B73F0; // type:object size:0x40 data:4byte diff --git a/configure.py b/configure.py index dc9fe3b3..908e3ee2 100644 --- a/configure.py +++ b/configure.py @@ -671,14 +671,14 @@ config.libs = [ Object(NonMatching, "d/lyt/d_lyt_demo_dowsing.cpp"), Object(NonMatching, "d/lyt/d_lyt_shop.cpp"), Object(Matching, "d/lyt/d_lyt_deposit.cpp"), - Object(NonMatching, "d/lyt/d_lyt_demo_title.cpp"), + Object(Matching, "d/lyt/d_lyt_demo_title.cpp"), Object(NonMatching, "d/lyt/d_lyt_end_roll.cpp"), Object(NonMatching, "toBeSorted/d_a_bullet.cpp"), 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(Matching, "d/lyt/d_lyt_control_game.cpp"), - Object(NonMatching, "d/lyt/d_lyt_control_title.cpp"), + Object(Matching, "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"), Object(NonMatching, "d/a/obj/d_a_obj_force_sign.cpp"), diff --git a/include/d/d_stage.h b/include/d/d_stage.h index 1c238c2f..5b69d38d 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -164,6 +164,8 @@ public: return curr_room_id; } + dFader_c& getFader() { return mFader; } + bool fn_801B3EE0(); void fn_801B3F20(); void fn_801B3F30(); diff --git a/include/d/d_stage_mgr.h b/include/d/d_stage_mgr.h index 64bd6276..4771ba1e 100644 --- a/include/d/d_stage_mgr.h +++ b/include/d/d_stage_mgr.h @@ -121,6 +121,14 @@ public: return (field_0x88A0 & flag) != 0; } + void unsetFlags0x88a0(u32 flag){ + field_0x88A0 &= flag; + } + + void setFlags0x88a0(u32 flag){ + field_0x88A0 |= flag; + } + void initUnkWithWater(u32 val, d3d::UnkWithWater *waterThing); void destroyUnkWithWater(u32 val, d3d::UnkWithWater *waterThing); diff --git a/include/d/lyt/d_lyt_control_title.h b/include/d/lyt/d_lyt_control_title.h new file mode 100644 index 00000000..b5714f40 --- /dev/null +++ b/include/d/lyt/d_lyt_control_title.h @@ -0,0 +1,18 @@ +#ifndef D_LYT_CONTROL_TITLE_H +#define D_LYT_CONTROL_TITLE_H + +#include "d/d_base.h" + +class dLytControlTitle_c : public dBase_c { +public: + dLytControlTitle_c(); + virtual ~dLytControlTitle_c(); + + virtual int create() override; + virtual int doDelete() override; + virtual int execute() override; + virtual int draw() override; + +private: +}; +#endif diff --git a/include/d/lyt/d_lyt_demo_title.h b/include/d/lyt/d_lyt_demo_title.h new file mode 100644 index 00000000..84a554a8 --- /dev/null +++ b/include/d/lyt/d_lyt_demo_title.h @@ -0,0 +1,72 @@ +#ifndef D_LYT_DEMO_TITLE_H +#define D_LYT_DEMO_TITLE_H + +#include "d/lyt/d2d.h" +#include "d/lyt/d_lyt_base.h" +#include "s/s_State.hpp" +#include "s/s_StateID.hpp" + +class dLytDemoTitleMain_c { +public: + dLytDemoTitleMain_c(); + virtual ~dLytDemoTitleMain_c() {}; + + bool build(d2d::ResAccIf_c *resAcc); + bool execute(); + bool draw(); + bool remove(); + void fn_802B09F0(); + void fn_802B0A50(); + void fn_802B0B00(); + void fn_802B0B50(); + void fn_802B0BD0(); + + bool getmIsAnimating() { + return mIsAnimating; + } + + d2d::LytBase_c getmLytBase() { + return mLytBase; + } + +private: + STATE_FUNC_DECLARE(dLytDemoTitleMain_c, ModeNone); + STATE_FUNC_DECLARE(dLytDemoTitleMain_c, ModeIn); + STATE_FUNC_DECLARE(dLytDemoTitleMain_c, ModeMove); + STATE_FUNC_DECLARE(dLytDemoTitleMain_c, ModeOut); + STATE_FUNC_DECLARE(dLytDemoTitleMain_c, ModeEnd); + + /* 0x004 */ UI_STATE_MGR_DECLARE(dLytDemoTitleMain_c); + /* 0x040 */ d2d::LytBase_c mLytBase; + /* 0x0d0 */ d2d::AnmGroup_c mAnmGroups[2]; + /* 0x150 */ bool mIsAnimating; +}; + +class dLytDemoTitle_c : public dLytBase_c { +public: + dLytDemoTitle_c() : mStateMgr(*this) {} + virtual ~dLytDemoTitle_c() {} + + virtual int create() override; + virtual int execute() override; + virtual int draw() override; + virtual int doDelete() override; + +private: + STATE_FUNC_DECLARE(dLytDemoTitle_c, None); + STATE_FUNC_DECLARE(dLytDemoTitle_c, In); + STATE_FUNC_DECLARE(dLytDemoTitle_c, Move); + STATE_FUNC_DECLARE(dLytDemoTitle_c, Out); + STATE_FUNC_DECLARE(dLytDemoTitle_c, End); + + STATE_MGR_DEFINE_UTIL_INSTANCIATE_STATE(dLytDemoTitle_c); + + static dLytDemoTitle_c *sInstance; + + /* 0x08c */ UI_STATE_MGR_DECLARE(dLytDemoTitle_c); + /* 0x040 */ d2d::ResAccIf_c resAcc; + /* 0x438 */ dLytDemoTitleMain_c mMain; + /* 0x58c */ bool mIsAnimating; + /* 0x58d */ bool field_0x58d; +}; +#endif diff --git a/src/d/lyt/d_lyt_control_title.cpp b/src/d/lyt/d_lyt_control_title.cpp new file mode 100644 index 00000000..476cdfb1 --- /dev/null +++ b/src/d/lyt/d_lyt_control_title.cpp @@ -0,0 +1,27 @@ +#include "d/lyt/d_lyt_control_title.h" + +#include "f/f_base.h" + + +SPECIAL_BASE_PROFILE(LYT_CONTROL_TITLE, dLytControlTitle_c, fProfile::LYT_CONTROL_TITLE, 0X2AB, 0); + +dLytControlTitle_c::dLytControlTitle_c() {} + + +int dLytControlTitle_c::create() { + return SUCCEEDED; +} + +int dLytControlTitle_c::doDelete() { + return SUCCEEDED; +} + +int dLytControlTitle_c::execute() { + return SUCCEEDED; +} + +int dLytControlTitle_c::draw() { + return SUCCEEDED; +} + +dLytControlTitle_c::~dLytControlTitle_c() {} diff --git a/src/d/lyt/d_lyt_demo_title.cpp b/src/d/lyt/d_lyt_demo_title.cpp new file mode 100644 index 00000000..15ea8910 --- /dev/null +++ b/src/d/lyt/d_lyt_demo_title.cpp @@ -0,0 +1,318 @@ +#include "d/lyt/d_lyt_demo_title.h" + +#include "d/d_fader.h" +#include "d/d_stage.h" +#include "d/d_stage_mgr.h" +#include "d/d_sys.h" +#include "d/lyt/d2d.h" +#include "toBeSorted/arc_managers/layout_arc_manager.h" + +extern "C" u32 lbl_805B7120; + +#define TITLE_DEMO_MAIN_ANIM_IN 0 +#define TITLE_DEMO_MAIN_ANIM_OUT 1 + +STATE_DEFINE(dLytDemoTitleMain_c, ModeNone); +STATE_DEFINE(dLytDemoTitleMain_c, ModeIn); +STATE_DEFINE(dLytDemoTitleMain_c, ModeMove); +STATE_DEFINE(dLytDemoTitleMain_c, ModeOut); +STATE_DEFINE(dLytDemoTitleMain_c, ModeEnd); + +STATE_DEFINE(dLytDemoTitle_c, None); +STATE_DEFINE(dLytDemoTitle_c, In); +STATE_DEFINE(dLytDemoTitle_c, Move); +STATE_DEFINE(dLytDemoTitle_c, Out); +STATE_DEFINE(dLytDemoTitle_c, End); + +dLytDemoTitle_c *dLytDemoTitle_c::sInstance; + +void dLytDemoTitleMain_c::initializeState_ModeNone() { + return; +} + +void dLytDemoTitleMain_c::executeState_ModeNone() { + mIsAnimating = true; + return; +} + +void dLytDemoTitleMain_c::finalizeState_ModeNone() { + return; +} + +void dLytDemoTitleMain_c::initializeState_ModeIn() { + return; +} + +void dLytDemoTitleMain_c::executeState_ModeIn() { + if (mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].isEndReached()) { + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setAnimEnable(false); + mIsAnimating = true; + } + return; +} + +void dLytDemoTitleMain_c::finalizeState_ModeIn() { + return; +} + +void dLytDemoTitleMain_c::initializeState_ModeMove() { + return; +} + +void dLytDemoTitleMain_c::executeState_ModeMove() { + mIsAnimating = true; + return; +} + +void dLytDemoTitleMain_c::finalizeState_ModeMove() { + return; +} + +void dLytDemoTitleMain_c::initializeState_ModeOut() { + return; +} + +void dLytDemoTitleMain_c::executeState_ModeOut() { + if (mAnmGroups[TITLE_DEMO_MAIN_ANIM_OUT].isEndReached()) { + mAnmGroups[TITLE_DEMO_MAIN_ANIM_OUT].setAnimEnable(false); + mIsAnimating = true; + } + return; +} + +void dLytDemoTitleMain_c::finalizeState_ModeOut() { + return; +} + +void dLytDemoTitleMain_c::initializeState_ModeEnd() { + return; +} + +void dLytDemoTitleMain_c::executeState_ModeEnd() { + mIsAnimating = true; + return; +} + +void dLytDemoTitleMain_c::finalizeState_ModeEnd() { + return; +} + +dLytDemoTitleMain_c::dLytDemoTitleMain_c() : mStateMgr(*this) {} + +static const d2d::LytBrlanMapping brlanMap[] = { + { "demoTitle_00_in.brlan", "G_inOut_00"}, + {"demoTitle_00_out.brlan", "G_inOut_00"}, +}; + +bool dLytDemoTitleMain_c::build(d2d::ResAccIf_c *resAcc) { + mLytBase.setResAcc(resAcc); + mLytBase.build("demoTitle_00.brlyt", nullptr); + mLytBase.setPriority(0x86); + + for (int i = 0; i < 2; i++) { + mAnmGroups[i].init(brlanMap[i].mFile, resAcc, mLytBase.getLayout(), brlanMap[i].mName); + mAnmGroups[i].bind(false); + mAnmGroups[i].setAnimEnable(false); + } + + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setAnimEnable(true); + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setFrame(0.0f); + + mLytBase.calc(); + + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setAnimEnable(false); + + fn_802B09F0(); + + return true; +} + +bool dLytDemoTitleMain_c::execute() { + mLytBase.getLayout()->GetRootPane()->SetInfluencedAlpha(true); + mLytBase.getLayout()->GetRootPane()->SetAlpha(255 - dStage_c::GetInstance()->getFader().getColorFaderAlpha()); + + mStateMgr.executeState(); + + for (int i = 0; i < 2; i++) { + if (mAnmGroups[i].isEnabled()) { + mAnmGroups[i].play(); + } + } + + mLytBase.calc(); + + return true; +} + +bool dLytDemoTitleMain_c::draw() { + mLytBase.addToDrawList(); + return true; +} + +bool dLytDemoTitleMain_c::remove() { + dStageMgr_c::GetInstance()->unsetFlags0x88a0(0xfffffffe); + + mLytBase.unbindAnims(); + + for (int i = 0; i < 2; i++) { + mAnmGroups[i].remove(); + } + return true; +} + +void dLytDemoTitleMain_c::fn_802B09F0() { + mStateMgr.changeState(StateID_ModeNone); + mIsAnimating = false; + return; +} + +void dLytDemoTitleMain_c::fn_802B0A50() { + dStageMgr_c::GetInstance()->setFlags0x88a0(0x1); + + dSys_c::setClearColor(mColor(0xFF)); + + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setAnimEnable(true); + mAnmGroups[TITLE_DEMO_MAIN_ANIM_IN].setFrame(0.0f); + mLytBase.calc(); + mStateMgr.changeState(StateID_ModeIn); + mIsAnimating = false; +} + +void dLytDemoTitleMain_c::fn_802B0B00() { + mStateMgr.changeState(StateID_ModeMove); + mIsAnimating = false; + return; +} + +void dLytDemoTitleMain_c::fn_802B0B50() { + mAnmGroups[TITLE_DEMO_MAIN_ANIM_OUT].setAnimEnable(true); + mAnmGroups[TITLE_DEMO_MAIN_ANIM_OUT].setFrame(0.0f); + mLytBase.calc(); + mStateMgr.changeState(StateID_ModeOut); + mIsAnimating = false; + return; +} + +void dLytDemoTitleMain_c::fn_802B0BD0() { + mStateMgr.changeState(StateID_ModeEnd); + mIsAnimating = false; + return; +} + +void dLytDemoTitle_c::initializeState_None() { + return; +} + +void dLytDemoTitle_c::executeState_None() { + if (mIsAnimating) { + mMain.fn_802B0A50(); + mStateMgr.changeState(StateID_In); + mIsAnimating = false; + } + return; +} + +void dLytDemoTitle_c::finalizeState_None() { + return; +} + +void dLytDemoTitle_c::initializeState_In() { + return; +} + +void dLytDemoTitle_c::executeState_In() { + if (mMain.getmIsAnimating()) { + mMain.fn_802B0B00(); + mStateMgr.changeState(StateID_Move); + } + return; +} + +void dLytDemoTitle_c::finalizeState_In() { + return; +} + +void dLytDemoTitle_c::initializeState_Move() { + return; +} + +void dLytDemoTitle_c::executeState_Move() { + if (mMain.getmIsAnimating() && field_0x58d) { + mMain.fn_802B0B50(); + mStateMgr.changeState(StateID_Out); + field_0x58d = false; + } + return; +} + +void dLytDemoTitle_c::finalizeState_Move() { + return; +} + +void dLytDemoTitle_c::initializeState_Out() { + return; +} + +void dLytDemoTitle_c::executeState_Out() { + if (mMain.getmIsAnimating()) { + deleteRequest(); + mMain.fn_802B0BD0(); + mStateMgr.changeState(StateID_End); + } + + return; +} + +void dLytDemoTitle_c::finalizeState_Out() { + return; +} + +void dLytDemoTitle_c::initializeState_End() { + return; +} + +void dLytDemoTitle_c::executeState_End() { + return; +} + +void dLytDemoTitle_c::finalizeState_End() { + return; +} + +SPECIAL_BASE_PROFILE(LYT_DEMO_TITLE, dLytDemoTitle_c, fProfile::LYT_DEMO_TITLE, 0x2BA, 0); + +int dLytDemoTitle_c::create() { + sInstance = this; + + resAcc.attach(LayoutArcManager::GetInstance()->getLoadedData("DemoTitle"), ""); + + mMain.build(&resAcc); + mStateMgr.changeState(StateID_None); + mIsAnimating = true; + field_0x58d = false; + return SUCCEEDED; +} + +int dLytDemoTitle_c::execute() { + if (*mStateMgr.getStateID() != StateID_None) { + mMain.execute(); + } + + mStateMgr.executeState(); + + return SUCCEEDED; +} + +int dLytDemoTitle_c::draw() { + if (*mStateMgr.getStateID() != StateID_None) { + mMain.draw(); + } + return SUCCEEDED; +} + +int dLytDemoTitle_c::doDelete() { + mMain.remove(); + resAcc.detach(); + sInstance = nullptr; + return SUCCEEDED; +} |
