mirror of
https://github.com/zeldaret/ss
synced 2026-09-03 01:54:18 -04:00
I keep getting distracted by side quests
This commit is contained in:
@@ -261,6 +261,9 @@ d/d_textunk.cpp:
|
||||
.sdata2 start:0x805797F8 end:0x80579848
|
||||
.bss start:0x805A6F70 end:0x805A7730
|
||||
|
||||
d/d_textwindow_unk.cpp:
|
||||
.text start:0x800B20E0 end:0x800B34F0
|
||||
|
||||
d/d_tag_processor.cpp:
|
||||
.text start:0x800B34F0 end:0x800B9274
|
||||
.ctors start:0x804DB6D4 end:0x804DB6D8
|
||||
@@ -749,6 +752,14 @@ d/tg/d_t_weather.cpp:
|
||||
.text start:0x801A65D0 end:0x801AF7D8
|
||||
.ctors start:0x804DB804 end:0x804DB808
|
||||
|
||||
d/d_message.cpp:
|
||||
.text start:0x801AF7E0 end:0x801B329C
|
||||
.ctors start:0x804DB808 end:0x804DB80C
|
||||
.data start:0x8052C858 end:0x8052DF40
|
||||
.sdata start:0x80573248 end:0x80573290
|
||||
.sbss start:0x80575740 end:0x80575760
|
||||
.bss start:0x805B29E0 end:0x805B36E0
|
||||
|
||||
d/d_stage.cpp:
|
||||
.text start:0x801B32A0 end:0x801B5BC8
|
||||
.ctors start:0x804DB80C end:0x804DB810
|
||||
|
||||
+162
-162
@@ -6743,9 +6743,9 @@ fn_80114440 = .text:0x80114440; // type:function size:0x248
|
||||
fn_80114690 = .text:0x80114690; // type:function size:0x25C
|
||||
fn_801148F0 = .text:0x801148F0; // type:function size:0x24
|
||||
fn_80114920 = .text:0x80114920; // type:function size:0x40
|
||||
LytMsgWindow__init = .text:0x80114960; // type:function size:0x228
|
||||
fn_80114B90 = .text:0x80114B90; // type:function size:0x10
|
||||
fn_80114BA0 = .text:0x80114BA0; // type:function size:0xB8
|
||||
build__15dLytMsgWindow_cFv = .text:0x80114960; // type:function size:0x228
|
||||
changeState__84sStateMgr_c<15dLytMsgWindow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x80114B90; // type:function size:0x10
|
||||
remove__15dLytMsgWindow_cFv = .text:0x80114BA0; // type:function size:0xB8
|
||||
LytMsgWindow__stateInvisibleEnter = .text:0x80114C60; // type:function size:0x4
|
||||
LytMsgWindow__stateInvisibleUpdate = .text:0x80114C70; // type:function size:0x6A8
|
||||
fn_80115320 = .text:0x80115320; // type:function size:0x58
|
||||
@@ -6873,7 +6873,7 @@ fn_801192A0 = .text:0x801192A0; // type:function size:0x58
|
||||
fn_80119300 = .text:0x80119300; // type:function size:0x6C
|
||||
fn_80119370 = .text:0x80119370; // type:function size:0xA0
|
||||
fn_80119410 = .text:0x80119410; // type:function size:0xA4
|
||||
fn_801194C0 = .text:0x801194C0; // type:function size:0x40C
|
||||
removeAllWindowSubtypes__15dLytMsgWindow_cFv = .text:0x801194C0; // type:function size:0x40C
|
||||
LytMsgWindowTalk__dtor = .text:0x801198D0; // type:function size:0x198
|
||||
fn_80119A70 = .text:0x80119A70; // type:function size:0x198
|
||||
LytMsgWindowSword__dtor = .text:0x80119C10; // type:function size:0x198
|
||||
@@ -7040,9 +7040,9 @@ initializeState__32sFStateID_c<17dLytAutoExplain_c>CFR17dLytAutoExplain_c = .tex
|
||||
finalizeState__32sFStateID_c<17dLytAutoCaption_c>CFR17dLytAutoCaption_c = .text:0x8011B8F0; // type:function size:0x30
|
||||
executeState__32sFStateID_c<17dLytAutoCaption_c>CFR17dLytAutoCaption_c = .text:0x8011B920; // type:function size:0x30
|
||||
initializeState__32sFStateID_c<17dLytAutoCaption_c>CFR17dLytAutoCaption_c = .text:0x8011B950; // type:function size:0x30
|
||||
LytMsgWindow__initStates = .text:0x8011B980; // type:function size:0xE58
|
||||
LytMsgWindow__dtor = .text:0x8011C7E0; // type:function size:0x58
|
||||
fn_8011C840 = .text:0x8011C840; // type:function size:0x88
|
||||
__sinit_\d_lyt_msg_window_cpp = .text:0x8011B980; // type:function size:0xE58
|
||||
__dt__30sFStateID_c<15dLytMsgWindow_c>Fv = .text:0x8011C7E0; // type:function size:0x58
|
||||
isSameName__30sFStateID_c<15dLytMsgWindow_c>CFPCc = .text:0x8011C840; // type:function size:0x88
|
||||
__ct__15SelectBtnHelperFv = .text:0x8011C8D0; // type:function size:0x60
|
||||
__dt__15SelectBtnHelperFv = .text:0x8011C930; // type:function size:0x40
|
||||
fn_8011C970 = .text:0x8011C970; // type:function size:0x6C
|
||||
@@ -10907,14 +10907,14 @@ fn_801B1F10 = .text:0x801B1F10; // type:function size:0x38
|
||||
ActorEventFlowManager__clear = .text:0x801B1F50; // type:function size:0x2C
|
||||
fn_801B1F80 = .text:0x801B1F80; // type:function size:0xD8
|
||||
fn_801B2060 = .text:0x801B2060; // type:function size:0x98
|
||||
fn_801B2100 = .text:0x801B2100; // type:function size:0x30
|
||||
msbAlloc = .text:0x801B2130; // type:function size:0x2C
|
||||
msbFree = .text:0x801B2160; // type:function size:0x24
|
||||
GlobalMessageRelatedContext__ctor = .text:0x801B2190; // type:function size:0x48
|
||||
fn_801B21E0 = .text:0x801B21E0; // type:function size:0x268
|
||||
fn_801B2450 = .text:0x801B2450; // type:function size:0xBC
|
||||
fn_801B2510 = .text:0x801B2510; // type:function size:0x7C
|
||||
fn_801B2590 = .text:0x801B2590; // type:function size:0x8
|
||||
dMessage_c_classInit__Fv = .text:0x801B2100; // type:function size:0x30
|
||||
msbAlloc__FUl = .text:0x801B2130; // type:function size:0x2C
|
||||
msbFree__FPv = .text:0x801B2160; // type:function size:0x24
|
||||
__ct__10dMessage_cFv = .text:0x801B2190; // type:function size:0x48
|
||||
create__10dMessage_cFv = .text:0x801B21E0; // type:function size:0x268
|
||||
doDelete__10dMessage_cFv = .text:0x801B2450; // type:function size:0xBC
|
||||
execute__10dMessage_cFv = .text:0x801B2510; // type:function size:0x7C
|
||||
draw__10dMessage_cFv = .text:0x801B2590; // type:function size:0x8
|
||||
getTextMessageByLabel = .text:0x801B25A0; // type:function size:0x24
|
||||
fn_801B25D0 = .text:0x801B25D0; // type:function size:0x2C
|
||||
fn_801B2600 = .text:0x801B2600; // type:function size:0xC
|
||||
@@ -10922,10 +10922,10 @@ fn_801B2610 = .text:0x801B2610; // type:function size:0x180
|
||||
fn_801B2790 = .text:0x801B2790; // type:function size:0x98
|
||||
fn_801B2830 = .text:0x801B2830; // type:function size:0xC
|
||||
fn_801B2840 = .text:0x801B2840; // type:function size:0x38
|
||||
getMsbtNameInArc = .text:0x801B2880; // type:function size:0x88
|
||||
getMsbfNameInArc = .text:0x801B2910; // type:function size:0x88
|
||||
getMajorNumberForMsbt = .text:0x801B29A0; // type:function size:0x24
|
||||
fn_801B29D0 = .text:0x801B29D0; // type:function size:0x24
|
||||
getMsbtFileName__10dMessage_cFl = .text:0x801B2880; // type:function size:0x88
|
||||
getMsbfFileName__10dMessage_cFl = .text:0x801B2910; // type:function size:0x88
|
||||
getMsbtNumberByIndex__10dMessage_cFl = .text:0x801B29A0; // type:function size:0x24
|
||||
getMsbfNumberByIndex__10dMessage_cFl = .text:0x801B29D0; // type:function size:0x24
|
||||
fn_801B2A00 = .text:0x801B2A00; // type:function size:0x14
|
||||
fn_801B2A20 = .text:0x801B2A20; // type:function size:0x4C
|
||||
fn_801B2A70 = .text:0x801B2A70; // type:function size:0xC
|
||||
@@ -10939,18 +10939,18 @@ fn_801B2BE0 = .text:0x801B2BE0; // type:function size:0x40
|
||||
fn_801B2C20 = .text:0x801B2C20; // type:function size:0x30
|
||||
fn_801B2C50 = .text:0x801B2C50; // type:function size:0xC0
|
||||
fn_801B2D10 = .text:0x801B2D10; // type:function size:0x4C
|
||||
fn_801B2D60 = .text:0x801B2D60; // type:function size:0x44
|
||||
getUsedLanguageString = .text:0x801B2DB0; // type:function size:0x1B0
|
||||
getEventFlowFileNameByIndex = .text:0x801B2F60; // type:function size:0x4
|
||||
reset__10dMessage_cFv = .text:0x801B2D60; // type:function size:0x44
|
||||
getLanguageIdentifier__10dMessage_cFv = .text:0x801B2DB0; // type:function size:0x1B0
|
||||
getArcNameByIndex__10dMessage_cFlb = .text:0x801B2F60; // type:function size:0x4
|
||||
getEventFlowFileNameByIndex2 = .text:0x801B2F70; // type:function size:0x14
|
||||
getDataFromMsbArc = .text:0x801B2F90; // type:function size:0x70
|
||||
setZevFromMsbArc = .text:0x801B3000; // type:function size:0x68
|
||||
getDataFromMsbArc__10dMessage_cFlPCcb = .text:0x801B2F90; // type:function size:0x70
|
||||
setZevFromMsbArc__10dMessage_cFv = .text:0x801B3000; // type:function size:0x68
|
||||
fn_801B3070 = .text:0x801B3070; // type:function size:0x104
|
||||
fn_801B3180 = .text:0x801B3180; // type:function size:0x24
|
||||
fn_801B31B0 = .text:0x801B31B0; // type:function size:0x24
|
||||
fn_801B31E0 = .text:0x801B31E0; // type:function size:0x34
|
||||
fn_801B3220 = .text:0x801B3220; // type:function size:0x64
|
||||
initCurrentLangString = .text:0x801B3290; // type:function size:0xC
|
||||
getArcIndexForFile__10dMessage_cFPCc = .text:0x801B31E0; // type:function size:0x34
|
||||
__dt__10dMessage_cFv = .text:0x801B3220; // type:function size:0x64
|
||||
__sinit_\d_message_cpp = .text:0x801B3290; // type:function size:0xC scope:local
|
||||
dStage_c_classInit__Fv = .text:0x801B32A0; // type:function size:0x30
|
||||
__ct__8dStage_cFv = .text:0x801B32D0; // type:function size:0xF0
|
||||
__dt__18sFPhase<8dStage_c>Fv = .text:0x801B33C0; // type:function size:0x58
|
||||
@@ -33984,170 +33984,170 @@ jumptable_8052CAC8 = .data:0x8052CAC8; // type:object size:0x28 scope:local
|
||||
lbl_8052CAF0 = .data:0x8052CAF0; // type:object size:0x114
|
||||
jumptable_8052CC04 = .data:0x8052CC04; // type:object size:0x20 scope:local
|
||||
g_profile_MESSAGE = .data:0x8052CC24; // type:object size:0xC
|
||||
lbl_8052CC30 = .data:0x8052CC30; // type:object size:0x10
|
||||
lbl_8052CC30 = .data:0x8052CC30; // type:object size:0xE data:string
|
||||
lbl_8052CC40 = .data:0x8052CC40; // type:object size:0x10 data:string
|
||||
lbl_8052CC50 = .data:0x8052CC50; // type:object size:0x10 data:string
|
||||
lbl_8052CC60 = .data:0x8052CC60; // type:object size:0x18
|
||||
lbl_8052CC60 = .data:0x8052CC60; // type:object size:0x11 data:string
|
||||
lbl_8052CC78 = .data:0x8052CC78; // type:object size:0x10 data:string
|
||||
lbl_8052CC88 = .data:0x8052CC88; // type:object size:0x14
|
||||
lbl_8052CC9C = .data:0x8052CC9C; // type:object size:0x18
|
||||
lbl_8052CCB4 = .data:0x8052CCB4; // type:object size:0x18
|
||||
lbl_8052CCCC = .data:0x8052CCCC; // type:object size:0x18
|
||||
lbl_8052CCE4 = .data:0x8052CCE4; // type:object size:0x18
|
||||
lbl_8052CCFC = .data:0x8052CCFC; // type:object size:0x18
|
||||
lbl_8052CD14 = .data:0x8052CD14; // type:object size:0x18
|
||||
lbl_8052CD2C = .data:0x8052CD2C; // type:object size:0x18
|
||||
lbl_8052CD44 = .data:0x8052CD44; // type:object size:0x18
|
||||
lbl_8052CD5C = .data:0x8052CD5C; // type:object size:0x18
|
||||
lbl_8052CD74 = .data:0x8052CD74; // type:object size:0x18
|
||||
lbl_8052CD8C = .data:0x8052CD8C; // type:object size:0x14
|
||||
lbl_8052CDA0 = .data:0x8052CDA0; // type:object size:0x10
|
||||
lbl_8052CDB0 = .data:0x8052CDB0; // type:object size:0xC
|
||||
lbl_8052CDBC = .data:0x8052CDBC; // type:object size:0x10
|
||||
lbl_8052CDCC = .data:0x8052CDCC; // type:object size:0x10
|
||||
lbl_8052CDDC = .data:0x8052CDDC; // type:object size:0x10
|
||||
lbl_8052CC88 = .data:0x8052CC88; // type:object size:0x12 data:string
|
||||
lbl_8052CC9C = .data:0x8052CC9C; // type:object size:0x16 data:string
|
||||
lbl_8052CCB4 = .data:0x8052CCB4; // type:object size:0x17 data:string
|
||||
lbl_8052CCCC = .data:0x8052CCCC; // type:object size:0x17 data:string
|
||||
lbl_8052CCE4 = .data:0x8052CCE4; // type:object size:0x17 data:string
|
||||
lbl_8052CCFC = .data:0x8052CCFC; // type:object size:0x17 data:string
|
||||
lbl_8052CD14 = .data:0x8052CD14; // type:object size:0x17 data:string
|
||||
lbl_8052CD2C = .data:0x8052CD2C; // type:object size:0x17 data:string
|
||||
lbl_8052CD44 = .data:0x8052CD44; // type:object size:0x17 data:string
|
||||
lbl_8052CD5C = .data:0x8052CD5C; // type:object size:0x17 data:string
|
||||
lbl_8052CD74 = .data:0x8052CD74; // type:object size:0x17 data:string
|
||||
lbl_8052CD8C = .data:0x8052CD8C; // type:object size:0x11 data:string
|
||||
lbl_8052CDA0 = .data:0x8052CDA0; // type:object size:0xE data:string
|
||||
lbl_8052CDB0 = .data:0x8052CDB0; // type:object size:0xA data:string
|
||||
lbl_8052CDBC = .data:0x8052CDBC; // type:object size:0xE data:string
|
||||
lbl_8052CDCC = .data:0x8052CDCC; // type:object size:0xE data:string
|
||||
lbl_8052CDDC = .data:0x8052CDDC; // type:object size:0xF data:string
|
||||
lbl_8052CDEC = .data:0x8052CDEC; // type:object size:0x14 data:string
|
||||
lbl_8052CE00 = .data:0x8052CE00; // type:object size:0x10
|
||||
lbl_8052CE10 = .data:0x8052CE10; // type:object size:0x10
|
||||
lbl_8052CE20 = .data:0x8052CE20; // type:object size:0x18
|
||||
lbl_8052CE00 = .data:0x8052CE00; // type:object size:0xF data:string
|
||||
lbl_8052CE10 = .data:0x8052CE10; // type:object size:0xF data:string
|
||||
lbl_8052CE20 = .data:0x8052CE20; // type:object size:0x13 data:string
|
||||
lbl_8052CE38 = .data:0x8052CE38; // type:object size:0x10 data:string
|
||||
lbl_8052CE48 = .data:0x8052CE48; // type:object size:0x14
|
||||
lbl_8052CE5C = .data:0x8052CE5C; // type:object size:0x14
|
||||
lbl_8052CE48 = .data:0x8052CE48; // type:object size:0x12 data:string
|
||||
lbl_8052CE5C = .data:0x8052CE5C; // type:object size:0x13 data:string
|
||||
lbl_8052CE70 = .data:0x8052CE70; // type:object size:0x14 data:string
|
||||
lbl_8052CE84 = .data:0x8052CE84; // type:object size:0x18
|
||||
lbl_8052CE9C = .data:0x8052CE9C; // type:object size:0x14
|
||||
lbl_8052CEB0 = .data:0x8052CEB0; // type:object size:0x18
|
||||
lbl_8052CE84 = .data:0x8052CE84; // type:object size:0x17 data:string
|
||||
lbl_8052CE9C = .data:0x8052CE9C; // type:object size:0x11 data:string
|
||||
lbl_8052CEB0 = .data:0x8052CEB0; // type:object size:0x16 data:string
|
||||
lbl_8052CEC8 = .data:0x8052CEC8; // type:object size:0x10 data:string
|
||||
lbl_8052CED8 = .data:0x8052CED8; // type:object size:0x10
|
||||
lbl_8052CED8 = .data:0x8052CED8; // type:object size:0xF data:string
|
||||
lbl_8052CEE8 = .data:0x8052CEE8; // type:object size:0x14 data:string
|
||||
lbl_8052CEFC = .data:0x8052CEFC; // type:object size:0x14
|
||||
lbl_8052CF10 = .data:0x8052CF10; // type:object size:0x10
|
||||
lbl_8052CF20 = .data:0x8052CF20; // type:object size:0x14
|
||||
lbl_8052CF34 = .data:0x8052CF34; // type:object size:0x10
|
||||
lbl_8052CF44 = .data:0x8052CF44; // type:object size:0x14
|
||||
lbl_8052CF58 = .data:0x8052CF58; // type:object size:0x10
|
||||
lbl_8052CF68 = .data:0x8052CF68; // type:object size:0x10
|
||||
lbl_8052CF78 = .data:0x8052CF78; // type:object size:0x10
|
||||
lbl_8052CEFC = .data:0x8052CEFC; // type:object size:0x11 data:string
|
||||
lbl_8052CF10 = .data:0x8052CF10; // type:object size:0xF data:string
|
||||
lbl_8052CF20 = .data:0x8052CF20; // type:object size:0x11 data:string
|
||||
lbl_8052CF34 = .data:0x8052CF34; // type:object size:0xF data:string
|
||||
lbl_8052CF44 = .data:0x8052CF44; // type:object size:0x12 data:string
|
||||
lbl_8052CF58 = .data:0x8052CF58; // type:object size:0xF data:string
|
||||
lbl_8052CF68 = .data:0x8052CF68; // type:object size:0xF data:string
|
||||
lbl_8052CF78 = .data:0x8052CF78; // type:object size:0xF data:string
|
||||
lbl_8052CF88 = .data:0x8052CF88; // type:object size:0xC data:string
|
||||
lbl_8052CF94 = .data:0x8052CF94; // type:object size:0x10
|
||||
lbl_8052CFA4 = .data:0x8052CFA4; // type:object size:0x10
|
||||
lbl_8052CFB4 = .data:0x8052CFB4; // type:object size:0x14
|
||||
lbl_8052CF94 = .data:0x8052CF94; // type:object size:0xF data:string
|
||||
lbl_8052CFA4 = .data:0x8052CFA4; // type:object size:0xE data:string
|
||||
lbl_8052CFB4 = .data:0x8052CFB4; // type:object size:0xE data:string
|
||||
lbl_8052CFC8 = .data:0x8052CFC8; // type:object size:0x10 data:string
|
||||
lbl_8052CFD8 = .data:0x8052CFD8; // type:object size:0x14
|
||||
lbl_8052CFEC = .data:0x8052CFEC; // type:object size:0x14
|
||||
lbl_8052D000 = .data:0x8052D000; // type:object size:0x14
|
||||
lbl_8052D014 = .data:0x8052D014; // type:object size:0x14
|
||||
lbl_8052D028 = .data:0x8052D028; // type:object size:0x18
|
||||
lbl_8052D040 = .data:0x8052D040; // type:object size:0x14
|
||||
lbl_8052D054 = .data:0x8052D054; // type:object size:0x10
|
||||
lbl_8052D064 = .data:0x8052D064; // type:object size:0x14
|
||||
lbl_8052CFD8 = .data:0x8052CFD8; // type:object size:0x12 data:string
|
||||
lbl_8052CFEC = .data:0x8052CFEC; // type:object size:0x12 data:string
|
||||
lbl_8052D000 = .data:0x8052D000; // type:object size:0x12 data:string
|
||||
lbl_8052D014 = .data:0x8052D014; // type:object size:0x12 data:string
|
||||
lbl_8052D028 = .data:0x8052D028; // type:object size:0x15 data:string
|
||||
lbl_8052D040 = .data:0x8052D040; // type:object size:0x11 data:string
|
||||
lbl_8052D054 = .data:0x8052D054; // type:object size:0xE data:string
|
||||
lbl_8052D064 = .data:0x8052D064; // type:object size:0x12 data:string
|
||||
lbl_8052D078 = .data:0x8052D078; // type:object size:0x14 data:string
|
||||
lbl_8052D08C = .data:0x8052D08C; // type:object size:0x14
|
||||
lbl_8052D08C = .data:0x8052D08C; // type:object size:0x11 data:string
|
||||
lbl_8052D0A0 = .data:0x8052D0A0; // type:object size:0x14 data:string
|
||||
lbl_8052D0B4 = .data:0x8052D0B4; // type:object size:0x14 data:string
|
||||
lbl_8052D0C8 = .data:0x8052D0C8; // type:object size:0x14 data:string
|
||||
lbl_8052D0DC = .data:0x8052D0DC; // type:object size:0x18
|
||||
lbl_8052D0F4 = .data:0x8052D0F4; // type:object size:0x14
|
||||
lbl_8052D108 = .data:0x8052D108; // type:object size:0x10
|
||||
lbl_8052D0DC = .data:0x8052D0DC; // type:object size:0x17 data:string
|
||||
lbl_8052D0F4 = .data:0x8052D0F4; // type:object size:0x11 data:string
|
||||
lbl_8052D108 = .data:0x8052D108; // type:object size:0xE data:string
|
||||
lbl_8052D118 = .data:0x8052D118; // type:object size:0x10 data:string
|
||||
lbl_8052D128 = .data:0x8052D128; // type:object size:0x14
|
||||
lbl_8052D13C = .data:0x8052D13C; // type:object size:0x14
|
||||
lbl_8052D150 = .data:0x8052D150; // type:object size:0x14
|
||||
lbl_8052D164 = .data:0x8052D164; // type:object size:0x14
|
||||
lbl_8052D178 = .data:0x8052D178; // type:object size:0x18
|
||||
lbl_8052D190 = .data:0x8052D190; // type:object size:0x18
|
||||
lbl_8052D1A8 = .data:0x8052D1A8; // type:object size:0x18
|
||||
lbl_8052D1C0 = .data:0x8052D1C0; // type:object size:0x18
|
||||
lbl_8052D128 = .data:0x8052D128; // type:object size:0x12 data:string
|
||||
lbl_8052D13C = .data:0x8052D13C; // type:object size:0x12 data:string
|
||||
lbl_8052D150 = .data:0x8052D150; // type:object size:0x12 data:string
|
||||
lbl_8052D164 = .data:0x8052D164; // type:object size:0x12 data:string
|
||||
lbl_8052D178 = .data:0x8052D178; // type:object size:0x17 data:string
|
||||
lbl_8052D190 = .data:0x8052D190; // type:object size:0x15 data:string
|
||||
lbl_8052D1A8 = .data:0x8052D1A8; // type:object size:0x15 data:string
|
||||
lbl_8052D1C0 = .data:0x8052D1C0; // type:object size:0x11 data:string
|
||||
lbl_8052D1D8 = .data:0x8052D1D8; // type:object size:0x18 data:string
|
||||
lbl_8052D1F0 = .data:0x8052D1F0; // type:object size:0x10
|
||||
lbl_8052D200 = .data:0x8052D200; // type:object size:0x18
|
||||
lbl_8052D218 = .data:0x8052D218; // type:object size:0x10
|
||||
lbl_8052D228 = .data:0x8052D228; // type:object size:0x1C
|
||||
lbl_8052D244 = .data:0x8052D244; // type:object size:0x10
|
||||
lbl_8052D254 = .data:0x8052D254; // type:object size:0x14
|
||||
lbl_8052D268 = .data:0x8052D268; // type:object size:0x10
|
||||
MSBT_FILENAMES = .data:0x8052D278; // type:object size:0x148
|
||||
lbl_8052D3C0 = .data:0x8052D3C0; // type:object size:0x10
|
||||
lbl_8052D1F0 = .data:0x8052D1F0; // type:object size:0xE data:string
|
||||
lbl_8052D200 = .data:0x8052D200; // type:object size:0x15 data:string
|
||||
lbl_8052D218 = .data:0x8052D218; // type:object size:0xE data:string
|
||||
lbl_8052D228 = .data:0x8052D228; // type:object size:0x19 data:string
|
||||
lbl_8052D244 = .data:0x8052D244; // type:object size:0xF data:string
|
||||
lbl_8052D254 = .data:0x8052D254; // type:object size:0x11 data:string
|
||||
lbl_8052D268 = .data:0x8052D268; // type:object size:0xE data:string
|
||||
sMsbtFileNames = .data:0x8052D278; // type:object size:0x148
|
||||
lbl_8052D3C0 = .data:0x8052D3C0; // type:object size:0xE data:string
|
||||
lbl_8052D3D0 = .data:0x8052D3D0; // type:object size:0x10 data:string
|
||||
lbl_8052D3E0 = .data:0x8052D3E0; // type:object size:0x10 data:string
|
||||
lbl_8052D3F0 = .data:0x8052D3F0; // type:object size:0x18
|
||||
lbl_8052D3F0 = .data:0x8052D3F0; // type:object size:0x11 data:string
|
||||
lbl_8052D408 = .data:0x8052D408; // type:object size:0x10 data:string
|
||||
lbl_8052D418 = .data:0x8052D418; // type:object size:0x14
|
||||
lbl_8052D42C = .data:0x8052D42C; // type:object size:0x18
|
||||
lbl_8052D444 = .data:0x8052D444; // type:object size:0x18
|
||||
lbl_8052D45C = .data:0x8052D45C; // type:object size:0x18
|
||||
lbl_8052D474 = .data:0x8052D474; // type:object size:0x18
|
||||
lbl_8052D48C = .data:0x8052D48C; // type:object size:0x18
|
||||
lbl_8052D4A4 = .data:0x8052D4A4; // type:object size:0x18
|
||||
lbl_8052D4BC = .data:0x8052D4BC; // type:object size:0x18
|
||||
lbl_8052D4D4 = .data:0x8052D4D4; // type:object size:0x18
|
||||
lbl_8052D4EC = .data:0x8052D4EC; // type:object size:0x18
|
||||
lbl_8052D504 = .data:0x8052D504; // type:object size:0x18
|
||||
lbl_8052D51C = .data:0x8052D51C; // type:object size:0x10
|
||||
lbl_8052D52C = .data:0x8052D52C; // type:object size:0x10
|
||||
lbl_8052D53C = .data:0x8052D53C; // type:object size:0x10
|
||||
lbl_8052D54C = .data:0x8052D54C; // type:object size:0x10
|
||||
lbl_8052D418 = .data:0x8052D418; // type:object size:0x12 data:string
|
||||
lbl_8052D42C = .data:0x8052D42C; // type:object size:0x16 data:string
|
||||
lbl_8052D444 = .data:0x8052D444; // type:object size:0x17 data:string
|
||||
lbl_8052D45C = .data:0x8052D45C; // type:object size:0x17 data:string
|
||||
lbl_8052D474 = .data:0x8052D474; // type:object size:0x17 data:string
|
||||
lbl_8052D48C = .data:0x8052D48C; // type:object size:0x17 data:string
|
||||
lbl_8052D4A4 = .data:0x8052D4A4; // type:object size:0x17 data:string
|
||||
lbl_8052D4BC = .data:0x8052D4BC; // type:object size:0x17 data:string
|
||||
lbl_8052D4D4 = .data:0x8052D4D4; // type:object size:0x17 data:string
|
||||
lbl_8052D4EC = .data:0x8052D4EC; // type:object size:0x17 data:string
|
||||
lbl_8052D504 = .data:0x8052D504; // type:object size:0x17 data:string
|
||||
lbl_8052D51C = .data:0x8052D51C; // type:object size:0xE data:string
|
||||
lbl_8052D52C = .data:0x8052D52C; // type:object size:0xE data:string
|
||||
lbl_8052D53C = .data:0x8052D53C; // type:object size:0xE data:string
|
||||
lbl_8052D54C = .data:0x8052D54C; // type:object size:0xF data:string
|
||||
lbl_8052D55C = .data:0x8052D55C; // type:object size:0x14 data:string
|
||||
lbl_8052D570 = .data:0x8052D570; // type:object size:0x10
|
||||
lbl_8052D580 = .data:0x8052D580; // type:object size:0x10
|
||||
lbl_8052D590 = .data:0x8052D590; // type:object size:0x18
|
||||
lbl_8052D570 = .data:0x8052D570; // type:object size:0xF data:string
|
||||
lbl_8052D580 = .data:0x8052D580; // type:object size:0xF data:string
|
||||
lbl_8052D590 = .data:0x8052D590; // type:object size:0x13 data:string
|
||||
lbl_8052D5A8 = .data:0x8052D5A8; // type:object size:0x10 data:string
|
||||
lbl_8052D5B8 = .data:0x8052D5B8; // type:object size:0x14
|
||||
lbl_8052D5CC = .data:0x8052D5CC; // type:object size:0x14
|
||||
lbl_8052D5B8 = .data:0x8052D5B8; // type:object size:0x12 data:string
|
||||
lbl_8052D5CC = .data:0x8052D5CC; // type:object size:0x13 data:string
|
||||
lbl_8052D5E0 = .data:0x8052D5E0; // type:object size:0x14 data:string
|
||||
lbl_8052D5F4 = .data:0x8052D5F4; // type:object size:0x18
|
||||
lbl_8052D60C = .data:0x8052D60C; // type:object size:0x14
|
||||
lbl_8052D620 = .data:0x8052D620; // type:object size:0x18
|
||||
lbl_8052D5F4 = .data:0x8052D5F4; // type:object size:0x17 data:string
|
||||
lbl_8052D60C = .data:0x8052D60C; // type:object size:0x11 data:string
|
||||
lbl_8052D620 = .data:0x8052D620; // type:object size:0x16 data:string
|
||||
lbl_8052D638 = .data:0x8052D638; // type:object size:0x10 data:string
|
||||
lbl_8052D648 = .data:0x8052D648; // type:object size:0x10
|
||||
lbl_8052D648 = .data:0x8052D648; // type:object size:0xF data:string
|
||||
lbl_8052D658 = .data:0x8052D658; // type:object size:0x14 data:string
|
||||
lbl_8052D66C = .data:0x8052D66C; // type:object size:0x14
|
||||
lbl_8052D680 = .data:0x8052D680; // type:object size:0x10
|
||||
lbl_8052D690 = .data:0x8052D690; // type:object size:0x14
|
||||
lbl_8052D6A4 = .data:0x8052D6A4; // type:object size:0x10
|
||||
lbl_8052D6B4 = .data:0x8052D6B4; // type:object size:0x14
|
||||
lbl_8052D6C8 = .data:0x8052D6C8; // type:object size:0x10
|
||||
lbl_8052D6D8 = .data:0x8052D6D8; // type:object size:0x10
|
||||
lbl_8052D6E8 = .data:0x8052D6E8; // type:object size:0x10
|
||||
lbl_8052D66C = .data:0x8052D66C; // type:object size:0x11 data:string
|
||||
lbl_8052D680 = .data:0x8052D680; // type:object size:0xF data:string
|
||||
lbl_8052D690 = .data:0x8052D690; // type:object size:0x11 data:string
|
||||
lbl_8052D6A4 = .data:0x8052D6A4; // type:object size:0xF data:string
|
||||
lbl_8052D6B4 = .data:0x8052D6B4; // type:object size:0x12 data:string
|
||||
lbl_8052D6C8 = .data:0x8052D6C8; // type:object size:0xF data:string
|
||||
lbl_8052D6D8 = .data:0x8052D6D8; // type:object size:0xF data:string
|
||||
lbl_8052D6E8 = .data:0x8052D6E8; // type:object size:0xF data:string
|
||||
lbl_8052D6F8 = .data:0x8052D6F8; // type:object size:0xC data:string
|
||||
lbl_8052D704 = .data:0x8052D704; // type:object size:0x10
|
||||
lbl_8052D714 = .data:0x8052D714; // type:object size:0x10
|
||||
lbl_8052D724 = .data:0x8052D724; // type:object size:0x14
|
||||
lbl_8052D704 = .data:0x8052D704; // type:object size:0xF data:string
|
||||
lbl_8052D714 = .data:0x8052D714; // type:object size:0xE data:string
|
||||
lbl_8052D724 = .data:0x8052D724; // type:object size:0xE data:string
|
||||
lbl_8052D738 = .data:0x8052D738; // type:object size:0x10 data:string
|
||||
lbl_8052D748 = .data:0x8052D748; // type:object size:0x14
|
||||
lbl_8052D75C = .data:0x8052D75C; // type:object size:0x14
|
||||
lbl_8052D770 = .data:0x8052D770; // type:object size:0x14
|
||||
lbl_8052D784 = .data:0x8052D784; // type:object size:0x14
|
||||
lbl_8052D798 = .data:0x8052D798; // type:object size:0x18
|
||||
lbl_8052D7B0 = .data:0x8052D7B0; // type:object size:0x14
|
||||
lbl_8052D7C4 = .data:0x8052D7C4; // type:object size:0x10
|
||||
lbl_8052D7D4 = .data:0x8052D7D4; // type:object size:0x14
|
||||
lbl_8052D748 = .data:0x8052D748; // type:object size:0x12 data:string
|
||||
lbl_8052D75C = .data:0x8052D75C; // type:object size:0x12 data:string
|
||||
lbl_8052D770 = .data:0x8052D770; // type:object size:0x12 data:string
|
||||
lbl_8052D784 = .data:0x8052D784; // type:object size:0x12 data:string
|
||||
lbl_8052D798 = .data:0x8052D798; // type:object size:0x15 data:string
|
||||
lbl_8052D7B0 = .data:0x8052D7B0; // type:object size:0x11 data:string
|
||||
lbl_8052D7C4 = .data:0x8052D7C4; // type:object size:0xE data:string
|
||||
lbl_8052D7D4 = .data:0x8052D7D4; // type:object size:0x12 data:string
|
||||
lbl_8052D7E8 = .data:0x8052D7E8; // type:object size:0x14 data:string
|
||||
lbl_8052D7FC = .data:0x8052D7FC; // type:object size:0x14
|
||||
lbl_8052D7FC = .data:0x8052D7FC; // type:object size:0x11 data:string
|
||||
lbl_8052D810 = .data:0x8052D810; // type:object size:0x14 data:string
|
||||
lbl_8052D824 = .data:0x8052D824; // type:object size:0x14 data:string
|
||||
lbl_8052D838 = .data:0x8052D838; // type:object size:0x14 data:string
|
||||
lbl_8052D84C = .data:0x8052D84C; // type:object size:0x18
|
||||
lbl_8052D864 = .data:0x8052D864; // type:object size:0x14
|
||||
lbl_8052D878 = .data:0x8052D878; // type:object size:0x10
|
||||
lbl_8052D84C = .data:0x8052D84C; // type:object size:0x17 data:string
|
||||
lbl_8052D864 = .data:0x8052D864; // type:object size:0x11 data:string
|
||||
lbl_8052D878 = .data:0x8052D878; // type:object size:0xE data:string
|
||||
lbl_8052D888 = .data:0x8052D888; // type:object size:0x10 data:string
|
||||
lbl_8052D898 = .data:0x8052D898; // type:object size:0x14
|
||||
lbl_8052D8AC = .data:0x8052D8AC; // type:object size:0x14
|
||||
lbl_8052D8C0 = .data:0x8052D8C0; // type:object size:0x14
|
||||
lbl_8052D8D4 = .data:0x8052D8D4; // type:object size:0x14
|
||||
lbl_8052D8E8 = .data:0x8052D8E8; // type:object size:0x18
|
||||
lbl_8052D900 = .data:0x8052D900; // type:object size:0x18
|
||||
lbl_8052D918 = .data:0x8052D918; // type:object size:0x18
|
||||
lbl_8052D930 = .data:0x8052D930; // type:object size:0x18
|
||||
lbl_8052D898 = .data:0x8052D898; // type:object size:0x12 data:string
|
||||
lbl_8052D8AC = .data:0x8052D8AC; // type:object size:0x12 data:string
|
||||
lbl_8052D8C0 = .data:0x8052D8C0; // type:object size:0x12 data:string
|
||||
lbl_8052D8D4 = .data:0x8052D8D4; // type:object size:0x12 data:string
|
||||
lbl_8052D8E8 = .data:0x8052D8E8; // type:object size:0x17 data:string
|
||||
lbl_8052D900 = .data:0x8052D900; // type:object size:0x15 data:string
|
||||
lbl_8052D918 = .data:0x8052D918; // type:object size:0x15 data:string
|
||||
lbl_8052D930 = .data:0x8052D930; // type:object size:0x11 data:string
|
||||
lbl_8052D948 = .data:0x8052D948; // type:object size:0x18 data:string
|
||||
lbl_8052D960 = .data:0x8052D960; // type:object size:0x10
|
||||
lbl_8052D970 = .data:0x8052D970; // type:object size:0x18
|
||||
lbl_8052D988 = .data:0x8052D988; // type:object size:0x10
|
||||
lbl_8052D998 = .data:0x8052D998; // type:object size:0x1C
|
||||
lbl_8052D9B4 = .data:0x8052D9B4; // type:object size:0x10
|
||||
lbl_8052D9C4 = .data:0x8052D9C4; // type:object size:0x14
|
||||
lbl_8052D9D8 = .data:0x8052D9D8; // type:object size:0x10
|
||||
lbl_8052D9E8 = .data:0x8052D9E8; // type:object size:0x140
|
||||
lbl_8052D960 = .data:0x8052D960; // type:object size:0xE data:string
|
||||
lbl_8052D970 = .data:0x8052D970; // type:object size:0x15 data:string
|
||||
lbl_8052D988 = .data:0x8052D988; // type:object size:0xE data:string
|
||||
lbl_8052D998 = .data:0x8052D998; // type:object size:0x19 data:string
|
||||
lbl_8052D9B4 = .data:0x8052D9B4; // type:object size:0xF data:string
|
||||
lbl_8052D9C4 = .data:0x8052D9C4; // type:object size:0x11 data:string
|
||||
lbl_8052D9D8 = .data:0x8052D9D8; // type:object size:0xE data:string
|
||||
sMsbfFileNames = .data:0x8052D9E8; // type:object size:0x140
|
||||
lbl_8052DB28 = .data:0x8052DB28; // type:object size:0x1C
|
||||
lbl_8052DB44 = .data:0x8052DB44; // type:object size:0x1C
|
||||
lbl_8052DB60 = .data:0x8052DB60; // type:object size:0x1C
|
||||
@@ -34178,7 +34178,7 @@ lbl_8052DE34 = .data:0x8052DE34; // type:object size:0xC
|
||||
lbl_8052DE40 = .data:0x8052DE40; // type:object size:0x10
|
||||
EVENT_FLOW_FILENAMES = .data:0x8052DE50; // type:object size:0x18
|
||||
lbl_8052DE68 = .data:0x8052DE68; // type:object size:0x10
|
||||
GlobalMessageRelatedContext__vtable = .data:0x8052DE78; // type:object size:0x4C
|
||||
__vt__10dMessage_c = .data:0x8052DE78; // type:object size:0x4C
|
||||
ActorEventFlowManager__vtable = .data:0x8052DEC4; // type:object size:0x78
|
||||
g_profile_STAGE = .data:0x8052DF40; // type:object size:0xC
|
||||
sCallbacks__8dStage_c = .data:0x8052DF4C; // type:object size:0x24
|
||||
@@ -40228,8 +40228,8 @@ lbl_80575730 = .sbss:0x80575730; // type:object size:0x2 data:2byte
|
||||
lbl_80575734 = .sbss:0x80575734; // type:object size:0x4 data:float
|
||||
lbl_80575738 = .sbss:0x80575738; // type:object size:0x2 data:2byte
|
||||
lbl_8057573C = .sbss:0x8057573C; // type:object size:0x4 data:float
|
||||
GLOBAL_MESSAGE_RELATED_CONTEXT = .sbss:0x80575740; // type:object size:0x4 data:4byte
|
||||
GLOBAL_TEXT_MANAGER = .sbss:0x80575744; // type:object size:0x4 data:4byte
|
||||
sInstance__10dMessage_c = .sbss:0x80575740; // type:object size:0x4 data:4byte
|
||||
sTagProcessor__10dMessage_c = .sbss:0x80575744; // type:object size:0x4 data:4byte
|
||||
lbl_80575748 = .sbss:0x80575748; // type:object size:0x1 data:byte
|
||||
lbl_80575749 = .sbss:0x80575749; // type:object size:0x7 data:byte
|
||||
CURRENT_LANGUAGE_STRING = .sbss:0x80575750; // type:object size:0x8 data:byte
|
||||
|
||||
@@ -436,6 +436,7 @@ config.libs = [
|
||||
Object(NonMatching, "d/a/d_a_insect.cpp"),
|
||||
Object(NonMatching, "d/d_stage_mgr.cpp"),
|
||||
Object(NonMatching, "d/d_last.cpp"),
|
||||
Object(NonMatching, "d/d_message.cpp"),
|
||||
Object(NonMatching, "d/d_stage.cpp"),
|
||||
Object(Matching, "d/d_room.cpp"),
|
||||
Object(NonMatching, "d/d_cs_base.cpp"),
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
#ifndef D_MESSAGE_H
|
||||
#define D_MESSAGE_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/d_base.h"
|
||||
#include "d/d_tag_processor.h"
|
||||
#include "libms/flowfile.h"
|
||||
#include "sized_string.h"
|
||||
|
||||
class dMessage_c : public dBase_c {
|
||||
public:
|
||||
dMessage_c();
|
||||
virtual ~dMessage_c() {
|
||||
sInstance = nullptr;
|
||||
}
|
||||
|
||||
int create() override;
|
||||
int doDelete() override;
|
||||
int execute() override;
|
||||
int draw() override;
|
||||
|
||||
static const char *getLanguageIdentifier();
|
||||
|
||||
static dMessage_c *getInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
static dTagProcessor_c *getGlobalTagProcessor() {
|
||||
return sTagProcessor;
|
||||
}
|
||||
|
||||
void reset();
|
||||
|
||||
private:
|
||||
static s32 getArcIndexForFile(const char *fileName);
|
||||
static const char *getArcNameByIndex(s32 idx, bool);
|
||||
|
||||
static void setZevFromMsbArc();
|
||||
static const char *getMsbtFileName(s32 index);
|
||||
static s32 getMsbtNumberByIndex(s32 index);
|
||||
static const char *getMsbfFileName(s32 index);
|
||||
static s32 getMsbfNumberByIndex(s32 index);
|
||||
static void *getDataFromMsbArc(s32 number, const char *fileName, bool);
|
||||
|
||||
static dMessage_c *sInstance;
|
||||
static dTagProcessor_c *sTagProcessor;
|
||||
|
||||
/* 0x068 */ MsbtInfo *mpMsgs[82];
|
||||
/* 0x1B0 */ MsbfInfo *mpFlows[80];
|
||||
/* 0x2F0 */ SizedString<8> mLanguage;
|
||||
/* 0x2F8 */ s32 mCurrentTextFileNumber;
|
||||
|
||||
/* 0x2FC */ s32 field_0x2FC;
|
||||
|
||||
/* 0x334 */ u32 mMinigameResultPoints;
|
||||
/* 0x338 */ u32 mMinigameTime;
|
||||
/* 0x344 */ s32 field_0x344;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -109,6 +109,10 @@ public:
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
static UnkTextThing *getInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
private:
|
||||
static UnkTextThing *sInstance;
|
||||
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
#ifndef D_TEXTWINDOW_UNK_H
|
||||
#define D_TEXTWINDOW_UNK_H
|
||||
|
||||
#include "d/d_tag_processor.h"
|
||||
|
||||
// Size 0x1554
|
||||
class TextWindowUnk {
|
||||
public:
|
||||
TextWindowUnk(dTagProcessor_c *tagProcessor);
|
||||
virtual ~TextWindowUnk() {}
|
||||
|
||||
private:
|
||||
/* 0x0004 */ dTagProcessor_c *mpTagProcessor;
|
||||
/* 0x0008 */ wchar_t mRawTextBuffer[1023];
|
||||
/* 0x0806 */ wchar_t mProcessedTextBuffer[1023];
|
||||
/* 0x1004 */ wchar_t mUnkBuffer[679]; // ???
|
||||
/* 0x1550 */ void* field_0x1559;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,111 @@
|
||||
#ifndef D_LYT_MSG_WINDOW_H
|
||||
#define D_LYT_MSG_WINDOW_H
|
||||
|
||||
#include "d/d_tag_processor.h"
|
||||
#include "d/d_textwindow_unk.h"
|
||||
#include "d/lyt/d2d.h"
|
||||
#include "d/lyt/d_lyt_auto_caption.h"
|
||||
#include "d/lyt/d_lyt_auto_explain.h"
|
||||
#include "d/lyt/msg_window/d_lyt_msg_window_common.h"
|
||||
#include "d/lyt/msg_window/d_lyt_msg_window_select_btn.h"
|
||||
#include "d/lyt/msg_window/d_lyt_msg_window_stone.h"
|
||||
#include "d/lyt/msg_window/d_lyt_msg_window_wood.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "sized_string.h"
|
||||
|
||||
class dLytMsgWindow_c {
|
||||
public:
|
||||
dLytMsgWindow_c() : mStateMgr(*this) {}
|
||||
virtual ~dLytMsgWindow_c() {}
|
||||
|
||||
bool build();
|
||||
bool remove();
|
||||
|
||||
private:
|
||||
|
||||
void removeAllWindowSubtypes();
|
||||
|
||||
static dLytMsgWindow_c *sInstance;
|
||||
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, Invisible);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, In);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, OutputText);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyChangePage0);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyChangePage1);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyMsgEnd0);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyMsgEnd1);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyMsgEnd2);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeySelectQuestion);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, MapOpen);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, WaitKeyMapClose);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, MapClose);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, Out);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, ExplainIn);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, ExplainVisible);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, ExplainOut);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, DemoIn);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, DemoVisible);
|
||||
STATE_FUNC_DECLARE(dLytMsgWindow_c, DemoOut);
|
||||
|
||||
|
||||
/* 0x004 */ UI_STATE_MGR_DECLARE(dLytMsgWindow_c);
|
||||
/* 0x040 */ d2d::ResAccIf_c mResAcc1;
|
||||
/* 0x3B0 */ d2d::ResAccIf_c mResAcc2;
|
||||
|
||||
/* 0x720 */ TextWindowUnk *mpMsgWindowUnk;
|
||||
/* 0x724 */ dTagProcessor_c *mpTagProcessor;
|
||||
|
||||
/* 0x728 */ dLytMsgWindowSubtype *mpCurrentSubtype;
|
||||
/* 0x72C */ dLytMsgWindowSubtype *mpWindowTalk;
|
||||
/* 0x730 */ dLytMsgWindowSubtype *mpWindowLink;
|
||||
/* 0x734 */ dLytMsgWindowSubtype *mpWindowSword;
|
||||
/* 0x738 */ dLytMsgWindowWood_c *mpWindowWood;
|
||||
/* 0x73C */ dLytMsgWindowStone_c *mpWindowStone;
|
||||
/* 0x740 */ dLytMsgWindowSubtype *mpWindowGet;
|
||||
/* 0x744 */ dLytMsgWindowSubtype *mpWindowDemo;
|
||||
/* 0x748 */ dLytAutoExplain_c *mpAutoExplain;
|
||||
/* 0x74C */ dLytAutoCaption_c *mpAutoCaption;
|
||||
|
||||
/* 0x774 */ s32 field_0x774;
|
||||
/* 0x778 */ s32 field_0x778;
|
||||
/* 0x77C */ s32 field_0x77C;
|
||||
/* 0x780 */ s32 field_0x780;
|
||||
/* 0x784 */ s32 field_0x784;
|
||||
|
||||
/* 0x788 */ u16 mEntryPointToTrigger;
|
||||
/* 0x78A */ u16 mAlsoEntryPointToTrigger;
|
||||
|
||||
/* 0x78C */ SizedString<0x40> mName;
|
||||
|
||||
/* 0x80C */ u8 field_0x80C;
|
||||
/* 0x80D */ u8 field_0x80D;
|
||||
/* 0x80E */ u8 field_0x80E;
|
||||
/* 0x80F */ u8 mShowAutoMessage;
|
||||
/* 0x810 */ u8 field_0x810;
|
||||
/* 0x811 */ u8 field_0x811;
|
||||
/* 0x812 */ u8 field_0x812;
|
||||
/* 0x813 */ u8 field_0x813;
|
||||
/* 0x814 */ u8 field_0x814;
|
||||
/* 0x815 */ u8 field_0x815;
|
||||
/* 0x816 */ u8 field_0x816;
|
||||
/* 0x817 */ u8 field_0x817;
|
||||
/* 0x818 */ u8 field_0x818;
|
||||
/* 0x819 */ u8 field_0x819;
|
||||
/* 0x81A */ u8 field_0x81A;
|
||||
/* 0x81B */ u8 field_0x81B;
|
||||
/* 0x81C */ u8 field_0x81C;
|
||||
/* 0x81D */ u8 field_0x81D;
|
||||
/* 0x81E */ u8 field_0x81E;
|
||||
|
||||
/* 0x820 */ u16 field_0x820;
|
||||
/* 0x824 */ void *field_0x824;
|
||||
/* 0x828 */ s32 field_0x828;
|
||||
|
||||
/* 0x82C */ u32 mTextOptionSelection;
|
||||
/* 0x830 */ u32 mSpecialFiMenuValue;
|
||||
|
||||
/* 0x834 */ dLytMsgWindowSelectBtn_c mSelectBtn;
|
||||
/* 0x1220 */ u8 field_0x1220;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -8,6 +8,10 @@
|
||||
// Note: Ported from https://github.com/NSMBW-Community/NSMBW-Decomp/tree/master/include/dol/sLib
|
||||
// See include/s/README.txt for changes made
|
||||
|
||||
// Handy search and replace regex to generate functions based on define macros
|
||||
// STATE_DEFINE\(([A-Za-z_0-9]+), ([A-Za-z_0-9]+)\);
|
||||
// void $1::initializeState_$2() {}\nvoid $1::executeState_$2() {}\nvoid $1::finalizeState_$2() {}\n
|
||||
|
||||
#define STATE_FUNC_DECLARE(class, name) \
|
||||
void initializeState_##name(); \
|
||||
void executeState_##name(); \
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef GLOBAL_FI_CONTEXT_H
|
||||
#define GLOBAL_FI_CONTEXT_H
|
||||
|
||||
extern "C" void *GLOBAL_FI_CONTEXT;
|
||||
extern "C" void fn_8016C9F0(void*);
|
||||
extern "C" void createGlobalFiContext();
|
||||
|
||||
#endif
|
||||
@@ -25,6 +25,8 @@ char *strcpy(char *dst, const char *src);
|
||||
int sscanf(const char *buffer, const char *format, ...);
|
||||
size_t strlen(const char *str);
|
||||
|
||||
int atoi(const char *str);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "d/d_dylink.h"
|
||||
#include "d/d_font_manager.h"
|
||||
#include "d/d_heap.h"
|
||||
#include "d/d_message.h"
|
||||
#include "d/d_scene.h"
|
||||
#include "d/d_sys.h"
|
||||
#include "d/lyt/d_lyt_battery.h"
|
||||
@@ -42,7 +43,6 @@ sFPhaseBase::sFPhaseState dScBoot_c::executeLoadPhase() {
|
||||
|
||||
extern "C" u8 getUsedLanguageNTSCNum();
|
||||
extern "C" const char *getEventFlowFileNameByIndex(int, int);
|
||||
extern "C" const char *getUsedLanguageString();
|
||||
extern "C" u8 fn_80054F30();
|
||||
extern "C" nw4r::ut::ResFont *lbl_805750D8;
|
||||
|
||||
@@ -54,7 +54,7 @@ sFPhaseBase::sFPhaseState dScBoot_c::cb1() {
|
||||
|
||||
for (int i = 0; i < 6; i++) {
|
||||
SizedString<128> str;
|
||||
str.sprintf("%s/%s", getUsedLanguageString(), getEventFlowFileNameByIndex(i, 1));
|
||||
str.sprintf("%s/%s", dMessage_c::getLanguageIdentifier(), getEventFlowFileNameByIndex(i, 1));
|
||||
OarcManager::GetInstance()->loadObjectArcFromDisk(str, mHeap::g_archiveHeap);
|
||||
}
|
||||
OarcManager::GetInstance()->loadObjectArcFromDisk("System", mHeap::g_archiveHeap);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include "d/d_font_manager.h"
|
||||
|
||||
#include "d/d_heap.h"
|
||||
#include "d/d_message.h"
|
||||
#include "sized_string.h"
|
||||
|
||||
|
||||
@@ -48,14 +49,12 @@ void dFontMng_c::setFontFile(int idx, void *fileData) {
|
||||
l_dFontMng_obj[idx].mpFileData = fileData;
|
||||
}
|
||||
|
||||
extern "C" const char *getUsedLanguageString();
|
||||
|
||||
const char *dFontMng_c::getFontPath(u8 idx) {
|
||||
static SizedString<128> TEMP_FONT_NAME;
|
||||
if (idx == 2) {
|
||||
TEMP_FONT_NAME.sprintf("/Font/%s", systemFonts[idx]);
|
||||
} else {
|
||||
TEMP_FONT_NAME.sprintf("/US/Font/%s/%s", getUsedLanguageString(), systemFonts[idx]);
|
||||
TEMP_FONT_NAME.sprintf("/US/Font/%s/%s", dMessage_c::getLanguageIdentifier(), systemFonts[idx]);
|
||||
}
|
||||
return TEMP_FONT_NAME;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,304 @@
|
||||
#include "d/d_message.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "d/d_tag_processor.h"
|
||||
#include "d/d_textunk.h"
|
||||
#include "f/f_base.h"
|
||||
#include "f/f_profile.h"
|
||||
#include "f/f_profile_name.h"
|
||||
#include "libms/libms.h"
|
||||
#include "libms/msgfile.h"
|
||||
#include "sized_string.h"
|
||||
#include "toBeSorted/global_fi_context.h"
|
||||
|
||||
SPECIAL_BASE_PROFILE(MESSAGE, dMessage_c, fProfile::MESSAGE, 0x2A8, 0);
|
||||
|
||||
static const char *sMsbtFileNames[82] = {
|
||||
"000-Test.msbt",
|
||||
"001-Action.msbt",
|
||||
"002-System.msbt",
|
||||
"003-ItemGet.msbt",
|
||||
"004-Object.msbt",
|
||||
"005-Tutorial.msbt",
|
||||
"006-KenseiNormal.msbt",
|
||||
"006-1KenseiNormal.msbt",
|
||||
"006-2KenseiNormal.msbt",
|
||||
"006-3KenseiNormal.msbt",
|
||||
"006-4KenseiNormal.msbt",
|
||||
"006-5KenseiNormal.msbt",
|
||||
"006-6KenseiNormal.msbt",
|
||||
"006-7KenseiNormal.msbt",
|
||||
"006-8KenseiNormal.msbt",
|
||||
"006-9KenseiNormal.msbt",
|
||||
"007-MapText.msbt",
|
||||
"008-Hint.msbt",
|
||||
"word.msbt",
|
||||
"100-Town.msbt",
|
||||
"101-Shop.msbt",
|
||||
"102-Zelda.msbt",
|
||||
"103-DaiShinkan.msbt",
|
||||
"104-Rival.msbt",
|
||||
"105-Terry.msbt",
|
||||
"106-DrugStore.msbt",
|
||||
"107-Kanban.msbt",
|
||||
"108-ShinkanA.msbt",
|
||||
"109-TakeGoron.msbt",
|
||||
"110-DivingGame.msbt",
|
||||
"111-FortuneTeller.msbt",
|
||||
"112-Trustee.msbt",
|
||||
"113-RemodelStore.msbt",
|
||||
"114-Friend.msbt",
|
||||
"115-Town2.msbt",
|
||||
"116-InsectGame.msbt",
|
||||
"117-Pumpkin.msbt",
|
||||
"118-Town3.msbt",
|
||||
"119-Captain.msbt",
|
||||
"120-Nushi.msbt",
|
||||
"121-AkumaKun.msbt",
|
||||
"122-Town4.msbt",
|
||||
"123-Town5.msbt",
|
||||
"124-Town6.msbt",
|
||||
"125-D3.msbt",
|
||||
"150-Siren.msbt",
|
||||
"198-Test.msbt",
|
||||
"199-Demo.msbt",
|
||||
"200-Forest.msbt",
|
||||
"201-ForestD1.msbt",
|
||||
"202-ForestD2.msbt",
|
||||
"203-ForestF2.msbt",
|
||||
"204-ForestF3.msbt",
|
||||
"250-ForestSiren.msbt",
|
||||
"251-Salvage.msbt",
|
||||
"299-Demo.msbt",
|
||||
"300-Mountain.msbt",
|
||||
"301-MountainD1.msbt",
|
||||
"302-Anahori.msbt",
|
||||
"303-MountainF2.msbt",
|
||||
"304-MountainD2.msbt",
|
||||
"305-MountainF3.msbt",
|
||||
"350-MountainSiren.msbt",
|
||||
"351-Salvage.msbt",
|
||||
"399-Demo.msbt",
|
||||
"400-Desert.msbt",
|
||||
"401-DesertD2.msbt",
|
||||
"402-DesertF2.msbt",
|
||||
"403-DesertD1.msbt",
|
||||
"404-DesertF3.msbt",
|
||||
"405-DesertD2Clear.msbt",
|
||||
"406-TrolleyRace.msbt",
|
||||
"450-DesertSiren.msbt",
|
||||
"451-Salvage.msbt",
|
||||
"460-RairyuMinigame.msbt",
|
||||
"499-Demo.msbt",
|
||||
"500-CenterField.msbt",
|
||||
"501-Inpa.msbt",
|
||||
"502-CenterFieldBack.msbt",
|
||||
"503-Goron.msbt",
|
||||
"510-Salvage.msbt",
|
||||
"599-Demo.msbt",
|
||||
};
|
||||
|
||||
static char *sMsbfFileNames[80] = {
|
||||
"000-Test.msbf",
|
||||
"001-Action.msbf",
|
||||
"002-System.msbf",
|
||||
"003-ItemGet.msbf",
|
||||
"004-Object.msbf",
|
||||
"005-Tutorial.msbf",
|
||||
"006-KenseiNormal.msbf",
|
||||
"006-1KenseiNormal.msbf",
|
||||
"006-2KenseiNormal.msbf",
|
||||
"006-3KenseiNormal.msbf",
|
||||
"006-4KenseiNormal.msbf",
|
||||
"006-5KenseiNormal.msbf",
|
||||
"006-6KenseiNormal.msbf",
|
||||
"006-7KenseiNormal.msbf",
|
||||
"006-8KenseiNormal.msbf",
|
||||
"006-9KenseiNormal.msbf",
|
||||
"008-Hint.msbf",
|
||||
"100-Town.msbf",
|
||||
"101-Shop.msbf",
|
||||
"102-Zelda.msbf",
|
||||
"103-DaiShinkan.msbf",
|
||||
"104-Rival.msbf",
|
||||
"105-Terry.msbf",
|
||||
"106-DrugStore.msbf",
|
||||
"107-Kanban.msbf",
|
||||
"108-ShinkanA.msbf",
|
||||
"109-TakeGoron.msbf",
|
||||
"110-DivingGame.msbf",
|
||||
"111-FortuneTeller.msbf",
|
||||
"112-Trustee.msbf",
|
||||
"113-RemodelStore.msbf",
|
||||
"114-Friend.msbf",
|
||||
"115-Town2.msbf",
|
||||
"116-InsectGame.msbf",
|
||||
"117-Pumpkin.msbf",
|
||||
"118-Town3.msbf",
|
||||
"119-Captain.msbf",
|
||||
"120-Nushi.msbf",
|
||||
"121-AkumaKun.msbf",
|
||||
"122-Town4.msbf",
|
||||
"123-Town5.msbf",
|
||||
"124-Town6.msbf",
|
||||
"125-D3.msbf",
|
||||
"150-Siren.msbf",
|
||||
"198-Test.msbf",
|
||||
"199-Demo.msbf",
|
||||
"200-Forest.msbf",
|
||||
"201-ForestD1.msbf",
|
||||
"202-ForestD2.msbf",
|
||||
"203-ForestF2.msbf",
|
||||
"204-ForestF3.msbf",
|
||||
"250-ForestSiren.msbf",
|
||||
"251-Salvage.msbf",
|
||||
"299-Demo.msbf",
|
||||
"300-Mountain.msbf",
|
||||
"301-MountainD1.msbf",
|
||||
"302-Anahori.msbf",
|
||||
"303-MountainF2.msbf",
|
||||
"304-MountainD2.msbf",
|
||||
"305-MountainF3.msbf",
|
||||
"350-MountainSiren.msbf",
|
||||
"351-Salvage.msbf",
|
||||
"399-Demo.msbf",
|
||||
"400-Desert.msbf",
|
||||
"401-DesertD2.msbf",
|
||||
"402-DesertF2.msbf",
|
||||
"403-DesertD1.msbf",
|
||||
"404-DesertF3.msbf",
|
||||
"405-DesertD2Clear.msbf",
|
||||
"406-TrolleyRace.msbf",
|
||||
"450-DesertSiren.msbf",
|
||||
"451-Salvage.msbf",
|
||||
"460-RairyuMinigame.msbf",
|
||||
"499-Demo.msbf",
|
||||
"500-CenterField.msbf",
|
||||
"501-Inpa.msbf",
|
||||
"502-CenterFieldBack.msbf",
|
||||
"503-Goron.msbf",
|
||||
"510-Salvage.msbf",
|
||||
"599-Demo.msbf",
|
||||
};
|
||||
|
||||
static void *msbAlloc(size_t size) {}
|
||||
|
||||
static void msbFree(void *ptr) {}
|
||||
|
||||
dMessage_c::dMessage_c() {
|
||||
sInstance = this;
|
||||
}
|
||||
|
||||
int dMessage_c::create() {
|
||||
mLanguage = getLanguageIdentifier();
|
||||
|
||||
mCurrentTextFileNumber = -1;
|
||||
field_0x2FC = 0;
|
||||
field_0x344 = 0;
|
||||
LMS_SetMemFuncs(msbAlloc, msbFree);
|
||||
setZevFromMsbArc();
|
||||
|
||||
for (s32 i = 0; i < 82; i++) {
|
||||
SizedString<0x40> fileName = getMsbtFileName(i);
|
||||
s32 num = getMsbtNumberByIndex(i);
|
||||
void *data = getDataFromMsbArc(num, fileName, true);
|
||||
if (data == nullptr) {
|
||||
mpMsgs[i] = nullptr;
|
||||
} else {
|
||||
mpMsgs[i] = LMS_InitMessage(data);
|
||||
}
|
||||
}
|
||||
|
||||
for (s32 i = 0; i < 80; i++) {
|
||||
SizedString<0x40> fileName = getMsbfFileName(i);
|
||||
s32 num = getMsbfNumberByIndex(i);
|
||||
void *data = getDataFromMsbArc(num, fileName, true);
|
||||
if (data == nullptr) {
|
||||
mpFlows[i] = nullptr;
|
||||
} else {
|
||||
mpFlows[i] = LMS_InitFlow(data);
|
||||
}
|
||||
}
|
||||
|
||||
sTagProcessor = new dTagProcessor_c();
|
||||
createGlobalFiContext();
|
||||
reset();
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dMessage_c::doDelete() {
|
||||
UnkTextThing::getInstance()->destroy();
|
||||
if (sTagProcessor != nullptr) {
|
||||
delete sTagProcessor;
|
||||
sTagProcessor = nullptr;
|
||||
}
|
||||
|
||||
for (int i = 0; i < 82; i++) {
|
||||
if (mpMsgs[i] != nullptr) {
|
||||
LMS_CloseMessage(mpMsgs[i]);
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < 80; i++) {
|
||||
if (mpFlows[i] != nullptr) {
|
||||
LMS_CloseFlow(mpFlows[i]);
|
||||
}
|
||||
}
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dMessage_c::execute() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dMessage_c::draw() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
const char *dMessage_c::getMsbtFileName(s32 idx) {
|
||||
static SizedString<128> sPath;
|
||||
|
||||
s32 arcIdx = getArcIndexForFile(sMsbtFileNames[idx]);
|
||||
const char *arcName = getArcNameByIndex(arcIdx, true);
|
||||
sPath.sprintf("%s/%s", arcName, sMsbtFileNames[idx]);
|
||||
return sPath;
|
||||
}
|
||||
|
||||
const char *dMessage_c::getMsbfFileName(s32 idx) {
|
||||
static SizedString<128> sPath;
|
||||
|
||||
s32 arcIdx = getArcIndexForFile(sMsbfFileNames[idx]);
|
||||
const char *arcName = getArcNameByIndex(arcIdx, true);
|
||||
sPath.sprintf("%s/%s", arcName, sMsbfFileNames[idx]);
|
||||
return sPath;
|
||||
}
|
||||
|
||||
s32 dMessage_c::getMsbtNumberByIndex(s32 index) {
|
||||
return atoi(getMsbtFileName(index));
|
||||
}
|
||||
|
||||
s32 dMessage_c::getMsbfNumberByIndex(s32 index) {
|
||||
return atoi(getMsbfFileName(index));
|
||||
}
|
||||
|
||||
extern "C" u8 fn_80054F30();
|
||||
|
||||
static SizedString<8> sCurrentLanguage;
|
||||
const char *dMessage_c::getLanguageIdentifier() {
|
||||
u8 lang = fn_80054F30();
|
||||
if (lang == 3) {
|
||||
sCurrentLanguage = "fr_US";
|
||||
} else if (lang == 4) {
|
||||
sCurrentLanguage = "es_US";
|
||||
} else {
|
||||
sCurrentLanguage = "en_US";
|
||||
}
|
||||
return sCurrentLanguage;
|
||||
}
|
||||
|
||||
s32 dMessage_c::getArcIndexForFile(const char *fileName) {
|
||||
char buf[2];
|
||||
buf[0] = fileName[0];
|
||||
buf[1] = '\0';
|
||||
return atoi(buf);
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "common.h"
|
||||
#include "d/d_heap.h"
|
||||
#include "d/d_message.h"
|
||||
#include "d/d_sc_game.h"
|
||||
#include "d/d_sys.h"
|
||||
#include "f/f_base.h"
|
||||
@@ -67,7 +68,6 @@ extern "C" u32 TITLE_SCREEN_CHANGE;
|
||||
extern "C" void fn_80059450();
|
||||
extern "C" void fn_80058C90(s32);
|
||||
extern "C" void fn_80015E40();
|
||||
extern "C" const char *getUsedLanguageString();
|
||||
|
||||
static const char *const sFileSelect = "FileSelect";
|
||||
static const char *const sSkb = "SoftwareKeyboard";
|
||||
@@ -98,7 +98,7 @@ int dScTitle_c::create() {
|
||||
LayoutArcManager::GetInstance()->loadLayoutArcFromDisk(sSkb, nullptr);
|
||||
mDvd_toMainRam_normal_c::create2(&mpSkbArc, "/SKB/sofkeybd.arc", 0, dHeap::work2Heap.heap);
|
||||
SizedString<128> fntPath;
|
||||
fntPath.sprintf("/US/Font/%s/%s", getUsedLanguageString(), "normal_02.brfnt");
|
||||
fntPath.sprintf("/US/Font/%s/%s", dMessage_c::getLanguageIdentifier(), "normal_02.brfnt");
|
||||
mDvd_toMainRam_normal_c::create2(&mpSkbFont, fntPath, 0, dHeap::work2Heap.heap);
|
||||
fn_8035E310(BGM_MGR);
|
||||
}
|
||||
|
||||
+3
-5
@@ -1,6 +1,7 @@
|
||||
#include "d/lyt/d2d.h"
|
||||
|
||||
#include "d/d_font_manager.h"
|
||||
#include "d/d_message.h"
|
||||
#include "d/d_textunk.h"
|
||||
#include "d/lyt/d_textbox.h"
|
||||
#include "d/lyt/d_window.h"
|
||||
@@ -278,9 +279,6 @@ LytBase_c::~LytBase_c() {
|
||||
}
|
||||
}
|
||||
|
||||
extern "C" const char *getUsedLanguageString();
|
||||
extern "C" nw4r::ut::TagProcessorBase<wchar_t> *GLOBAL_TEXT_MANAGER;
|
||||
|
||||
bool LytBase_c::build(const char *name, m2d::ResAccIf_c *acc) {
|
||||
if (mLayout.GetRootPane() != nullptr) {
|
||||
return true;
|
||||
@@ -332,7 +330,7 @@ bool LytBase_c::build(const char *name, m2d::ResAccIf_c *acc) {
|
||||
}
|
||||
|
||||
SizedString<0x80> localizedName;
|
||||
localizedName.sprintf("%s_%s", getUsedLanguageString(), fileName);
|
||||
localizedName.sprintf("%s_%s", dMessage_c::getLanguageIdentifier(), fileName);
|
||||
|
||||
void *data = acc->getAccessor()->GetResource(0, localizedName, nullptr);
|
||||
if (data == nullptr) {
|
||||
@@ -343,7 +341,7 @@ bool LytBase_c::build(const char *name, m2d::ResAccIf_c *acc) {
|
||||
|
||||
bool ok = mLayout.Build(resource, acc->getAccessor());
|
||||
if (ok) {
|
||||
mLayout.SetTagProcessor(GLOBAL_TEXT_MANAGER);
|
||||
mLayout.SetTagProcessor(dMessage_c::getGlobalTagProcessor());
|
||||
calc();
|
||||
setPropertiesRecursive(mLayout.GetRootPane(), -9999.0f, -9999.0f, -9999.0f, -9999.0f, -9999.0f);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "common.h"
|
||||
#include "d/d_font_manager.h"
|
||||
#include "d/d_message.h"
|
||||
#include "d/d_tag_processor.h"
|
||||
#include "d/d_textunk.h"
|
||||
#include "libms/msgfile.h"
|
||||
@@ -255,12 +256,10 @@ void dTextBox_c::setTextWithGlobalTextProcessor(const wchar_t *str, void *unk, .
|
||||
va_end(l);
|
||||
}
|
||||
|
||||
extern "C" dTagProcessor_c *GLOBAL_TEXT_MANAGER;
|
||||
|
||||
void dTextBox_c::setTextWithGlobalTextProcessorV(const wchar_t *str, void *unk, va_list list) {
|
||||
SetFontSize(mMyTextScale);
|
||||
mHasTextWriter = true;
|
||||
mpMyTagProcessor = GLOBAL_TEXT_MANAGER;
|
||||
mpMyTagProcessor = dMessage_c::getGlobalTagProcessor();
|
||||
u32 outLen = 0;
|
||||
mWindowSubtype = mpMyTagProcessor->getMsgWindowSubtype();
|
||||
mpMyTagProcessor->setField_0xEE1(field_0x1F6);
|
||||
@@ -326,7 +325,7 @@ void dTextBox_c::setMessageWithGlobalTextProcessorAndMsbtInfo(
|
||||
mHasTextWriter = true;
|
||||
field_0x1FA = 1;
|
||||
u32 outLen = 0;
|
||||
mpMyTagProcessor = GLOBAL_TEXT_MANAGER;
|
||||
mpMyTagProcessor = dMessage_c::getGlobalTagProcessor();
|
||||
mpMyTagProcessor->setMsgWindowSubtype(0x22);
|
||||
mWindowSubtype = mpMyTagProcessor->getMsgWindowSubtype();
|
||||
mpMyTagProcessor->setField_0xEE1(field_0x1F6);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// clang-format off
|
||||
#include "common.h"
|
||||
#include "d/d_message.h"
|
||||
#include "d/d_sc_game.h"
|
||||
#include "d/d_sc_title.h"
|
||||
#include "d/d_stage_mgr.h"
|
||||
@@ -285,8 +286,6 @@ dLytMeter_c::dLytMeter_c() {}
|
||||
|
||||
extern "C" void fn_800D97E0(int i);
|
||||
extern "C" void fn_800D9800(int i);
|
||||
extern "C" void fn_801B2D10(void *);
|
||||
extern "C" void *GLOBAL_MESSAGE_RELATED_CONTEXT;
|
||||
|
||||
static const d2d::LytBrlanMapping meterBrlanMap[] = {
|
||||
{ "basicPosition_00_in.brlan", "G_remoConBtn_00"},
|
||||
@@ -632,7 +631,7 @@ bool dLytMeterContainer_c::build() {
|
||||
|
||||
fn_800D97E0(0xb);
|
||||
fn_800D9800(1);
|
||||
fn_801B2D10(GLOBAL_MESSAGE_RELATED_CONTEXT);
|
||||
dMessage_c::getInstance()->reset();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,188 @@
|
||||
#include "d/lyt/msg_window/d_lyt_msg_window.h"
|
||||
#include "common.h"
|
||||
#include "d/d_tag_processor.h"
|
||||
#include "d/d_textwindow_unk.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "toBeSorted/arc_managers/layout_arc_manager.h"
|
||||
#include "toBeSorted/global_fi_context.h"
|
||||
|
||||
STATE_DEFINE(dLytMsgWindow_c, Invisible);
|
||||
STATE_DEFINE(dLytMsgWindow_c, In);
|
||||
STATE_DEFINE(dLytMsgWindow_c, OutputText);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyChangePage0);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyChangePage1);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyMsgEnd0);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyMsgEnd1);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyMsgEnd2);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeySelectQuestion);
|
||||
STATE_DEFINE(dLytMsgWindow_c, MapOpen);
|
||||
STATE_DEFINE(dLytMsgWindow_c, WaitKeyMapClose);
|
||||
STATE_DEFINE(dLytMsgWindow_c, MapClose);
|
||||
STATE_DEFINE(dLytMsgWindow_c, Out);
|
||||
STATE_DEFINE(dLytMsgWindow_c, ExplainIn);
|
||||
STATE_DEFINE(dLytMsgWindow_c, ExplainVisible);
|
||||
STATE_DEFINE(dLytMsgWindow_c, ExplainOut);
|
||||
STATE_DEFINE(dLytMsgWindow_c, DemoIn);
|
||||
STATE_DEFINE(dLytMsgWindow_c, DemoVisible);
|
||||
STATE_DEFINE(dLytMsgWindow_c, DemoOut);
|
||||
|
||||
bool dLytMsgWindow_c::build() {
|
||||
mResAcc1.attach(LayoutArcManager::GetInstance()->getLoadedData("DoButton"), "");
|
||||
mResAcc2.attach(LayoutArcManager::GetInstance()->getLoadedData("System2D"), "");
|
||||
mSelectBtn.build(&mResAcc2);
|
||||
|
||||
mpTagProcessor = new dTagProcessor_c();
|
||||
mpMsgWindowUnk = new TextWindowUnk(mpTagProcessor);
|
||||
|
||||
if (GLOBAL_FI_CONTEXT != nullptr) {
|
||||
fn_8016C9F0(GLOBAL_FI_CONTEXT);
|
||||
}
|
||||
|
||||
mpWindowTalk = nullptr;
|
||||
mpWindowLink = nullptr;
|
||||
mpWindowSword = nullptr;
|
||||
mpWindowWood = nullptr;
|
||||
mpWindowStone = nullptr;
|
||||
mpWindowGet = nullptr;
|
||||
mpWindowDemo = nullptr;
|
||||
mpAutoExplain = nullptr;
|
||||
mpAutoCaption = nullptr;
|
||||
mpCurrentSubtype = nullptr;
|
||||
|
||||
mTextOptionSelection = 0;
|
||||
mSpecialFiMenuValue = 7;
|
||||
|
||||
field_0x1220 = 0;
|
||||
|
||||
field_0x80C = 0;
|
||||
field_0x80D = 0;
|
||||
field_0x80E = 0;
|
||||
mShowAutoMessage = 0;
|
||||
field_0x810 = 0;
|
||||
|
||||
field_0x774 = 0;
|
||||
field_0x778 = 0;
|
||||
field_0x77C = 0;
|
||||
field_0x780 = 0;
|
||||
field_0x784 = -1;
|
||||
|
||||
mAlsoEntryPointToTrigger = 0xFFFF;
|
||||
mEntryPointToTrigger = 0xFFFF;
|
||||
|
||||
mName = "";
|
||||
|
||||
field_0x811 = 0;
|
||||
field_0x812 = 0;
|
||||
field_0x813 = 0;
|
||||
field_0x814 = 0;
|
||||
field_0x815 = 0;
|
||||
field_0x816 = 0;
|
||||
field_0x817 = 0;
|
||||
field_0x818 = 0;
|
||||
field_0x819 = 0;
|
||||
field_0x81B = 0;
|
||||
field_0x81A = 0;
|
||||
field_0x81C = 0;
|
||||
field_0x81D = 0;
|
||||
|
||||
field_0x824 = nullptr;
|
||||
field_0x820 = 0;
|
||||
|
||||
field_0x81E = 0;
|
||||
|
||||
field_0x828 = 0;
|
||||
|
||||
mStateMgr.changeState(StateID_Invisible);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool dLytMsgWindow_c::remove() {
|
||||
delete mpMsgWindowUnk;
|
||||
mpMsgWindowUnk = nullptr;
|
||||
delete mpTagProcessor;
|
||||
mpTagProcessor = nullptr;
|
||||
mSelectBtn.remove();
|
||||
removeAllWindowSubtypes();
|
||||
field_0x824 = 0;
|
||||
mResAcc1.detach();
|
||||
mResAcc2.detach();
|
||||
return true;
|
||||
}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_Invisible() {}
|
||||
void dLytMsgWindow_c::executeState_Invisible() {}
|
||||
void dLytMsgWindow_c::finalizeState_Invisible() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_In() {}
|
||||
void dLytMsgWindow_c::executeState_In() {}
|
||||
void dLytMsgWindow_c::finalizeState_In() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_OutputText() {}
|
||||
void dLytMsgWindow_c::executeState_OutputText() {}
|
||||
void dLytMsgWindow_c::finalizeState_OutputText() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyChangePage0() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyChangePage0() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyChangePage0() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyChangePage1() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyChangePage1() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyChangePage1() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyMsgEnd0() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyMsgEnd0() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyMsgEnd0() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyMsgEnd1() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyMsgEnd1() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyMsgEnd1() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyMsgEnd2() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyMsgEnd2() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyMsgEnd2() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeySelectQuestion() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeySelectQuestion() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeySelectQuestion() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_MapOpen() {}
|
||||
void dLytMsgWindow_c::executeState_MapOpen() {}
|
||||
void dLytMsgWindow_c::finalizeState_MapOpen() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_WaitKeyMapClose() {}
|
||||
void dLytMsgWindow_c::executeState_WaitKeyMapClose() {}
|
||||
void dLytMsgWindow_c::finalizeState_WaitKeyMapClose() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_MapClose() {}
|
||||
void dLytMsgWindow_c::executeState_MapClose() {}
|
||||
void dLytMsgWindow_c::finalizeState_MapClose() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_Out() {}
|
||||
void dLytMsgWindow_c::executeState_Out() {}
|
||||
void dLytMsgWindow_c::finalizeState_Out() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_ExplainIn() {}
|
||||
void dLytMsgWindow_c::executeState_ExplainIn() {}
|
||||
void dLytMsgWindow_c::finalizeState_ExplainIn() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_ExplainVisible() {}
|
||||
void dLytMsgWindow_c::executeState_ExplainVisible() {}
|
||||
void dLytMsgWindow_c::finalizeState_ExplainVisible() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_ExplainOut() {}
|
||||
void dLytMsgWindow_c::executeState_ExplainOut() {}
|
||||
void dLytMsgWindow_c::finalizeState_ExplainOut() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_DemoIn() {}
|
||||
void dLytMsgWindow_c::executeState_DemoIn() {}
|
||||
void dLytMsgWindow_c::finalizeState_DemoIn() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_DemoVisible() {}
|
||||
void dLytMsgWindow_c::executeState_DemoVisible() {}
|
||||
void dLytMsgWindow_c::finalizeState_DemoVisible() {}
|
||||
|
||||
void dLytMsgWindow_c::initializeState_DemoOut() {}
|
||||
void dLytMsgWindow_c::executeState_DemoOut() {}
|
||||
void dLytMsgWindow_c::finalizeState_DemoOut() {}
|
||||
@@ -39,9 +39,6 @@ SelectBtnHelper::SelectBtnHelper() {
|
||||
}
|
||||
SelectBtnHelper::~SelectBtnHelper() {}
|
||||
|
||||
// STATE_DEFINE\(([A-Za-z_0-9]+), ([A-Za-z_0-9]+)\);
|
||||
// void $1::initializeState_$2() {}\nvoid $1::executeState_$2() {}\nvoid $1::finalizeState_$2() {}\n
|
||||
|
||||
void dLytMsgWindowSelectBtnParts_c::initializeState_Wait() {}
|
||||
void dLytMsgWindowSelectBtnParts_c::executeState_Wait() {
|
||||
if (field_0x48 != 0) {
|
||||
|
||||
Reference in New Issue
Block a user