Merge pull request #4 from Sarge-117/fix-broken-knife-inventory-icon

Fix broken knife inventory icon
This commit is contained in:
Sarge-117 2022-07-18 15:00:42 -07:00 committed by GitHub
commit 486c129fb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 3 deletions

View File

@ -1676,13 +1676,15 @@ u8 Item_Give(GlobalContext* globalCtx, u8 item) {
if (item == ITEM_SWORD_BGS) { if (item == ITEM_SWORD_BGS) {
gSaveContext.swordHealth = 8; gSaveContext.swordHealth = 8;
if (ALL_EQUIP_VALUE(EQUIP_SWORD) == 0xF) { if (ALL_EQUIP_VALUE(EQUIP_SWORD) == 0xF
gSaveContext.inventory.equipment ^= 8 << gEquipShifts[EQUIP_SWORD]; ||(gSaveContext.n64ddFlag && ALL_EQUIP_VALUE(EQUIP_SWORD))) { // In rando, when buying Giant's Knife, also check
gSaveContext.inventory.equipment ^= 8 << gEquipShifts[EQUIP_SWORD]; // for 0xE in case we don't have Kokiri Sword
if (gSaveContext.equips.buttonItems[0] == ITEM_SWORD_KNIFE) { if (gSaveContext.equips.buttonItems[0] == ITEM_SWORD_KNIFE) {
gSaveContext.equips.buttonItems[0] = ITEM_SWORD_BGS; gSaveContext.equips.buttonItems[0] = ITEM_SWORD_BGS;
Interface_LoadItemIcon1(globalCtx, 0); Interface_LoadItemIcon1(globalCtx, 0);
} }
} }
} else if (item == ITEM_SWORD_MASTER) { } else if (item == ITEM_SWORD_MASTER) {
gSaveContext.equips.buttonItems[0] = ITEM_SWORD_MASTER; gSaveContext.equips.buttonItems[0] = ITEM_SWORD_MASTER;
gSaveContext.equips.equipment &= 0xFFF0; gSaveContext.equips.equipment &= 0xFFF0;

View File

@ -689,7 +689,10 @@ void KaleidoScope_DrawEquipment(GlobalContext* globalCtx) {
gsDPSetGrayscaleColor(POLY_KAL_DISP++, 109, 109, 109, 255); gsDPSetGrayscaleColor(POLY_KAL_DISP++, 109, 109, 109, 255);
gsSPGrayscale(POLY_KAL_DISP++, true); gsSPGrayscale(POLY_KAL_DISP++, true);
} }
KaleidoScope_DrawQuadTextureRGBA32(globalCtx->state.gfxCtx, gItemIcons[itemId], 32, 32, point);
if (!((i == 0) && (k == 2) && (gBitFlags[bit + 1] & gSaveContext.inventory.equipment))) { // Don't draw the full BGS icon when we have a broken Giant's Knife
KaleidoScope_DrawQuadTextureRGBA32(globalCtx->state.gfxCtx, gItemIcons[itemId], 32, 32, point);
}
gsSPGrayscale(POLY_KAL_DISP++, false); gsSPGrayscale(POLY_KAL_DISP++, false);
} }
} }