pokered/engine/overworld/cinnabar_lab.asm

125 lines
2.1 KiB
NASM
Raw Normal View History

2014-05-22 22:13:20 +00:00
GiveFossilToCinnabarLab: ; 61006 (18:5006)
ld hl, wd730
2014-05-22 22:13:20 +00:00
set 6, [hl]
xor a
ld [wCurrentMenuItem], a ; wCurrentMenuItem
2014-05-22 22:13:20 +00:00
ld a, $3
ld [wMenuWatchedKeys], a ; wMenuWatchedKeys
ld a, [wcd37]
2014-05-22 22:13:20 +00:00
dec a
ld [wMaxMenuItem], a ; wMaxMenuItem
2014-05-22 22:13:20 +00:00
ld a, $2
ld [wTopMenuItemY], a ; wTopMenuItemY
2014-05-22 22:13:20 +00:00
ld a, $1
ld [wTopMenuItemX], a ; wTopMenuItemX
ld a, [wcd37]
2014-05-22 22:13:20 +00:00
dec a
ld bc, $2
ld hl, $3
call AddNTimes
dec l
ld b, l
ld c, $d
ld hl, wTileMap
call TextBoxBorder
call UpdateSprites
call Func_610c2
ld hl, wd730
2014-05-22 22:13:20 +00:00
res 6, [hl]
call HandleMenuInput
bit 1, a
jr nz, .asm_610a7
ld hl, wcc5b
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
2014-05-22 22:13:20 +00:00
ld d, $0
ld e, a
add hl, de
ld a, [hl]
ld [$ffdb], a
cp DOME_FOSSIL
jr z, .choseDomeFossil
cp HELIX_FOSSIL
jr z, .choseHelixFossil
ld b, AERODACTYL
jr .fossilSelected
.choseHelixFossil
ld b, OMANYTE
jr .fossilSelected
.choseDomeFossil
ld b, KABUTO
.fossilSelected
ld [W_FOSSILITEM], a
ld a, b
ld [W_FOSSILMON], a
call LoadFossilItemAndMonName
ld hl, LabFossil_610ae
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
2014-05-22 22:13:20 +00:00
and a
jr nz, .asm_610a7
ld hl, LabFossil_610b3
call PrintText
ld a, [W_FOSSILITEM]
ld [$ffdb], a
callba RemoveItemByID
ld hl, LabFossil_610b8
call PrintText
ld hl, wd7a3
2014-05-22 22:13:20 +00:00
set 0, [hl]
set 1, [hl]
ret
.asm_610a7
ld hl, LabFossil_610bd
call PrintText
ret
LabFossil_610ae: ; 610ae (18:50ae)
TX_FAR _Lab4Text_610ae
db "@"
LabFossil_610b3: ; 610b3 (18:50b3)
TX_FAR _Lab4Text_610b3
db "@"
LabFossil_610b8: ; 610b8 (18:50b8)
TX_FAR _Lab4Text_610b8
db "@"
LabFossil_610bd: ; 610bd (18:50bd)
TX_FAR _Lab4Text_610bd
db "@"
Func_610c2: ; 610c2 (18:50c2)
ld hl, wcc5b
2014-05-22 22:13:20 +00:00
xor a
ld [$ffdb], a
.asm_610c8
ld a, [hli]
cp $ff
ret z
push hl
ld [wd11e], a
2014-05-22 22:13:20 +00:00
call GetItemName
hlCoord 2, 2
2014-05-22 22:13:20 +00:00
ld a, [$ffdb]
ld bc, $28
call AddNTimes
ld de, wcd6d
2014-05-22 22:13:20 +00:00
call PlaceString
ld hl, $ffdb
inc [hl]
pop hl
jr .asm_610c8
; loads the names of the fossil item and the resulting mon
LoadFossilItemAndMonName: ; 610eb (18:50eb)
ld a, [W_FOSSILMON]
ld [wd11e], a
2014-05-22 22:13:20 +00:00
call GetMonName
call CopyStringToCF4B
ld a, [W_FOSSILITEM]
ld [wd11e], a
2014-05-22 22:13:20 +00:00
call GetItemName
ret