update vasu ring appraisal logic
This commit is contained in:
@@ -117,14 +117,40 @@ Sprite_Vasu_Main:
|
|||||||
{
|
{
|
||||||
%PlayAnimation(0,1,20)
|
%PlayAnimation(0,1,20)
|
||||||
|
|
||||||
; Check if the player has any rings
|
; Check if the player has found any rings to appraise
|
||||||
LDA.l MAGICRINGS : BEQ .no_rings
|
LDA.l FOUNDRINGS : BEQ .no_rings
|
||||||
|
; Check if the player has any rings, if not give them one for free
|
||||||
|
LDA.l MAGICRINGS : BEQ .no_rings_yet
|
||||||
|
REP #$20
|
||||||
|
LDA.l $7EF360
|
||||||
|
CMP.w #$14 ; 20 rupees
|
||||||
|
SEP #$30
|
||||||
|
BCC .not_enough_rupees
|
||||||
|
|
||||||
; TODO: Subtract 20 rupees from the player's wallet
|
REP #$20
|
||||||
|
LDA.l $7EF360
|
||||||
|
SEC
|
||||||
|
SBC.w #$14 ; Subtract 20 rupees
|
||||||
|
STA.l $7EF360
|
||||||
|
SEP #$30
|
||||||
|
|
||||||
|
JMP .appraise_me
|
||||||
|
|
||||||
|
.not_enough_rupees
|
||||||
|
%ShowUnconditionalMessage($0189) ; 'You don't have enough rupees!'
|
||||||
|
%GotoAction(0)
|
||||||
|
RTS
|
||||||
|
|
||||||
|
.no_rings_yet
|
||||||
|
%ShowUnconditionalMessage($00AB) ; 'First one is free!'
|
||||||
|
JMP .appraise_me
|
||||||
|
|
||||||
.no_rings
|
.no_rings
|
||||||
%ShowUnconditionalMessage($00AB) ; 'First one is free!'
|
%ShowUnconditionalMessage($00AD) ; 'You don't have any rings!'
|
||||||
|
%GotoAction(0)
|
||||||
|
RTS
|
||||||
|
|
||||||
|
.appraise_me
|
||||||
; Check the found rings and set the saved rings
|
; Check the found rings and set the saved rings
|
||||||
; Get the bit from found rings and set it in MAGICRINGS
|
; Get the bit from found rings and set it in MAGICRINGS
|
||||||
LDA.l FOUNDRINGS
|
LDA.l FOUNDRINGS
|
||||||
|
|||||||
Reference in New Issue
Block a user