diff options
| author | Sarge-117 <108380086+Sarge-117@users.noreply.github.com> | 2022-10-19 18:51:42 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-19 21:51:42 -0400 |
| commit | 4173eadae2291b2853a268e965097c9305f126d5 (patch) | |
| tree | 543e3b8a931723c7cc64fc15840b4e00b3bdd53f | |
| parent | 1b6dd8a0fe418cfcf8e00c44fa6db59ee568726b (diff) | |
Fix tunics/boots on C-buttons not always being enabled (#1782)
* Always enable C-buttons with equipment
* Fix for it still sometimes being disables
| -rw-r--r-- | soh/src/code/z_parameter.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/soh/src/code/z_parameter.c b/soh/src/code/z_parameter.c index dd150913b..02f9395f5 100644 --- a/soh/src/code/z_parameter.c +++ b/soh/src/code/z_parameter.c @@ -949,15 +949,7 @@ void func_80083108(GlobalContext* globalCtx) { gSaveContext.buttonStatus[0] = BTN_DISABLED; for (i = 1; i < ARRAY_COUNT(gSaveContext.equips.buttonItems); i++) { - if ((gSaveContext.equips.buttonItems[i] >= ITEM_SHIELD_DEKU) && - (gSaveContext.equips.buttonItems[i] <= ITEM_BOOTS_HOVER)) { - // Equipment on c-buttons is always enabled - if (gSaveContext.buttonStatus[BUTTON_STATUS_INDEX(i)] == BTN_DISABLED) { - sp28 = 1; - } - - gSaveContext.buttonStatus[BUTTON_STATUS_INDEX(i)] = BTN_ENABLED; - } else if (func_8008F2F8(globalCtx) == 2) { + if (func_8008F2F8(globalCtx) == 2) { if ((gSaveContext.equips.buttonItems[i] != ITEM_HOOKSHOT) && (gSaveContext.equips.buttonItems[i] != ITEM_LONGSHOT)) { if (gSaveContext.buttonStatus[BUTTON_STATUS_INDEX(i)] == BTN_ENABLED) { @@ -1100,6 +1092,18 @@ void func_80083108(GlobalContext* globalCtx) { } } + for (i = 1; i < ARRAY_COUNT(gSaveContext.equips.buttonItems); i++) { + if ((gSaveContext.equips.buttonItems[i] >= ITEM_SHIELD_DEKU) && + (gSaveContext.equips.buttonItems[i] <= ITEM_BOOTS_HOVER)) { + // Equipment on c-buttons is always enabled + if (gSaveContext.buttonStatus[BUTTON_STATUS_INDEX(i)] == BTN_DISABLED) { + sp28 = 1; + } + + gSaveContext.buttonStatus[BUTTON_STATUS_INDEX(i)] = BTN_ENABLED; + } + } + if (interfaceCtx->restrictions.bottles != 0) { for (i = 1; i < ARRAY_COUNT(gSaveContext.equips.buttonItems); i++) { if ((gSaveContext.equips.buttonItems[i] >= ITEM_BOTTLE) && @@ -1253,6 +1257,8 @@ void func_80083108(GlobalContext* globalCtx) { (gSaveContext.equips.buttonItems[i] != ITEM_OCARINA_TIME) && !((gSaveContext.equips.buttonItems[i] >= ITEM_BOTTLE) && (gSaveContext.equips.buttonItems[i] <= ITEM_POE)) && + !((gSaveContext.equips.buttonItems[i] >= ITEM_SHIELD_DEKU) && // Never disable equipment + (gSaveContext.equips.buttonItems[i] <= ITEM_BOOTS_HOVER)) && // (tunics/boots) on C-buttons !((gSaveContext.equips.buttonItems[i] >= ITEM_WEIRD_EGG) && (gSaveContext.equips.buttonItems[i] <= ITEM_CLAIM_CHECK))) { if ((globalCtx->sceneNum != SCENE_TAKARAYA) || |
