mirror of
https://github.com/thornAvery/jep-hack.git
synced 2025-09-16 18:20:50 +12:00

This gives Sepia City all of its locations. The pagoda uses references to the Five-Story Pagoda story from 1891, with Sages using various 成语 translated into English. This also adds the Elder class, assigning it to Li and (now) Roen. The Elder in the pagoda is not yet battle-able as I haven't really fit anything into the story. No cutscenes, etc, it's all too early.
355 lines
7.3 KiB
NASM
355 lines
7.3 KiB
NASM
object_const_def
|
|
const SPROUTTOWER3F_SAGE1
|
|
const SPROUTTOWER3F_SAGE2
|
|
const SPROUTTOWER3F_SAGE3
|
|
const SPROUTTOWER3F_SAGE4
|
|
const SPROUTTOWER3F_POKE_BALL1
|
|
const SPROUTTOWER3F_POKE_BALL2
|
|
const SPROUTTOWER3F_RIVAL
|
|
|
|
SproutTower3F_MapScripts:
|
|
def_scene_scripts
|
|
scene_script SproutTower3FNoop1Scene, SCENE_SPROUTTOWER3F_RIVAL_ENCOUNTER
|
|
scene_script SproutTower3FNoop2Scene, SCENE_SPROUTTOWER3F_NOOP
|
|
|
|
def_callbacks
|
|
|
|
SproutTower3FNoop1Scene:
|
|
end
|
|
|
|
SproutTower3FNoop2Scene:
|
|
end
|
|
|
|
SproutTower3FRivalScene:
|
|
turnobject PLAYER, UP
|
|
showemote EMOTE_SHOCK, PLAYER, 15
|
|
special FadeOutMusic
|
|
playsound SFX_TACKLE
|
|
playsound SFX_ELEVATOR
|
|
earthquake 79
|
|
pause 15
|
|
playsound SFX_TACKLE
|
|
playsound SFX_ELEVATOR
|
|
earthquake 79
|
|
applymovement PLAYER, SproutTower3FPlayerApproachesRivalMovement
|
|
applymovement SPROUTTOWER3F_RIVAL, SproutTower3FRivalApproachesElderMovement
|
|
opentext
|
|
writetext SproutTowerElderLecturesRivalText
|
|
waitbutton
|
|
closetext
|
|
showemote EMOTE_SHOCK, SPROUTTOWER3F_RIVAL, 15
|
|
turnobject SPROUTTOWER3F_RIVAL, DOWN
|
|
pause 15
|
|
applymovement SPROUTTOWER3F_RIVAL, SproutTower3FRivalLeavesElderMovement
|
|
playmusic MUSIC_RIVAL_ENCOUNTER
|
|
opentext
|
|
writetext SproutTowerRivalOnlyCareAboutStrongText
|
|
waitbutton
|
|
closetext
|
|
turnobject SPROUTTOWER3F_RIVAL, UP
|
|
opentext
|
|
writetext SproutTowerRivalUsedEscapeRopeText
|
|
pause 15
|
|
closetext
|
|
playsound SFX_WARP_TO
|
|
special FadeBlackQuickly
|
|
special ReloadSpritesNoPalettes
|
|
disappear SPROUTTOWER3F_RIVAL
|
|
waitsfx
|
|
special FadeInQuickly
|
|
setscene SCENE_SPROUTTOWER3F_NOOP
|
|
special RestartMapMusic
|
|
end
|
|
|
|
ElderLiScript:
|
|
faceplayer
|
|
opentext
|
|
checkevent EVENT_GOT_HM05_FLASH
|
|
iftrue .GotFlash
|
|
writetext ElderLiSeenText
|
|
waitbutton
|
|
closetext
|
|
winlosstext ElderLiBeatenText, 0
|
|
loadtrainer ELDER, LI
|
|
startbattle
|
|
reloadmapafterbattle
|
|
opentext
|
|
writetext ElderLiTakeThisFlashText
|
|
promptbutton
|
|
verbosegiveitem HM_FLASH
|
|
setevent EVENT_GOT_HM05_FLASH
|
|
setevent EVENT_BEAT_ELDER_LI
|
|
writetext ElderLiFlashExplanationText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
.GotFlash:
|
|
writetext ElderLiAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerSageJin:
|
|
trainer SAGE, JIN, EVENT_BEAT_SAGE_JIN, SageJinSeenText, SageJinBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext SageJinAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerSageTroy:
|
|
trainer SAGE, TROY, EVENT_BEAT_SAGE_TROY, SageTroySeenText, SageTroyBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext SageTroyAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
TrainerSageNeal:
|
|
trainer SAGE, NEAL, EVENT_BEAT_SAGE_NEAL, SageNealSeenText, SageNealBeatenText, 0, .Script
|
|
|
|
.Script:
|
|
endifjustbattled
|
|
opentext
|
|
writetext SageNealAfterBattleText
|
|
waitbutton
|
|
closetext
|
|
end
|
|
|
|
SproutTower3FPainting:
|
|
jumptext SproutTower3FPaintingText
|
|
|
|
SproutTower3FStatue:
|
|
jumptext SproutTower3FStatueText
|
|
|
|
SproutTower3FPotion:
|
|
itemball POTION
|
|
|
|
SproutTower3FEscapeRope:
|
|
itemball ESCAPE_ROPE
|
|
|
|
SproutTower3FPlayerApproachesRivalMovement:
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step UP
|
|
step_end
|
|
|
|
SproutTower3FRivalApproachesElderMovement:
|
|
step UP
|
|
step_end
|
|
|
|
SproutTower3FRivalLeavesElderMovement:
|
|
step RIGHT
|
|
step DOWN
|
|
step_end
|
|
|
|
SproutTowerElderLecturesRivalText:
|
|
text "ELDER: You are in-"
|
|
line "deed skilled as a"
|
|
cont "trainer."
|
|
|
|
para "As promised, here"
|
|
line "is your HM."
|
|
|
|
para "But let me say"
|
|
line "this: You should"
|
|
|
|
para "treat your"
|
|
line "#MON better."
|
|
|
|
para "The way you battle"
|
|
line "is far too harsh."
|
|
|
|
para "#MON are not"
|
|
line "tools of war…"
|
|
done
|
|
|
|
SproutTowerRivalOnlyCareAboutStrongText:
|
|
text "…"
|
|
line "…Humph!"
|
|
|
|
para "He claims to be"
|
|
line "the ELDER but"
|
|
cont "he's weak."
|
|
|
|
para "It stands to"
|
|
line "reason."
|
|
|
|
para "I'd never lose to"
|
|
line "fools who babble"
|
|
|
|
para "about being nice"
|
|
line "to #MON."
|
|
|
|
para "I only care about"
|
|
line "strong #MON"
|
|
cont "that can win."
|
|
|
|
para "I really couldn't"
|
|
line "care less about"
|
|
cont "weak #MON."
|
|
done
|
|
|
|
SproutTowerRivalUsedEscapeRopeText:
|
|
text "<RIVAL> used an"
|
|
line "ESCAPE ROPE!"
|
|
done
|
|
|
|
ElderLiSeenText:
|
|
text "So good of you to"
|
|
line "come here!"
|
|
|
|
para "SPROUT TOWER is a"
|
|
line "place of training."
|
|
|
|
para "People and #MON"
|
|
line "test their bonds"
|
|
|
|
para "to build a bright"
|
|
line "future together."
|
|
|
|
para "I am the final"
|
|
line "test."
|
|
|
|
para "Allow me to check"
|
|
line "the ties between"
|
|
|
|
para "your #MON and"
|
|
line "you!"
|
|
done
|
|
|
|
ElderLiBeatenText:
|
|
text "Ah, excellent!"
|
|
done
|
|
|
|
ElderLiTakeThisFlashText:
|
|
text "You and your #-"
|
|
line "MON should have"
|
|
|
|
para "no problem using"
|
|
line "this move."
|
|
|
|
para "Take this FLASH"
|
|
line "HM."
|
|
done
|
|
|
|
ElderLiFlashExplanationText:
|
|
text "FLASH illuminates"
|
|
line "even the darkest"
|
|
cont "of all places."
|
|
|
|
para "But to use it out"
|
|
line "of battle, you"
|
|
|
|
para "need the BADGE"
|
|
line "from VIOLET's GYM."
|
|
done
|
|
|
|
ElderLiAfterBattleText:
|
|
text "I hope you learn"
|
|
line "and grow from your"
|
|
cont "journey."
|
|
done
|
|
|
|
SageJinSeenText:
|
|
text "I train to find"
|
|
line "enlightenment in"
|
|
cont "#MON!"
|
|
done
|
|
|
|
SageJinBeatenText:
|
|
text "My training is"
|
|
line "incomplete…"
|
|
done
|
|
|
|
SageJinAfterBattleText:
|
|
text "As #MON grow"
|
|
line "stronger, so does"
|
|
cont "the trainer."
|
|
|
|
para "No, wait. As the"
|
|
line "trainer grows"
|
|
|
|
para "stronger, so do"
|
|
line "the #MON."
|
|
done
|
|
|
|
SageTroySeenText:
|
|
text "Let me see how"
|
|
line "much you trust"
|
|
cont "your #MON."
|
|
done
|
|
|
|
SageTroyBeatenText:
|
|
text "Yes, your trust is"
|
|
line "real!"
|
|
done
|
|
|
|
SageTroyAfterBattleText:
|
|
text "It is not far to"
|
|
line "the ELDER."
|
|
done
|
|
|
|
SageNealSeenText:
|
|
text "The ELDER's HM"
|
|
line "lights even pitch-"
|
|
cont "black darkness."
|
|
done
|
|
|
|
SageNealBeatenText:
|
|
text "It is my head that"
|
|
line "is bright!"
|
|
done
|
|
|
|
SageNealAfterBattleText:
|
|
text "Let there be light"
|
|
line "on your journey."
|
|
done
|
|
|
|
SproutTower3FPaintingText:
|
|
text "It's a powerful"
|
|
line "painting of a"
|
|
cont "BELLSPROUT."
|
|
done
|
|
|
|
SproutTower3FStatueText:
|
|
text "A #MON statue…"
|
|
|
|
para "It looks very"
|
|
line "distinguished."
|
|
done
|
|
|
|
SproutTower3F_MapEvents:
|
|
db 0, 0 ; filler
|
|
|
|
def_warp_events
|
|
warp_event 10, 14, SPROUT_TOWER_2F, 4
|
|
|
|
def_coord_events
|
|
coord_event 11, 9, SCENE_SPROUTTOWER3F_RIVAL_ENCOUNTER, SproutTower3FRivalScene
|
|
|
|
def_bg_events
|
|
bg_event 8, 1, BGEVENT_READ, SproutTower3FStatue
|
|
bg_event 11, 1, BGEVENT_READ, SproutTower3FStatue
|
|
bg_event 9, 0, BGEVENT_READ, SproutTower3FPainting
|
|
bg_event 10, 0, BGEVENT_READ, SproutTower3FPainting
|
|
bg_event 5, 15, BGEVENT_READ, SproutTower3FStatue
|
|
bg_event 14, 15, BGEVENT_READ, SproutTower3FStatue
|
|
|
|
def_object_events
|
|
object_event 8, 13, SPRITE_SAGE, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 3, TrainerSageJin, -1
|
|
object_event 8, 8, SPRITE_SAGE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 2, TrainerSageTroy, -1
|
|
object_event 10, 2, SPRITE_SAGE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ElderLiScript, -1
|
|
object_event 11, 11, SPRITE_SAGE, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 3, TrainerSageNeal, -1
|
|
object_event 6, 14, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, SproutTower3FPotion, EVENT_SPROUT_TOWER_3F_POTION
|
|
object_event 14, 1, SPRITE_POKE_BALL, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_ITEMBALL, 0, SproutTower3FEscapeRope, EVENT_SPROUT_TOWER_3F_ESCAPE_ROPE
|
|
object_event 10, 4, SPRITE_RIVAL, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_RIVAL_SPROUT_TOWER
|