From 8535568f53b3df88af7c77b933918581645b232e Mon Sep 17 00:00:00 2001 From: rozlette Date: Thu, 23 Jun 2022 22:12:41 -0500 Subject: [PATCH] Fix ability to assign equipment you don't own --- .../ovl_kaleido_scope/z_kaleido_equipment.c | 55 ++++++++++--------- 1 file changed, 30 insertions(+), 25 deletions(-) diff --git a/soh/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c b/soh/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c index 650be8b62..f8a66ba2f 100644 --- a/soh/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c +++ b/soh/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c @@ -535,32 +535,37 @@ void KaleidoScope_DrawEquipment(GlobalContext* globalCtx) { } else if (CVar_GetS32("gAssignableTunicsAndBoots", 0) != 0) { // Only allow assigning tunic and boots to c-buttons if (pauseCtx->cursorY[PAUSE_EQUIP] > 1) { - u16 slot = 0; - switch (cursorItem) { - case ITEM_TUNIC_KOKIRI: - slot = SLOT_TUNIC_KOKIRI; - break; - case ITEM_TUNIC_GORON: - slot = SLOT_TUNIC_GORON; - break; - case ITEM_TUNIC_ZORA: - slot = SLOT_TUNIC_ZORA; - break; - case ITEM_BOOTS_KOKIRI: - slot = SLOT_BOOTS_KOKIRI; - break; - case ITEM_BOOTS_IRON: - slot = SLOT_BOOTS_IRON; - break; - case ITEM_BOOTS_HOVER: - slot = SLOT_BOOTS_HOVER; - break; - default: - break; + if (CHECK_OWNED_EQUIP(pauseCtx->cursorY[PAUSE_EQUIP], pauseCtx->cursorX[PAUSE_EQUIP] - 1)) { + u16 slot = 0; + switch (cursorItem) { + case ITEM_TUNIC_KOKIRI: + slot = SLOT_TUNIC_KOKIRI; + break; + case ITEM_TUNIC_GORON: + slot = SLOT_TUNIC_GORON; + break; + case ITEM_TUNIC_ZORA: + slot = SLOT_TUNIC_ZORA; + break; + case ITEM_BOOTS_KOKIRI: + slot = SLOT_BOOTS_KOKIRI; + break; + case ITEM_BOOTS_IRON: + slot = SLOT_BOOTS_IRON; + break; + case ITEM_BOOTS_HOVER: + slot = SLOT_BOOTS_HOVER; + break; + default: + break; + } + KaleidoScope_SetupItemEquip(globalCtx, cursorItem, slot, + pauseCtx->equipVtx[cursorSlot * 4].v.ob[0] * 10, + pauseCtx->equipVtx[cursorSlot * 4].v.ob[1] * 10); + } else { + Audio_PlaySoundGeneral(NA_SE_SY_ERROR, &D_801333D4, 4, &D_801333E0, &D_801333E0, + &D_801333E8); } - KaleidoScope_SetupItemEquip(globalCtx, cursorItem, slot, - pauseCtx->equipVtx[cursorSlot * 4].v.ob[0] * 10, - pauseCtx->equipVtx[cursorSlot * 4].v.ob[1] * 10); } } } else {