diff options
Diffstat (limited to 'engine/routines/checkpokerus.asm')
-rw-r--r-- | engine/routines/checkpokerus.asm | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/engine/routines/checkpokerus.asm b/engine/routines/checkpokerus.asm new file mode 100644 index 000000000..285024754 --- /dev/null +++ b/engine/routines/checkpokerus.asm @@ -0,0 +1,25 @@ +CheckPokerus: ; 4d860 +; Return carry if a monster in your party has Pokerus + +; Get number of monsters to iterate over + ld a, [PartyCount] + and a + jr z, .NoPokerus + ld b, a +; Check each monster in the party for Pokerus + ld hl, PartyMon1PokerusStatus + ld de, PARTYMON_STRUCT_LENGTH +.Check: + ld a, [hl] + and $0f ; only the bottom nybble is used + jr nz, .HasPokerus +; Next PartyMon + add hl, de + dec b + jr nz, .Check +.NoPokerus: + and a + ret +.HasPokerus: + scf + ret |