From 6b9d1737d481005b925702525efc232a933269e0 Mon Sep 17 00:00:00 2001 From: robojumper Date: Mon, 28 Oct 2024 05:02:53 +0100 Subject: [PATCH] Fix one of the dowsing_target functions (#84) --- src/toBeSorted/dowsing_target.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/toBeSorted/dowsing_target.cpp b/src/toBeSorted/dowsing_target.cpp index 41acf5bf..0dbf031e 100644 --- a/src/toBeSorted/dowsing_target.cpp +++ b/src/toBeSorted/dowsing_target.cpp @@ -72,12 +72,15 @@ bool DowsingTarget::hasDesertNodeDowsing() { return StoryflagManager::sInstance->getCounterOrFlag(107) && !StoryflagManager::sInstance->getCounterOrFlag(8); } +inline bool checkTrial(u16 itemflag, u16 storyflag) { + return (ItemflagManager::sInstance->getFlagDirect(itemflag) && !StoryflagManager::sInstance->getCounterOrFlag(storyflag)) ? true : false; +} + bool DowsingTarget::hasAnyTrialDowsing() { - // TODO more complicated code - return ItemflagManager::sInstance->getFlag(187) && !StoryflagManager::sInstance->getCounterOrFlag(93) || - ItemflagManager::sInstance->getFlag(188) && !StoryflagManager::sInstance->getCounterOrFlag(97) || - ItemflagManager::sInstance->getFlag(189) && !StoryflagManager::sInstance->getCounterOrFlag(98) || - ItemflagManager::sInstance->getFlag(193) && !StoryflagManager::sInstance->getCounterOrFlag(99); + return checkTrial(187, 93) || + checkTrial(188, 97) || + checkTrial(189, 98) || + checkTrial(193, 99); } bool DowsingTarget::hasSacredWaterDowsing() {