diff --git a/constants/engine_flags.asm b/constants/engine_flags.asm index 0e9a0c0..1c5947d 100644 --- a/constants/engine_flags.asm +++ b/constants/engine_flags.asm @@ -110,6 +110,7 @@ const ENGINE_FLYPOINT_SAVOY const ENGINE_FLYPOINT_CORAL const ENGINE_FLYPOINT_RUDDY + const ENGINE_FLYPOINT_BLUE_FOREST const ENGINE_FLYPOINT_AVENTURINE const ENGINE_FLYPOINT_UNUSED ; wLuckyNumberShowFlag diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 3e31372..11be40b 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -671,16 +671,24 @@ ENDM newgroup SAVOY_CITY ; 37 map_const SAVOY_CITY, 20, 18 ; 1 map_const ROUTE_50_SAVOY_CITY_GATE, 5, 4 ; 2 + map_const SAVOY_CITY_POKECENTER_1F, 10, 4 ; 3 endgroup newgroup CORAL_CITY ; 38 map_const CORAL_CITY, 20, 18 ; 1 - map_const ROUTE_51, 25, 9 ; 2 - map_const ROUTE_52, 10, 27 ; 3 + map_const CORAL_CITY_POKECENTER_1F, 10, 4 ; 2 + map_const CORAL_MART, 8, 4 ; 3 + map_const ROUTE_51, 25, 9 ; 4 + map_const ROUTE_52, 10, 27 ; 5 endgroup newgroup RUDDY_TOWN ; 39 map_const RUDDY_TOWN, 20, 18 ; 1 + map_const RUDDY_TOWN_POKECENTER_1F, 10, 4 ; 2 + map_const RUDDY_MART, 8, 4 ; 3 + map_const ROUTE_52_RUDDY_TOWN_GATE, 5, 4 ; 4 + map_const ROUTE_53_RUDDY_TOWN_GATE, 5, 4 ; 5 + map_const ROUTE_54_RUDDY_TOWN_GATE, 5, 4 ; 6 endgroup newgroup BLUE_FOREST ; 40 diff --git a/constants/map_data_constants.asm b/constants/map_data_constants.asm index f39e6c1..242945f 100644 --- a/constants/map_data_constants.asm +++ b/constants/map_data_constants.asm @@ -118,6 +118,7 @@ DEF NUM_FISHGROUPS EQU const_value - 1 const SPAWN_SAVOY_CITY const SPAWN_CORAL_CITY const SPAWN_RUDDY_TOWN + const SPAWN_BLUE_FOREST const SPAWN_AVENTURINE_CITY DEF NUM_SPAWNS EQU const_value diff --git a/constants/mart_constants.asm b/constants/mart_constants.asm index 485bb96..aa11ea1 100644 --- a/constants/mart_constants.asm +++ b/constants/mart_constants.asm @@ -44,4 +44,6 @@ const MART_UNDERGROUND const MART_LAKEOFRAGE const MART_OLDCITY + const MART_CORALCITY + const MART_RUDDYTOWN DEF NUM_MARTS EQU const_value diff --git a/data/events/engine_flags.asm b/data/events/engine_flags.asm index 3e66626..74373cc 100644 --- a/data/events/engine_flags.asm +++ b/data/events/engine_flags.asm @@ -120,6 +120,7 @@ EngineFlags: engine_flag wVisitedSpawns, SPAWN_SAVOY_CITY engine_flag wVisitedSpawns, SPAWN_CORAL_CITY engine_flag wVisitedSpawns, SPAWN_RUDDY_TOWN + engine_flag wVisitedSpawns, SPAWN_BLUE_FOREST engine_flag wVisitedSpawns, SPAWN_AVENTURINE_CITY engine_flag wVisitedSpawns, NUM_SPAWNS ; unused diff --git a/data/items/marts.asm b/data/items/marts.asm index e7ab0ab..7effcd3 100644 --- a/data/items/marts.asm +++ b/data/items/marts.asm @@ -37,6 +37,8 @@ Marts: dw MartUnderground dw MartLakeOfRage dw MartOldCity + dw MartCoralCity + dw MartRuddyTown assert_table_length NUM_MARTS MartCherrygrove: @@ -435,3 +437,29 @@ MartOldCity: db MAX_REPEL db PORTRAITMAIL db -1 ; end + +MartCoralCity: + db 9 ; # items + db ULTRA_BALL + db HYPER_POTION + db FULL_HEAL + db REVIVE + db ANTIDOTE + db PARLYZ_HEAL + db ICE_HEAL + db MYSTIC_WATER + db SURF_MAIL + db -1 ; end + +MartRuddyTown: + db 9 ; # items + db GREAT_BALL + db SUPER_POTION + db REVIVE + db ANTIDOTE + db PARLYZ_HEAL + db AWAKENING + db BURN_HEAL + db SUPER_REPEL + db MUSIC_MAIL + db -1 ; end diff --git a/data/maps/attributes.asm b/data/maps/attributes.asm index 81c80ab..d60d453 100644 --- a/data/maps/attributes.asm +++ b/data/maps/attributes.asm @@ -897,6 +897,12 @@ ENDM map_attributes CoralCity, CORAL_CITY, $04, WEST connection west, Route51, ROUTE_51, 0 + map_attributes SavoyCityPokecenter1F, SAVOY_CITY_POKECENTER_1F, $00, 0 + map_attributes CoralCityPokecenter1F, CORAL_CITY_POKECENTER_1F, $00, 0 + map_attributes RuddyTownPokecenter1F, RUDDY_TOWN_POKECENTER_1F, $00, 0 + map_attributes CoralMart, CORAL_MART, $00, 0 + map_attributes RuddyMart, RUDDY_MART, $00, 0 + map_attributes Route51, ROUTE_51, $05, WEST | EAST connection west, Route52, ROUTE_52, -18 connection east, CoralCity, CORAL_CITY, 0 @@ -905,6 +911,9 @@ ENDM connection east, Route51, ROUTE_51, 18 map_attributes RuddyTown, RUDDY_TOWN, $04, 0 + map_attributes Route52RuddyTownGate, ROUTE_52_RUDDY_TOWN_GATE, $00, 0 + map_attributes Route53RuddyTownGate, ROUTE_53_RUDDY_TOWN_GATE, $00, 0 + map_attributes Route54RuddyTownGate, ROUTE_54_RUDDY_TOWN_GATE, $00, 0 map_attributes BlueForest, BLUE_FOREST, $00, 0 ; this is on its own for now. add connections later. diff --git a/data/maps/blocks.asm b/data/maps/blocks.asm index f19d538..cce59f8 100644 --- a/data/maps/blocks.asm +++ b/data/maps/blocks.asm @@ -1048,10 +1048,15 @@ Route49_2_Blocks: ; All Nihon Pokecenter1Fs go here. SilentHillsPokecenter1F_Blocks: OldCityPokecenter1F_Blocks: +SavoyCityPokecenter1F_Blocks: +CoralCityPokecenter1F_Blocks: +RuddyTownPokecenter1F_Blocks: INCBIN "maps/NihonPokecenter1F.ablk" ; All generic Nihon Pokemarts go here. OldMart_Blocks: +CoralMart_Blocks: +RuddyMart_Blocks: INCBIN "maps/NihonMart.ablk" NihonPokecenter2F_Blocks: @@ -1227,6 +1232,10 @@ BlueLab_Blocks: INCBIN "maps/BlueLab.ablk" Route49OldCityGate1F_Blocks: + INCBIN "maps/NihonGateNorthSouthStairs.ablk" ; 5, 4 + +Route52RuddyTownGate_Blocks: +Route54RuddyTownGate_Blocks: INCBIN "maps/NihonGateNorthSouth.ablk" ; 5, 4 Route49OldCityGate2F_Blocks: @@ -1246,8 +1255,9 @@ WhiteCity_Blocks: Route66WhiteCityGate_Blocks: Route50SavoyCityGate_Blocks: - INCBIN "maps/NihonGateEastWest.ablk" - +Route53RuddyTownGate_Blocks: + INCBIN "maps/NihonGateEastWest.ablk" ; 5, 4 + OldCityGym_Blocks: INCBIN "maps/OldCityGym.ablk" diff --git a/data/maps/flypoints.asm b/data/maps/flypoints.asm index 1c2c547..94c674f 100644 --- a/data/maps/flypoints.asm +++ b/data/maps/flypoints.asm @@ -42,5 +42,6 @@ Flypoints: db LANDMARK_SAVOY_CITY, SPAWN_SAVOY_CITY db LANDMARK_CORAL_CITY, SPAWN_CORAL_CITY db LANDMARK_RUDDY_TOWN, SPAWN_RUDDY_TOWN + db LANDMARK_BLUE_FOREST, SPAWN_BLUE_FOREST db LANDMARK_AVENTURINE_CITY, SPAWN_AVENTURINE_CITY db -1 ; end diff --git a/data/maps/maps.asm b/data/maps/maps.asm index be4af97..b89a029 100644 --- a/data/maps/maps.asm +++ b/data/maps/maps.asm @@ -736,11 +736,14 @@ MapGroup_SavoyCity: table_width MAP_LENGTH, MapGroup_SavoyCity map SavoyCity, TILESET_NIHON_WEST, TOWN, LANDMARK_SAVOY_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE map Route50SavoyCityGate, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_50, MUSIC_PEACEFULTHEME, FALSE, PALETTE_DAY, FISHGROUP_NONE + map SavoyCityPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE assert_table_length NUM_SAVOY_CITY_MAPS MapGroup_CoralCity: table_width MAP_LENGTH, MapGroup_CoralCity map CoralCity, TILESET_NIHON_HIGHTECH, TOWN, LANDMARK_CORAL_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE + map CoralCityPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_CORAL_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE + map CoralMart, TILESET_NIHON_MART, INDOOR, LANDMARK_CORAL_CITY, MUSIC_MART, FALSE, PALETTE_DAY, FISHGROUP_NONE map Route51, TILESET_NIHON_HIGHTECH, ROUTE, LANDMARK_ROUTE_51, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_AUTO, FISHGROUP_SHORE map Route52, TILESET_NIHON_HIGHTECH, ROUTE, LANDMARK_ROUTE_52, MUSIC_LAKE_OF_RAGE, FALSE, PALETTE_AUTO, FISHGROUP_SHORE assert_table_length NUM_CORAL_CITY_MAPS @@ -748,6 +751,11 @@ MapGroup_CoralCity: MapGroup_RuddyTown: table_width MAP_LENGTH, MapGroup_RuddyTown map RuddyTown, TILESET_NIHON_SOUTH, TOWN, LANDMARK_RUDDY_TOWN, MUSIC_VERMILION_CITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE + map RuddyTownPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_RUDDY_TOWN, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE + map RuddyMart, TILESET_NIHON_MART, INDOOR, LANDMARK_RUDDY_TOWN, MUSIC_MART, FALSE, PALETTE_DAY, FISHGROUP_NONE + map Route52RuddyTownGate, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_52, MUSIC_PEACEFULTHEME, FALSE, PALETTE_DAY, FISHGROUP_NONE + map Route53RuddyTownGate, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_50, MUSIC_PEACEFULTHEME, FALSE, PALETTE_DAY, FISHGROUP_NONE ; needs new landmark when route is made + map Route54RuddyTownGate, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_50, MUSIC_PEACEFULTHEME, FALSE, PALETTE_DAY, FISHGROUP_NONE ; see above assert_table_length NUM_RUDDY_TOWN_MAPS MapGroup_BlueForest: diff --git a/data/maps/outdoor_sprites.asm b/data/maps/outdoor_sprites.asm index 2dbc16c..468524d 100644 --- a/data/maps/outdoor_sprites.asm +++ b/data/maps/outdoor_sprites.asm @@ -336,7 +336,6 @@ IndigoGroupSprites: BlueForestGroupSprites: ; Will have its own thing eventually AventurineCityGroupSprites: ; Ditto WhiteCityGroupSprites: ; Ditto -RuddyTownGroupSprites: ; Ditto NewBarkGroupSprites: db SPRITE_SUICUNE db SPRITE_SILVER_TROPHY @@ -808,3 +807,30 @@ CoralCityGroupSprites: ; 2 non-walking sprites db SPRITE_POKE_BALL db SPRITE_FRUIT_TREE + +RuddyTownGroupSprites: + ; 12 non-walking filler sprites + db SPRITE_SUICUNE + db SPRITE_SILVER_TROPHY + db SPRITE_FAMICOM + db SPRITE_POKEDEX + db SPRITE_WILL + db SPRITE_ROCKER + db SPRITE_NURSE + db SPRITE_FISHER + db SPRITE_BIG_LAPRAS + db SPRITE_BIG_ONIX + db SPRITE_SUDOWOODO + db SPRITE_RIVAL + ; 9 walking sprites + db SPRITE_TEACHER + db SPRITE_TWIN + db SPRITE_ROCKER + db SPRITE_FISHING_GURU + db SPRITE_SWIMMER_GUY + db SPRITE_SWIMMER_GIRL + db SPRITE_RIVAL + db SPRITE_YOUNGSTER + ; 2 non-walking sprites + db SPRITE_POKE_BALL + db SPRITE_FRUIT_TREE diff --git a/data/maps/scripts.asm b/data/maps/scripts.asm index e8e8364..c069f48 100644 --- a/data/maps/scripts.asm +++ b/data/maps/scripts.asm @@ -606,6 +606,14 @@ INCLUDE "maps/SummerBeachHouse.asm" INCLUDE "maps/HauntedHouseFoyer.asm" INCLUDE "maps/HauntedHouse1F.asm" INCLUDE "maps/HauntedHouse2F.asm" +INCLUDE "maps/Route52RuddyTownGate.asm" +INCLUDE "maps/Route53RuddyTownGate.asm" +INCLUDE "maps/Route54RuddyTownGate.asm" +INCLUDE "maps/SavoyCityPokecenter1F.asm" +INCLUDE "maps/CoralCityPokecenter1F.asm" +INCLUDE "maps/RuddyTownPokecenter1F.asm" +INCLUDE "maps/CoralMart.asm" +INCLUDE "maps/RuddyMart.asm" SECTION "Map Scripts 31", ROMX ; spillover INCLUDE "maps/TanobyRuins.asm" diff --git a/data/maps/spawn_points.asm b/data/maps/spawn_points.asm index 108cfad..dcf12c2 100644 --- a/data/maps/spawn_points.asm +++ b/data/maps/spawn_points.asm @@ -52,6 +52,7 @@ SpawnPoints: spawn SAVOY_CITY, 25, 15 spawn CORAL_CITY, 31, 11 spawn RUDDY_TOWN, 31, 15 + spawn BLUE_FOREST, 13, 19 spawn AVENTURINE_CITY, 33, 21 spawn N_A, -1, -1 diff --git a/maps/BlueForest.asm b/maps/BlueForest.asm index 7a4827d..5c817ea 100644 --- a/maps/BlueForest.asm +++ b/maps/BlueForest.asm @@ -4,7 +4,12 @@ BlueForest_MapScripts: def_scene_scripts def_callbacks + callback MAPCALLBACK_NEWMAP, BlueForestFlypointCallback +BlueForestFlypointCallback: + setflag ENGINE_FLYPOINT_BLUE_FOREST + endcallback + BlueForest_MapEvents: db 0, 0 ; filler diff --git a/maps/CoralCity.asm b/maps/CoralCity.asm index 453bf50..9c66d6a 100644 --- a/maps/CoralCity.asm +++ b/maps/CoralCity.asm @@ -168,6 +168,8 @@ CoralCity_MapEvents: def_warp_events warp_event 14, 32, SAVOY_CITY, 4 ;south port, north warp_event 14, 33, SAVOY_CITY, 5 ;south port, south + warp_event 31, 10, CORAL_CITY_POKECENTER_1F, 1 ; pokecenter + warp_event 31, 14, CORAL_MART, 1 ; mart def_coord_events diff --git a/maps/CoralCityPokecenter1F.asm b/maps/CoralCityPokecenter1F.asm new file mode 100644 index 0000000..51200f8 --- /dev/null +++ b/maps/CoralCityPokecenter1F.asm @@ -0,0 +1,65 @@ + object_const_def + const CORALCITYPOKECENTER1F_NURSE + const CORALCITYPOKECENTER1F_SAILOR + const CORALCITYPOKECENTER1F_FISHER + const CORALCITYPOKECENTER1F_GENTLEMAN + +CoralCityPokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +CoralCityPokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +CoralCityPokecenter1FSailorScript: + jumptextfaceplayer CoralCityPokecenter1FSailorText + +CoralCityPokecenter1FSailorText: + text "Me? Oh, I'm a forei-" + line "gner." + + para "My boys hauled up," + line "so I'm waiting for" + cont "loading up to" + cont "finish." + done + +CoralCityPokecenter1FFisherScript: + jumptextfaceplayer CoralCityPokecenter1FFisherText + +CoralCityPokecenter1FFisherText: + text "OAK? Oh, he's al-" + line "ways gone." + + para "It's so annoying!" + line "Why is he even a" + cont "GYM LEADER, then?" + done + +CoralCityPokecenter1FGentlemanScript: + jumptextfaceplayer CoralCityPokecenter1FGentlemanText + +CoralCityPokecenter1FGentlemanText: + text "Oh, I adore" + line "CARAPTHOR. It's" + cont "so preppy!" + done + +CoralCityPokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, CORAL_CITY, 3 + warp_event 4, 7, CORAL_CITY, 3 + warp_event 0, 7, NIHON_POKECENTER_2F, 1 + + def_coord_events + + def_bg_events + + def_object_events + object_event 5, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralCityPokecenter1FNurseScript, -1 + object_event 13, 3, SPRITE_FISHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralCityPokecenter1FFisherScript, -1 + object_event 1, 4, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WANDER, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralCityPokecenter1FGentlemanScript, -1 + object_event 7, 5, SPRITE_SAILOR, SPRITEMOVEDATA_STANDING_DOWN, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralCityPokecenter1FSailorScript, -1 diff --git a/maps/CoralMart.asm b/maps/CoralMart.asm new file mode 100644 index 0000000..a6e33d2 --- /dev/null +++ b/maps/CoralMart.asm @@ -0,0 +1,53 @@ + object_const_def + const CORALMART_CLERK + const CORALMART_SAILOR + const CORALMART_POKEFAN_M + +CoralMart_MapScripts: + def_scene_scripts + + def_callbacks + +CoralMartClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_CORALCITY + closetext + end + +CoralMartSailorScript: + jumptextfaceplayer CoralMartSailorText + +CoralMartPokefanMScript: + jumptextfaceplayer CoralMartPokefanMText + +CoralMartSailorText: + text "Bah! Nowt that" + line "would survive a" + cont "voyage!" + + para "I'm gonna go get" + line "DEMPSEY!" ; Referencing Jack Dempsey - he's actually just the sailor in the pokecenter. + done + +CoralMartPokefanMText: + text "GREAT BALLS?" + line "Where I'm from," + cont "they're called" + cont "SUPER BALLS." + done + +CoralMart_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 4, 7, CORAL_CITY, 4 + warp_event 5, 7, CORAL_CITY, 4 + + def_coord_events + + def_bg_events + + def_object_events + object_event 1, 2, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralMartClerkScript, -1 + object_event 15, 2, SPRITE_SAILOR, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralMartSailorScript, -1 + object_event 9, 5, SPRITE_POKEFAN_M, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CoralMartPokefanMScript, -1 diff --git a/maps/DebugRoom.asm b/maps/DebugRoom.asm index 9e65791..495c688 100644 --- a/maps/DebugRoom.asm +++ b/maps/DebugRoom.asm @@ -120,6 +120,11 @@ DebugFlyScript: setflag ENGINE_FLYPOINT_SILVER_CAVE setflag ENGINE_FLYPOINT_SILENT_HILLS setflag ENGINE_FLYPOINT_OLD + setflag ENGINE_FLYPOINT_SAVOY + setflag ENGINE_FLYPOINT_CORAL + setflag ENGINE_FLYPOINT_BLUE_FOREST + setflag ENGINE_FLYPOINT_RUDDY + setflag ENGINE_FLYPOINT_AVENTURINE setevent EVENT_BEAT_ELITE_FOUR diff --git a/maps/NihonGateNorthSouth.ablk b/maps/NihonGateNorthSouth.ablk index 89ba665..0ba6b01 100644 --- a/maps/NihonGateNorthSouth.ablk +++ b/maps/NihonGateNorthSouth.ablk @@ -1,2 +1,2 @@ -    +     \ No newline at end of file diff --git a/maps/NihonGateNorthSouthStairs.ablk b/maps/NihonGateNorthSouthStairs.ablk new file mode 100644 index 0000000..89ba665 --- /dev/null +++ b/maps/NihonGateNorthSouthStairs.ablk @@ -0,0 +1,2 @@ +    + \ No newline at end of file diff --git a/maps/Route52.asm b/maps/Route52.asm index 1b7fc74..a85be07 100644 --- a/maps/Route52.asm +++ b/maps/Route52.asm @@ -9,8 +9,8 @@ Route52_MapEvents: db 0, 0 ; filler def_warp_events - warp_event 8, 9, RUDDY_TOWN, 1 - warp_event 9, 9, RUDDY_TOWN, 2 + warp_event 8, 9, ROUTE_52_RUDDY_TOWN_GATE, 1 + warp_event 9, 9, ROUTE_52_RUDDY_TOWN_GATE, 2 def_coord_events diff --git a/maps/Route52RuddyTownGate.asm b/maps/Route52RuddyTownGate.asm new file mode 100644 index 0000000..0efee04 --- /dev/null +++ b/maps/Route52RuddyTownGate.asm @@ -0,0 +1,45 @@ + object_const_def + const ROUTE52_RUDDYTOWNGATE_OFFICER + const ROUTE52_RUDDYTOWNGATE_GENTLEMAN + +Route52RuddyTownGate_MapScripts: + def_scene_scripts + + def_callbacks + +Route52RuddyTownGateOfficerScript: + jumptextfaceplayer Route52RuddyTownGateOfficerText + +Route52RuddyTownGateOfficerText: + text "RUDDY TOWN is a" + line "mining town at" + cont "heart." + + para "Enjoy your stay!" + done + +Route52RuddyTownGateGentlemanScript: + jumptextfaceplayer Route52RuddyTownGateGentlemanText + +Route52RuddyTownGateGentlemanText: + text "I'm a stone colle-" + line "ctor. The miners" + cont "sometimes share!" + done + +Route52RuddyTownGate_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 4, 7, ROUTE_52, 1 + warp_event 5, 7, ROUTE_52, 1 + warp_event 4, 0, RUDDY_TOWN, 1 + warp_event 5, 0, RUDDY_TOWN, 2 + + def_coord_events + + def_bg_events + + def_object_events + object_event 0, 4, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Route52RuddyTownGateOfficerScript, -1 + object_event 6, 5, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route52RuddyTownGateGentlemanScript, -1 diff --git a/maps/Route53RuddyTownGate.asm b/maps/Route53RuddyTownGate.asm new file mode 100644 index 0000000..48b6700 --- /dev/null +++ b/maps/Route53RuddyTownGate.asm @@ -0,0 +1,61 @@ + object_const_def + const ROUTE53_RUDDYTOWNGATE_OFFICER + const ROUTE53_RUDDYTOWNGATE_GENTLEMAN + +Route53RuddyTownGate_MapScripts: + def_scene_scripts + + def_callbacks + +Route53RuddyTownGateOfficerScript: + jumptextfaceplayer Route53RuddyTownGateOfficerText + +Route53RuddyTownGateOfficerText: + text "Comment to be" + line "written." + done + +Route53RuddyTownGateGrampsScript: + jumptextfaceplayer Route53RuddyTownGateGrampsText + +Route53RuddyTownGateGrampsText: + text "My TREBIR plays" + line "classic music to" + cont "me." + + para "A simple grammap-" + line "hone cannot" + cont "replicate such" + cont "beauty!" + done + +Route53RuddyTownGateTrebirScript: + faceplayer + opentext + writetext Route53RuddyTownGateTrebirText + cry TREBIR + waitbutton + closetext + end + +Route53RuddyTownGateTrebirText: + text "TREBIR: Twitwoo!" + done + +Route53RuddyTownGate_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 0, 7, RUDDY_TOWN, 5 + warp_event 1, 7, RUDDY_TOWN, 5 + warp_event 8, 7, DEBUG_ROOM, 1 ; Route 53 + warp_event 9, 7, DEBUG_ROOM, 1 ; Route 53 + + def_coord_events + + def_bg_events + + def_object_events + object_event 4, 2, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Route53RuddyTownGateOfficerScript, -1 + object_event 6, 4, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route53RuddyTownGateGrampsScript, -1 + object_event 7, 4, SPRITE_SMALL_BIRD, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_EMOTE, OBJECTTYPE_SCRIPT, 0, Route53RuddyTownGateTrebirScript, -1 diff --git a/maps/Route54RuddyTownGate.asm b/maps/Route54RuddyTownGate.asm new file mode 100644 index 0000000..8efbcea --- /dev/null +++ b/maps/Route54RuddyTownGate.asm @@ -0,0 +1,32 @@ + object_const_def + const ROUTE54_RUDDYTOWNGATE_OFFICER + +Route54RuddyTownGate_MapScripts: + def_scene_scripts + + def_callbacks + +Route54RuddyTownGateOfficerScript: + jumptextfaceplayer Route54RuddyTownGateOfficerText + +Route54RuddyTownGateOfficerText: + text "Be careful! ROUTE" + line "54 is filled with" + cont "SHARPOON!" + done + +Route54RuddyTownGate_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 4, 7, RUDDY_TOWN, 10 + warp_event 5, 7, RUDDY_TOWN, 9 + warp_event 4, 0, DEBUG_ROOM, 1 ; Route 54 + warp_event 5, 0, DEBUG_ROOM, 1 ; Route 54 + + def_coord_events + + def_bg_events + + def_object_events + object_event 0, 3, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Route54RuddyTownGateOfficerScript, -1 diff --git a/maps/RuddyMart.asm b/maps/RuddyMart.asm new file mode 100644 index 0000000..65f4082 --- /dev/null +++ b/maps/RuddyMart.asm @@ -0,0 +1,54 @@ + object_const_def + const RUDDYMART_CLERK + const RUDDYMART_POKEFAN_M + const RUDDYMART_SPACEWORLD_GIRL + +RuddyMart_MapScripts: + def_scene_scripts + + def_callbacks + +RuddyMartClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_RUDDYTOWN + closetext + end + +RuddyMartPokefanMScript: + jumptextfaceplayer RuddyMartPokefanMText + +RuddyMartSpaceworldGirlScript: + jumptextfaceplayer RuddyMartSpaceworldGirlText + +RuddyMartPokefanMText: + text "My kid is always" + line "asking for weird" + cont "MAIL." + + para "I'll never unders-" + line "tand the young!" + done + +RuddyMartSpaceworldGirlText: + text "The selection" + line "here is so odd!" + + para "I guess they can't" + line "afford much?" + done + +RuddyMart_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 4, 7, RUDDY_TOWN, 4 + warp_event 5, 7, RUDDY_TOWN, 4 + + def_coord_events + + def_bg_events + + def_object_events + object_event 1, 2, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyMartClerkScript, -1 + object_event 13, 2, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyMartPokefanMScript, -1 + object_event 9, 5, SPRITE_SPACEWORLD_GIRL, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RuddyMartSpaceworldGirlScript, -1 diff --git a/maps/RuddyTown.asm b/maps/RuddyTown.asm index 91ffd6f..fcf6767 100644 --- a/maps/RuddyTown.asm +++ b/maps/RuddyTown.asm @@ -1,3 +1,7 @@ +; Ruddy - Old English root for red +; Partial inspiration being taken from Merthyr Tydfil +; The town itself is based on Kyushu, so the ruins/mountain type thing would actually be a volcano. + object_const_def RuddyTown_MapScripts: @@ -10,16 +14,114 @@ RuddyTown_MapScripts: setflag ENGINE_FLYPOINT_RUDDY return +RuddyTownBugCatcherScript: + jumptextfaceplayer RuddyTownBugCatcherText + +RuddyTownBugCatcherText: + text "The VOLCANO? It's" + line "mighty scary, I" + cont "must say. I read" + cont "that it erupted" + cont "several times!" + + para "The miners say" + line "it's completely" + cont "safe, though." + done + +RuddyTownTwinScript: + jumptextfaceplayer RuddyTownTwinText + +RuddyTownTwinText: + text "Mom! I want to" + line "explore the" + cont "VOLCANO!" + done + +RuddyTownBeautyScript: + jumptextfaceplayer RuddyTownBeautyText + +RuddyTownBeautyText: + text "No, dear, you" + line "can't!" + + para "Kids say the" + line "darndest things," + cont "don't they?" + done + +RuddyTownYoungsterScript: + jumptextfaceplayer RuddyTownYoungsterText + +RuddyTownYoungsterText: ; This will be something story-related for Misty to play with. + text "Comment to be" + line "written." + done + +RuddyTownSignScript1: + jumptext RuddyTownSignText1 + +RuddyTownSignText1: + text "RUDDY TOWN" + line "The land of fire" + cont "and grit!" + done + +RuddyTownSignScript2: + jumptext RuddyTownSignText2 + +RuddyTownSignText2: + text "TRAINER TIPS" + line "BEAT UP uses the" + cont "ATTACK stat of" + cont "your party memb-" + cont "ers!" + + para "Pair it with #-" + line "MON like MACHAMP" + cont "and SHARPOON!" + done + +RuddyTownSignScript3: + jumptext RuddyTownSignText3 + +RuddyTownSignText3: + text "NORTH: ROUTE 54" + line "EAST: ROUTE 53" + done + +RuddyTownPokecenterSign: + jumpstd PokecenterSignScript + +RuddyTownMartSign: + jumpstd MartSignScript + RuddyTown_MapEvents: db 0, 0 ; filler def_warp_events - warp_event 28, 30, ROUTE_52, 1 - warp_event 29, 30, ROUTE_52, 2 + warp_event 28, 30, ROUTE_52_RUDDY_TOWN_GATE, 3 ; south gate + warp_event 29, 30, ROUTE_52_RUDDY_TOWN_GATE, 4 ; south gate + warp_event 31, 14, RUDDY_TOWN_POKECENTER_1F, 2 ; pokecenter + warp_event 17, 22, RUDDY_MART, 2 ; mart + warp_event 33, 19, ROUTE_53_RUDDY_TOWN_GATE, 1 ; east gate + warp_event 12, 5, DEBUG_ROOM, 2 ; volcano? + warp_event 24, 10, DEBUG_ROOM, 2 ; north house + warp_event 31, 23, DEBUG_ROOM, 2 ; south house + warp_event 29, 5, ROUTE_54_RUDDY_TOWN_GATE, 1 ; north gate + warp_event 28, 5, ROUTE_54_RUDDY_TOWN_GATE, 2 ; north gate def_coord_events def_bg_events + bg_event 26, 17, BGEVENT_READ, RuddyTownSignScript1 + bg_event 14, 22, BGEVENT_READ, RuddyTownSignScript2 + bg_event 28, 14, BGEVENT_READ, RuddyTownSignScript3 + bg_event 32, 14, BGEVENT_READ, RuddyTownPokecenterSign + bg_event 18, 22, BGEVENT_READ, RuddyTownMartSign def_object_events - + object_event 29, 9, SPRITE_FISHING_GURU, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownBugCatcherScript, -1 + object_event 23, 20, SPRITE_TWIN, SPRITEMOVEDATA_STANDING_DOWN, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownTwinScript, -1 + object_event 19, 17, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_UP_DOWN, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownYoungsterScript, -1 + object_event 22, 20, SPRITE_TEACHER, SPRITEMOVEDATA_STANDING_DOWN, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownBeautyScript, -1 diff --git a/maps/RuddyTownPokecenter1F.asm b/maps/RuddyTownPokecenter1F.asm new file mode 100644 index 0000000..ae18117 --- /dev/null +++ b/maps/RuddyTownPokecenter1F.asm @@ -0,0 +1,66 @@ + object_const_def + const RUDDYTOWNPOKECENTER1F_NURSE + const RUDDYTOWNPOKECENTER1F_FISHER + const RUDDYTOWNPOKECENTER1F_COOLTRAINER_F + const RUDDYTOWNPOKECENTER1F_ROCKET + +RuddyTownPokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +RuddyTownPokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +; I want this guy to give the player an item at some point. +; Moon Stone? +RuddyTownPokecenter1FBaldingGuyScript: + jumptextfaceplayer RuddyTownPokecenter1FBaldingGuyText + +RuddyTownPokecenter1FBaldingGuyText: + text "Haaah! Another day" + line "in the mines." + done + +RuddyTownPokecenter1FFisherScript: + jumptextfaceplayer RuddyTownPokecenter1FFisherText + +RuddyTownPokecenter1FFisherText: + text "Sometimes, the" + line "minecarts in the" + cont "volcano don't" + cont "move properly." + + para "Nothing a MACHAMP" + line "can't solve!" + done + +RuddyTownPokecenter1FGuruScript: + jumptextfaceplayer RuddyTownPokecenter1FGuruText + +RuddyTownPokecenter1FGuruText: + text "The hot water" + line "attracts tons of" + cont "rare water MON!" + + para "It's good drinking" + line "too!" + done + +RuddyTownPokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, RUDDY_TOWN, 3 + warp_event 4, 7, RUDDY_TOWN, 3 + warp_event 0, 7, NIHON_POKECENTER_2F, 1 + + def_coord_events + + def_bg_events + + def_object_events + object_event 5, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownPokecenter1FNurseScript, -1 + object_event 13, 3, SPRITE_FISHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownPokecenter1FFisherScript, -1 + object_event 1, 4, SPRITE_FISHING_GURU, SPRITEMOVEDATA_WANDER, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownPokecenter1FGuruScript, -1 + object_event 7, 5, SPRITE_BALDING_GUY, SPRITEMOVEDATA_STANDING_DOWN, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, RuddyTownPokecenter1FBaldingGuyScript, -1 diff --git a/maps/SavoyCity.asm b/maps/SavoyCity.asm index 92f8a3b..fe5ca86 100644 --- a/maps/SavoyCity.asm +++ b/maps/SavoyCity.asm @@ -191,6 +191,7 @@ SavoyCity_MapEvents: warp_event 23, 5, DEBUG_ROOM, 1 ;north gate, right warp_event 4, 8, CORAL_CITY, 1 ;port north warp_event 4, 9, CORAL_CITY, 2 ;port south + warp_event 25, 14, SAVOY_CITY_POKECENTER_1F, 1 ; pokecenter def_coord_events diff --git a/maps/SavoyCityPokecenter1F.asm b/maps/SavoyCityPokecenter1F.asm new file mode 100644 index 0000000..1344799 --- /dev/null +++ b/maps/SavoyCityPokecenter1F.asm @@ -0,0 +1,69 @@ + object_const_def + const SAVOYCITYPOKECENTER1F_NURSE + const SAVOYCITYPOKECENTER1F_LASS + const SAVOYCITYPOKECENTER1F_GENTLEMAN + const SAVOYCITYPOKECENTER1F_GAMEBOY_GIRL + +SavoyCityPokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +SavoyCityPokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +; This was originally a Rocket, but... +; We had one in Old City too... +; So I changed this to a Game Boy Girl. +SavoyCityPokecenter1FGameBoyGirlScript: + jumptextfaceplayer SavoyCityPokecenter1FGameBoyGirlText + +SavoyCityPokecenter1FGameBoyGirlText: + text "Mum told me to" + line "wait for her here," + cont "so I'm playing" + cont "games!" ; This was a Trip World reference but it was a bit too much. + done + +; Kuye is the strongest Lass on the planet, so someone should want to catfight with her. +SavoyCityPokecenter1FLassScript: + jumptextfaceplayer SavoyCityPokecenter1FLassText + +SavoyCityPokecenter1FLassText: + text "Ugh! KUYE always" + line "shows me up." + + para "I want to knock" + line "her down a peg!" + done + +SavoyCityPokecenter1FGentlemanScript: + jumptextfaceplayer SavoyCityPokecenter1FGentlemanText + +SavoyCityPokecenter1FGentlemanText: + text "I bought my son" + line "a PUPPERON last" + cont "week." + + para "He started saying" + line "such strange" + cont "words!" + done + +SavoyCityPokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, SAVOY_CITY, 6 + warp_event 4, 7, SAVOY_CITY, 6 + warp_event 0, 7, NIHON_POKECENTER_2F, 1 + + def_coord_events + + def_bg_events + + def_object_events + object_event 5, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SavoyCityPokecenter1FNurseScript, -1 + object_event 13, 3, SPRITE_LASS, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SavoyCityPokecenter1FLassScript, -1 + object_event 1, 4, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WANDER, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SavoyCityPokecenter1FGentlemanScript, -1 + object_event 7, 5, SPRITE_GAMEBOY_GIRL, SPRITEMOVEDATA_STANDING_DOWN, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SavoyCityPokecenter1FGameBoyGirlScript, -1