Added a bunch of constants for the bitflags of each kind of menu. Some are slightly vague or too long, but I'm not sure how to else name them.
442 lines
7.8 KiB
NASM
442 lines
7.8 KiB
NASM
const_value set 2
|
|
const EARLSPOKEMONACADEMY_EARL
|
|
const EARLSPOKEMONACADEMY_YOUNGSTER1
|
|
const EARLSPOKEMONACADEMY_GAMEBOY_KID1
|
|
const EARLSPOKEMONACADEMY_GAMEBOY_KID2
|
|
const EARLSPOKEMONACADEMY_YOUNGSTER2
|
|
const EARLSPOKEMONACADEMY_POKEDEX
|
|
|
|
EarlsPokemonAcademy_MapScriptHeader:
|
|
.SceneScripts:
|
|
db 0
|
|
|
|
.MapCallbacks:
|
|
db 0
|
|
|
|
AcademyEarl:
|
|
applymovement EARLSPOKEMONACADEMY_EARL, MovementData_0x68b2d
|
|
faceplayer
|
|
opentext
|
|
writetext UnknownText_0x68b3b
|
|
yesorno
|
|
iffalse .Part1
|
|
writetext UnknownText_0x68bbd
|
|
yesorno
|
|
iffalse .Done
|
|
.Part1:
|
|
writetext UnknownText_0x68c51
|
|
yesorno
|
|
iffalse .Done
|
|
writetext UnknownText_0x68c7b
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.Done:
|
|
writetext UnknownText_0x68d31
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
EarlsPokemonAcademyYoungster1Script:
|
|
jumptextfaceplayer EarlsPokemonAcademyYoungster1Text
|
|
|
|
EarlsPokemonAcademyGameboyKid1Script:
|
|
faceplayer
|
|
opentext
|
|
writetext EarlsPokemonAcademyGameboyKid1Text
|
|
waitbutton
|
|
closetext
|
|
spriteface EARLSPOKEMONACADEMY_GAMEBOY_KID1, DOWN
|
|
end
|
|
|
|
EarlsPokemonAcademyGameboyKid2Script:
|
|
faceplayer
|
|
opentext
|
|
writetext EarlsPokemonAcademyGameboyKid2Text
|
|
waitbutton
|
|
closetext
|
|
spriteface EARLSPOKEMONACADEMY_GAMEBOY_KID2, DOWN
|
|
end
|
|
|
|
EarlsPokemonAcademyYoungster2Script:
|
|
jumptextfaceplayer EarlsPokemonAcademyYoungster2Text
|
|
|
|
AcademyBlackboard:
|
|
opentext
|
|
writetext AcademyBlackboardText
|
|
.Loop:
|
|
loadmenudata .BlackboardMenuData
|
|
_2dmenu
|
|
closewindow
|
|
if_equal $1, .Poison
|
|
if_equal $2, .Paralysis
|
|
if_equal $3, .Sleep
|
|
if_equal $4, .Burn
|
|
if_equal $5, .Freeze
|
|
closetext
|
|
end
|
|
|
|
.Poison:
|
|
writetext AcademyPoisonText
|
|
waitbutton
|
|
jump .Loop
|
|
|
|
.Paralysis:
|
|
writetext AcademyParalysisText
|
|
waitbutton
|
|
jump .Loop
|
|
|
|
.Sleep:
|
|
writetext AcademySleepText
|
|
waitbutton
|
|
jump .Loop
|
|
|
|
.Burn:
|
|
writetext AcademyBurnText
|
|
waitbutton
|
|
jump .Loop
|
|
|
|
.Freeze:
|
|
writetext AcademyFreezeText
|
|
waitbutton
|
|
jump .Loop
|
|
|
|
.BlackboardMenuData:
|
|
db MENU_BACKUP_TILES ; flags
|
|
db 00, 00 ; start coords
|
|
db 08, 11 ; end coords
|
|
dw .MenuData2
|
|
db 1 ; default option
|
|
|
|
.MenuData2:
|
|
db STATICMENU_CURSOR ; flags
|
|
dn 3, 2 ; rows, columns
|
|
db 5 ; spacing
|
|
dba .Text
|
|
dbw BANK(AcademyBlackboard), 0
|
|
|
|
.Text:
|
|
db "PSN@"
|
|
db "PAR@"
|
|
db "SLP@"
|
|
db "BRN@"
|
|
db "FRZ@"
|
|
db "QUIT@"
|
|
|
|
AcademyNotebook:
|
|
opentext
|
|
writetext AcademyNotebookText
|
|
yesorno
|
|
iffalse .Done
|
|
writetext AcademyNotebookText1
|
|
yesorno
|
|
iffalse .Done
|
|
writetext AcademyNotebookText2
|
|
yesorno
|
|
iffalse .Done
|
|
writetext AcademyNotebookText3
|
|
waitbutton
|
|
.Done:
|
|
closetext
|
|
end
|
|
|
|
AcademyStickerMachine:
|
|
; unused
|
|
jumptext AcademyStickerMachineText
|
|
|
|
AcademyBookshelf:
|
|
jumpstd difficultbookshelf
|
|
|
|
MovementData_0x68b2d:
|
|
turn_head DOWN
|
|
turn_head LEFT
|
|
turn_head UP
|
|
turn_head RIGHT
|
|
turn_head DOWN
|
|
turn_head LEFT
|
|
turn_head UP
|
|
turn_head RIGHT
|
|
turn_head DOWN
|
|
turn_head LEFT
|
|
turn_head UP
|
|
turn_head RIGHT
|
|
turn_head DOWN
|
|
step_end
|
|
|
|
UnknownText_0x68b3b:
|
|
text "EARL, I am!"
|
|
|
|
para "Wonderful are"
|
|
line "#MON, yes!"
|
|
|
|
para "Teach you I will"
|
|
line "to be a better"
|
|
cont "trainer!"
|
|
|
|
para "What you want to"
|
|
line "know? Want to be"
|
|
cont "a winner is you?"
|
|
done
|
|
|
|
UnknownText_0x68bbd:
|
|
text "Good! Teach you,"
|
|
line "I will!"
|
|
|
|
para "In battle, #MON"
|
|
line "top on list jump"
|
|
cont "out first!"
|
|
|
|
para "Change order in"
|
|
line "list, make battle"
|
|
cont "easy, maybe!"
|
|
|
|
para "More from me you"
|
|
line "want to hear?"
|
|
done
|
|
|
|
UnknownText_0x68c51:
|
|
text "So, want to know"
|
|
line "how to raise"
|
|
cont "#MON well?"
|
|
done
|
|
|
|
UnknownText_0x68c7b:
|
|
text "Fine! Teach you,"
|
|
line "I will!"
|
|
|
|
para "If #MON come"
|
|
line "out in battle even"
|
|
|
|
para "briefly, some EXP."
|
|
line "Points it gets."
|
|
|
|
para "At top of list put"
|
|
line "weak #MON."
|
|
|
|
para "Switch in battle"
|
|
line "quick!"
|
|
|
|
para "This way, weak"
|
|
line "#MON strong"
|
|
cont "become!"
|
|
done
|
|
|
|
UnknownText_0x68d31:
|
|
text "Oh! Smart student"
|
|
line "you are! Nothing"
|
|
cont "more do I teach!"
|
|
|
|
para "Good to #MON"
|
|
line "you must be!"
|
|
done
|
|
|
|
EarlsPokemonAcademyYoungster1Text:
|
|
text "I'm taking notes"
|
|
line "of the teacher's"
|
|
cont "lecture."
|
|
|
|
para "I'd better copy"
|
|
line "the stuff on the"
|
|
cont "blackboard too."
|
|
done
|
|
|
|
EarlsPokemonAcademyGameboyKid1Text:
|
|
text "I traded my best"
|
|
line "#MON to the"
|
|
cont "guy beside me."
|
|
done
|
|
|
|
EarlsPokemonAcademyGameboyKid2Text:
|
|
text "Huh? The #MON I"
|
|
line "just got is hold-"
|
|
cont "ing something!"
|
|
done
|
|
|
|
EarlsPokemonAcademyYoungster2Text:
|
|
text "A #MON holding"
|
|
line "a BERRY will heal"
|
|
cont "itself in battle."
|
|
|
|
para "Many other items"
|
|
line "can be held by"
|
|
cont "#MON…"
|
|
|
|
para "It sure is tough"
|
|
line "taking notes…"
|
|
done
|
|
|
|
AcademyBlackboardText:
|
|
text "The blackboard"
|
|
line "describes #MON"
|
|
|
|
para "status changes in"
|
|
line "battle."
|
|
done
|
|
|
|
AcademyBlackboardText2:
|
|
; unused
|
|
text "Read which topic?"
|
|
done
|
|
|
|
AcademyPoisonText:
|
|
text "If poisoned, a"
|
|
line "#MON steadily"
|
|
cont "loses HP."
|
|
|
|
para "Poison lingers"
|
|
line "after the battle,"
|
|
|
|
para "and HP is lost as"
|
|
line "you walk."
|
|
|
|
para "To cure it, use an"
|
|
line "ANTIDOTE."
|
|
done
|
|
|
|
AcademyParalysisText:
|
|
text "Paralysis reduces"
|
|
line "speed and may"
|
|
cont "prevent movement."
|
|
|
|
para "It remains after"
|
|
line "battle, so use"
|
|
cont "a PARLYZ HEAL."
|
|
done
|
|
|
|
AcademySleepText:
|
|
text "If asleep, your"
|
|
line "#MON can't make"
|
|
cont "a move."
|
|
|
|
para "A sleeping #MON"
|
|
line "doesn't wake up"
|
|
cont "after battle."
|
|
|
|
para "Wake it up with"
|
|
line "an AWAKENING."
|
|
done
|
|
|
|
AcademyBurnText:
|
|
text "A burn steadily"
|
|
line "consumes HP."
|
|
|
|
para "It also reduces"
|
|
line "attack power."
|
|
|
|
para "A burn lingers"
|
|
line "after battle."
|
|
|
|
para "Use a BURN HEAL as"
|
|
line "the cure."
|
|
done
|
|
|
|
AcademyFreezeText:
|
|
text "If your #MON is"
|
|
line "frozen, it can't"
|
|
cont "do a thing."
|
|
|
|
para "It remains frozen"
|
|
line "after battle."
|
|
|
|
para "Thaw it out with"
|
|
line "an ICE HEAL."
|
|
done
|
|
|
|
AcademyNotebookText:
|
|
text "It's this kid's"
|
|
line "notebook…"
|
|
|
|
para "Catch #MON"
|
|
line "using # BALLS."
|
|
|
|
para "Up to six can be"
|
|
line "in your party."
|
|
|
|
para "Keep reading?"
|
|
done
|
|
|
|
AcademyNotebookText1:
|
|
text "Before throwing a"
|
|
line "# BALL, weaken"
|
|
cont "the target first."
|
|
|
|
para "A poisoned or"
|
|
line "burned #MON is"
|
|
cont "easier to catch."
|
|
|
|
para "Keep reading?"
|
|
done
|
|
|
|
AcademyNotebookText2:
|
|
text "Some moves may"
|
|
line "cause confusion."
|
|
|
|
para "Confusion may make"
|
|
line "a #MON attack"
|
|
cont "itself."
|
|
|
|
para "Leaving battle"
|
|
line "clears up any"
|
|
cont "confusion."
|
|
|
|
para "Keep reading?"
|
|
done
|
|
|
|
AcademyNotebookText3:
|
|
text "People who catch"
|
|
line "and use #MON"
|
|
|
|
para "in battle are"
|
|
line "#MON trainers."
|
|
|
|
para "They are expected"
|
|
line "to visit #MON"
|
|
|
|
para "GYMS and defeat"
|
|
line "other trainers."
|
|
|
|
para "The next page"
|
|
line "is… Blank!"
|
|
|
|
para "Boy: E-he-he…"
|
|
|
|
para "I haven't written"
|
|
line "anymore…"
|
|
done
|
|
|
|
AcademyStickerMachineText:
|
|
text "This super machine"
|
|
line "prints data out as"
|
|
|
|
para "stickers!"
|
|
done
|
|
|
|
EarlsPokemonAcademy_MapEventHeader:
|
|
; filler
|
|
db 0, 0
|
|
|
|
.Warps:
|
|
db 2
|
|
warp_def 3, 15, 3, VIOLET_CITY
|
|
warp_def 4, 15, 3, VIOLET_CITY
|
|
|
|
.CoordEvents:
|
|
db 0
|
|
|
|
.BGEvents:
|
|
db 4
|
|
bg_event 0, 1, BGEVENT_READ, AcademyBookshelf
|
|
bg_event 1, 1, BGEVENT_READ, AcademyBookshelf
|
|
bg_event 3, 0, BGEVENT_READ, AcademyBlackboard
|
|
bg_event 4, 0, BGEVENT_READ, AcademyBlackboard
|
|
|
|
.ObjectEvents:
|
|
db 6
|
|
object_event 4, 2, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, AcademyEarl, EVENT_EARLS_ACADEMY_EARL
|
|
object_event 2, 5, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, EarlsPokemonAcademyYoungster1Script, -1
|
|
object_event 3, 11, SPRITE_GAMEBOY_KID, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, EarlsPokemonAcademyGameboyKid1Script, -1
|
|
object_event 4, 11, SPRITE_GAMEBOY_KID, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, EarlsPokemonAcademyGameboyKid2Script, -1
|
|
object_event 4, 7, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, EarlsPokemonAcademyYoungster2Script, -1
|
|
object_event 2, 4, SPRITE_POKEDEX, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, AcademyNotebook, -1
|