pokered/engine/overworld/oaks_aide.asm

72 lines
1.2 KiB
NASM
Raw Normal View History

OaksAideScript: ; 0x59035
2014-05-22 22:13:20 +00:00
ld hl, OaksAideHiText
call PrintText
call YesNoChoice
ld a, [wCurrentMenuItem]
2014-05-22 22:13:20 +00:00
and a
2015-08-07 11:24:06 +00:00
jr nz, .choseNo
2014-05-22 22:13:20 +00:00
ld hl, wPokedexOwned
ld b, wPokedexOwnedEnd - wPokedexOwned
call CountSetBits
2015-08-07 11:24:06 +00:00
ld a, [wNumSetBits]
ld [hOaksAideNumMonsOwned], a
2014-05-22 22:13:20 +00:00
ld b, a
2015-08-07 11:24:06 +00:00
ld a, [hOaksAideRequirement]
2014-05-22 22:13:20 +00:00
cp b
2015-08-07 11:24:06 +00:00
jr z, .giveItem
jr nc, .notEnoughOwnedMons
.giveItem
2014-05-22 22:13:20 +00:00
ld hl, OaksAideHereYouGoText
call PrintText
2015-08-07 11:24:06 +00:00
ld a, [hOaksAideItemReward]
2014-05-22 22:13:20 +00:00
ld b, a
ld c, 1
call GiveItem
2015-08-07 11:24:06 +00:00
jr nc, .bagFull
2014-05-22 22:13:20 +00:00
ld hl, OaksAideGotItemText
call PrintText
ld a, $1
2015-08-07 11:24:06 +00:00
jr .done
.bagFull
2014-05-22 22:13:20 +00:00
ld hl, OaksAideNoRoomText
call PrintText
xor a
2015-08-07 11:24:06 +00:00
jr .done
.notEnoughOwnedMons
2014-05-22 22:13:20 +00:00
ld hl, OaksAideUhOhText
call PrintText
ld a, $80
2015-08-07 11:24:06 +00:00
jr .done
.choseNo
2014-05-22 22:13:20 +00:00
ld hl, OaksAideComeBackText
call PrintText
ld a, $ff
2015-08-07 11:24:06 +00:00
.done
ld [hOaksAideResult], a
2014-05-22 22:13:20 +00:00
ret
OaksAideHiText: ; 59091 (16:5091)
TX_FAR _OaksAideHiText
db "@"
OaksAideUhOhText: ; 59096 (16:5096)
TX_FAR _OaksAideUhOhText
db "@"
OaksAideComeBackText: ; 5909b (16:509b)
TX_FAR _OaksAideComeBackText
db "@"
OaksAideHereYouGoText: ; 590a0 (16:50a0)
TX_FAR _OaksAideHereYouGoText
db "@"
OaksAideGotItemText: ; 590a5 (16:50a5)
TX_FAR _OaksAideGotItemText
db $0b
db "@"
OaksAideNoRoomText: ; 590ab (16:50ab)
TX_FAR _OaksAideNoRoomText
db "@"