From 443080c48257610aadc36c33b0df79af27146897 Mon Sep 17 00:00:00 2001 From: Kara Alexandra Date: Wed, 31 Dec 2025 00:21:40 -0600 Subject: [PATCH] ShowItems settings --- dungeon_map/check_loot.asm | 75 +++++++++++++++++++++++++++++++++++--- dungeon_map/settings.asm | 51 ++++++++++++++++++++++++++ 2 files changed, 120 insertions(+), 6 deletions(-) diff --git a/dungeon_map/check_loot.asm b/dungeon_map/check_loot.asm index 4003fdd..b5aae17 100644 --- a/dungeon_map/check_loot.asm +++ b/dungeon_map/check_loot.asm @@ -6,18 +6,77 @@ CheckLoot: PHB : PHX : PHY STA.b $00 - ASL A - TAX LDA.b $06 : PHA + LDA.b $0E : PHA STZ.b $02 ; best item class found - JSR CheckChests - JSR CheckBoss - JSR CheckPots - JSR CheckEnemies + LDA.l ShowItems_default + AND.w #$00FF + STA.b $0E + LDA.l SaveDataWRAM, X + AND.w #$000F + BEQ + + LDA.l ShowItems_visited_tile + AND.w #$00FF + CMP.b $0E + BCC + + STA.b $0E + ++ LDA.b DungeonID + TAX + + LDA.l MapField + AND.l DungeonMask, X + BEQ + + LDA.l ShowItems_have_map + AND.w #$00FF + CMP.b $0E + BCC + + STA.b $0E + ++ LDA.l CompassField + AND.l DungeonMask, X + BEQ + + LDA.l ShowItems_have_compass + AND.w #$00FF + CMP.b $0E + BCC + + STA.b $0E + ++ LDA.b $0E + BEQ .done + + LDA.l ItemSources : BIT.w #$0001 : BEQ + + JSR CheckChests ++ + + LDA.l ItemSources : BIT.w #$0002 : BEQ + + JSR CheckPots ++ + + LDA.l ItemSources : BIT.w #$0004 : BEQ + + JSR CheckEnemies ++ + + LDA.l ItemSources : BIT.w #$0008 : BEQ + + JSR CheckBoss ++ + + LDA.b $0E + AND.w #$00FF + CMP.w #$0001 + BNE .done + + LDA.b $02 + BEQ .done + LDA.w #$0001 + STA.b $02 + +.done + PLA : STA.b $0E PLA : STA.b $06 PLY : PLX : PLB PLP @@ -25,6 +84,10 @@ CheckLoot: RTL CheckChests: + LDA.b $00 + ASL A + TAX + LDA.w #($81<<8) PHA PLB : PLB diff --git a/dungeon_map/settings.asm b/dungeon_map/settings.asm index bb3140b..1a9b074 100644 --- a/dungeon_map/settings.asm +++ b/dungeon_map/settings.asm @@ -81,3 +81,54 @@ MapHUDPalette: dw $0000, $3ED8, $2E54 ; $B9F688 + +warnpc $B9FF00 + +org $B9FF00 +; $00 - do not show anything +; $01 - show presence of supertile as dark square +; $02 - show shape of quadrants +; $03 - show outline of shape but no details +; $04 - show dark but detailed +; $05 - show lit with detail +ShowRooms: ; NYI +.default + db $02 +.have_map + db $04 +.have_compass + db $03 +.visited_tile + db $04 +.visited_quadrant + db $05 +.reserved + skip 3 + +org $B9FF08 +; $00 - do not show anything +; $01 - show presence of unobtained items +; $02 - show category of item +ShowItems: +.default + db $00 +.have_map + db $00 +.have_compass + db $02 +.visited_tile + db $01 +.item_is_compass ; NYI + db $00 +.reserved + skip 3 + +org $B9FF10 +; ---P bepc +; P - dungeon prizes - NYI +; b - bosses (and torches in GT, plus hera basement standing item) +; e - enemy drops +; p - pots +; c - chests +ItemSources: + db $0F