2014-05-22 22:13:20 +00:00
|
|
|
GiveFossilToCinnabarLab: ; 61006 (18:5006)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wd730
|
2014-05-22 22:13:20 +00:00
|
|
|
set 6, [hl]
|
|
|
|
xor a
|
2015-07-03 19:37:53 +00:00
|
|
|
ld [wCurrentMenuItem], a
|
2015-07-24 21:57:49 +00:00
|
|
|
ld a, A_BUTTON | B_BUTTON
|
2015-07-03 19:37:53 +00:00
|
|
|
ld [wMenuWatchedKeys], a
|
2015-08-13 05:14:31 +00:00
|
|
|
ld a, [wFilteredBagItemsCount]
|
2014-05-22 22:13:20 +00:00
|
|
|
dec a
|
2015-07-03 19:37:53 +00:00
|
|
|
ld [wMaxMenuItem], a
|
2015-07-24 21:57:49 +00:00
|
|
|
ld a, 2
|
2015-07-03 19:37:53 +00:00
|
|
|
ld [wTopMenuItemY], a
|
2015-07-24 21:57:49 +00:00
|
|
|
ld a, 1
|
2015-07-03 19:37:53 +00:00
|
|
|
ld [wTopMenuItemX], a
|
2015-08-13 05:14:31 +00:00
|
|
|
ld a, [wFilteredBagItemsCount]
|
2014-05-22 22:13:20 +00:00
|
|
|
dec a
|
2015-07-24 21:57:49 +00:00
|
|
|
ld bc, 2
|
|
|
|
ld hl, 3
|
2014-05-22 22:13:20 +00:00
|
|
|
call AddNTimes
|
|
|
|
dec l
|
|
|
|
ld b, l
|
|
|
|
ld c, $d
|
2015-07-18 20:52:03 +00:00
|
|
|
coord hl, 0, 0
|
2014-05-22 22:13:20 +00:00
|
|
|
call TextBoxBorder
|
|
|
|
call UpdateSprites
|
2015-07-24 21:57:49 +00:00
|
|
|
call PrintFossilsInBag
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wd730
|
2014-05-22 22:13:20 +00:00
|
|
|
res 6, [hl]
|
|
|
|
call HandleMenuInput
|
2015-07-24 21:57:49 +00:00
|
|
|
bit 1, a ; pressed B?
|
|
|
|
jr nz, .cancelledGivingFossil
|
2015-08-13 05:14:31 +00:00
|
|
|
ld hl, wFilteredBagItems
|
2015-07-03 19:37:53 +00:00
|
|
|
ld a, [wCurrentMenuItem]
|
2015-08-13 05:14:31 +00:00
|
|
|
ld d, 0
|
2014-05-22 22:13:20 +00:00
|
|
|
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
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wFossilItem], a
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, b
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wFossilMon], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call LoadFossilItemAndMonName
|
|
|
|
ld hl, LabFossil_610ae
|
|
|
|
call PrintText
|
|
|
|
call YesNoChoice
|
2015-07-03 19:37:53 +00:00
|
|
|
ld a, [wCurrentMenuItem]
|
2014-05-22 22:13:20 +00:00
|
|
|
and a
|
2015-07-24 21:57:49 +00:00
|
|
|
jr nz, .cancelledGivingFossil
|
2014-05-22 22:13:20 +00:00
|
|
|
ld hl, LabFossil_610b3
|
|
|
|
call PrintText
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wFossilItem]
|
2015-07-24 21:57:49 +00:00
|
|
|
ld [hItemToRemoveID], a
|
2014-05-22 22:13:20 +00:00
|
|
|
callba RemoveItemByID
|
|
|
|
ld hl, LabFossil_610b8
|
|
|
|
call PrintText
|
2015-07-21 17:36:03 +00:00
|
|
|
SetEvents EVENT_GAVE_FOSSIL_TO_LAB, EVENT_LAB_STILL_REVIVING_FOSSIL
|
2014-05-22 22:13:20 +00:00
|
|
|
ret
|
2015-07-24 21:57:49 +00:00
|
|
|
.cancelledGivingFossil
|
2014-05-22 22:13:20 +00:00
|
|
|
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 "@"
|
|
|
|
|
2015-07-24 21:57:49 +00:00
|
|
|
PrintFossilsInBag: ; 610c2 (18:50c2)
|
|
|
|
; Prints each fossil in the player's bag on a separate line in the menu.
|
2015-08-13 05:14:31 +00:00
|
|
|
ld hl, wFilteredBagItems
|
2014-05-22 22:13:20 +00:00
|
|
|
xor a
|
2015-08-13 05:14:31 +00:00
|
|
|
ld [hItemCounter], a
|
2015-07-24 21:57:49 +00:00
|
|
|
.loop
|
2014-05-22 22:13:20 +00:00
|
|
|
ld a, [hli]
|
|
|
|
cp $ff
|
|
|
|
ret z
|
|
|
|
push hl
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd11e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call GetItemName
|
2015-07-18 20:52:03 +00:00
|
|
|
coord hl, 2, 2
|
2015-08-13 05:14:31 +00:00
|
|
|
ld a, [hItemCounter]
|
2015-07-14 07:16:19 +00:00
|
|
|
ld bc, SCREEN_WIDTH * 2
|
2014-05-22 22:13:20 +00:00
|
|
|
call AddNTimes
|
2014-05-26 21:04:56 +00:00
|
|
|
ld de, wcd6d
|
2014-05-22 22:13:20 +00:00
|
|
|
call PlaceString
|
2015-08-13 05:14:31 +00:00
|
|
|
ld hl, hItemCounter
|
2014-05-22 22:13:20 +00:00
|
|
|
inc [hl]
|
|
|
|
pop hl
|
2015-07-24 21:57:49 +00:00
|
|
|
jr .loop
|
2014-05-22 22:13:20 +00:00
|
|
|
|
|
|
|
; loads the names of the fossil item and the resulting mon
|
|
|
|
LoadFossilItemAndMonName: ; 610eb (18:50eb)
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wFossilMon]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd11e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call GetMonName
|
|
|
|
call CopyStringToCF4B
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wFossilItem]
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wd11e], a
|
2014-05-22 22:13:20 +00:00
|
|
|
call GetItemName
|
|
|
|
ret
|