From b4768a5439f07cf5124b014d375fc17abaa9df35 Mon Sep 17 00:00:00 2001 From: Felix Lee Date: Mon, 6 Jul 2026 16:14:08 -0700 Subject: [PATCH] Fix all mq setting --- src/hooks/useLogicInitialization.js | 9 +++++---- src/utils/logic-helper.js | 4 ++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/hooks/useLogicInitialization.js b/src/hooks/useLogicInitialization.js index af94093..38daa03 100644 --- a/src/hooks/useLogicInitialization.js +++ b/src/hooks/useLogicInitialization.js @@ -46,11 +46,12 @@ const useLogicInitialization = (options = {}) => { settings = response.settings; } - // Set settings on SettingsHelper - SettingsHelper.setSettings(settings); + // LogicHelper post-processes settings (e.g. mq_dungeons_mode "mq" expands + // mq_dungeons_specific to all dungeons), so set SettingsHelper from its result. + const finalSettings = LogicHelper.initialize(logicHelpersFile, settings); - LogicHelper.initialize(logicHelpersFile, settings); - updateItemsFromLogic(settings); // Starting items. + SettingsHelper.setSettings(finalSettings); + updateItemsFromLogic(finalSettings); // Starting items. setIsInitialized(true); } catch (err) { setError(err); diff --git a/src/utils/logic-helper.js b/src/utils/logic-helper.js index bee432e..96e4b43 100644 --- a/src/utils/logic-helper.js +++ b/src/utils/logic-helper.js @@ -193,7 +193,7 @@ class LogicHelper { }, }; - static async initialize(logicHelpersFile, settings) { + static initialize(logicHelpersFile, settings) { this.settings = settings; this.ruleAliases = {}; @@ -438,7 +438,7 @@ class LogicHelper { const disableTradeRevert = shuffleInteriorEntrances || this.settings.shuffle_overworld_entrances || this.settings.adult_trade_shuffle; const skipChildZelda = - !SettingsHelper.hasShuffleChildTrade("Zeldas Letter") && + !_.includes(this.settings.shuffle_child_trade, "Zeldas Letter") && _.includes(this.settings.starting_inventory, "zeldas_letter"); const triforceGoal = this.settings.triforce_goal_per_world * this.settings.world_count;