putting together the progression

This commit is contained in:
Llinos Evans 2024-09-02 19:06:43 +01:00
parent f196adc8a1
commit 60d337d272
14 changed files with 173 additions and 57 deletions

View file

@ -532,7 +532,8 @@
const EVENT_BUENA_OFFERED_HER_PHONE_NUMBER const EVENT_BUENA_OFFERED_HER_PHONE_NUMBER
const EVENT_MET_BUENA const EVENT_MET_BUENA
const EVENT_GOT_ODD_EGG const EVENT_GOT_ODD_EGG
const_skip ; unused const EVENT_SAW_SUICUNE_ON_ROUTE_14
const EVENT_SAW_SUICUNE_IN_VERMILION_CITY
const EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER const EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
; Unused: next 167 events ; Unused: next 167 events

View file

@ -90,4 +90,6 @@ MapScenes::
scene_var BLUE_LAB, wBlueLabSceneID scene_var BLUE_LAB, wBlueLabSceneID
scene_var ROUTE_66_WHITE_CITY_GATE, wRoute66WhiteCityGateID scene_var ROUTE_66_WHITE_CITY_GATE, wRoute66WhiteCityGateID
scene_var SAFARI_ZONE_FUCHSIA_GATE_BETA, wFuchsiaSafariZoneGateID scene_var SAFARI_ZONE_FUCHSIA_GATE_BETA, wFuchsiaSafariZoneGateID
scene_var VERMILION_CITY, wVermilionCityID
scene_var ROUTE_14, wVermilionCityID
db -1 ; end db -1 ; end

View file

@ -10,10 +10,10 @@ ChrisNameMenuHeader:
db 5 ; items db 5 ; items
db "NEW NAME@" db "NEW NAME@"
MalePlayerNameArray: MalePlayerNameArray:
db "ETHAN@" db "ETHAN@" ; games
db "GOLD@" db "GOLD@" ; manga
db "CHRIS@" db "JIMMY@" ; legend of thunder
db "JIMMY@" db "CHRIS@" ; vanilla
db 2 ; title indent db 2 ; title indent
db " NAME @" ; title db " NAME @" ; title
@ -29,10 +29,10 @@ KrisNameMenuHeader:
db 5 ; items db 5 ; items
db "NEW NAME@" db "NEW NAME@"
FemalePlayerNameArray: FemalePlayerNameArray:
db "KRIS@" db "KRIS@" ; game
db "MARINA@" db "MARINA@" ; legend of thunder
db "AMANDA@" db "CRYSTAL@" ; manga
db "JODI@" db "CHRIS@" ; golden boys - plays with the male player version as well, showing it's a unisex name
db 2 ; title indent db 2 ; title indent
db " NAME @" ; title db " NAME @" ; title

View file

@ -612,7 +612,7 @@ InitializeEventsScript:
setevent EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M setevent EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M
setevent EVENT_KURTS_HOUSE_KURT_2 setevent EVENT_KURTS_HOUSE_KURT_2
setevent EVENT_KURTS_HOUSE_GRANDDAUGHTER_2 setevent EVENT_KURTS_HOUSE_GRANDDAUGHTER_2
setevent EVENT_RANG_CLEAR_BELL_1 setevent EVENT_SAW_RAINBOW_WING_1
setevent EVENT_FLORIA_AT_FLOWER_SHOP setevent EVENT_FLORIA_AT_FLOWER_SHOP
setevent EVENT_FLORIA_AT_SUDOWOODO setevent EVENT_FLORIA_AT_SUDOWOODO
setevent EVENT_GOLDENROD_CITY_MOVE_TUTOR setevent EVENT_GOLDENROD_CITY_MOVE_TUTOR

View file

@ -48,7 +48,7 @@ CianwoodCitySuicuneAndEusine:
disappear CIANWOODCITY_SUICUNE disappear CIANWOODCITY_SUICUNE
pause 10 pause 10
setscene SCENE_CIANWOODCITY_NOOP setscene SCENE_CIANWOODCITY_NOOP
clearevent EVENT_SAW_SUICUNE_ON_ROUTE_42 setevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
setmapscene ROUTE_42, SCENE_ROUTE42_SUICUNE setmapscene ROUTE_42, SCENE_ROUTE42_SUICUNE
checkevent EVENT_FOUGHT_EUSINE checkevent EVENT_FOUGHT_EUSINE
iftrue .Done iftrue .Done

View file

