summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--constants.asm2
-rw-r--r--pokered.asm24
2 files changed, 15 insertions, 11 deletions
diff --git a/constants.asm b/constants.asm
index f4931186..1dd556cb 100644
--- a/constants.asm
+++ b/constants.asm
@@ -166,6 +166,8 @@ W_NUMINBOX EQU $DA80
H_RAND1 EQU $FFD3
H_RAND2 EQU $FFD4
+H_WHOSETURN EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn
+
; hardware registers, from the pandocs http://nocash.emubase.de/pandocs.htm
rDIV EQU $FF04
rBGP EQU $FF47
diff --git a/pokered.asm b/pokered.asm
index cd53551f..66bcdd5b 100644
--- a/pokered.asm
+++ b/pokered.asm
@@ -662,11 +662,11 @@ Char4A: ; PKMN
Char59:
; depending on whose turn it is, print
-; player active monster’s name
-; or
; enemy active monster’s name, prefixed with “Enemy ”
-; (XXX what is the purpose of this vs. Char5A)
- ld a,[$FFF3]
+; or
+; player active monster’s name
+; (like Char5A but flipped)
+ ld a,[H_WHOSETURN]
xor 1
jr MonsterNameCharsCommon
@@ -675,7 +675,7 @@ Char5A:
; player active monster’s name
; or
; enemy active monster’s name, prefixed with “Enemy ”
- ld a,[$FFF3]
+ ld a,[H_WHOSETURN]
MonsterNameCharsCommon:
push de
and a
@@ -10222,17 +10222,17 @@ Function5811: ; 5811
; print the ghost battle messages
call $583A
ret nz
- ld a,[$FFF3]
+ ld a,[H_WHOSETURN]
and a
- jr nz,.next\@
- ld a,[W_CURMONSTATUS]
+ jr nz,.Ghost\@
+ ld a,[W_CURMONSTATUS] ; player’s turn
and a,SLP | FRZ
ret nz
ld hl,ScaredText
call PrintText
xor a
ret
-.next\@
+.Ghost\@ ; ghost’s turn
ld hl,GetOutText
call PrintText
xor a
@@ -13539,10 +13539,12 @@ AttackAnimation: ; 4D5E
ShareAttackAnimations: ; 4DA6
; some moves just reuse animations from status conditions
- ld a,[$FFF3]
+ ld a,[H_WHOSETURN]
and a
ret z
+ ; opponent’s turn
+
ld a,[$D07C]
cp a,AMNESIA
@@ -13655,7 +13657,7 @@ Func586F: ; 586F
ld b,a
call IsCryMove
jr nc,.NotCryMove
- ld a,[$FFF3]
+ ld a,[H_WHOSETURN]
and a
jr nz,.next\@
ld a,[$D014] ; get number of current monster