Zarby's arrow code, will need to be made configurable
probably just based on cost per arrow, or a flag and word for each cost, silvers/wooden
This commit is contained in:
27
retro.asm
Normal file
27
retro.asm
Normal file
@@ -0,0 +1,27 @@
|
||||
CheckEnoughRupeeArrows:
|
||||
{
|
||||
LDA $0B99 : BNE .minigame_arrow
|
||||
PHX ;save X value which is ancilla of the arrow
|
||||
REP #$30 ;Set 16bit mode
|
||||
LDA $7EF340 : AND #$00FF : TAX ;check what bow we have
|
||||
LDA $7EF360 : CMP.l .rupees_cost, X : BCC .not_enough_rupees ;Load Rupees count
|
||||
SBC.l .rupees_cost, X : STA $7EF360 ;decrease rupee by 5
|
||||
|
||||
SEP #$30
|
||||
PLX
|
||||
BRA .ignore_minigame
|
||||
.minigame_arrow
|
||||
DEC $0B99
|
||||
.ignore_minigame
|
||||
LDA #$01 ;return 01 if we have enough rupee so it doesnt despawn the arrow
|
||||
RTL
|
||||
|
||||
.not_enough_rupees
|
||||
SEP #$30
|
||||
PLX
|
||||
LDA #$00 ;Return 00 if we don't have enough rupee so it despawn the arrow
|
||||
RTL
|
||||
|
||||
.rupees_cost ;Normal, Normal, Silver, Silver
|
||||
dw #$0005, #$0005, #$000A, #$000A
|
||||
}
|
||||
Reference in New Issue
Block a user