fix logic bugs with Bombchus (#7117)

This commit is contained in:
Pepper0ni
2026-08-25 15:59:46 +01:00
committed by GitHub
parent 78e3683ef6
commit cc63cc4abd
2 changed files with 9 additions and 8 deletions
@@ -423,7 +423,7 @@ bool AddCheckToLogic(LocationAccess& locPair, GetAccessibleLocationsStruct& gals
ApplyOrStoreItem(location, gals, addToPlaythrough);
}
// If we want to ignore bombchus, only add if bombchu is not in the name
else if (IsBombchus(ignore) && IsBombchus(locItem, true)) {
else if (IsBombchus(ignore) && !IsBombchus(locItem, true)) {
ApplyOrStoreItem(location, gals, addToPlaythrough);
}
// We want to ignore a specific Buy item. Buy items with different RandomizerGets are recognised by a
+8 -7
View File
@@ -2462,7 +2462,9 @@ void Logic::ApplyItemEffect(Item& item, bool state) {
case RG_BOMBCHU_5:
case RG_BOMBCHU_10:
case RG_BOMBCHU_20:
SetInventory(ITEM_BOMBCHU, (!state ? ITEM_NONE : ITEM_BOMBCHU));
if (ctx->GetOption(RSK_BOMBCHU_BAG).IsNot(RO_BOMBCHU_BAG_PROGRESSIVE)) {
SetInventory(ITEM_BOMBCHU, (!state ? ITEM_NONE : ITEM_BOMBCHU));
}
break;
default:
break;
@@ -2583,14 +2585,13 @@ void Logic::ApplyItemEffect(Item& item, bool state) {
break;
case RG_DEKU_STICK_1:
case RG_BUY_DEKU_STICK_1:
case RG_STICKS:
SetInventory(ITEM_STICK, (!state ? ITEM_NONE : ITEM_STICK));
break;
case RG_BOMBCHU_5:
case RG_BOMBCHU_10:
case RG_BOMBCHU_20:
SetInventory(ITEM_BOMBCHU, (!state ? ITEM_NONE : ITEM_BOMBCHU));
break;
case RG_BUY_BOMBCHUS_10:
case RG_BUY_BOMBCHUS_20:
if (ctx->GetOption(RSK_BOMBCHU_BAG).Is(RO_BOMBCHU_BAG_NONE)) {
SetInventory(ITEM_BOMBCHU, (!state ? ITEM_NONE : ITEM_BOMBCHU));
}
default:
break;
}