@ -123,6 +123,9 @@ DebugFlyScript:
setevent EVENT_BEAT_ELITE_FOUR setevent EVENT_BEAT_ELITE_FOUR
setevent EVENT_SAW_SUICUNE_ON_ROUTE_42 ; for testing the suicune events
setmapscene VERMILION_CITY, SCENE_VERMILIONCITY_SUICUNE ; this ensures that the scene is correctly set too.
addcellnum PHONE_MOM addcellnum PHONE_MOM
readvar VAR_BADGES readvar VAR_BADGES
givepoke PIDGEOT, 70 givepoke PIDGEOT, 70

View file

@ -42,8 +42,8 @@ EcruteakGymMortyScript:
readvar VAR_BADGES readvar VAR_BADGES
scall EcruteakGymActivateRockets scall EcruteakGymActivateRockets
setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_ECRUTEAKTINTOWERENTRANCE_NOOP setmapscene ECRUTEAK_TIN_TOWER_ENTRANCE, SCENE_ECRUTEAKTINTOWERENTRANCE_NOOP
setevent EVENT_RANG_CLEAR_BELL_1 setevent EVENT_SAW_RAINBOW_WING_1
setevent EVENT_RANG_CLEAR_BELL_2 setevent EVENT_SAW_RAINBOW_WING_2
.FightDone: .FightDone:
checkevent EVENT_GOT_TM30_SHADOW_BALL checkevent EVENT_GOT_TM30_SHADOW_BALL
iftrue .GotShadowBall iftrue .GotShadowBall

View file

@ -92,7 +92,7 @@ EcruteakTinTowerEntranceSageScript:
closetext closetext
end end
.RainbowWing: .GotRainbowWing:
writetext EcruteakTinTowerEntranceSageText_SeesRainbowWing writetext EcruteakTinTowerEntranceSageText_SeesRainbowWing
waitbutton waitbutton
closetext closetext

View file

@ -20,31 +20,68 @@ Route14Noop1Scene:
Route14Noop2Scene: Route14Noop2Scene:
end end
Route42SuicuneCallback: Route14SuicuneCallback:
checkevent EVENT_SAW_SUICUNE_IN_VERMILION_CITY checkevent EVENT_SAW_SUICUNE_IN_VERMILION_CITY
iffalse .NoAppear iffalse .NoAppear
checkevent EVENT_SAW_SUICUNE_ON_ROUTE14 checkevent EVENT_SAW_SUICUNE_ON_ROUTE_14
iffalse .NoAppear iffalse .NoAppear
appear ROUTE42_SUICUNE appear ROUTE14_SUICUNE
endcallback endcallback
.NoAppear: .NoAppear:
disappear ROUTE42_SUICUNE disappear ROUTE14_SUICUNE
disappear ROUTE14_EUSINE ; just making sure, also skips using any events for this matter
endcallback endcallback
; BUG: Movement is fucky, eusine is a little weird. I'm just incompetent.
Route14EusineHandler:
moveobject ROUTE14_EUSINE, 12, 11
; fallthrough
Route14SuicuneScript: Route14SuicuneScript:
playmusic MUSIC_NONE
showemote EMOTE_SHOCK, PLAYER, 15 showemote EMOTE_SHOCK, PLAYER, 15
turnobject PLAYER, RIGHT
pause 15 pause 15
cry SUICUNE
playsound SFX_WARP_FROM playsound SFX_WARP_FROM
applymovement ROUTE14_SUICUNE, Route14SuicuneMovement applymovement ROUTE14_SUICUNE, Route14SuicuneMovement
disappear ROUTE14_SUICUNE disappear ROUTE14_SUICUNE
pause 10 pause 10
appear ROUTE14_EUSINE
playmusic MUSIC_MYSTICALMAN_ENCOUNTER
applymovement ROUTE14_EUSINE, Route14EusineMovement1
opentext
writetext Route14EusineSawSuicune
waitbutton
closetext
applymovement ROUTE14_EUSINE, Route14EusineMovement2
setscene SCENE_ROUTE14_NOOP setscene SCENE_ROUTE14_NOOP
clearevent EVENT_FOUGHT_SUICUNE setevent EVENT_SAW_SUICUNE_ON_ROUTE_14
setmapscene ROUTE_25, SCENE_ROUTE25_FINAL_SUICUNE setmapscene ROUTE_25, SCENE_ROUTE25_FINAL_SUICUNE
disappear ROUTE14_EUSINE disappear ROUTE14_EUSINE
special RestartMapMusic
end end
Route14EusineMovement1:
big_step UP
big_step UP
big_step UP
big_step UP
step UP
step UP
step_end
Route14EusineMovement2:
step UP
step UP
step UP
step UP
step UP
step_end
Route14SuicuneMovement: Route14SuicuneMovement:
set_sliding set_sliding
fast_jump_step RIGHT fast_jump_step RIGHT
@ -204,10 +241,10 @@ Route14_MapEvents:
def_warp_events def_warp_events
def_coord_events def_coord_events
coord_event 11, 8, SCENE_ROUTE_14_SUICUNE, Route14SuicuneScript coord_event 11, 8, SCENE_ROUTE14_SUICUNE, Route14SuicuneScript
coord_event 12, 8, SCENE_ROUTE_14_SUICUNE, Route14SuicuneScript coord_event 12, 8, SCENE_ROUTE14_SUICUNE, Route14SuicuneScript
coord_event 13, 8, SCENE_ROUTE_14_SUICUNE, Route14SuicuneScript coord_event 13, 8, SCENE_ROUTE14_SUICUNE, Route14EusineHandler
coord_event 14, 8, SCENE_ROUTE_14_SUICUNE, Route14SuicuneScript coord_event 14, 8, SCENE_ROUTE14_SUICUNE, Route14SuicuneScript
def_bg_events def_bg_events

