mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-20 14:44:24 -04:00
add tracker_isStageItem for Freestanding Item checking
This commit is contained in:
@@ -378,7 +378,7 @@ namespace dusk {
|
||||
} else if (auto& freeStandingItemNode = locationMeta["Freestanding Item"]) {
|
||||
auto flag = freeStandingItemNode[0]["Flag"].as<u8>();
|
||||
auto stageId = getStageSaveId(freeStandingItemNode[0]["Stage"].as<u8>());
|
||||
info.collected = tracker_isStageSwitch(stageId, flag);
|
||||
info.collected = tracker_isStageItem(stageId, flag);
|
||||
} else if (auto& eventFlagNode = locationMeta["Event Flag"]) {
|
||||
auto flag = eventFlagNode.as<u16>();
|
||||
info.collected = tracker_isEventBit(flag);
|
||||
|
||||
@@ -590,4 +590,12 @@ bool tracker_isStageSwitch(int stage, int flag) {
|
||||
return dComIfGs_isStageSwitch(stage, flag) ||
|
||||
(g_randomizerState.mTrackerTempSwitchFlag.flag == flag &&
|
||||
g_randomizerState.mTrackerTempSwitchFlag.stage == stage);
|
||||
}
|
||||
|
||||
bool tracker_isStageItem(int stage, int flag) {
|
||||
if (dComIfGp_getStageStagInfo() && stage == dStage_stagInfo_GetSaveTbl(dComIfGp_getStageStagInfo())) {
|
||||
return dComIfGs_isItem(flag, -1);
|
||||
} else {
|
||||
return g_dComIfG_gameInfo.info.getSavedata().getSave(stage).getBit().isItem(flag);
|
||||
}
|
||||
}
|
||||
@@ -29,4 +29,5 @@ int getStageSaveId(int id);
|
||||
int getStageSaveId(const char* stage);
|
||||
|
||||
bool tracker_isEventBit(u16 flag);
|
||||
bool tracker_isStageSwitch(int stage, int flag);
|
||||
bool tracker_isStageSwitch(int stage, int flag);
|
||||
bool tracker_isStageItem(int stage, int flag);
|
||||
Reference in New Issue
Block a user