Adds Chest Key counters to $7EF4E0-F

This commit is contained in:
aerinon
2020-08-25 12:05:49 -06:00
committed by aerinon
parent af7cce9ae5
commit f565fc93be
3 changed files with 42 additions and 4 deletions

View File

@@ -257,6 +257,36 @@ DecrementSmallKeys:
JSL.l UpdateKeys
RTL
;--------------------------------------------------------------------------------
CountChestKey: ; called from ItemDowngradeFix in itemdowngrade.asm (also from CountBonkItem below)
PHA : PHX
CPY #$24 : BEQ + ; small key for this dungeon - use $040C
CPY #$A0 : !BLT .end ; Ignore most items
CPY #$AE : !BGE .end ; Ignore reserved key and generic key
TYA : AND.B #$0F : BNE ++ ; If this is a sewers key, instead count it as an HC key
INC
++ TAX : BRA .count ; use Key id instead of $040C (Keysanity)
+ LDA $040C : LSR : TAX
.count
LDA $7EF4E0, X : INC : STA $7EF4E0, X
.end
PLX : PLA
RTS
;--------------------------------------------------------------------------------
CountBonkItem: ; called from GetBonkItem in bookofmudora.asm
LDA $A0 ; check room ID - only bonk keys in 2 rooms so we're just checking the lower byte
CMP #115 : BNE + ; Desert Bonk Key
LDA.L BonkKey_Desert : BRA ++
+ : CMP #140 : BNE + ; GTower Bonk Key
LDA.L BonkKey_GTower : BRA ++
+ LDA.B #$24 ; default to small key
++
CMP #$24 : BNE +
PHY
TAY : JSR CountChestKey
PLY
+
RTS
;--------------------------------------------------------------------------------
IncrementAgahnim2Sword:
PHA
LDA !LOCK_STATS : BNE +