View file

@ -28,10 +28,15 @@ Route25Noop1Scene:
Route25Noop2Scene: Route25Noop2Scene:
end end
; BUG: Movement is fucky, eusine is a little weird. I'm just incompetent.
; also it messes with the misty script
; the way things are, the game expects you to have beaten misty.
; set to change with a new location and hilly area, set up in a way where you cannot mess things up
Route25SuicuneCallback: Route25SuicuneCallback:
checkevent EVENT_BEAT_MISTY checkevent EVENT_BEAT_MISTY
iffalse .NoAppear iffalse .NoAppear
checkevent EVENT_SAW_SUICUNE_ON_ROUTE14 checkevent EVENT_SAW_SUICUNE_ON_ROUTE_14
iffalse .NoAppear iffalse .NoAppear
checkevent EVENT_FOUGHT_SUICUNE checkevent EVENT_FOUGHT_SUICUNE
iffalse .Appear iffalse .Appear
@ -43,22 +48,27 @@ Route25SuicuneCallback:
.NoAppear: .NoAppear:
disappear ROUTE25_SUICUNE disappear ROUTE25_SUICUNE
disappear ROUTE25_EUSINE ; just making sure, also skips using any events for this matter
endcallback endcallback
Route25SuicuneEventScript: Route25SuicuneEventScript:
showemote EMOTE_SHOCK, PLAYER, 15 showemote EMOTE_SHOCK, PLAYER, 15
pause 15 pause 15
applymovement PLAYER, Route25PlayerMovement ;applymovement PLAYER, Route25PlayerMovement
appear ROUTE25_EUSINE
playmusic MUSIC_MYSTICALMAN_ENCOUNTER
applymovement ROUTE25_EUSINE, Route25EusineMovement1 applymovement ROUTE25_EUSINE, Route25EusineMovement1
open_text opentext
writetext Route25EusineText1 writetext Route25EusineText1
waitbutton waitbutton
closetext closetext
applymovement ROUTE25_EUSINE, Route25EusineMovement2 applymovement ROUTE25_EUSINE, Route25EusineMovement2
open_text opentext
writetext Route25EusineText2 writetext Route25EusineText2
waitbutton waitbutton
closetext closetext
special RestartMapMusic
end end
Route25EusineText1: Route25EusineText1:
@ -107,7 +117,7 @@ Route25EusineText3:
para "Farewell, <PLAYER>!" para "Farewell, <PLAYER>!"
para "…" para "…sob…"
para "Farewell, SUICUNE!" para "Farewell, SUICUNE!"
@ -123,7 +133,7 @@ Route25EusineMovement2:
step RIGHT step RIGHT
step_end step_end
Route25EusineMovement3 Route25EusineMovement3:
big_step LEFT big_step LEFT
big_step LEFT big_step LEFT
big_step LEFT big_step LEFT
@ -144,12 +154,12 @@ Route25Suicune:
startbattle startbattle
disappear ROUTE25_SUICUNE disappear ROUTE25_SUICUNE
reloadmapafterbattle reloadmapafterbattle
open_text opentext
writetext Route25EusineText3 writetext Route25EusineText3
waitbutton waitbutton
closetext closetext
applymovement ROUTE25_EUSINE, Route25EusineMovement3 applymovement ROUTE25_EUSINE, Route25EusineMovement3
disappear ROUTE_25_EUSINE disappear ROUTE25_EUSINE
end end
Route25MistyDate1Script: Route25MistyDate1Script:
@ -551,10 +561,6 @@ BillsHouseSignText:
line "BILL'S HOUSE" line "BILL'S HOUSE"
done done
UnusedBillsHouseSignText: ; unreferenced
text "BILL'S HOUSE"
done
Route25_MapEvents: Route25_MapEvents:
db 0, 0 ; filler db 0, 0 ; filler

