pokeyellow/engine/items/tms.asm
2015-11-15 15:08:26 -05:00

43 lines
666 B
NASM
Executable File

; tests if mon [wcf91] can learn move [wMoveNum]
CanLearnTM: ; 122f0 (4:62f0)
ld a, [wcf91]
ld [wd0b5], a
call GetMonHeader
ld hl, wMonHLearnset
push hl
ld a, [wMoveNum]
ld b, a
ld c, $0
ld hl, TechnicalMachines
.findTMloop
ld a, [hli]
cp $ff ; reached terminator?
jr z, .done
cp b
jr z, .TMfoundLoop
inc c
jr .findTMloop
.TMfoundLoop
pop hl
ld b, FLAG_TEST
predef_jump FlagActionPredef
.done
pop hl
ld c, 0
ret
; converts TM/HM number in wd11e into move number
; HMs start at 51
TMToMove: ; 1231d (4:631d)
ld a, [wd11e]
dec a
ld hl, TechnicalMachines
ld b, $0
ld c, a
add hl, bc
ld a, [hl]
ld [wd11e], a
ret
INCLUDE "data/tms.asm"