pokecrystal-board/maps/OaksLab.asm
2018-01-31 11:08:47 -05:00

289 lines
5.5 KiB
NASM

const_value set 2 ; object constants
const OAKSLAB_OAK
const OAKSLAB_SCIENTIST1
const OAKSLAB_SCIENTIST2
const OAKSLAB_SCIENTIST3
OaksLab_MapScripts:
db 0 ; scene scripts
db 0 ; callbacks
.DummyScene:
end
Oak:
faceplayer
opentext
checkevent EVENT_OPENED_MT_SILVER
iftrue .CheckPokedex
checkevent EVENT_TALKED_TO_OAK_IN_KANTO
iftrue .CheckBadges
writetext OakWelcomeKantoText
buttonsound
setevent EVENT_TALKED_TO_OAK_IN_KANTO
.CheckBadges:
checkcode VAR_BADGES
if_equal NUM_BADGES, .OpenMtSilver
if_equal NUM_JOHTO_BADGES, .Complain
jump .AhGood
.CheckPokedex:
writetext OakLabDexCheckText
waitbutton
special ProfOaksPCBoot
writetext OakLabGoodbyeText
waitbutton
closetext
end
.OpenMtSilver:
writetext OakOpenMtSilverText
buttonsound
setevent EVENT_OPENED_MT_SILVER
jump .CheckPokedex
.Complain:
writetext OakNoKantoBadgesText
buttonsound
jump .CheckPokedex
.AhGood:
writetext OakYesKantoBadgesText
buttonsound
jump .CheckPokedex
OaksAssistant1Script:
jumptextfaceplayer OaksAssistant1Text
OaksAssistant2Script:
jumptextfaceplayer OaksAssistant2Text
OaksAssistant3Script:
jumptextfaceplayer OaksAssistant3Text
OaksLabBookshelf:
jumpstd difficultbookshelf
OaksLabPoster1:
jumptext OaksLabPoster1Text
OaksLabPoster2:
jumptext OaksLabPoster2Text
OaksLabTrashcan:
jumptext OaksLabTrashcanText
OaksLabPC:
jumptext OaksLabPCText
OakWelcomeKantoText:
text "OAK: Ah, <PLAY_G>!"
line "It's good of you"
para "to come all this"
line "way to KANTO."
para "What do you think"
line "of the trainers"
para "out here?"
line "Pretty tough, huh?"
done
OakLabDexCheckText:
text "How is your #-"
line "DEX coming?"
para "Let's see…"
done
OakLabGoodbyeText:
text "If you're in the"
line "area, I hope you"
cont "come visit again."
done
OakOpenMtSilverText:
text "OAK: Wow! That's"
line "excellent!"
para "You collected the"
line "BADGES of GYMS in"
cont "KANTO. Well done!"
para "I was right in my"
line "assessment of you."
para "Tell you what,"
line "<PLAY_G>. I'll make"
para "arrangements so"
line "that you can go to"
cont "MT.SILVER."
para "MT.SILVER is a big"
line "mountain that is"
para "home to many wild"
line "#MON."
para "It's too dangerous"
line "for your average"
para "trainer, so it's"
line "off limits. But"
para "we can make an"
line "exception in your"
cont "case, <PLAY_G>."
para "Go up to INDIGO"
line "PLATEAU. You can"
para "reach MT.SILVER"
line "from there."
done
OakNoKantoBadgesText:
text "OAK: Hmm? You're"
line "not collecting"
cont "KANTO GYM BADGES?"
para "The GYM LEADERS in"
line "KANTO are as tough"
para "as any you battled"
line "in JOHTO."
para "I recommend that"
line "you challenge"
cont "them."
done
OakYesKantoBadgesText:
text "OAK: Ah, you're"
line "collecting KANTO"
cont "GYM BADGES."
para "I imagine that"
line "it's hard, but the"
para "experience is sure"
line "to help you."
para "Come see me when"
line "you get them all."
para "I'll have a gift"
line "for you."
para "Keep trying hard,"
line "<PLAY_G>!"
done
OaksAssistant1Text:
text "The PROF's #MON"
line "TALK radio program"
para "isn't aired here"
line "in KANTO."
para "It's a shame--I'd"
line "like to hear it."
done
OaksAssistant2Text:
text "Thanks to your"
line "work on the #-"
cont "DEX, the PROF's"
para "research is coming"
line "along great."
done
OaksAssistant3Text:
text "Don't tell anyone,"
line "but PROF.OAK'S"
para "#MON TALK isn't"
line "a live broadcast."
done
OaksLabPoster1Text:
text "Press START to"
line "open the MENU."
done
OaksLabPoster2Text:
text "The SAVE option is"
line "on the MENU."
para "Use it in a timely"
line "manner."
done
OaksLabTrashcanText
text "There's nothing in"
line "here…"
done
OaksLabPCText:
text "There's an e-mail"
line "message on the PC."
para "…"
para "PROF.OAK, how is"
line "your research"
cont "coming along?"
para "I'm still plugging"
line "away."
para "I heard rumors"
line "that <PLAY_G> is"
para "getting quite a"
line "reputation."
para "I'm delighted to"
line "hear that."
para "ELM in NEW BARK"
line "TOWN 8-)"
done
OaksLab_MapEvents:
db 0, 0 ; filler
db 2 ; warp events
warp_event 4, 11, 3, PALLET_TOWN
warp_event 5, 11, 3, PALLET_TOWN
db 0 ; coord events
db 16 ; bg events
bg_event 6, 1, BGEVENT_READ, OaksLabBookshelf
bg_event 7, 1, BGEVENT_READ, OaksLabBookshelf
bg_event 8, 1, BGEVENT_READ, OaksLabBookshelf
bg_event 9, 1, BGEVENT_READ, OaksLabBookshelf
bg_event 0, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 1, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 2, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 3, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 6, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 7, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 8, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 9, 7, BGEVENT_READ, OaksLabBookshelf
bg_event 4, 0, BGEVENT_READ, OaksLabPoster1
bg_event 5, 0, BGEVENT_READ, OaksLabPoster2
bg_event 9, 3, BGEVENT_READ, OaksLabTrashcan
bg_event 0, 1, BGEVENT_READ, OaksLabPC
db 4 ; object events
object_event 4, 2, SPRITE_OAK, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Oak, -1
object_event 1, 8, SPRITE_SCIENTIST, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, OaksAssistant1Script, -1
object_event 8, 9, SPRITE_SCIENTIST, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, OaksAssistant2Script, -1
object_event 1, 4, SPRITE_SCIENTIST, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, OaksAssistant3Script, -1