View file

@ -43,8 +43,8 @@ Route36SuicuneScript:
turnobject PLAYER, DOWN turnobject PLAYER, DOWN
pause 10 pause 10
setscene SCENE_ROUTE36_NOOP setscene SCENE_ROUTE36_NOOP
clearevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY setevent EVENT_SAW_SUICUNE_ON_ROUTE_36
setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE setmapscene ROUTE_42, SCENE_ROUTE42_SUICUNE
end end
SudowoodoScript: SudowoodoScript:

View file

@ -15,7 +15,7 @@ Route42_MapScripts:
scene_script Route42Noop2Scene, SCENE_ROUTE42_SUICUNE scene_script Route42Noop2Scene, SCENE_ROUTE42_SUICUNE
def_callbacks def_callbacks
callback MAPCALLBACK_OBJECTS, RouteSuicuneCallback callback MAPCALLBACK_OBJECTS, Route14SuicuneCallback
Route42Noop1Scene: Route42Noop1Scene:
end end
@ -24,9 +24,9 @@ Route42Noop2Scene:
end end
Route42SuicuneCallback: Route42SuicuneCallback:
checkevent EVENT_SAW_SUICUNE_ON_ROUTE14 checkevent EVENT_SAW_SUICUNE_ON_ROUTE_14
iffalse .NoAppear iffalse .NoAppear
checkevent EVENT_SAW_SUICUNE_ON_ROUTE42 checkevent EVENT_SAW_SUICUNE_ON_ROUTE_42
iffalse .NoAppear iffalse .NoAppear
appear ROUTE42_SUICUNE appear ROUTE42_SUICUNE
endcallback endcallback
@ -43,8 +43,8 @@ Route42SuicuneScript:
disappear ROUTE42_SUICUNE disappear ROUTE42_SUICUNE
pause 10 pause 10
setscene SCENE_ROUTE42_NOOP setscene SCENE_ROUTE42_NOOP
clearevent EVENT_SAW_SUICUNE_ON_ROUTE_36 setevent EVENT_SAW_SUICUNE_ON_ROUTE_42
setmapscene ROUTE_36, SCENE_ROUTE36_SUICUNE setmapscene VERMILION_CITY, SCENE_ROUTE36_SUICUNE
end end
TrainerFisherTully: TrainerFisherTully:

View file

