d_message OK (via dFlow_c)

This commit is contained in:
robojumper
2025-05-09 18:28:45 +02:00
parent 378c192697
commit 4c5dede891
39 changed files with 2038 additions and 219 deletions
+3
View File
@@ -1086,9 +1086,11 @@ d/tg/d_t_weather.cpp:
d/d_message.cpp:
.text start:0x801AF7E0 end:0x801B329C align:16
.ctors start:0x804DB808 end:0x804DB80C
.rodata start:0x804EA950 end:0x804EAB60
.data start:0x8052C858 end:0x8052DF40
.sdata start:0x80573248 end:0x80573290
.sbss start:0x80575740 end:0x80575760
.sdata2 start:0x8057B4D8 end:0x8057B4E8
.bss start:0x805B29E0 end:0x805B36E0
d/d_stage.cpp:
@@ -1288,6 +1290,7 @@ d/lyt/d_lyt_boss_caption.cpp:
d/lyt/d_lyt_demo_dowsing.cpp:
.text start:0x802A0B10 end:0x802A17C8 align:16
.ctors start:0x804DB880 end:0x804DB884
.data start:0x8053BD00 end:0x8053BF50
d/lyt/d_lyt_shop.cpp:
.text start:0x802A17D0 end:0x802A7FD8 align:16
+143 -143
View File
@@ -840,7 +840,7 @@ __ct__3SpfFv = .text:0x80024010; // type:function size:0x114
__ct__6SffSubFv = .text:0x80024130; // type:function size:0xC
__dt__6SffSubFv = .text:0x80024140; // type:function size:0x40
__dt__3SpfFv = .text:0x80024180; // type:function size:0xBC
fn_80024240 = .text:0x80024240; // type:function size:0xF8
fn_80024240__21BlurAndPaletteManagerFsss = .text:0x80024240; // type:function size:0xF8
fn_80024340 = .text:0x80024340; // type:function size:0x10
BlurAndPaletteMgr__setMist = .text:0x80024350; // type:function size:0x18
fn_80024370 = .text:0x80024370; // type:function size:0x58
@@ -1430,7 +1430,7 @@ fn_80038540 = .text:0x80038540; // type:function size:0x108
fn_80038650 = .text:0x80038650; // type:function size:0x144
fn_800387A0 = .text:0x800387A0; // type:function size:0x50
getCurrentActorEventFlowManager = .text:0x800387F0; // type:function size:0x50
fn_80038840 = .text:0x80038840; // type:function size:0x8
vt_0x38__7dFlow_cCFv = .text:0x80038840; // type:function size:0x8
fn_80038850 = .text:0x80038850; // type:function size:0x94
fn_800388F0 = .text:0x800388F0; // type:function size:0xD4
fn_800389D0 = .text:0x800389D0; // type:function size:0x90
@@ -2489,7 +2489,7 @@ getCurrentSwordType = .text:0x8005C060; // type:function size:0xAC
updateCurrentSword = .text:0x8005C110; // type:function size:0x24
doesPlayerHaveSword = .text:0x8005C140; // type:function size:0x1C
getSwordName = .text:0x8005C160; // type:function size:0x14
getCurrentlyEquippedShieldType = .text:0x8005C180; // type:function size:0x44
getCurrentlyEquippedShieldType__7dAcPy_cFv = .text:0x8005C180; // type:function size:0x44
getCurrentSlingshotType__7dAcPy_cFv = .text:0x8005C1D0; // type:function size:0x48
getCurrentBugNetType__7dAcPy_cFv = .text:0x8005C220; // type:function size:0x48
getCurrentBeetleType__7dAcPy_cFv = .text:0x8005C270; // type:function size:0x78
@@ -2500,7 +2500,7 @@ isInBossRushMinigameState = .text:0x8005C420; // type:function size:0x8
isItemRestrictedByBokoBase__7dAcPy_cF7ITEM_ID = .text:0x8005C430; // type:function size:0xB8
isItemRestricted = .text:0x8005C4F0; // type:function size:0xE0
fn_8005C5D0 = .text:0x8005C5D0; // type:function size:0x34
getLinkPtr2 = .text:0x8005C610; // type:function size:0x8
getLinkPtr__Fv = .text:0x8005C610; // type:function size:0x8
fn_8005C620 = .text:0x8005C620; // type:function size:0x8
fn_8005C630 = .text:0x8005C630; // type:function size:0x8
fn_8005C640 = .text:0x8005C640; // type:function size:0x8
@@ -4279,7 +4279,7 @@ fn_800C3DA0 = .text:0x800C3DA0; // type:function size:0xB4
fn_800C3E60 = .text:0x800C3E60; // type:function size:0x2C
fn_800C3E90 = .text:0x800C3E90; // type:function size:0x24
ActorEventFlowManagerRelated__checkEventFinished = .text:0x800C3EC0; // type:function size:0x20C
fn_800C40D0 = .text:0x800C40D0; // type:function size:0x4
vt_0x34__11dFlowBase_cFv = .text:0x800C40D0; // type:function size:0x4
fn_800C40E0 = .text:0x800C40E0; // type:function size:0xC
fn_800C40F0 = .text:0x800C40F0; // type:function size:0xB4
fn_800C41B0 = .text:0x800C41B0; // type:function size:0xBC
@@ -6831,8 +6831,8 @@ fn_80117380 = .text:0x80117380; // type:function size:0xC
fn_80117390__15dLytMsgWindow_cCFb = .text:0x80117390; // type:function size:0x54
setCurrentEntrypointName__15dLytMsgWindow_cFPCc = .text:0x801173F0; // type:function size:0xB4
setCurrentFlowFilename__15dLytMsgWindow_cFPCc = .text:0x801174B0; // type:function size:0xB4
LytMsgWindow__setNumericArg0 = .text:0x80117570; // type:function size:0x8
LytMsgWindow__setNumericArgs = .text:0x80117580; // type:function size:0x8
setNumericArg0__15dLytMsgWindow_cFl = .text:0x80117570; // type:function size:0x8
setNumericArgs__15dLytMsgWindow_cFPll = .text:0x80117580; // type:function size:0x8
createSubMsgManager__15dLytMsgWindow_cFUc = .text:0x80117590; // type:function size:0x260
__ct__19dLytMsgWindowWood_cFv = .text:0x801177F0; // type:function size:0x184
__dt__32sFState_c<19dLytMsgWindowWood_c>Fv = .text:0x80117980; // type:function size:0x58
@@ -7835,7 +7835,7 @@ isOpenMaybe__13dLytMapMain_cCFv = .text:0x80139090; // type:function size:0x478
fn_80139510 = .text:0x80139510; // type:function size:0xA8
fn_801395C0 = .text:0x801395C0; // type:function size:0x64
fn_80139630 = .text:0x80139630; // type:function size:0x4C
fn_80139680 = .text:0x80139680; // type:function size:0x14
lightPillarRelated__13dLytMapMain_cFlll = .text:0x80139680; // type:function size:0x14
fn_801396A0 = .text:0x801396A0; // type:function size:0xA4
fn_80139750 = .text:0x80139750; // type:function size:0x5E8
fn_80139D40 = .text:0x80139D40; // type:function size:0x15C
@@ -9327,31 +9327,31 @@ fn_8016BA00 = .text:0x8016BA00; // type:function size:0x30
LytCursorStick__initStates = .text:0x8016BA30; // type:function size:0x1C0
LytCursorStick__dtor = .text:0x8016BBF0; // type:function size:0x58
fn_8016BC50 = .text:0x8016BC50; // type:function size:0x88
fn_8016BCE0 = .text:0x8016BCE0; // type:function size:0x14
FiHelpEntry__getAreaIndexForFiAreaName = .text:0x8016BD00; // type:function size:0x44
isValid__16FiAnalysisHandleCFv = .text:0x8016BCE0; // type:function size:0x14
getAreaIndexForFiAreaName__16FiAnalysisHandleCFv = .text:0x8016BD00; // type:function size:0x44
fn_8016BD50 = .text:0x8016BD50; // type:function size:0x68
fn_8016BDC0 = .text:0x8016BDC0; // type:function size:0x68
fn_8016BE30 = .text:0x8016BE30; // type:function size:0x4C
fn_8016BE80 = .text:0x8016BE80; // type:function size:0x50
fn_8016BED0 = .text:0x8016BED0; // type:function size:0x44
fn_8016BF20 = .text:0x8016BF20; // type:function size:0x44
getEquipmentFocus__16FiAnalysisHandleCFv = .text:0x8016BDC0; // type:function size:0x68
getSuitabilityArg__16FiAnalysisHandleCFv = .text:0x8016BE30; // type:function size:0x4C
getSuitabilityLabel__16FiAnalysisHandleCFv = .text:0x8016BE80; // type:function size:0x50
shieldRelated__16FiAnalysisHandleFv = .text:0x8016BED0; // type:function size:0x44
getShieldMessage__16FiAnalysisHandleFv = .text:0x8016BF20; // type:function size:0x44
initializeNaviTable = .text:0x8016BF70; // type:function size:0x88
getNaviTableProgressSummary = .text:0x8016C000; // type:function size:0xB8
getFiAdviceHintEntry = .text:0x8016C0C0; // type:function size:0xC4
fn_8016C190 = .text:0x8016C190; // type:function size:0x1CC
getNaviTableEquipmentCheckEntry = .text:0x8016C360; // type:function size:0x9C
getNaviTableProgressSummary__9FiContextFv = .text:0x8016C000; // type:function size:0xB8
getFiAdviceHintEntry__9FiContextFv = .text:0x8016C0C0; // type:function size:0xC4
getUnkObjectiveValue__9FiContextFv = .text:0x8016C190; // type:function size:0x1CC
getNaviTableEquipmentCheckEntry__9FiContextFv = .text:0x8016C360; // type:function size:0x9C
FiContext__setTargetedActorTextId = .text:0x8016C400; // type:function size:0x9C
rateBattlePerformance = .text:0x8016C4A0; // type:function size:0x148
rateBattlePerformance__9FiContextFUc = .text:0x8016C4A0; // type:function size:0x148
prepareFiHelpIndex = .text:0x8016C5F0; // type:function size:0x288
getGlobalFiInfo0__9FiContextFl = .text:0x8016C880; // type:function size:0x20
fn_8016C8A0 = .text:0x8016C8A0; // type:function size:0x54
createGlobalFiContext = .text:0x8016C900; // type:function size:0x2C
getTextMessage__9FiContextFl = .text:0x8016C8A0; // type:function size:0x54
create__9FiContextFv = .text:0x8016C900; // type:function size:0x2C
FiContext__init = .text:0x8016C930; // type:function size:0xB4
fn_8016C9F0 = .text:0x8016C9F0; // type:function size:0xC
fn_8016CA00 = .text:0x8016CA00; // type:function size:0xFC
fn_8016CB00 = .text:0x8016CB00; // type:function size:0x1C
fn_8016CB20 = .text:0x8016CB20; // type:function size:0x1C
fn_8016CB40 = .text:0x8016CB40; // type:function size:0x1C
fn_8016CA00__9FiContextFv = .text:0x8016CA00; // type:function size:0xFC
fn_8016CB00__9FiContextFl = .text:0x8016CB00; // type:function size:0x1C
fn_8016CB20__9FiContextFv = .text:0x8016CB20; // type:function size:0x1C
fn_8016CB40__9FiContextFv = .text:0x8016CB40; // type:function size:0x1C
fn_8016CB60 = .text:0x8016CB60; // type:function size:0x78
AcItem__isItemThatHasStruct = .text:0x8016CBE0; // type:function size:0x3C
AcItem__getIndex = .text:0x8016CC20; // type:function size:0x14
@@ -10087,12 +10087,12 @@ getAdditionalInfoForPouchItem2 = .text:0x8018A330; // type:function size:0xC0
setPouchSlotToValueWithExtraInfo = .text:0x8018A3F0; // type:function size:0x130
tryCollectPouchItemInPouch = .text:0x8018A520; // type:function size:0x60
collectPouchItem = .text:0x8018A580; // type:function size:0xD0
adventurePouchFindItemSlot = .text:0x8018A650; // type:function size:0x84
adventurePouchCountItem = .text:0x8018A6E0; // type:function size:0x74
adventurePouchFindItemSlot__F7ITEM_ID = .text:0x8018A650; // type:function size:0x84
adventurePouchCountItem__F7ITEM_ID = .text:0x8018A6E0; // type:function size:0x74
convertLytPouchSlot__Fl = .text:0x8018A760; // type:function size:0x1C
convertFilePouchSlot__Fl = .text:0x8018A780; // type:function size:0xAC
fn_8018A830 = .text:0x8018A830; // type:function size:0x16C
fn_8018A9A0 = .text:0x8018A9A0; // type:function size:0x7C
hasAnyShields__Fv = .text:0x8018A9A0; // type:function size:0x7C
changeItemPouchExtensionCounter = .text:0x8018AA20; // type:function size:0x10C
getExtraAmmoInPouchByType = .text:0x8018AB30; // type:function size:0x98
getExtraAmmoCapacityByType = .text:0x8018ABD0; // type:function size:0x98
@@ -10101,7 +10101,7 @@ fn_8018ACD0 = .text:0x8018ACD0; // type:function size:0xC4
fn_8018ADA0 = .text:0x8018ADA0; // type:function size:0xA0
trySwapAdventurePouchItems = .text:0x8018AE40; // type:function size:0x120
fn_8018AF60 = .text:0x8018AF60; // type:function size:0x204
findItemInItemCheck = .text:0x8018B170; // type:function size:0x60
itemCheckFindItemSlot__F7ITEM_ID = .text:0x8018B170; // type:function size:0x60
fn_8018B1D0 = .text:0x8018B1D0; // type:function size:0x60
fn_8018B230 = .text:0x8018B230; // type:function size:0x74
ActorLink__handleHotPumpkinSoup = .text:0x8018B2B0; // type:function size:0xE4
@@ -10258,12 +10258,12 @@ fn_80190710 = .text:0x80190710; // type:function size:0x14
fn_80190730 = .text:0x80190730; // type:function size:0x48
fn_80190780 = .text:0x80190780; // type:function size:0x40
fn_801907C0 = .text:0x801907C0; // type:function size:0x4
fn_801907D0 = .text:0x801907D0; // type:function size:0x1C
fn_801907F0 = .text:0x801907F0; // type:function size:0x38
fn_801907D0__15SaveTimeRelatedFv = .text:0x801907D0; // type:function size:0x1C
fn_801907F0__15SaveTimeRelatedFv = .text:0x801907F0; // type:function size:0x38
fn_80190830 = .text:0x80190830; // type:function size:0x50
fn_80190880 = .text:0x80190880; // type:function size:0x64
fn_801908F0 = .text:0x801908F0; // type:function size:0xAC
fn_801909A0 = .text:0x801909A0; // type:function size:0x40
fn_801909A0__15SaveTimeRelatedFv = .text:0x801909A0; // type:function size:0x40
fn_801909E0 = .text:0x801909E0; // type:function size:0x2C
fn_80190A10 = .text:0x80190A10; // type:function size:0x94
fn_80190AB0 = .text:0x80190AB0; // type:function size:0xC
@@ -10569,7 +10569,7 @@ overrideLayer0WithLyse__11dStageMgr_cFv = .text:0x80199580; // type:function siz
setStif__11dStageMgr_cFPC4STIF = .text:0x80199680; // type:function size:0x1AC
getFlagIndex__11dStageMgr_cCFv = .text:0x80199830; // type:function size:0x2C
getAreaType__11dStageMgr_cCFv = .text:0x80199860; // type:function size:0x1C
StageManager__isAreaTypeNormal = .text:0x80199880; // type:function size:0x28
isAreaTypeNormal__11dStageMgr_cCFv = .text:0x80199880; // type:function size:0x28
isAreaTypeDungeon__11dStageMgr_cCFv = .text:0x801998B0; // type:function size:0x2C
StageManager__isAreaTypeBoss = .text:0x801998E0; // type:function size:0x2C
StageManager__isAreaTypeSkyloft = .text:0x80199910; // type:function size:0x2C
@@ -10854,59 +10854,59 @@ fn_801AF5B0 = .text:0x801AF5B0; // type:function size:0x30
WeatherTag__initStates = .text:0x801AF5E0; // type:function size:0x10C
WeatherTag__dtor2 = .text:0x801AF6F0; // type:function size:0x58
fn_801AF750 = .text:0x801AF750; // type:function size:0x88
ActorEventFlowManager__ctor = .text:0x801AF7E0; // type:function size:0x58
fn_801AF840 = .text:0x801AF840; // type:function size:0x40
ActorEventFlowManager__dtor = .text:0x801AF880; // type:function size:0x40
findEventEntryPoint = .text:0x801AF8C0; // type:function size:0x138
fn_801AFA00 = .text:0x801AFA00; // type:function size:0xDC
ActorEventFlowManager__setNext = .text:0x801AFAE0; // type:function size:0x28
ActorEventFlowManager__handleNextEvent = .text:0x801AFB10; // type:function size:0x234
fn_801AFD50 = .text:0x801AFD50; // type:function size:0x38
fn_801AFD90 = .text:0x801AFD90; // type:function size:0x28
fn_801AFDC0 = .text:0x801AFDC0; // type:function size:0x13C
ActorEventFlowManager__actuallyHandleType3 = .text:0x801AFF00; // type:function size:0x888
firstHandleType3EventFlow = .text:0x801B0790; // type:function size:0xC8
ActorEventFlowManager__processTextCommand = .text:0x801B0860; // type:function size:0x7CC
ActorEventFlowManager__getSwitchChoice = .text:0x801B1030; // type:function size:0x54
fn_801B1090 = .text:0x801B1090; // type:function size:0x10
fn_801B10A0 = .text:0x801B10A0; // type:function size:0x10
fn_801B10B0 = .text:0x801B10B0; // type:function size:0x104
ActorEventFlowManager__checkStoryflag = .text:0x801B11C0; // type:function size:0x44
fn_801B1210 = .text:0x801B1210; // type:function size:0x8
ActorEventFlowManager__checkZoneflag = .text:0x801B1220; // type:function size:0x50
ActorEventFlowManager__checkSceneflag = .text:0x801B1270; // type:function size:0x3C
fn_801B12B0 = .text:0x801B12B0; // type:function size:0x14
fn_801B12D0 = .text:0x801B12D0; // type:function size:0x14
ActorEventFlowManager__checkTempflag = .text:0x801B12F0; // type:function size:0x44
ActorEventFlowManager__checkRupees = .text:0x801B1340; // type:function size:0x44
ActorEventFlowManager__getRand0To2 = .text:0x801B1390; // type:function size:0x38
ActorEventFlowManager__getRand0To3 = .text:0x801B13D0; // type:function size:0x38
ActorEventFlowManager__getRand0To4 = .text:0x801B1410; // type:function size:0x38
fn_801B1450 = .text:0x801B1450; // type:function size:0x8
fn_801B1460 = .text:0x801B1460; // type:function size:0x8
fn_801B1470 = .text:0x801B1470; // type:function size:0x8
ActorEventFlowManager__checkFreePouchSlot = .text:0x801B1480; // type:function size:0x44
fn_801B14D0 = .text:0x801B14D0; // type:function size:0x4C
fn_801B1520 = .text:0x801B1520; // type:function size:0x1AC
fn_801B16D0 = .text:0x801B16D0; // type:function size:0x44
fn_801B1720 = .text:0x801B1720; // type:function size:0x54
fn_801B1780 = .text:0x801B1780; // type:function size:0x44
ActorEventFlowManager__handleSwitch = .text:0x801B17D0; // type:function size:0xA4
fn_801B1880 = .text:0x801B1880; // type:function size:0x48
fn_801B18D0 = .text:0x801B18D0; // type:function size:0x8
ActorEventFlowManager__triggerEntryPoint = .text:0x801B18E0; // type:function size:0x298
fn_801B1B80 = .text:0x801B1B80; // type:function size:0x3C
fn_801B1BC0 = .text:0x801B1BC0; // type:function size:0x8
fn_801B1BD0 = .text:0x801B1BD0; // type:function size:0x8
fn_801B1BE0 = .text:0x801B1BE0; // type:function size:0x80
fn_801B1C60 = .text:0x801B1C60; // type:function size:0xC
fn_801B1C70 = .text:0x801B1C70; // type:function size:0x14
fn_801B1C90 = .text:0x801B1C90; // type:function size:0xA4
fn_801B1D40 = .text:0x801B1D40; // type:function size:0x1C8
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
__ct__7dFlow_cFv = .text:0x801AF7E0; // type:function size:0x58
__dt__11dFlowBase_cFv = .text:0x801AF840; // type:function size:0x40
__dt__7dFlow_cFv = .text:0x801AF880; // type:function size:0x40
findEntryPoint__7dFlow_cFUsUs = .text:0x801AF8C0; // type:function size:0x138
findEntryPoint__7dFlow_cFPCc = .text:0x801AFA00; // type:function size:0xDC
setNext__7dFlow_cFUs = .text:0x801AFAE0; // type:function size:0x28
advanceFlow__7dFlow_cFv = .text:0x801AFB10; // type:function size:0x234
advanceUntilEvent__7dFlow_cFlPl = .text:0x801AFD50; // type:function size:0x38
vt_0x18__7dFlow_cCFv = .text:0x801AFD90; // type:function size:0x28
playSound__7dFlow_cFUl = .text:0x801AFDC0; // type:function size:0x13C
handleEventInternal__7dFlow_cFPC11MsbFlowInfo = .text:0x801AFF00; // type:function size:0x888
handleEvent__7dFlow_cFv = .text:0x801B0790; // type:function size:0xC8
handleMessage__7dFlow_cFv = .text:0x801B0860; // type:function size:0x7CC
getSwitchChoice__7dFlow_cCFPC11MsbFlowInfoUs = .text:0x801B1030; // type:function size:0x54
branchHandler00__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1090; // type:function size:0x10
branchHandler01__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B10A0; // type:function size:0x10
branchHandler02__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B10B0; // type:function size:0x104
branchHandler03__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B11C0; // type:function size:0x44
branchHandler04__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1210; // type:function size:0x8
branchHandler05__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1220; // type:function size:0x50
branchHandler06__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1270; // type:function size:0x3C
branchHandler07__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B12B0; // type:function size:0x14
branchHandler08__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B12D0; // type:function size:0x14
branchHandler09__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B12F0; // type:function size:0x44
branchHandler10__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1340; // type:function size:0x44
branchHandler11__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1390; // type:function size:0x38
branchHandler12__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B13D0; // type:function size:0x38
branchHandler13__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1410; // type:function size:0x38
branchHandler14__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1450; // type:function size:0x8
branchHandler15__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1460; // type:function size:0x8
branchHandler16__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1470; // type:function size:0x8
branchHandler17__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1480; // type:function size:0x44
branchHandler18__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B14D0; // type:function size:0x4C
branchHandler19__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1520; // type:function size:0x1AC
branchHandler20__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B16D0; // type:function size:0x44
branchHandler21__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1720; // type:function size:0x54
branchHandler22__7dFlow_cCFPC11MsbFlowInfo = .text:0x801B1780; // type:function size:0x44
handleBranch__7dFlow_cFv = .text:0x801B17D0; // type:function size:0xA4
handleEntry__7dFlow_cFv = .text:0x801B1880; // type:function size:0x48
handleJump__7dFlow_cFv = .text:0x801B18D0; // type:function size:0x8
triggerEntryPoint__7dFlow_cFll = .text:0x801B18E0; // type:function size:0x298
triggerEntryPoint__7dFlow_cFPCc = .text:0x801B1B80; // type:function size:0x3C
getField_0x44__7dFlow_cCFv = .text:0x801B1BC0; // type:function size:0x8
getField_0x46__7dFlow_cCFv = .text:0x801B1BD0; // type:function size:0x8
triggerEntryPointChecked__7dFlow_cFll = .text:0x801B1BE0; // type:function size:0x80
setField0x3C__7dFlow_cFv = .text:0x801B1C60; // type:function size:0xC
checkField0x3C__7dFlow_cCFv = .text:0x801B1C70; // type:function size:0x14
start__7dFlow_cFUs = .text:0x801B1C90; // type:function size:0xA4
advanceUntil__7dFlow_cFllPl = .text:0x801B1D40; // type:function size:0x1C8
matchesUnknownActorCategory__7dFlow_cCFl = .text:0x801B1F10; // type:function size:0x38
clear__7dFlow_cFv = .text:0x801B1F50; // type:function size:0x2C
createLytMiniGame__7dFlow_cFv = .text:0x801B1F80; // type:function size:0xD8
clearMinigame__7dFlow_cFv = .text:0x801B2060; // type:function size:0x98
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
@@ -10926,7 +10926,7 @@ 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
getMsbtIndexForMsbfIndex__10dMessage_cFl = .text:0x801B2A00; // type:function size:0x14
getTextIndexForLabel__10dMessage_cFPCc = .text:0x801B2A20; // type:function size:0x4C
getMsbtIndexForLabel__10dMessage_cFPCc = .text:0x801B2A70; // type:function size:0xC
getMsbtIndexForLabelInternal__10dMessage_cFPCc = .text:0x801B2A80; // type:function size:0xA4
@@ -10934,9 +10934,9 @@ getMsbtInfoForIndex__10dMessage_cFl = .text:0x801B2B30; // type:function size:0x
getMsbtInfoForIndexInternal__10dMessage_cFl = .text:0x801B2B40; // type:function size:0x38
getMsbfInfoForIndex__10dMessage_cFl = .text:0x801B2B80; // type:function size:0xC
getMsbfInfoForIndexInternal__10dMessage_cFl = .text:0x801B2B90; // type:function size:0x38
fn_801B2BD0 = .text:0x801B2BD0; // type:function size:0x10
fn_801B2BE0 = .text:0x801B2BE0; // type:function size:0x40
fn_801B2C20 = .text:0x801B2C20; // type:function size:0x30
getLightPillarRelatedArg__10dMessage_cFl = .text:0x801B2BD0; // type:function size:0x10
storeLightPillarRelatedArg__10dMessage_cFUl = .text:0x801B2BE0; // type:function size:0x40
clearLightPillarRelatedArgs__10dMessage_cFv = .text:0x801B2C20; // type:function size:0x30
executeMinigame__10dMessage_cFv = .text:0x801B2C50; // type:function size:0xC0
init__10dMessage_cFv = .text:0x801B2D10; // type:function size:0x4C
reset__10dMessage_cFv = .text:0x801B2D60; // type:function size:0x44
@@ -11180,7 +11180,7 @@ fn_801BAE60 = .text:0x801BAE60; // type:function size:0x90
fn_801BAEF0 = .text:0x801BAEF0; // type:function size:0x50
fn_801BAF40 = .text:0x801BAF40; // type:function size:0x54
Reloader__triggerEntrance = .text:0x801BAFA0; // type:function size:0xDC
triggerExit__9dScGame_cFlUcll = .text:0x801BB080; // type:function size:0xC0
triggerExit__9dScGame_cFlUsll = .text:0x801BB080; // type:function size:0xC0
Reloader__triggerExitInner = .text:0x801BB140; // type:function size:0x154
fn_801BB2A0 = .text:0x801BB2A0; // type:function size:0x28
fn_801BB2D0 = .text:0x801BB2D0; // type:function size:0x8
@@ -13547,17 +13547,17 @@ AcItem__getCurrentOffset = .text:0x802519F0; // type:function size:0xA0
AcItem__getPositionOffset = .text:0x80251A90; // type:function size:0x5C
fn_80251AF0 = .text:0x80251AF0; // type:function size:0x78
checkFlag__9dAcItem_cFUl = .text:0x80251B70; // type:function size:0x128
AcItem__setFlag = .text:0x80251CA0; // type:function size:0xC0
setFlag__9dAcItem_cFl = .text:0x80251CA0; // type:function size:0xC0
AcItem__checkFlagForItem = .text:0x80251D60; // type:function size:0x34
AcItem__checkItemFlag = .text:0x80251DA0; // type:function size:0x48
isItemAnyFairy = .text:0x80251DF0; // type:function size:0x50
setItemflag = .text:0x80251E40; // type:function size:0x1C
getRupeeCounter = .text:0x80251E60; // type:function size:0x8
getRupeeCounter2 = .text:0x80251E70; // type:function size:0x4
getRupeeCounter__9dAcItem_cFv = .text:0x80251E70; // type:function size:0x4
fn_80251E80 = .text:0x80251E80; // type:function size:0xC
addRupees = .text:0x80251E90; // type:function size:0x18
addRupees__9dAcItem_cFl = .text:0x80251E90; // type:function size:0x18
getCurrentWalletCapacity = .text:0x80251EB0; // type:function size:0x8
getCurrentWalletCapacity2 = .text:0x80251EC0; // type:function size:0x4
getCurrentWalletCapacity__9dAcItem_cFv = .text:0x80251EC0; // type:function size:0x4
AcItem__getCurrentArrowCount = .text:0x80251ED0; // type:function size:0x8
getTotalArrowCount__9dAcItem_cFv = .text:0x80251EE0; // type:function size:0x38
changeArrowCounter = .text:0x80251F20; // type:function size:0xC
@@ -15443,9 +15443,9 @@ LytMiniGame__init = .text:0x80294830; // type:function size:0xA94
LytMiniGame__destructRes = .text:0x802952D0; // type:function size:0x31C
fn_802955F0 = .text:0x802955F0; // type:function size:0xD4
fn_802956D0 = .text:0x802956D0; // type:function size:0x6C
fn_80295740 = .text:0x80295740; // type:function size:0x8C
fn_802957D0 = .text:0x802957D0; // type:function size:0x78
LytMiniGame__updateDisplayedCounter = .text:0x80295850; // type:function size:0xA8
scoreRelatedExecute__14dLytMiniGame_cFv = .text:0x80295740; // type:function size:0x8C
scoreRelated__14dLytMiniGame_cFv = .text:0x802957D0; // type:function size:0x78
setDisplayedPoints__14dLytMiniGame_cFl = .text:0x80295850; // type:function size:0xA8
fn_80295900 = .text:0x80295900; // type:function size:0x38
fn_80295940 = .text:0x80295940; // type:function size:0x38
fn_80295980 = .text:0x80295980; // type:function size:0x98
@@ -15455,9 +15455,9 @@ fn_80295AD0 = .text:0x80295AD0; // type:function size:0x20
fn_80295AF0 = .text:0x80295AF0; // type:function size:0x2C
fn_80295B20 = .text:0x80295B20; // type:function size:0x8
fn_80295B30 = .text:0x80295B30; // type:function size:0x8
fn_80295B40 = .text:0x80295B40; // type:function size:0xA8
fn_80295BF0 = .text:0x80295BF0; // type:function size:0x24
fn_80295C20 = .text:0x80295C20; // type:function size:0x4C
timeRelatedExecute__14dLytMiniGame_cFv = .text:0x80295B40; // type:function size:0xA8
timeRelated__14dLytMiniGame_cFv = .text:0x80295BF0; // type:function size:0x24
setDisplayedTime__14dLytMiniGame_cFl = .text:0x80295C20; // type:function size:0x4C
fn_80295C70 = .text:0x80295C70; // type:function size:0x38
fn_80295CB0 = .text:0x80295CB0; // type:function size:0x38
fn_80295CF0 = .text:0x80295CF0; // type:function size:0x8
@@ -15796,14 +15796,14 @@ fn_802A06B0 = .text:0x802A06B0; // type:function size:0x30
LytBossCaption__initStates = .text:0x802A06E0; // type:function size:0x338
LytBossCaption__dtor = .text:0x802A0A20; // type:function size:0x58
fn_802A0A80 = .text:0x802A0A80; // type:function size:0x88
fn_802A0B10 = .text:0x802A0B10; // type:function size:0x118
fn_802A0C30 = .text:0x802A0C30; // type:function size:0x58
fn_802A0C90 = .text:0x802A0C90; // type:function size:0x6C
fn_802A0D00 = .text:0x802A0D00; // type:function size:0xA0
fn_802A0DA0 = .text:0x802A0DA0; // type:function size:0xA4
dLytDemoDowsing_c_classInit__Fv = .text:0x802A0B10; // type:function size:0x118
__dt__30sFState_c<17dLytDemoDowsing_c>Fv = .text:0x802A0C30; // type:function size:0x58
__dt__33sFStateFct_c<17dLytDemoDowsing_c>Fv = .text:0x802A0C90; // type:function size:0x6C
__dt__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802A0D00; // type:function size:0xA0
__dt__56sFStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c>Fv = .text:0x802A0DA0; // type:function size:0xA4
fn_802A0E50 = .text:0x802A0E50; // type:function size:0x4
fn_802A0E60 = .text:0x802A0E60; // type:function size:0x28
fn_802A0E90 = .text:0x802A0E90; // type:function size:0x10
changeState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x802A0E90; // type:function size:0x10
fn_802A0EA0 = .text:0x802A0EA0; // type:function size:0x4
fn_802A0EB0 = .text:0x802A0EB0; // type:function size:0x48
fn_802A0F00 = .text:0x802A0F00; // type:function size:0x9C
@@ -15811,27 +15811,27 @@ fn_802A0FA0 = .text:0x802A0FA0; // type:function size:0x4
fn_802A0FB0 = .text:0x802A0FB0; // type:function size:0x15C
fn_802A1110 = .text:0x802A1110; // type:function size:0x6C
fn_802A1180 = .text:0x802A1180; // type:function size:0x70
fn_802A11F0 = .text:0x802A11F0; // type:function size:0x10
executeState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802A11F0; // type:function size:0x10
fn_802A1200 = .text:0x802A1200; // type:function size:0x28
fn_802A1230 = .text:0x802A1230; // type:function size:0x120
fn_802A1350 = .text:0x802A1350; // type:function size:0x60
fn_802A13B0 = .text:0x802A13B0; // type:function size:0xC
fn_802A13C0 = .text:0x802A13C0; // type:function size:0x1C
fn_802A13E0 = .text:0x802A13E0; // type:function size:0x1C
fn_802A1400 = .text:0x802A1400; // type:function size:0x1C
fn_802A1420 = .text:0x802A1420; // type:function size:0x10
fn_802A1430 = .text:0x802A1430; // type:function size:0x10
fn_802A1440 = .text:0x802A1440; // type:function size:0x10
fn_802A1450 = .text:0x802A1450; // type:function size:0x10
fn_802A1460 = .text:0x802A1460; // type:function size:0x10
fn_802A1470 = .text:0x802A1470; // type:function size:0x10
fn_802A1480 = .text:0x802A1480; // type:function size:0x10
fn_802A1490 = .text:0x802A1490; // type:function size:0x30
fn_802A14C0 = .text:0x802A14C0; // type:function size:0x30
fn_802A14F0 = .text:0x802A14F0; // type:function size:0x30
LytDemoDowsing__initStates = .text:0x802A1520; // type:function size:0x1C0
LytDemoDowsing__dtor = .text:0x802A16E0; // type:function size:0x58
fn_802A1740 = .text:0x802A1740; // type:function size:0x88
__dt__17dLytDemoDowsing_cFv = .text:0x802A1230; // type:function size:0x120
build__33sFStateFct_c<17dLytDemoDowsing_c>FRC12sStateIDIf_c = .text:0x802A1350; // type:function size:0x60
dispose__33sFStateFct_c<17dLytDemoDowsing_c>FRP10sStateIf_c = .text:0x802A13B0; // type:function size:0xC
initialize__30sFState_c<17dLytDemoDowsing_c>Fv = .text:0x802A13C0; // type:function size:0x1C
execute__30sFState_c<17dLytDemoDowsing_c>Fv = .text:0x802A13E0; // type:function size:0x1C
finalize__30sFState_c<17dLytDemoDowsing_c>Fv = .text:0x802A1400; // type:function size:0x1C
initializeState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802A1420; // type:function size:0x10
finalizeState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802A1430; // type:function size:0x10
refreshState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x802A1440; // type:function size:0x10
getState__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802A1450; // type:function size:0x10
getNewStateID__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802A1460; // type:function size:0x10
getStateID__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802A1470; // type:function size:0x10
getOldStateID__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x802A1480; // type:function size:0x10
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
__dt__32sFStateID_c<17dLytDemoDowsing_c>Fv = .text:0x802A16E0; // type:function size:0x58
isSameName__32sFStateID_c<17dLytDemoDowsing_c>CFPCc = .text:0x802A1740; // type:function size:0x88
fn_802A17D0 = .text:0x802A17D0; // type:function size:0x4
dLytShopMain__stateModeNoneUpdate = .text:0x802A17E0; // type:function size:0x10
fn_802A17F0 = .text:0x802A17F0; // type:function size:0x4
@@ -16833,14 +16833,14 @@ checkStoryflag2 = .text:0x802CFA40; // type:function size:0x44
fn_802CFA90 = .text:0x802CFA90; // type:function size:0x2E0
fn_802CFD70 = .text:0x802CFD70; // type:function size:0x20
updateHelpText = .text:0x802CFD90; // type:function size:0x1C
fn_802CFDB0 = .text:0x802CFDB0; // type:function size:0x74
isStateNormalOrNotInEvent__17dLytControlGame_cCFv = .text:0x802CFDB0; // type:function size:0x74
isInSomeMapState__17dLytControlGame_cCFv = .text:0x802CFE30; // type:function size:0xD8
isNotInStateMap__17dLytControlGame_cCFv = .text:0x802CFF10; // type:function size:0x4C
fn_802CFF60 = .text:0x802CFF60; // type:function size:0x90
fn_802CFFF0 = .text:0x802CFFF0; // type:function size:0x1C
somehowRelatedToEnteringLightPillars = .text:0x802D0010; // type:function size:0x254
somehowRelatedToEnteringLightPillars__17dLytControlGame_cFlll = .text:0x802D0010; // type:function size:0x254
fn_802D0270 = .text:0x802D0270; // type:function size:0x4C
LytControlGame__openCollectionScreenDemo = .text:0x802D02C0; // type:function size:0xA0
openCollectionScreenDemo__17dLytControlGame_cFv = .text:0x802D02C0; // type:function size:0xA0
fn_802D0360 = .text:0x802D0360; // type:function size:0xA0
fn_802D0400 = .text:0x802D0400; // type:function size:0xC
fn_802D0410 = .text:0x802D0410; // type:function size:0xD4
@@ -34179,7 +34179,7 @@ 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
__vt__10dMessage_c = .data:0x8052DE78; // type:object size:0x4C
ActorEventFlowManager__vtable = .data:0x8052DEC4; // type:object size:0x78
__vt__7dFlow_c = .data:0x8052DEC4; // type:object size:0x78
g_profile_STAGE = .data:0x8052DF40; // type:object size:0xC
sCallbacks__8dStage_c = .data:0x8052DF4C; // type:object size:0x24
lbl_8052DF70 = .data:0x8052DF70; // type:object size:0x10
@@ -35361,12 +35361,12 @@ lbl_8053BD34 = .data:0x8053BD34; // type:object size:0x1C
lbl_8053BD50 = .data:0x8053BD50; // type:object size:0x10 data:string
lbl_8053BD60 = .data:0x8053BD60; // type:object size:0xC data:string
lbl_8053BD6C = .data:0x8053BD6C; // type:object size:0x18
lbl_8053BD84 = .data:0x8053BD84; // type:object size:0x4C
lbl_8053BDD0 = .data:0x8053BDD0; // type:object size:0x30
lbl_8053BE00 = .data:0x8053BE00; // type:object size:0x30
lbl_8053BE30 = .data:0x8053BE30; // type:object size:0x18
lbl_8053BE48 = .data:0x8053BE48; // type:object size:0xD4
lbl_8053BF1C = .data:0x8053BF1C; // type:object size:0x34
__vt__17dLytDemoDowsing_c = .data:0x8053BD84; // type:object size:0x4C
__vt__56sFStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c> = .data:0x8053BDD0; // type:object size:0x30
__vt__86sStateMgr_c<17dLytDemoDowsing_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x8053BE00; // type:object size:0x30
__vt__33sFStateFct_c<17dLytDemoDowsing_c> = .data:0x8053BE30; // type:object size:0x18
__vt__30sFState_c<17dLytDemoDowsing_c> = .data:0x8053BE48; // type:object size:0xD4
__vt__32sFStateID_c<17dLytDemoDowsing_c> = .data:0x8053BF1C; // type:object size:0x34
lbl_8053BF50 = .data:0x8053BF50; // type:object size:0x14 data:string
lbl_8053BF64 = .data:0x8053BF64; // type:object size:0x18
lbl_8053BF7C = .data:0x8053BF7C; // type:object size:0x14
@@ -38638,7 +38638,7 @@ lbl_80573228 = .sdata:0x80573228; // type:object size:0x8
lbl_80573230 = .sdata:0x80573230; // type:object size:0x8
lbl_80573238 = .sdata:0x80573238; // type:object size:0x8
lbl_80573240 = .sdata:0x80573240; // type:object size:0x8
lbl_80573248 = .sdata:0x80573248; // type:object size:0x4 data:4byte
sExitId__7dFlow_c = .sdata:0x80573248; // type:object size:0x4 data:4byte
lbl_8057324C = .sdata:0x8057324C; // type:object size:0x4
lbl_80573250 = .sdata:0x80573250; // type:object size:0x8 data:string
lbl_80573258 = .sdata:0x80573258; // type:object size:0x8
@@ -40121,7 +40121,7 @@ sInstance__15dLytBirdGauge_c = .sbss:0x805754E0; // type:object size:0x4 data:4b
sInstance__14dLytSkyGauge_c = .sbss:0x805754E8; // type:object size:0x4 data:4byte
lbl_805754F0 = .sbss:0x805754F0; // type:object size:0x8 data:4byte
sInstance__17dLytCursorStick_c = .sbss:0x805754F8; // type:object size:0x8 data:4byte
GLOBAL_FI_CONTEXT = .sbss:0x80575500; // type:object size:0x4 data:4byte
sInstance__9FiContext = .sbss:0x80575500; // type:object size:0x4 data:4byte
NAVI_TABLE = .sbss:0x80575504; // type:object size:0x4 data:4byte
sSmallKeyCounter = .sbss:0x80575508; // type:object size:0x8 data:4byte
sPouchExpansionCounter = .sbss:0x80575510; // type:object size:0x8 data:4byte
@@ -40172,7 +40172,7 @@ DOOR_ACTOR_LIST = .sbss:0x80575668; // type:object size:0x8 data:4byte
lbl_80575670 = .sbss:0x80575670; // type:object size:0x8 data:byte
lbl_80575678 = .sbss:0x80575678; // type:object size:0x8 data:4byte
lbl_80575680 = .sbss:0x80575680; // type:object size:0x8 data:4byte
lbl_80575688 = .sbss:0x80575688; // type:object size:0x8 data:4byte
sInstance__15SaveTimeRelated = .sbss:0x80575688; // type:object size:0x8 data:4byte
lbl_80575690 = .sbss:0x80575690; // type:object size:0x1 data:byte
lbl_80575691 = .sbss:0x80575691; // type:object size:0x1 data:byte
lbl_80575692 = .sbss:0x80575692; // type:object size:0x1 data:byte
@@ -40400,11 +40400,11 @@ lbl_80575978 = .sbss:0x80575978; // type:object size:0x4 data:4byte
lbl_8057597C = .sbss:0x8057597C; // type:object size:0x4 data:4byte
lbl_80575980 = .sbss:0x80575980; // type:object size:0x4 data:4byte
lbl_80575984 = .sbss:0x80575984; // type:object size:0x4 data:4byte
LYT_MINI_GAME = .sbss:0x80575988; // type:object size:0x8 data:4byte
sInstance__14dLytMiniGame_c = .sbss:0x80575988; // type:object size:0x8 data:4byte
lbl_80575990 = .sbss:0x80575990; // type:object size:0x8 data:4byte
lbl_80575998 = .sbss:0x80575998; // type:object size:0x8 data:4byte
BOSS_CAPTION_PTR = .sbss:0x805759A0; // type:object size:0x8 data:4byte
lbl_805759A8 = .sbss:0x805759A8; // type:object size:0x8 data:4byte
sInstance__17dLytDemoDowsing_c = .sbss:0x805759A8; // type:object size:0x8 data:4byte
lbl_805759B0 = .sbss:0x805759B0; // type:object size:0x2 data:2byte
LYT_SHOP = .sbss:0x805759B4; // type:object size:0x4 data:4byte
lbl_805759B8 = .sbss:0x805759B8; // type:object size:0x8
+1 -1
View File
@@ -570,7 +570,7 @@ config.libs = [
Object(NonMatching, "d/d_camera.cpp"),
Object(NonMatching, "d/d_light_obj.cpp"),
Object(NonMatching, "d/tg/d_t_weather.cpp"),
Object(NonMatching, "d/d_message.cpp"),
Object(Matching, "d/d_message.cpp"),
Object(NonMatching, "d/d_stage.cpp"),
Object(NonMatching, "d/d_stage_select.cpp"),
Object(Matching, "d/d_room.cpp"),
+7
View File
@@ -47,6 +47,8 @@ public:
static void spawnItem(u16 item, u32 room, const mVec3_c &pos, const mAng3_c &rot, u32 params, u32 arg);
static void spawnDrop(u16 item, u32 room, const mVec3_c &pos, const mAng3_c &rot);
static u32 checkFlag(u32 flag);
static void setFlag(s32 id);
void setItemPosition(const mVec3_c &);
void getItemFromBWheelItem();
bool isStateWait();
@@ -59,6 +61,9 @@ public:
static s32 getTotalSeedCapacity();
static s32 getTotalArrowCapacity();
static s32 getRupeeCounter();
static u32 getCurrentWalletCapacity();
static u32 getKeyPieceCount();
static u32 getSmallKeyCount();
@@ -70,6 +75,8 @@ public:
static void itemGetEventStart(dAcBase_c *);
static void itemGetEventEnd(dAcBase_c *);
static void addRupees(s32 amount);
enum Trial_e {
TRIAL_SKYLOFT,
TRIAL_FARON,
+2 -1
View File
@@ -149,7 +149,7 @@ public:
/* vt 0x1A4 */ virtual void vt_0x1A4();
/* vt 0x1A8 */ virtual void vt_0x1A8();
/* vt 0x1AC */ virtual void vt_0x1AC();
/* vt 0x1B0 */ virtual void isItemFairyFromBugnet();
/* vt 0x1B0 */ virtual bool isItemFairyFromBugnet();
/* vt 0x1B4 */ virtual void isByte0x434eEqual7();
/* vt 0x1B8 */ virtual void canHandleGameOver();
/* vt 0x1BC */ virtual void vt_0x1BC();
@@ -338,6 +338,7 @@ public:
static s32 getCurrentSlingshotType();
static s32 getCurrentBeetleType();
static s32 getCurrentBugNetType();
static s32 getCurrentlyEquippedShieldType();
static bool isItemRestrictedByBokoBase(ITEM_ID item);
+1 -1
View File
@@ -39,7 +39,7 @@ private:
m3d::smdl_c mMdl;
STATE_MGR_DECLARE(dAcOtoD3StoneFigure_c);
dCcD_Cyl mCollision;
s8 mExitId;
u8 mExitId;
bool mIsSkyKeepAlreadyOpen;
};
+7
View File
@@ -5,6 +5,7 @@
#include "m/m_vec.h"
extern "C" bool fn_80081FE0(void *, const char *);
extern "C" bool fn_800918E0(void *, s32, s16);
class dCamera_c : public dBase_c {
public:
@@ -20,11 +21,17 @@ public:
return mPositionMaybe;
}
bool doFn_800918E0(s32 a1, s16 a2) {
return fn_800918E0(field_0xDA0, a1, a2);
}
private:
/* 0x068 */ u8 _0x068[0x6C - 0x068];
/* 0x06C */ mVec3_c mPositionMaybe;
/* 0x078 */ u8 _0x078[0xD98 - 0x078];
/* 0xD98 */ void *field_0xD98;
/* 0xD9C */ u8 _0xD9C[0xDA0 - 0xD9C];
/* 0xDA0 */ void *field_0xDA0;
};
#endif
+242 -7
View File
@@ -8,6 +8,193 @@
#include "libms/msgfile.h"
#include "sized_string.h"
class dFlowBase_c {
protected:
enum Type_e {
FLOW_NONE,
FLOW_MESSAGE,
FLOW_BRANCH,
FLOW_EVENT,
FLOW_ENTRY,
FLOW_JUMP,
};
public:
virtual ~dFlowBase_c() {}
/* vt 0x0C */ virtual void triggerEntryPoint(s32, s32) = 0;
/* vt 0x10 */ virtual void triggerEntryPoint(const char *) = 0;
/* vt 0x14 */ virtual void advanceFlow() = 0;
/* vt 0x18 */ virtual bool vt_0x18() const = 0;
/* vt 0x1C */ virtual bool handleEventInternal(const MsbFlowInfo *element) = 0;
/* vt 0x20 */ virtual bool handleEvent() = 0;
/* vt 0x24 */ virtual bool handleMessage() = 0;
/* vt 0x28 */ virtual bool handleBranch() = 0;
/* vt 0x2C */ virtual bool handleEntry() = 0;
/* vt 0x30 */ virtual bool handleJump() = 0;
/* vt 0x34 */ virtual void vt_0x34() {}
};
// Ghidra: ActorEventFlowManager
class dFlow_c : dFlowBase_c {
enum BranchValue_e {
BRANCH_00,
BRANCH_01,
BRANCH_02,
BRANCH_STORYFLAG,
BRANCH_04,
BRANCH_ZONEFLAG,
BRANCH_SCENEFLAG,
BRANCH_EVENT_COUNTER_THRESHOLD_1,
BRANCH_EVENT_COUNTER_THRESHOLD_2,
BRANCH_TEMPFLAG,
BRANCH_CURRENT_RUPEES,
BRANCH_RAND_2,
BRANCH_RAND_3,
BRANCH_RAND_4,
BRANCH_14,
BRANCH_15,
BRANCH_16,
BRANCH_FREE_SPACE_IN_POUCH,
BRANCH_18,
BRANCH_19,
BRANCH_FREE_SPACE_IN_ITEM_CHECK,
BRANCH_21,
BRANCH_22,
};
enum Event_e {
EVENT_SET_STORYFLAG = 0,
EVENT_UNSET_STORYFLAG = 1,
EVENT_SET_SCENEFLAG = 2,
EVENT_UNSET_SCENEFLAG = 3,
EVENT_SET_ZONEFLAG = 4,
EVENT_UNSET_ZONEFLAG = 5,
EVENT_DELAY = 6,
EVENT_07 = 7,
EVENT_RUPEES = 8,
EVENT_SET_ITEM = 9,
EVENT_EXIT = 10,
EVENT_12 = 12,
EVENT_COUNTER_THRESHOLD = 23,
EVENT_PLAY_SOUND = 24,
EVENT_ADD_ITEM = 25,
EVENT_SET_TEMPFLAG = 28,
EVENT_UNSET_TEMPFLAG = 29,
EVENT_LIGHT_PILLAR_30 = 30,
EVENT_LIGHT_PILLAR_34 = 34,
EVENT_SET_STORYFLAG_217 = 37,
EVENT_DEMO_METER_ITEM_SELECT = 38,
EVENT_CAMERA_42 = 42,
EVENT_LYT_MINI_GAME = 44,
EVENT_LYT_MINI_GAME_END = 45,
EVENT_46 = 46,
EVENT_RESET_STORYFLAG = 52,
EVENT_SET_ITEMFLAG = 53,
EVENT_PALETTE = 54,
EVENT_DEMO_DOWSING = 55,
EVENT_DEMO_METER_DOWSING = 56,
EVENT_DEMO_METER_MINUS_BTN = 57,
EVENT_SELECT_STORY_DOWSING = 58,
EVENT_DEMO_COLLECTION_SCREEN = 59,
};
public:
dFlow_c();
virtual ~dFlow_c();
typedef u16 (dFlow_c::*BranchHandler)(const MsbFlowInfo *element) const;
/* vt 0x0C */ virtual void triggerEntryPoint(s32 labelPart1, s32 labelPart2) override;
/* vt 0x10 */ virtual void triggerEntryPoint(const char *) override;
/* vt 0x14 */ virtual void advanceFlow() override;
/* vt 0x18 */ virtual bool vt_0x18() const override;
/* vt 0x1C */ virtual bool handleEventInternal(const MsbFlowInfo *element) override;
/* vt 0x20 */ virtual bool handleEvent() override;
/* vt 0x24 */ virtual bool handleMessage() override;
/* vt 0x28 */ virtual bool handleBranch() override;
/* vt 0x2C */ virtual bool handleEntry() override;
/* vt 0x30 */ virtual bool handleJump() override;
/* vt 0x38 */ virtual bool vt_0x38() const {
return 0;
}
/* vt 0x3C */ virtual u16 getSwitchChoice(const MsbFlowInfo *element, u16 param) const;
/* vt 0x40 */ virtual bool triggerEntryPointChecked(s32 labelPart1, s32 labelPart2);
bool advanceUntilEvent(s32 searchParam3, s32 *pOutParams1n2);
bool advanceUntil(s32 searchType, s32 searchParam3, s32 *pOutParams1n2);
u16 getField_0x44() const;
u16 getField_0x46() const;
protected:
static s32 sExitId;
static BranchHandler sBranchHandlers[];
u16 branchHandler00(const MsbFlowInfo *element) const;
u16 branchHandler01(const MsbFlowInfo *element) const;
u16 branchHandler02(const MsbFlowInfo *element) const;
u16 branchHandler03(const MsbFlowInfo *element) const;
u16 branchHandler04(const MsbFlowInfo *element) const;
u16 branchHandler05(const MsbFlowInfo *element) const;
u16 branchHandler06(const MsbFlowInfo *element) const;
u16 branchHandler07(const MsbFlowInfo *element) const;
u16 branchHandler08(const MsbFlowInfo *element) const;
u16 branchHandler09(const MsbFlowInfo *element) const;
u16 branchHandler10(const MsbFlowInfo *element) const;
u16 branchHandler11(const MsbFlowInfo *element) const;
u16 branchHandler12(const MsbFlowInfo *element) const;
u16 branchHandler13(const MsbFlowInfo *element) const;
u16 branchHandler14(const MsbFlowInfo *element) const;
u16 branchHandler15(const MsbFlowInfo *element) const;
u16 branchHandler16(const MsbFlowInfo *element) const;
u16 branchHandler17(const MsbFlowInfo *element) const;
u16 branchHandler18(const MsbFlowInfo *element) const;
u16 branchHandler19(const MsbFlowInfo *element) const;
u16 branchHandler20(const MsbFlowInfo *element) const;
u16 branchHandler21(const MsbFlowInfo *element) const;
u16 branchHandler22(const MsbFlowInfo *element) const;
u16 findEntryPoint(u16 labelPart1, u16 labelPart2);
u16 findEntryPoint(const char *label);
void start(u16 entry);
void clear();
void setNext(u16 next);
void setField0x3C();
bool checkField0x3C() const;
bool matchesUnknownActorCategory(s32 id) const;
static void playSound(u32);
void createLytMiniGame();
void clearMinigame();
/* 0x04 */ MsbfInfo *mpMsbf;
/* 0x08 */ s32 mCurrentFlowIndex;
/* 0x0C */ u16 field_0x0C;
/* 0x0E */ u8 field_0x0E;
/* 0x0F */ u8 field_0x0F;
/* 0x10 */ u8 field_0x10;
/* 0x14 */ s32 field_0x14;
/* 0x18 */ s32 mResultFromCounterCheck;
/* 0x1C */ SizedString<32> mCurrentTextLabelName;
/* 0x3C */ u8 field_0x3C;
/* 0x40 */ s32 field_0x40;
/* 0x44 */ u16 field_0x44;
/* 0x46 */ u16 field_0x46;
/* 0x48 */ s32 mDelayTimer;
/* 0x4C */ MsbFlowInfo mFlowInfo;
/* 0x5C */ s32 field_0x5C;
/* 0x60 */ s32 mFiInfo0;
};
class dMessage_c : public dBase_c {
public:
dMessage_c();
@@ -30,6 +217,7 @@ public:
return sTagProcessor;
}
void clearLightPillarRelatedArgs();
void init();
void reset();
@@ -49,23 +237,63 @@ public:
field_0x2FC = val;
}
void setField_0x328(u8 val) {
field_0x328 = val;
}
s32 getField_0x32C() const {
return field_0x32C;
}
void setField_0x32C(s32 val) {
field_0x32C = val;
}
void setField_0x329(bool v) {
field_0x329 = v;
}
void setField_0x32A(bool v) {
field_0x32A = v;
}
bool getField_0x32A() const {
return field_0x32A;
}
void setField_0x330(bool v) {
field_0x330 = v;
}
void setMiniGameVariant(s32 v) {
mMiniGameVariant = v;
}
s32 getMiniGameVariant() const {
return mMiniGameVariant;
}
void setField_0x344(s32 v) {
field_0x344 = v;
}
u8 getField_0x340() const {
return field_0x340;
}
void setField_0x340(u8 v) {
field_0x340 = v;
}
static bool isValidTextLabel(const char *name);
static void loadTextByLabel(const char *label, dTagProcessor_c *tagProcessor, bool, u32, u32);
static s32 getMsbtIndexForLabel(const char *name);
static const char *getMsbtFileName(s32 index);
static MsbfInfo *getMsbfInfoForIndex(s32 index);
static s32 getMsbtIndexForMsbfIndex(s32);
static const char *getArcNameByIndex(s32 idx, bool);
static MsbtInfo *getMsbtInfoForIndex(s32 index);
static const wchar_t *getTextMessageByLabel(const char *label, bool global, wchar_t *dstBuf, u32 maxLen);
static const wchar_t *
@@ -73,9 +301,16 @@ public:
static const wchar_t *formatText(const wchar_t *text);
static MsbtInfo *getMsbtInfoForIndex(s32 index);
static MsbfInfo *getMsbfInfoForIndex(s32 index);
static const char *getArcNameByIndex(s32 idx, bool);
void storeLightPillarRelatedArg(u32);
u32 getLightPillarRelatedArg(s32);
s32 getCurrentTextFileNumber() const {
return mCurrentTextFileNumber;
}
void setCurrentTextFileNumber(s32 num) {
mCurrentTextFileNumber = num;
}
private:
static void *sZev0;
@@ -105,7 +340,6 @@ private:
s32 getTextIndexForLabel(const char *label);
s32 getMsbtIndexForLabelInternal(const char *label);
MsbtInfo *getMsbtInfoForIndexInternal(s32 index);
MsbfInfo *getMsbfInfoForIndexInternal(s32 index);
static const char *getArcNameByIndexInternal(s32 idx, bool global);
@@ -120,7 +354,7 @@ private:
/* 0x2FC */ s32 field_0x2FC;
/* 0x300 */ u8 _0x300[0x328 - 0x300];
/* 0x300 */ u32 field_0x300[10];
/* 0x328 */ bool field_0x328;
/* 0x329 */ bool field_0x329;
@@ -128,11 +362,12 @@ private:
/* 0x32B */ u8 field_0x32B;
/* 0x32C */ s32 field_0x32C;
/* 0x330 */ u8 _0x330[0x334 - 0x330];
/* 0x330 */ u8 field_0x330;
/* 0x334 */ u32 mMinigameResultPoints;
/* 0x338 */ u32 mMinigameTime;
/* 0x33C */ u8 _0x33C[0x344 - 0x33C];
/* 0x33C */ s32 mMiniGameVariant;
/* 0x340 */ u8 field_0x340;
/* 0x344 */ s32 field_0x344;
};
+3
View File
@@ -2,5 +2,8 @@
#define D_PLAYER_H
#include "common.h"
#include "d/a/d_a_player.h"
dAcPy_c *getLinkPtr();
#endif
+11
View File
@@ -2,11 +2,22 @@
#define D_POUCH_H
#include "common.h"
#include "d/a/d_a_itembase.h"
u32 convertFilePouchSlot(s32 fileSlot);
s32 convertLytPouchSlot(s32 fileSlot);
s32 getPouchSlotCount(bool unk);
bool isItemExtraAmmo(s32 item);
bool isItemMedal(s32 item);
bool hasAnyShields();
#define POUCH_SLOT_NONE 8
u8 adventurePouchFindItemSlot(ITEM_ID item);
u32 adventurePouchCountItem(ITEM_ID itemId);
#define ITEM_CHECK_SLOT_NONE 60
u16 itemCheckFindItemSlot(ITEM_ID item);
#endif
+1 -1
View File
@@ -127,7 +127,7 @@ public:
virtual int draw() override;
virtual void deleteReady() override;
void triggerExit(s32 room, u8 exitIndex, s32 forcedNight = 2, s32 forcedTrial = 2);
void triggerExit(s32 room, u16 exitIndex, s32 forcedNight = 2, s32 forcedTrial = 2);
// void triggerEntrance(const char *stageName, u8 room, );
const LinkReloadInfo &getLinkReloadInfo() const;
+2 -2
View File
@@ -137,7 +137,7 @@ public:
return mFader.isStatus(mFaderBase_c::FADED_IN);
}
u8 getCurrRoomId() const {
s8 getCurrRoomId() const {
return curr_room_id;
}
@@ -158,7 +158,7 @@ private:
/* 0x01A0 */ MapRelated mapRelated;
/* 0x0394 */ u8 _0x394[0x39C - 0x394];
/* 0x039C */ u32 loaded_entities[2047];
/* 0x2398 */ u8 curr_room_id;
/* 0x2398 */ s8 curr_room_id;
/* 80575760 */ static dStage_c *sInstance;
};
+1
View File
@@ -48,6 +48,7 @@ public:
STATE_FUNC_DECLARE(dStageMgr_c, RestartScene);
public:
bool isAreaTypeNormal() const;
bool isAreaTypeDungeon() const;
bool isAreaTypeSky() const;
bool isAreaTypeHouse() const;
+13
View File
@@ -132,6 +132,19 @@ public:
field_0x82C = val;
}
void setFields_0x8FC_0x900(s32 v1, s32 v2) {
field_0x8FC = v1;
field_0x900 = v2;
}
s32 getField_0x8FC() const {
return field_0x8FC;
}
s32 getField_0x900() const {
return field_0x900;
}
void setField_0x90D(u8 val) {
field_0x90D = val;
}
+3
View File
@@ -11,6 +11,9 @@ public:
bool isInSomeMapState() const;
bool isNotInStateMap() const;
void openCollectionScreenDemo();
bool isStateNormalOrNotInEvent() const;
void somehowRelatedToEnteringLightPillars(s32, s32, s32);
void fn_802CCD40(bool);
+39
View File
@@ -0,0 +1,39 @@
#ifndef D_LYT_DEMO_DOWSING_H
#define D_LYT_DEMO_DOWSING_H
#include "common.h"
#include "d/d_base.h"
#include "d/lyt/d2d.h"
#include "s/s_State.hpp"
class dLytDemoDowsing_c : public dBase_c {
public:
dLytDemoDowsing_c() : mStateMgr(*this, sStateID::null) {
sInstance = this;
}
virtual ~dLytDemoDowsing_c() {
sInstance = nullptr;
}
static dLytDemoDowsing_c *GetInstance() {
return sInstance;
}
void start() {
mShouldStart = true;
}
private:
STATE_FUNC_DECLARE(dLytDemoDowsing_c, Wait);
STATE_FUNC_DECLARE(dLytDemoDowsing_c, Start);
static dLytDemoDowsing_c *sInstance;
/* 0x068 */ UI_STATE_MGR_DECLARE(dLytDemoDowsing_c);
/* 0x0A4 */ d2d::ResAccIf_c mResAcc;
/* 0x414 */ d2d::LytBase_c mLyt;
/* 0x4A4 */ d2d::AnmGroup_c mAnm[2];
/* 0x524 */ bool mShouldStart;
};
#endif
+5
View File
@@ -278,6 +278,7 @@ public:
bool isOpenMaybe() const;
bool fn_80139EA0() const;
void lightPillarRelated(s32, s32, s32);
STATE_FUNC_DECLARE(dLytMapMain_c, Invisible);
STATE_FUNC_DECLARE(dLytMapMain_c, RenderingWait);
@@ -417,6 +418,10 @@ public:
return isValid(val) && ((1 << (val - 2)) & 0x1D);
}
void lightPillarRelated(s32 p1, s32 p2, s32 p3) {
mMapMain.lightPillarRelated(p1, p2, p3);
}
private:
/* 0x0004 */ d2d::ResAccIf_c mResAcc;
/* 0x0374 */ dLytMapMain_c mMapMain;
+25
View File
@@ -0,0 +1,25 @@
#ifndef D_LYT_MINI_GAME_H
#define D_LYT_MINI_GAME_H
#include "common.h"
class dLytMiniGame_c {
public:
static dLytMiniGame_c *GetInstance() {
return sInstance;
}
void timeRelatedExecute();
void scoreRelatedExecute();
void setDisplayedTime(s32 time);
void setDisplayedPoints(s32 time);
void timeRelated();
void scoreRelated();
private:
static dLytMiniGame_c *sInstance;
};
#endif
+22
View File
@@ -239,6 +239,18 @@ public:
return &sInstance->mMain;
}
bool itemSelectDemoRelated(s32 arg) {
return mMain.mItemSelect.fn_800F0220(arg);
}
bool dowsingDemoRelated(s32 arg) {
return mMain.mDowsing.fn_800FE3C0(arg);
}
bool minusBtnDemoRelated(s32 arg) {
return mMain.mMinusBtn.demoRelated(arg);
}
// Not all of these inlines exist on dLytMeterMain_c
// because accessing via GetMeter->get... causes
// different instructions sometimes
@@ -255,6 +267,10 @@ public:
return mMain.field_0x13774;
}
void setMeterField_0x13775(bool val) {
mMain.field_0x13775 = val;
}
bool getMeterField_0x1377F() const {
return mMain.field_0x1377F;
}
@@ -309,6 +325,12 @@ public:
}
}
static void setRupyField_0x8AD(u8 val) {
if (sInstance != nullptr) {
sInstance->mMain.mRupy.setField_0x8AD(val);
}
}
static u8 getRupyField_0x8AC() {
if (sInstance != nullptr) {
return sInstance->mMain.mRupy.getField_0x8AC();
+4
View File
@@ -109,6 +109,10 @@ public:
field_0x8AC = val;
}
void setField_0x8AD(u8 val) {
field_0x8AD = val;
}
void setSize(u8 size) {
mSize = size;
}
+20 -1
View File
@@ -36,10 +36,13 @@ public:
bool isVisible() const;
bool isOutputtingText() const;
void setCurrentLabelName(const char *name, bool storeFile);
bool setCurrentLabelName(const char *name, bool storeFile);
void setCurrentEntrypointName(const char *name);
void setCurrentFlowFilename(const char *name);
void setNumericArg0(s32 arg);
void setNumericArgs(s32 *arg, s32 argCount);
static dLytMsgWindow_c *getInstance() {
return sInstance;
}
@@ -58,6 +61,22 @@ public:
return sInstance->mEntryPointToTrigger;
}
dTagProcessor_c *getTagProcessor() const {
return mpTagProcessor;
}
u8 getField_0x80D() const {
return field_0x80D;
}
u8 getField_0x815() const {
return field_0x815;
}
s32 getTextOptionSelection() const {
return mTextOptionSelection;
}
private:
bool setTextToDisplay(const wchar_t *text);
void createSubMsgManager(u8 type);
+3 -3
View File
@@ -12,10 +12,10 @@ struct MsbfInfo;
struct MsbFlowInfo {
/* 0x00 */ unsigned char type;
/* 0x01 */ char subType;
/* 0x04 */ int params1n2;
/* 0x04 */ unsigned int params1n2;
/* 0x08 */ short next;
/* 0x0A */ short param3;
/* 0x0C */ short param4;
/* 0x0A */ unsigned short param3;
/* 0x0C */ unsigned short param4;
/* 0x0E */ unsigned short param5;
};
+2 -1
View File
@@ -6,7 +6,7 @@
#ifdef __cplusplus
extern "C" {
#endif
// IWYU pragma: begin_exports
#include "rvl/OS/OS.h"
#include "rvl/OS/OSAddress.h"
#include "rvl/OS/OSAlarm.h"
@@ -39,6 +39,7 @@ extern "C" {
#include "rvl/OS/OSTime.h"
#include "rvl/OS/OSUtf.h"
#include "rvl/OS/__ppc_eabi_init.h"
// IWYU pragma: end_exports
#ifdef __cplusplus
}
+7
View File
@@ -43,6 +43,13 @@ struct SizedString {
}
}
void set(const char *src) {
if (src != mChars) {
mChars[0] = '\0';
append(src);
}
}
void operator+=(const char *src) {
if (src != nullptr) {
append(src);
@@ -231,6 +231,8 @@ public:
}
void fn_800223A0(void *);
void fn_80022440(void *);
// light pillar related
void fn_80024240(s16, s16, s16);
u8 get0x2DE8() const {
return field_0x2DE0[8];
+141
View File
@@ -0,0 +1,141 @@
#ifndef FI_CONTEXT_H
#define FI_CONTEXT_H
#include "common.h"
struct FiAnalysisEntry {
/* 0x00 */ const char *mStageName;
/* 0x04 */ u16 mStoryFlag;
/* 0x06 */ s16 mKen3MonsterPresenceEntry;
/* 0x08 */ u8 mSuitabilityPercent[4];
/* 0x0C */ u16 mKen3SuitabilityAnalysis[4];
/* 0x14 */ s16 mShieldType;
/* 0x16 */ s16 mShieldMessage;
};
class FiAnalysisHandle {
public:
s16 getEquipmentFocus() const;
s16 getAreaIndexForFiAreaName() const;
s32 getSuitabilityArg() const;
s16 getSuitabilityLabel() const;
s16 getShieldMessage();
s16 shieldRelated();
bool isValid() const;
private:
FiAnalysisEntry *mpEntry;
};
class FiContext {
public:
static void create();
static s32 getGlobalFiInfo0(s32);
static FiAnalysisHandle getNaviTableEquipmentCheckEntry();
static u8 rateBattlePerformance(u8 enemyActorId);
static s16 getNaviTableProgressSummary();
static s16 getFiAdviceHintEntry();
static s16 getUnkObjectiveValue();
bool getDoSpecialFiMenuHandling() const {
return mDoSpecialFiMenuHandling;
}
static bool getDoSpecialFiMenuHandlingChecked() {
if (sInstance != nullptr) {
return sInstance->getDoSpecialFiMenuHandling();
} else {
return false;
}
}
static void setDoSpecialFiMenuHandling(bool val) {
if (sInstance != nullptr) {
sInstance->mDoSpecialFiMenuHandling = val;
}
}
static const wchar_t *getMessageForFiInfo(s32 arg) {
return getTextMessage(getGlobalFiInfo0(arg));
}
static FiContext *GetInstance() {
return sInstance;
}
static void setField_0x48(bool val) {
if (sInstance != nullptr) {
sInstance->field_0x48 = val;
}
}
static void setField_0x4A(bool val) {
if (sInstance != nullptr) {
sInstance->field_0x4A = val;
}
}
static s32 getHelpIndex() {
if (sInstance != nullptr) {
return sInstance->mFiHelpIndex;
} else {
return -1;
}
}
static s32 getTargetActorId() {
if (sInstance != nullptr) {
return sInstance->mTargetActorId;
} else {
return -1;
}
}
static void do_fn_8016CB00(s32 arg) {
if (sInstance != nullptr) {
sInstance->fn_8016CB00(arg);
}
}
static void do_fn_8016CB40() {
if (sInstance != nullptr) {
sInstance->fn_8016CB40();
}
}
static void do_fn_8016CA00() {
if (sInstance != nullptr) {
sInstance->fn_8016CA00();
}
}
static void do_fn_8016CB20() {
if (sInstance != nullptr) {
sInstance->fn_8016CB20();
}
}
void resetField_0x3C();
static const wchar_t *getTextMessage(s32 idx);
private:
static FiContext *sInstance;
void fn_8016CB00(s32);
void fn_8016CB40();
void fn_8016CA00();
void fn_8016CB20();
/* 0x00 */ u8 _0x00[0x34 - 0x00];
/* 0x34 */ s32 mTargetActorId;
/* 0x38 */ s32 mFiHelpIndex;
/* 0x3C */ u8 _0x3C[0x48 - 0x3C];
/* 0x48 */ bool field_0x48;
/* 0x49 */ bool field_0x49;
/* 0x4A */ bool field_0x4A;
/* 0x4B */ bool mDoSpecialFiMenuHandling;
};
#endif
-17
View File
@@ -1,17 +0,0 @@
#ifndef GLOBAL_FI_CONTEXT_H
#define GLOBAL_FI_CONTEXT_H
#include "common.h"
struct FiContext {
/* 0x00 */ u8 _0x00[0x4B - 0x00];
/* 0x4B */ bool mDoSpecialFiMenuHandling;
static s32 getGlobalFiInfo0(s32);
};
extern "C" FiContext *GLOBAL_FI_CONTEXT;
extern "C" void fn_8016C9F0(FiContext *);
extern "C" void createGlobalFiContext();
#endif
+5
View File
@@ -17,8 +17,13 @@ extern "C" void fn_803618F0(void *);
extern "C" void fn_80362730(void *);
extern "C" void fn_80365D20(void *);
extern "C" void fn_803624F0(void *);
extern "C" void fn_80364FD0(void *, s32);
extern "C" void *ENEMY_BGM_RELATED_MGR;
extern "C" void fn_80384570(void *, bool);
extern "C" void fn_803858D0(void *);
extern "C" void *FANFARE_SOUND_MGR;
extern "C" void AnotherSoundMgr__playSound(void *, s32);
#endif
+27
View File
@@ -0,0 +1,27 @@
#ifndef UNK_SAVE_TIME_H
#define UNK_SAVE_TIME_H
#include "common.h"
class SaveTimeRelated {
public:
static SaveTimeRelated *GetInstance() {
return sInstance;
}
s64 getField_0x08() const {
return field_0x08;
}
s64 fn_801907D0();
void fn_801907F0();
void fn_801909A0();
private:
static SaveTimeRelated *sInstance;
/* 0x00 */ u8 _0x00[0x08 - 0x00];
/* 0x08 */ u64 field_0x08;
};
#endif
+1 -1
View File
@@ -6,6 +6,7 @@
#include "d/a/d_a_player.h"
#include "d/col/c/c_cc_d.h"
#include "d/col/cc/d_cc_s.h"
#include "d/d_pouch.h"
#include "d/flag/sceneflag_manager.h"
#include "m/m_angle.h"
#include "toBeSorted/small_sound_mgr.h"
@@ -37,7 +38,6 @@ bool dTgReaction_c::createHeap() {
}
extern "C" bool isHeroMode();
extern "C" u32 adventurePouchCountItem(u32 itemId);
int dTgReaction_c::create() {
// Note the double _c here
+3 -3
View File
@@ -11,6 +11,7 @@
#include "d/col/c/c_bg_s_poly_info.h"
#include "d/col/cc/d_cc_d.h"
#include "d/col/cc/d_cc_s.h"
#include "d/d_pouch.h"
#include "d/d_room.h"
#include "d/d_stage.h"
#include "d/flag/sceneflag_manager.h"
@@ -1935,8 +1936,6 @@ void dAcTbox_c::finalizeState_LoadArchive() {}
extern "C" void fn_800298B0(u16 effectIndex, mVec3_c *, mAng3_c *, mVec3_c *, void *, void *, void *, void *);
extern "C" const u16 PARTICLE_RESOURCE_ID_MAPPING_209_;
extern "C" const bool isPouchItem(u16);
extern "C" u8 adventurePouchFindItemSlot(ITEM_ID item);
extern "C" u16 findItemInItemCheck(ITEM_ID item);
extern "C" dAcItem_c *giveItem3(u16 item, s32);
void dAcTbox_c::initializeState_Open() {
@@ -1962,7 +1961,8 @@ void dAcTbox_c::initializeState_Open() {
}
fn_8026D140();
ITEM_ID itemId = mItemId != 0 ? (ITEM_ID)mItemId : ITEM_GODDESS_HARP;
if (isPouchItem(itemId) && adventurePouchFindItemSlot(ITEM_NONE) == 8 && findItemInItemCheck(ITEM_NONE) == 0x3C) {
if (isPouchItem(itemId) && adventurePouchFindItemSlot(ITEM_NONE) == POUCH_SLOT_NONE &&
itemCheckFindItemSlot(ITEM_NONE) == ITEM_CHECK_SLOT_NONE) {
setShouldCloseFlag();
}
dAcItem_c *item = giveItem3(itemId, -1);
+1256 -7
View File
File diff suppressed because it is too large Load Diff
+5 -6
View File
@@ -16,6 +16,7 @@
#include "toBeSorted/file_manager.h"
#include "toBeSorted/minigame_mgr.h"
#include "toBeSorted/music_mgrs.h"
#include "toBeSorted/unk_save_time.h"
#include <cstring>
@@ -232,7 +233,7 @@ void dScGame_c::clearSpawnInfo() {
}
extern "C" void processEventFlags();
void dScGame_c::triggerExit(s32 room, u8 exitIndex, s32 forcedNight, s32 forcedTrial) {
void dScGame_c::triggerExit(s32 room, u16 exitIndex, s32 forcedNight, s32 forcedTrial) {
processEventFlags();
// TODO
}
@@ -261,8 +262,6 @@ bool dScGame_c::isCurrentStage(const char *stage) {
}
extern "C" void fn_801BB9C0();
extern "C" void *lbl_80575688;
extern "C" void fn_801909A0(void *);
extern "C" void maybeResetSkykeepPuzzle(bool);
void dScGame_c::copySpawnNextToCurrent() {
@@ -271,7 +270,7 @@ void dScGame_c::copySpawnNextToCurrent() {
sDoSomethingWithFileAOnTransition = false;
}
if (std::strncmp(currentSpawnInfo.stageName, nextSpawnInfo.stageName, 2)) {
fn_801909A0(lbl_80575688);
SaveTimeRelated::GetInstance()->fn_801909A0();
}
currentSpawnInfo = nextSpawnInfo;
sCurrentLayer = currentSpawnInfo.layer;
@@ -283,13 +282,13 @@ void dScGame_c::actuallyTriggerEntrance(
u16 transitionFadeFrames, s8 field0x28
) {
s32 trial, night;
if (forcedTrial == 2) {
if (forcedTrial == SpawnInfo::RETAIN_TRIAL) {
trial = currentSpawnInfo.trial;
} else {
trial = forcedTrial;
}
if (forcedNight == 2) {
if (forcedNight == SpawnInfo::RETAIN_TOD) {
night = currentSpawnInfo.night;
} else {
night = forcedNight;
+4 -3
View File
@@ -16,6 +16,7 @@
#include "toBeSorted/file_manager.h"
#include "toBeSorted/music_mgrs.h"
#include "toBeSorted/reload_color_fader.h"
#include "toBeSorted/unk_save_time.h"
SPECIAL_BASE_PROFILE(TITLE, dScTitle_c, fProfile::TITLE, 0, 0);
@@ -39,14 +40,14 @@ static const char *sLayoutArcsToLoad[] = {
STATE_VIRTUAL_DEFINE(dScTitle_c, Stanby);
STATE_VIRTUAL_DEFINE(dScTitle_c, Action);
extern "C" void *lbl_80575688;
extern "C" void fn_801907F0(void *);
extern "C" void *lbl_805750D8;
extern "C" void fn_80052D50(void *);
dScTitle_c::dScTitle_c() {
sInstance = this;
mRelCtrl.set(sModulesToLoad, ARRAY_LENGTH(sModulesToLoad));
mLayoutCtrl.set(sLayoutArcsToLoad, ARRAY_LENGTH(sLayoutArcsToLoad));
fn_801907F0(lbl_80575688);
SaveTimeRelated::GetInstance()->fn_801907F0();
if (checkAllSaveFilesEmpty() == true) {
actuallyTriggerEntrance("F000", 0, 26, 55, 0, 0, 0, 15, -1);
} else {
+9
View File
@@ -0,0 +1,9 @@
#include "d/lyt/d_lyt_demo_dowsing.h"
#include "f/f_profile.h"
#include "s/s_State.hpp"
SPECIAL_BASE_PROFILE(LYT_DEMO_DOWSING, dLytDemoDowsing_c, fProfile::LYT_DEMO_DOWSING, 0x2AA, 0x6F9);
STATE_DEFINE(dLytDemoDowsing_c, Wait);
STATE_DEFINE(dLytDemoDowsing_c, Start);
+2 -2
View File
@@ -1564,8 +1564,8 @@ bool dLytMeterMain_c::execute() {
if (dMessage_c::getInstance()->getField_0x2FC() != 0) {
rupeePos = 3;
if (dLytMsgWindow_c::getInstance() != nullptr && (dLytMsgWindow_c::getInstance()->fn_800D7B40() == 0x9E02 ||
dLytMsgWindow_c::getInstance()->fn_800D7B40() == 0x768C)) {
if (dLytMsgWindow_c::getInstance() != nullptr && (dLytMsgWindow_c::getInstance()->fn_800D7B40() == 40450 ||
dLytMsgWindow_c::getInstance()->fn_800D7B40() == 30348)) {
s32 off = -(mHeart.getCurrentHealthCapacity() / 4 <= 10);
rupeePos = 6 + off;
}
+8 -10
View File
@@ -1,14 +1,12 @@
#include "d/lyt/meter/d_lyt_meter_rupy.h"
#include "c/c_math.h"
#include "d/a/d_a_item.h"
#include "d/lyt/d2d.h"
#include "d/lyt/d_lyt_meter_configuration.h"
#include "nw4r/math/math_types.h"
#include "toBeSorted/small_sound_mgr.h"
extern "C" s32 getRupeeCounter2();
extern "C" u32 getCurrentWalletCapacity2();
STATE_DEFINE(dLytMeterRupyStart_c, Wait);
STATE_DEFINE(dLytMeterRupyStart_c, Start);
@@ -239,7 +237,7 @@ void dLytMeterRupy_c::executeState_Out() {
field_0x8AB = 0;
if (field_0x8AE == 0 && hasChangeInRupees()) {
mDisplayedRupeeCount = getRupeeCounter2();
mDisplayedRupeeCount = dAcItem_c::getRupeeCounter();
updateDisplayedAmount(true);
}
@@ -290,7 +288,7 @@ bool dLytMeterRupy_c::build(d2d::ResAccIf_c *resAcc) {
mAnm[RUPY_ANIM_IN].setAnimEnable(false);
field_0x8AB = 0;
mDisplayedRupeeCount = getRupeeCounter2();
mDisplayedRupeeCount = dAcItem_c::getRupeeCounter();
field_0x890 = -1;
mBlinkDelay = cM::rndF(10.0f);
for (int i = 0; i < RUPY_NUM_DIGITS; i++) {
@@ -362,7 +360,7 @@ bool dLytMeterRupy_c::execute() {
bool isMax = false;
u32 current = mDisplayedRupeeCount;
u32 capacity = getCurrentWalletCapacity2();
u32 capacity = dAcItem_c::getCurrentWalletCapacity();
if (current != 0 && capacity == current) {
isMax = true;
};
@@ -375,7 +373,7 @@ bool dLytMeterRupy_c::execute() {
}
bool dLytMeterRupy_c::hasChangeInRupees() const {
s32 amount = getRupeeCounter2();
s32 amount = dAcItem_c::getRupeeCounter();
if (amount > 9999) {
amount = 9999;
} else if (amount < 0) {
@@ -385,7 +383,7 @@ bool dLytMeterRupy_c::hasChangeInRupees() const {
}
s32 dLytMeterRupy_c::getRupeeDifference() const {
return getRupeeCounter2() - mDisplayedRupeeCount;
return dAcItem_c::getRupeeCounter() - mDisplayedRupeeCount;
}
mVec3_c dLytMeterRupy_c::getLastVisibleDigitPosition() {
@@ -407,7 +405,7 @@ void dLytMeterRupy_c::setDigit(s32 index, s32 digit) {
}
bool dLytMeterRupy_c::updateDisplayedAmount(bool suppressSound) {
s32 amount = getRupeeCounter2();
s32 amount = dAcItem_c::getRupeeCounter();
if (amount > 9999) {
amount = 9999;
} else if (amount < 0) {
@@ -512,7 +510,7 @@ bool dLytMeterRupy_c::updateDisplayedAmount(bool suppressSound) {
mPrevDigits[1] = mDisplayedDigits[1];
mPrevDigits[2] = mDisplayedDigits[2];
mPrevDigits[3] = mDisplayedDigits[3];
} else if (field_0x8AD && amount == getCurrentWalletCapacity2()) {
} else if (field_0x8AD && amount == dAcItem_c::getCurrentWalletCapacity()) {
SmallSoundManager::GetInstance()->playSound(SE_S_RUPEE_MAX);
field_0x890 = 0;
field_0x8AD = 0;
+7 -7
View File
@@ -33,7 +33,7 @@
#include "toBeSorted/arc_managers/layout_arc_manager.h"
#include "toBeSorted/d_d3d.h"
#include "toBeSorted/event_manager.h"
#include "toBeSorted/global_fi_context.h"
#include "toBeSorted/fi_context.h"
#include "toBeSorted/lyt_related_floats.h"
#include "toBeSorted/music_mgrs.h"
#include "toBeSorted/other_sound_stuff.h"
@@ -89,8 +89,8 @@ bool dLytMsgWindow_c::build() {
mpTagProcessor = new dTagProcessor_c();
mpMsgWindowUnk = new TextWindowUnk(mpTagProcessor);
if (GLOBAL_FI_CONTEXT != nullptr) {
fn_8016C9F0(GLOBAL_FI_CONTEXT);
if (FiContext::GetInstance() != nullptr) {
FiContext::GetInstance()->resetField_0x3C();
}
mpWindowTalk = nullptr;
@@ -514,8 +514,8 @@ void dLytMsgWindow_c::executeState_WaitKeySelectQuestion() {
field_0x824 = 0;
mTextOptionSelection = selection;
field_0x1220 = 0;
if (GLOBAL_FI_CONTEXT != nullptr) {
doFiThing = GLOBAL_FI_CONTEXT->mDoSpecialFiMenuHandling;
if (FiContext::GetInstance() != nullptr) {
doFiThing = FiContext::GetInstance()->getDoSpecialFiMenuHandling();
}
if (doFiThing) {
@@ -714,10 +714,10 @@ bool dLytMsgWindow_c::draw() {
return true;
}
void dLytMsgWindow_c::setCurrentLabelName(const char *name, bool storeFile) {
bool dLytMsgWindow_c::setCurrentLabelName(const char *name, bool storeFile) {
// TODO
mName = name;
!std::strcmp(name, "FR_SIREN_04");
return !std::strcmp(name, "FR_SIREN_04");
}
bool dLytMsgWindow_c::isVisible() const {
+1 -2
View File
@@ -6,6 +6,7 @@
#include "d/a/d_a_item.h"
#include "d/a/d_a_itembase.h"
#include "d/a/d_a_player.h"
#include "d/d_pouch.h"
#include "m/m_angle.h"
#include "m/m_vec.h"
@@ -444,8 +445,6 @@ bool SpecialItemDropMgr::shouldTryExtraRupees(int specialItemId) {
return sDropTable.mList[specialItemId].mFlags & FLAG_EXTRA_RUPEES;
}
extern "C" bool adventurePouchCountItem(u32 itemId);
// 800c7d40
int SpecialItemDropMgr::giveSpecialDropItem(
int specialItemId, int roomid, mVec3_c *pos, int subtype, mAng rot, s32 unused