@ -32,29 +32,94 @@ VermilionCitySuicuneCallback:
.NoAppear: .NoAppear:
disappear VERMILIONCITY_SUICUNE disappear VERMILIONCITY_SUICUNE
disappear VERMILIONCITY_EUSINE ; just making sure, also skips using any events for this matter
endcallback endcallback
VermilionCitySuicuneScript: ; BUG: Movement is fucky, eusine is a little weird. I'm just incompetent.
; Two different startup scripts given the position.
; I am 99.9% sure there's a way to simply modify this by the player's position on the map, like in RBY.
; However, I can't seem to find any examples...
; If you're smarter than me, you should know what to do.
VermilionCitySuicuneScriptStartupLeft:
playmusic MUSIC_NONE
showemote EMOTE_SHOCK, PLAYER, 15 showemote EMOTE_SHOCK, PLAYER, 15
pause 15 pause 15
; jank zone begins here.
applymovement PLAYER, VermilionCityPlayerToTheLeftMovement
sjump VermilionCitySuicuneScript
VermilionCitySuicuneScriptStartupRight:
playmusic MUSIC_NONE
showemote EMOTE_SHOCK, PLAYER, 15
pause 15
; jank zone ends here.
turnobject PLAYER, RIGHT ; basically if you can use the player's x/y position you should use this and the left movement in an if this then that statement.
; fallthrough
VermilionCitySuicuneScript:
playsound SFX_WARP_FROM playsound SFX_WARP_FROM
applymovement VERMILIONCITY_SUICUNE, VermilionCitySuicuneMovement applymovement VERMILIONCITY_SUICUNE, VermilionCitySuicuneMovement1
cry SUICUNE
applymovement VERMILIONCITY_SUICUNE, VermilionCitySuicuneMovement2
disappear VERMILIONCITY_SUICUNE disappear VERMILIONCITY_SUICUNE
pause 10 pause 10
playmusic MUSIC_MYSTICALMAN_ENCOUNTER
appear VERMILIONCITY_EUSINE
applymovement VERMILIONCITY_EUSINE, VermilionCityEusineMovement1
opentext
writetext VermilionCityEusineSawSuicune
waitbutton
closetext
turnobject PLAYER, UP
applymovement VERMILIONCITY_EUSINE, VermilionCityEusineMovement2
setscene SCENE_VERMILIONCITY_NOOP setscene SCENE_VERMILIONCITY_NOOP
clearevent EVENT_SAW_SUICUNE_IN_VERMILION_CITY setevent EVENT_SAW_SUICUNE_IN_VERMILION_CITY
setmapscene ROUTE_14, SCENE_ROUTE_14_SUICUNE setmapscene ROUTE_14, SCENE_ROUTE14_SUICUNE
disappear VERMILIONCITY_EUSINE disappear VERMILIONCITY_EUSINE
special RestartMapMusic
end end
VermilionCitySuicuneMovement: VermilionCityPlayerToTheLeftMovement:
step RIGHT
step_end
VermilionCityEusineMovement1:
big_step RIGHT
big_step RIGHT
big_step RIGHT
big_step UP
step UP
step_end
VermilionCityEusineMovement2:
big_step UP
big_step UP
big_step UP
big_step UP
big_step UP
big_step UP
step_end
VermilionCitySuicuneMovement1:
set_sliding set_sliding
fast_jump_step RIGHT fast_jump_step RIGHT
fast_jump_step RIGHT fast_jump_step DOWN
fast_jump_step RIGHT fast_jump_step UP
fast_jump_step RIGHT fast_jump_step LEFT
fast_jump_step RIGHT remove_sliding
fast_jump_step RIGHT step_end
VermilionCitySuicuneMovement2:
set_sliding
fast_jump_step UP
fast_jump_step UP
fast_jump_step UP
fast_jump_step UP
fast_jump_step UP
fast_jump_step UP
remove_sliding remove_sliding
step_end step_end
@ -348,8 +413,8 @@ VermilionCity_MapEvents:
warp_event 34, 7, DIGLETTS_CAVE, 1 warp_event 34, 7, DIGLETTS_CAVE, 1
def_coord_events def_coord_events
coord_event 28, 18, SCENE_VERMILION_CITY_SUICUNE, VermilionCitySuicuneScript coord_event 28, 21, SCENE_VERMILIONCITY_SUICUNE, VermilionCitySuicuneScriptStartupLeft
coord_event 29, 28, SCENE_VERMILION_CITY_SUICUNE, VermilionCitySuicuneScript coord_event 29, 21, SCENE_VERMILIONCITY_SUICUNE, VermilionCitySuicuneScriptStartupRight
def_bg_events def_bg_events
bg_event 25, 3, BGEVENT_READ, VermilionCitySign bg_event 25, 3, BGEVENT_READ, VermilionCitySign
@ -368,5 +433,5 @@ VermilionCity_MapEvents:
object_event 14, 16, SPRITE_SUPER_NERD, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, VermilionCitySuperNerdScript, -1 object_event 14, 16, SPRITE_SUPER_NERD, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, VermilionCitySuperNerdScript, -1
object_event 34, 8, SPRITE_BIG_SNORLAX, SPRITEMOVEDATA_BIGDOLLSYM, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, VermilionSnorlax, EVENT_VERMILION_CITY_SNORLAX object_event 34, 8, SPRITE_BIG_SNORLAX, SPRITEMOVEDATA_BIGDOLLSYM, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, VermilionSnorlax, EVENT_VERMILION_CITY_SNORLAX
object_event 31, 12, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, VermilionGymBadgeGuy, -1 object_event 31, 12, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, VermilionGymBadgeGuy, -1
object_event 28, 15, SPRITE_SUPER_NERD, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_IN_VERMILION_CITY object_event 25, 24, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_IN_VERMILION_CITY
object_event 31, 19, SPRITE_SUICUNE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_IN_VERMILION_CITY object_event 31, 21, SPRITE_SUICUNE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_IN_VERMILION_CITY

View file

@ -3111,7 +3111,9 @@ wSilentHillsSceneID:: db
wBlueLabSceneID:: db wBlueLabSceneID:: db
wRoute66WhiteCityGateID:: db wRoute66WhiteCityGateID:: db
wFuchsiaSafariZoneGateID:: db wFuchsiaSafariZoneGateID:: db
ds 44 wVermilionCityID:: db
wRoute14ID:: db
ds 42
; fight counts ; fight counts
wJackFightCount:: db wJackFightCount:: db