From 4eb81eec2590badfb802ec94e5a9c765fc57f77c Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Mon, 22 Jul 2024 23:40:53 +0100 Subject: [PATCH] OId City This implements Old City, the Honey Grandma's House, and its Pokecenter+Mart. Bunch of other bits and pieces not added yet, need to figure out the lore for them. Honey Grandma is designed to make it easier to get important Pokemon, rather than give access to anything new. Thus, she's Nihon-locked by being an Old City resident. Martha's Perfect Rod will follow this trend. Gold Berry tree exists to make them renewable in-game, I think this is very important. The flypoint seems bugged. --- constants/engine_flags.asm | 1 + constants/landmark_constants.asm | 3 +- constants/map_constants.asm | 9 +- constants/map_data_constants.asm | 1 + constants/mart_constants.asm | 1 + constants/scgb_constants.asm | 1 + constants/script_constants.asm | 1 + constants/tileset_constants.asm | 1 + data/events/engine_flags.asm | 1 + data/items/fruit_trees.asm | 1 + data/items/marts.asm | 14 ++ data/maps/attributes.asm | 18 +- data/maps/blocks.asm | 11 + data/maps/flypoints.asm | 1 + data/maps/landmarks.asm | 4 +- data/maps/maps.asm | 13 +- data/maps/outdoor_sprites.asm | 29 +++ data/maps/roofs.asm | 3 +- data/maps/scripts.asm | 6 +- data/maps/sgb_roof_pal_inds.asm | 1 + data/maps/spawn_points.asm | 1 + data/tilesets.asm | 1 + data/tilesets/nihon_old_attributes.bin | Bin 0 -> 1024 bytes data/tilesets/nihon_old_collision.asm | 64 ++++++ data/tilesets/nihon_old_metatiles.bin | Bin 0 -> 1024 bytes data/tilesets/nihonmart_attributes.bin | Bin 0 -> 368 bytes data/tilesets/nihonmart_collision.asm | 23 +++ data/tilesets/nihonmart_metatiles.bin | Bin 0 -> 368 bytes .../tilesets/traditional_house_attributes.bin | Bin 1024 -> 928 bytes data/tilesets/traditional_house_collision.asm | 6 - data/tilesets/traditional_house_metatiles.bin | Bin 1024 -> 928 bytes engine/tilesets/tileset_anims.asm | 1 + gfx/sgb/predef.pal | 1 + gfx/tilesets.asm | 12 ++ gfx/tilesets/nihonmart.png | Bin 0 -> 909 bytes gfx/tilesets/roofs.pal | 8 +- maps/#Placeholder.asm | 18 ++ maps/DebugRoom.asm | 125 +----------- maps/HoneyGrandmasHouse.ablk | 2 + maps/HoneyGrandmasHouse.asm | 144 +++++++++++++ maps/NihonMart.ablk | 2 + maps/OldCity.ablk | Bin 0 -> 360 bytes maps/OldCity.asm | 192 ++++++++++++++++++ maps/OldCityPokecenter1F.asm | 66 ++++++ maps/OldMart.asm | 54 +++++ maps/Route49OldCityGate1F.asm | 4 +- maps/SilentHillsPokecenter1F.asm | 2 +- 47 files changed, 699 insertions(+), 147 deletions(-) create mode 100644 data/tilesets/nihonmart_attributes.bin create mode 100644 data/tilesets/nihonmart_collision.asm create mode 100644 data/tilesets/nihonmart_metatiles.bin create mode 100644 gfx/tilesets/nihonmart.png create mode 100644 maps/#Placeholder.asm create mode 100644 maps/HoneyGrandmasHouse.ablk create mode 100644 maps/HoneyGrandmasHouse.asm create mode 100644 maps/NihonMart.ablk create mode 100644 maps/OldCity.ablk create mode 100644 maps/OldCity.asm create mode 100644 maps/OldCityPokecenter1F.asm create mode 100644 maps/OldMart.asm diff --git a/constants/engine_flags.asm b/constants/engine_flags.asm index 3d1cd4e..300b5bb 100644 --- a/constants/engine_flags.asm +++ b/constants/engine_flags.asm @@ -90,6 +90,7 @@ const ENGINE_FLYPOINT_BLACKTHORN const ENGINE_FLYPOINT_SILVER_CAVE const ENGINE_FLYPOINT_SILENT_HILLS + const ENGINE_FLYPOINT_OLD const ENGINE_FLYPOINT_UNUSED ; wLuckyNumberShowFlag const ENGINE_LUCKY_NUMBER_SHOW diff --git a/constants/landmark_constants.asm b/constants/landmark_constants.asm index 162c1e8..0461029 100644 --- a/constants/landmark_constants.asm +++ b/constants/landmark_constants.asm @@ -127,12 +127,13 @@ DEF KANTO_LANDMARK EQU const_value const LANDMARK_SEVEN_ISLAND DEF NIHON_LANDMARK EQU const_value const LANDMARK_WINNERS_PATH - const LANDMARK_ROUTE_66 const LANDMARK_SILENT_HILLS const LANDMARK_DEBUG_ROOM const LANDMARK_ROUTE_49 const LANDMARK_QUIET_CAVE + const LANDMARK_OLD_CITY const LANDMARK_BLUE_FOREST + const LANDMARK_ROUTE_66 DEF NUM_LANDMARKS EQU const_value ; used in CaughtData diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 88b992c..a505fe9 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -166,7 +166,7 @@ ENDM map_const ECRUTEAK_GYM, 5, 9 ; 7 map_const ECRUTEAK_ITEMFINDER_HOUSE, 4, 4 ; 8 map_const ECRUTEAK_CITY, 20, 18 ; 9 - map_const BELLCHIME_TRAIL, 12, 7 + map_const BELLCHIME_TRAIL, 12, 7 ; 10 endgroup newgroup BLACKTHORN ; 5 @@ -635,6 +635,13 @@ ENDM map_const BLUE_LAB, 12, 10 ; 17 endgroup + newgroup OLD_CITY + map_const OLD_CITY, 20, 18 ; 1 + map_const OLD_CITY_POKECENTER_1F, 10, 4 ; 2 + map_const OLD_MART, 8, 4 ; 3 + map_const HONEY_GRANDMAS_HOUSE, 5, 5 ; 4 + endgroup + newgroup BLUE_FOREST ; 36 map_const BLUE_FOREST, 20, 18 ; 1 endgroup diff --git a/constants/map_data_constants.asm b/constants/map_data_constants.asm index 5c8fd88..9a15db2 100644 --- a/constants/map_data_constants.asm +++ b/constants/map_data_constants.asm @@ -104,6 +104,7 @@ DEF NUM_FISHGROUPS EQU const_value - 1 const SPAWN_FAST_SHIP ; nihon const SPAWN_SILENT_HILLS + const SPAWN_OLD_CITY DEF NUM_SPAWNS EQU const_value DEF SPAWN_N_A EQU -1 diff --git a/constants/mart_constants.asm b/constants/mart_constants.asm index 5ccc834..485bb96 100644 --- a/constants/mart_constants.asm +++ b/constants/mart_constants.asm @@ -43,4 +43,5 @@ const MART_INDIGO_PLATEAU const MART_UNDERGROUND const MART_LAKEOFRAGE + const MART_OLDCITY DEF NUM_MARTS EQU const_value diff --git a/constants/scgb_constants.asm b/constants/scgb_constants.asm index afccd55..1eb2eb4 100644 --- a/constants/scgb_constants.asm +++ b/constants/scgb_constants.asm @@ -80,6 +80,7 @@ DEF SCGB_DEFAULT EQU $ff const PREDEFPAL_SIX_ISLAND const PREDEFPAL_SEVEN_ISLAND const PREDEFPAL_SILENT_HILLS + const PREDEFPAL_OLD_CITY const PREDEFPAL_BLUE_FOREST const PREDEFPAL_NITE const PREDEFPAL_BLACKOUT diff --git a/constants/script_constants.asm b/constants/script_constants.asm index 38601f9..73b87ba 100644 --- a/constants/script_constants.asm +++ b/constants/script_constants.asm @@ -239,6 +239,7 @@ DEF EMOTE_LENGTH EQU 6 const FRUITTREE_PEWTER_CITY_1 ; 1c const FRUITTREE_PEWTER_CITY_2 ; 1d const FRUITTREE_FUCHSIA_CITY ; 1e + const FRUITTREE_OLD_CITY ; 1F DEF NUM_FRUIT_TREES EQU const_value - 1 ; describedecoration arguments diff --git a/constants/tileset_constants.asm b/constants/tileset_constants.asm index 4c97753..3cd9834 100644 --- a/constants/tileset_constants.asm +++ b/constants/tileset_constants.asm @@ -49,6 +49,7 @@ const TILESET_LAVENDER_CRYPT ; 2F const TILESET_BLUE_LAB ; 30 const TILESET_NIHON_GATE ; 31 + const TILESET_NIHON_MART ; 32 DEF NUM_TILESETS EQU const_value - 1 ; wTileset struct size diff --git a/data/events/engine_flags.asm b/data/events/engine_flags.asm index 63d5277..317edd8 100644 --- a/data/events/engine_flags.asm +++ b/data/events/engine_flags.asm @@ -100,6 +100,7 @@ EngineFlags: engine_flag wVisitedSpawns, SPAWN_BLACKTHORN engine_flag wVisitedSpawns, SPAWN_MT_SILVER engine_flag wVisitedSpawns, SPAWN_SILENT_HILLS + engine_flag wVisitedSpawns, SPAWN_OLD_CITY engine_flag wVisitedSpawns, NUM_SPAWNS ; unused engine_flag wLuckyNumberShowFlag, LUCKYNUMBERSHOW_GAME_OVER_F diff --git a/data/items/fruit_trees.asm b/data/items/fruit_trees.asm index ff39551..1ef1b12 100644 --- a/data/items/fruit_trees.asm +++ b/data/items/fruit_trees.asm @@ -31,4 +31,5 @@ FruitTreeItems: db ICE_BERRY ; PEWTER_CITY_1 db MINT_BERRY ; PEWTER_CITY_2 db BURNT_BERRY ; FUCHSIA_CITY + db GOLD_BERRY ; OLD_CITY - now there's a farming spot! assert_table_length NUM_FRUIT_TREES diff --git a/data/items/marts.asm b/data/items/marts.asm index 5721c42..e7ab0ab 100644 --- a/data/items/marts.asm +++ b/data/items/marts.asm @@ -36,6 +36,7 @@ Marts: dw MartIndigoPlateau dw MartUnderground dw MartLakeOfRage + dw MartOldCity assert_table_length NUM_MARTS MartCherrygrove: @@ -421,3 +422,16 @@ MartLakeOfRage: db DUSK_STONE db SHINY_STONE db -1 ; end + +MartOldCity: + db 9 ; # items + db ULTRA_BALL + db HYPER_POTION + db FULL_HEAL + db REVIVE + db ANTIDOTE + db PARLYZ_HEAL + db AWAKENING + db MAX_REPEL + db PORTRAITMAIL + db -1 ; end diff --git a/data/maps/attributes.asm b/data/maps/attributes.asm index abc1282..1706ee3 100644 --- a/data/maps/attributes.asm +++ b/data/maps/attributes.asm @@ -813,16 +813,24 @@ ENDM map_attributes Route66, ROUTE_66, $05, WEST | SOUTH connection south, WinnersPathOutside, WINNERS_PATH_OUTSIDE, 0 - connection west, SilentHills, SILENT_HILLS, 0 - map_attributes BlueForest, BLUE_FOREST, $00, 0 ; this is on its own for now. add connections later. - map_attributes BlueLab, BLUE_LAB, $00, 0 + connection west, SilentHills, SILENT_HILLS, 0 map_attributes QuietCave, QUIET_CAVE, $76, 0 + map_attributes BlueLab, BLUE_LAB, $00, 0 map_attributes SilentHillsPokecenter1F, SILENT_HILLS_POKECENTER_1F, $00, 0 map_attributes SilversHouse, SILVERS_HOUSE, $00, 0 map_attributes CalsHouse1F, CALS_HOUSE_1F, $00, 0 map_attributes CalsHouse2F, CALS_HOUSE_2F, $00, 0 - map_attributes SinjohRuinsExterior, SINJOH_RUINS_EXTERIOR, $00, 0 - map_attributes SinjohRuinsInterior, SINJOH_RUINS_EXTERIOR, $00, 0 + + map_attributes OldCity, OLD_CITY, $00, 0 ; will have a west exit. + map_attributes Route49OldCityGate1F, ROUTE_49_OLD_CITY_GATE_1F, $00, 0 map_attributes Route49OldCityGate2F, ROUTE_49_OLD_CITY_GATE_2F, $00, 0 + map_attributes OldCityPokecenter1F, OLD_CITY_POKECENTER_1F, $00, 0 + map_attributes OldMart, OLD_MART, $00, 0 + map_attributes HoneyGrandmasHouse, HONEY_GRANDMAS_HOUSE, $00, 0 + + map_attributes BlueForest, BLUE_FOREST, $00, 0 ; this is on its own for now. add connections later. + + map_attributes SinjohRuinsExterior, SINJOH_RUINS_EXTERIOR, $00, 0 + map_attributes SinjohRuinsInterior, SINJOH_RUINS_EXTERIOR, $00, 0 diff --git a/data/maps/blocks.asm b/data/maps/blocks.asm index 4442d27..1ecaa46 100644 --- a/data/maps/blocks.asm +++ b/data/maps/blocks.asm @@ -1039,8 +1039,13 @@ Route49_2_Blocks: ; All Nihon Pokecenter1Fs go here. SilentHillsPokecenter1F_Blocks: +OldCityPokecenter1F_Blocks: INCBIN "maps/NihonPokecenter1F.ablk" +; All generic Nihon Pokemarts go here. +OldMart_Blocks: + INCBIN "maps/NihonMart.ablk" + NihonPokecenter2F_Blocks: INCBIN "maps/NihonPokecenter2F.ablk" @@ -1219,3 +1224,9 @@ Route49OldCityGate2F_Blocks: ;InsertGateNameHere_Blocks: ; INCBIN "maps/NihonGateWestEast.ablk" + +OldCity_Blocks: + INCBIN "maps/OldCity.ablk" + +HoneyGrandmasHouse_Blocks: + INCBIN "maps/HoneyGrandmasHouse.ablk" diff --git a/data/maps/flypoints.asm b/data/maps/flypoints.asm index 28ff60a..8c983cd 100644 --- a/data/maps/flypoints.asm +++ b/data/maps/flypoints.asm @@ -29,4 +29,5 @@ Flypoints: db LANDMARK_INDIGO_PLATEAU, SPAWN_INDIGO ; Nihon db LANDMARK_SILENT_HILLS, SPAWN_SILENT_HILLS + db LANDMARK_OLD_CITY, SPAWN_OLD_CITY db -1 ; end diff --git a/data/maps/landmarks.asm b/data/maps/landmarks.asm index a5237b7..836239e 100644 --- a/data/maps/landmarks.asm +++ b/data/maps/landmarks.asm @@ -131,12 +131,13 @@ Landmarks: landmark 0, 0, UnknownName ; Seven Island assert_table_length NIHON_LANDMARK landmark 108, 116, WinnersPathName - landmark 108, 108, Route66Name landmark 92, 108, SilentHillsName landmark 20, 28, UnknownName ; Debug Room landmark 84, 108, Route49Name landmark 76, 108, QuietCaveName + landmark 76, 100, OldCityName landmark 140, 60, BlueForestName + landmark 108, 108, Route66Name assert_table_length NUM_LANDMARKS NewBarkTownName: db "NEW BARK¯TOWN@" @@ -248,4 +249,5 @@ UnknownName: db "?????@" Route66Name: db "ROUTE 66@" Route49Name: db "ROUTE 49@" QuietCaveName: db "QUIET¯CAVE@" +OldCityName: db "OLD CITY@" ; I've considered the name "Archaic City", whereas "High Tech" will be "Vogue City". Thoughts? Archaic is considered a little snarly in modern day, so I haven't put it in yet. BlueForestName: db "BLUE¯FOREST@" diff --git a/data/maps/maps.asm b/data/maps/maps.asm index 25d1349..a07f376 100644 --- a/data/maps/maps.asm +++ b/data/maps/maps.asm @@ -52,7 +52,8 @@ MapGroupPointers:: dw MapGroup_SixIsland ; 33 dw MapGroup_SevenIsland ; 34 dw MapGroup_SilentHills ; 35 - dw MapGroup_BlueForest ; 36 + dw MapGroup_OldCity ; 36 + dw MapGroup_BlueForest ; 37 assert_table_length NUM_MAP_GROUPS MapGroup_Olivine: @@ -691,7 +692,15 @@ MapGroup_SilentHills: map Route49OldCityGate2F, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_49, MUSIC_ROUTE_30, FALSE, PALETTE_DAY, FISHGROUP_NONE map BlueLab, TILESET_BLUE_LAB, INDOOR, LANDMARK_SILENT_HILLS, MUSIC_POKEMON_TALK, FALSE, PALETTE_DAY, FISHGROUP_NONE assert_table_length NUM_SILENT_HILLS_MAPS - + +MapGroup_OldCity: + table_width MAP_LENGTH, MapGroup_OldCity + map OldCity, TILESET_NIHON_OLD, TOWN, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, TRUE, PALETTE_AUTO, FISHGROUP_POND + map OldCityPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_OLD_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE + map OldMart, TILESET_NIHON_MART, INDOOR, LANDMARK_OLD_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE + map HoneyGrandmasHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + assert_table_length NUM_OLD_CITY_MAPS + MapGroup_BlueForest: table_width MAP_LENGTH, MapGroup_BlueForest map BlueForest, TILESET_NIHON_SNOWY, TOWN, LANDMARK_BLUE_FOREST, MUSIC_SINJOH_RUINS, TRUE, PALETTE_AUTO, FISHGROUP_SHORE diff --git a/data/maps/outdoor_sprites.asm b/data/maps/outdoor_sprites.asm index 65645d0..f583188 100644 --- a/data/maps/outdoor_sprites.asm +++ b/data/maps/outdoor_sprites.asm @@ -39,6 +39,7 @@ OutdoorSprites: dw SixIslandGroupSprites dw SevenIslandGroupSprites dw SilentHillsGroupSprites + dw OldCityGroupSprites dw BlueForestGroupSprites assert_table_length NUM_MAP_GROUPS @@ -717,3 +718,31 @@ SilentHillsGroupSprites: ; 2 non-walking sprites db SPRITE_POKE_BALL db SPRITE_FRUIT_TREE + +OldCityGroupSprites: + ; 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_GRAMPS + db SPRITE_TWIN + db SPRITE_BUG_CATCHER + db SPRITE_YOUNGSTER + db SPRITE_BEAUTY + db SPRITE_SUPER_NERD + db SPRITE_GRANNY + db SPRITE_MONSTER + ; 2 non-walking sprites + db SPRITE_POKE_BALL + db SPRITE_FRUIT_TREE + diff --git a/data/maps/roofs.asm b/data/maps/roofs.asm index bd021b3..36d8cef 100644 --- a/data/maps/roofs.asm +++ b/data/maps/roofs.asm @@ -47,7 +47,8 @@ MapGroupRoofs: db ROOF_VIOLET ; 33 (Six Island) db ROOF_VIOLET ; 34 (Seven Island) db ROOF_NEW_BARK ; 35 (Silent Hills) - db ROOF_NEW_BARK ; 36 (Blue Forest) + db ROOF_VIOLET ; 36 (Old City) + db ROOF_NEW_BARK ; 37 (Blue Forest) assert_table_length NUM_MAP_GROUPS + 1 Roofs: diff --git a/data/maps/scripts.asm b/data/maps/scripts.asm index a2be84c..59d3069 100644 --- a/data/maps/scripts.asm +++ b/data/maps/scripts.asm @@ -578,8 +578,12 @@ INCLUDE "maps/WinnersPath.asm" INCLUDE "maps/WinnersPathOutside.asm" INCLUDE "maps/Route66.asm" INCLUDE "maps/BlueLab.asm" +INCLUDE "maps/OldCity.asm" +INCLUDE "maps/OldCityPokecenter1F.asm" +INCLUDE "maps/OldMart.asm" +INCLUDE "maps/HoneyGrandmasHouse.asm" -SECTION "Map Scripts 30", ROMX +SECTION "Map Scripts 30", ROMX ; spillover INCLUDE "maps/TanobyRuins.asm" INCLUDE "maps/TanobyChambers.asm" INCLUDE "maps/NavalRockExterior.asm" diff --git a/data/maps/sgb_roof_pal_inds.asm b/data/maps/sgb_roof_pal_inds.asm index 7ba9ae0..00bea2f 100644 --- a/data/maps/sgb_roof_pal_inds.asm +++ b/data/maps/sgb_roof_pal_inds.asm @@ -39,5 +39,6 @@ MapGroupRoofSGBPalInds: db PREDEFPAL_SIX_ISLAND db PREDEFPAL_SEVEN_ISLAND db PREDEFPAL_SILENT_HILLS + db PREDEFPAL_ECRUTEAK db PREDEFPAL_BLUE_FOREST assert_table_length NUM_MAP_GROUPS + 1 diff --git a/data/maps/spawn_points.asm b/data/maps/spawn_points.asm index 39dd340..907f71d 100644 --- a/data/maps/spawn_points.asm +++ b/data/maps/spawn_points.asm @@ -40,6 +40,7 @@ SpawnPoints: spawn FAST_SHIP_CABINS_SW_SSW_NW, 6, 2 spawn SILENT_HILLS, 13, 5 + spawn OLD_CITY, 27, 29 spawn N_A, -1, -1 diff --git a/data/tilesets.asm b/data/tilesets.asm index b5984ed..d736aa6 100644 --- a/data/tilesets.asm +++ b/data/tilesets.asm @@ -61,4 +61,5 @@ Tilesets:: tileset TilesetLavenderCrypt tileset TilesetBlueLab tileset TilesetNihonGate + tileset TilesetNihonMart assert_table_length NUM_TILESETS + 1 diff --git a/data/tilesets/nihon_old_attributes.bin b/data/tilesets/nihon_old_attributes.bin index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..309c725ae6c595c4c21bad97365cf15672c05a39 100644 GIT binary patch literal 1024 zcmb_b0S?0;2(+0zh5vtX2YM(hHfy$v7J&o7P?3x_Augq5uW6UBB{SnyAkg<+)DgTJ zVcFHg8Rh{a?+_I3yVl>#vD%3~Sw0M-XBT$#UECk`Fsyh_9d$54k}5jkWQ+Y3-rVyv zyr1&RGPLkQkHaLW^j^4ks@C{SF1dOqT{)H)#uEsggf+D8fBfOil;;GQ!FQ!R#o>{# K{t5o4_c`C{NfNpM literal 0 HcmV?d00001 diff --git a/data/tilesets/nihon_old_collision.asm b/data/tilesets/nihon_old_collision.asm index e69de29..2ec4c6a 100644 --- a/data/tilesets/nihon_old_collision.asm +++ b/data/tilesets/nihon_old_collision.asm @@ -0,0 +1,64 @@ + tilecoll WALL, WALL, WALL, WALL ; 00 + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 01 + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 02 + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 03 + tilecoll FLOOR, HEADBUTT_TREE, FLOOR, HEADBUTT_TREE ; 04 + tilecoll WATER, WATER, WATER, WATER ; 05 + tilecoll WATER, WATER, WATER, WATER ; 06 + tilecoll WATER, WATER, WATER, WATER ; 07 + tilecoll WATER, WATER, WATER, WATER ; 08 + tilecoll WATER, WATER, WATER, WATER ; 09 + tilecoll WATER, WATER, WATER, WATER ; 0a + tilecoll WATER, WATER, WATER, WATER ; 0b + tilecoll WATER, WATER, WATER, WATER ; 0c + tilecoll WALL, FLOOR, FLOOR, FLOOR ; 0d + tilecoll WALL, WALL, FLOOR, FLOOR ; 0e + tilecoll WALL, WALL, FLOOR, FLOOR ; 0f + tilecoll WALL, WALL, WALL, FLOOR ; 10 + tilecoll FLOOR, WALL, FLOOR, WALL ; 11 + tilecoll WALL, WALL, FLOOR, WALL ; 12 + tilecoll FLOOR, WALL, WALL, WALL ; 13 + tilecoll WALL, FLOOR, WALL, FLOOR ; 14 + tilecoll FLOOR, FLOOR, WALL, FLOOR ; 15 + tilecoll FLOOR, FLOOR, WALL, WALL ; 16 + tilecoll HEADBUTT_TREE, CUT_TREE, FLOOR, FLOOR ; 17 + tilecoll FLOOR, FLOOR, WALL, WALL ; 18 + tilecoll WALL, WALL, WALL, WALL ; 19 + tilecoll WALL, WALL, WALL, WALL ; 1a + tilecoll WALL, WALL, WALL, WALL ; 1b + tilecoll WALL, WALL, WALL, FLOOR ; 1c + tilecoll WALL, WALL, WALL, WALL ; 1d + tilecoll WALL, WALL, WALL, WALL ; 1e + tilecoll WALL, WALL, WALL, WALL ; 1f + tilecoll FLOOR, FLOOR, WARP_CARPET_DOWN, WARP_CARPET_DOWN ; 20 + tilecoll WALL, WALL, WALL, WALL ; 21 + tilecoll WALL, WALL, WALL, WALL ; 22 + tilecoll DOOR, WALL, FLOOR, FLOOR ; 23 + tilecoll WALL, WALL, FLOOR, FLOOR ; 24 + tilecoll WALL, WALL, FLOOR, FLOOR ; 25 + tilecoll WALL, WALL, FLOOR, FLOOR ; 26 + tilecoll WALL, WALL, WALL, WALL ; 27 + tilecoll WALL, WALL, WALL, WALL ; 28 + tilecoll WALL, DOOR, FLOOR, FLOOR ; 29 + tilecoll WALL, WALL, WALL, WALL ; 2a + tilecoll WALL, WALL, WALL, WALL ; 2b + tilecoll WALL, WALL, FLOOR, FLOOR ; 2c + tilecoll WALL, WALL, FLOOR, FLOOR ; 2d + tilecoll WALL, DOOR, FLOOR, FLOOR ; 2e + tilecoll WALL, WALL, WALL, WALL ; 2f + tilecoll WALL, WALL, WALL, WALL ; 30 + tilecoll WALL, WALL, WALL, DOOR ; 31 + tilecoll WALL, WALL, WALL, WALL ; 32 + tilecoll WALL, WALL, WALL, WALL ; 33 + tilecoll DOOR, DOOR, FLOOR, FLOOR ; 34 + tilecoll WALL, WALL, WALL, WALL ; 35 + tilecoll WALL, WALL, WALL, WALL ; 36 + tilecoll WALL, WALL, WALL, WALL ; 37 + tilecoll WALL, WALL, WALL, WALL ; 38 + tilecoll WALL, WALL, WALL, WALL ; 39 + tilecoll WALL, WALL, WALL, WALL ; 3a + tilecoll WALL, WALL, WALL, WALL ; 3b + tilecoll WALL, WALL, WALL, WALL ; 3c + tilecoll WALL, DOOR, FLOOR, FLOOR ; 3d + tilecoll DOOR, WALL, WALL, WALL ; 3e + tilecoll WALL, WALL, WALL, WALL ; 3f diff --git a/data/tilesets/nihon_old_metatiles.bin b/data/tilesets/nihon_old_metatiles.bin index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d3ef9ba975093cfb58fff4b39d2f4b0e5bc5f13f 100644 GIT binary patch literal 1024 zcmZuwX;b1r5N$#wrJ`umDtDP!LB`2T;yH;|VEYMTtNUw2Qx zo*YSs+8NXl|hEAgf&L>*H|dka=O|un&>@h}0*p?G*Y; zwOY+}cXB<@#|i?h7wXR=aF(&V=P^7{6-(|H?oIuCbv|KC48@87%Ke~;bn zaIk;S+ikboavFqk9mT!Fqao;%))!(~=R)LsK^TNlT+Az{TFZ5De%2A$f3QDPMyCe@ zw6#*&AobK>s*Cqw9nWqR_iNeYOZ&ej`?LAJvU<*q@6&vu5`-5L#pje4>fv51)9)LT C>0o>S literal 0 HcmV?d00001 diff --git a/data/tilesets/nihonmart_attributes.bin b/data/tilesets/nihonmart_attributes.bin new file mode 100644 index 0000000000000000000000000000000000000000..ba4be048c0f4061859b63ab44b109884f56d648e GIT binary patch literal 368 QcmZQzKn0AWfTke;0Q4XMVE_OC literal 0 HcmV?d00001 diff --git a/data/tilesets/nihonmart_collision.asm b/data/tilesets/nihonmart_collision.asm new file mode 100644 index 0000000..95102e4 --- /dev/null +++ b/data/tilesets/nihonmart_collision.asm @@ -0,0 +1,23 @@ + tilecoll WALL, WALL, WALL, WALL ; 00 + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 01 + tilecoll WALL, FLOOR, WALL, FLOOR ; 02 + tilecoll COUNTER, WALL, COUNTER, FLOOR ; 03 + tilecoll COUNTER, FLOOR, COUNTER, FLOOR ; 04 + tilecoll WALL, WALL, WALL, WALL ; 05 + tilecoll WALL, FLOOR, WALL, FLOOR ; 06 + tilecoll WALL, WALL, WALL, WALL ; 07 + tilecoll WALL, WALL, WALL, WALL ; 08 + tilecoll WALL, WALL, WALL, WALL ; 09 + tilecoll WALL, WALL, FLOOR, FLOOR ; 0a + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 0b + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 0c + tilecoll FLOOR, FLOOR, WARP_CARPET_DOWN, WARP_CARPET_DOWN ; 0d + tilecoll FLOOR, FLOOR, WALL, WALL ; 0e + tilecoll WALL, WALL, FLOOR, FLOOR ; 0f + tilecoll FLOOR, FLOOR, WALL, WALL ; 10 + tilecoll WALL, WALL, WALL, WALL ; 11 + tilecoll WALL, WALL, FLOOR, FLOOR ; 12 + tilecoll FLOOR, FLOOR, WALL, WALL ; 13 + tilecoll FLOOR, FLOOR, WALL, WALL ; 14 + tilecoll WALL, WALL, FLOOR, FLOOR ; 15 + tilecoll WALL, WALL, FLOOR, FLOOR ; 16 diff --git a/data/tilesets/nihonmart_metatiles.bin b/data/tilesets/nihonmart_metatiles.bin new file mode 100644 index 0000000000000000000000000000000000000000..8e28d0e5415eac4d5cb5d81e0ff56dc42c70e2eb GIT binary patch literal 368 zcmZ9HhYo^342Hcb0?xEJz%4^T6DKHWqVNA!_M#<`%O(H)y^gQ7+W$d?iZ6=x`UHz5 z;NeK>^#-);^xo+b%;uo#4&iDI>U1WoJ6~_vmhF137bkI&7kOdXpj?kIPC(@aVZ$)Y z!EiVZqiCCE*}chr#D2s6#=c=1W*CK0nx)z0dbvs-0ReLnb7?L4e(}-^_in$RJf6>~ p{8#5nTzYBlR=d>})o(xW1L2T-t$K!Vim&b=`FaQ4lgo&>?gKgL9I5~S literal 0 HcmV?d00001 diff --git a/data/tilesets/traditional_house_attributes.bin b/data/tilesets/traditional_house_attributes.bin index 02327a7f6599fcbda62fb35c4d09d4d055adf3d0..37c442808f8c1232725f4e54cd060dd4a4e347ce 100644 GIT binary patch delta 7 OcmZqRSirtv0W$y!MgoHX delta 104 ScmZ3$-oUY80doQajR626mIC7d diff --git a/data/tilesets/traditional_house_collision.asm b/data/tilesets/traditional_house_collision.asm index 72db9bd..09525b8 100644 --- a/data/tilesets/traditional_house_collision.asm +++ b/data/tilesets/traditional_house_collision.asm @@ -56,9 +56,3 @@ tilecoll WALL, WALL, FLOOR, WALL ; 37 tilecoll FLOOR, FLOOR, FLOOR, WALL ; 38 tilecoll FLOOR, LADDER, FLOOR, FLOOR ; 39 - tilecoll 04, 03, 03, 03 ; 3a - tilecoll 03, 03, 03, 03 ; 3b - tilecoll 03, 03, 04, 04 ; 3c - tilecoll 04, 04, 04, 04 ; 3d - tilecoll 03, 03, 03, 03 ; 3e - tilecoll WARP_CARPET_DOWN, 04, 03, 03 ; 3f diff --git a/data/tilesets/traditional_house_metatiles.bin b/data/tilesets/traditional_house_metatiles.bin index 3f6b41bd136d8020ce60a7b32dfda243526fb97a..257e54d664e6adcd1fd3a999320718d2ba091ca9 100644 GIT binary patch delta 7 OcmZqRSirtv0W$y!MgoHX delta 104 ScmZ3$-oUY80doQajR626mIC7d diff --git a/engine/tilesets/tileset_anims.asm b/engine/tilesets/tileset_anims.asm index f1dca8a..3b2e37c 100644 --- a/engine/tilesets/tileset_anims.asm +++ b/engine/tilesets/tileset_anims.asm @@ -320,6 +320,7 @@ TilesetMuseumAnim: TilesetLavenderCryptAnim: TilesetBlueLabAnim: TilesetNihonGateAnim: +TilesetNihonMartAnim: dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation diff --git a/gfx/sgb/predef.pal b/gfx/sgb/predef.pal index c98ddd7..aafdc0e 100644 --- a/gfx/sgb/predef.pal +++ b/gfx/sgb/predef.pal @@ -32,6 +32,7 @@ RGB 31,31,31, 29,26,18, 15,20,31, 00,00,00 ; PREDEFPAL_SIX_ISLAND (temp) RGB 31,31,31, 29,26,18, 15,20,31, 00,00,00 ; PREDEFPAL_SEVEN_ISLAND (temp) RGB 31,31,31, 12,28,22, 15,20,20, 00,00,00 ; PREDEFPAL_SILENT_HILLS + RGB 31,31,31, 31,21,18, 15,20,31, 00,00,00 ; PREDEFPAL_OLD_CITY RGB 31,31,31, 18,14,31, 15,20,20, 00,00,00 ; PREDEFPAL_BLUE_FOREST RGB 31,31,31, 12,28,22, 15,20,20, 00,00,00 ; PREDEFPAL_NITE RGB 31,31,31, 07,07,07, 02,03,03, 00,00,00 ; PREDEFPAL_BLACKOUT diff --git a/gfx/tilesets.asm b/gfx/tilesets.asm index f939f1d..2974c8d 100644 --- a/gfx/tilesets.asm +++ b/gfx/tilesets.asm @@ -612,3 +612,15 @@ INCBIN "data/tilesets/nihongate_metatiles.bin" TilesetNihonGateColl:: INCLUDE "data/tilesets/nihongate_collision.asm" + +TilesetNihonMartAttr:: +INCBIN "data/tilesets/nihonmart_attributes.bin" + +TilesetNihonMartGFX:: +INCBIN "gfx/tilesets/nihonmart.2bpp.lz" + +TilesetNihonMartMeta:: +INCBIN "data/tilesets/nihonmart_metatiles.bin" + +TilesetNihonMartColl:: +INCLUDE "data/tilesets/nihonmart_collision.asm" \ No newline at end of file diff --git a/gfx/tilesets/nihonmart.png b/gfx/tilesets/nihonmart.png new file mode 100644 index 0000000000000000000000000000000000000000..9cb015a7393139b5589d9b2058b8e35048f6271a GIT binary patch literal 909 zcmV;819JR{P)g15k=Er~L&CXi@5CSnLD$s~N zkAB->07QU>dH~CU23@{r79Qoq%Vt|;em=UOAes?#dr^bP8Ayjf0_d}li0=}joU9+W zG{rRaFi161mBhl%B?jH*WJ&9L)~Ww5fv4y;r-rn?FP%ETqkj_mq+H)CWnJr=>(n=) z(wgul5obUNB`2YMZV>!3xiruq7%C?)kTj^=Cpvv!U6764Qm!K6xauTqj1pLTeCvdG zLW@J?7@A!G9r70e*un`n0^sCE0WxDhM{pd+vxQks$cKOeQxl??x%X|UW1mw!_fkDb%G4?cTi?qho7H|ZN0R~Q)8gyjv5`=&O+1o~JKOHmwajUSr)B@D^ zJ1q6>ws=tHNqvL?qQBM#dCFJ==7EOiSs46=|se@yH--Epoz@pMQbP zKP;NR5nWEtTpK%Vs9#_G1*Ej7KkNkP^QnoPljeiX?-&5YczyoU60R70b+JoJpSl`@DxEpcL?mXFdZ8h7+~ZA%G@_4#C;FUe8+S$nM~+%t?VaY zcW4bgRX0JG8~+E@9`M%CEW2eg;FqBXzR%dGoEF>$VA5fy8iXjwV8AB^1z~f73kl1w-2i>7^2M!f#s(*`mN`J61J>CTXMmlDTc5mVOk4-KLr*Z jh5&#KL3cYn-J0+l4l%HFpF6EA00000NkvXXu0mjf-5#2P literal 0 HcmV?d00001 diff --git a/gfx/tilesets/roofs.pal b/gfx/tilesets/roofs.pal index 5a14e7a..96c85eb 100644 --- a/gfx/tilesets/roofs.pal +++ b/gfx/tilesets/roofs.pal @@ -134,7 +134,11 @@ ; group 27 (Silent Hills) RGB 09,31,23, 10,22,22 ; morn/day RGB 03,15,17, 02,10,15 ; nite - -; group 28 (Blue Forest) + +; group 28 (Old City) + RGB 31,19,00, 27,10,05 ; morn/day + RGB 15,07,02, 11,04,02 ; nite + +; group 29 (Blue Forest) RGB 24,22,31, 18,14,31 ; morn/day RGB 12,10,24, 08,03,23 ; nite diff --git a/maps/#Placeholder.asm b/maps/#Placeholder.asm new file mode 100644 index 0000000..82d4d3c --- /dev/null +++ b/maps/#Placeholder.asm @@ -0,0 +1,18 @@ + object_const_def + +Placeholder_MapScripts: + def_scene_scripts + + def_callbacks + +Placeholder_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 0, 0, DEBUG_ROOM, 1 + + def_coord_events + + def_bg_events + + def_object_events diff --git a/maps/DebugRoom.asm b/maps/DebugRoom.asm index 27290ba..9c6ed2c 100644 --- a/maps/DebugRoom.asm +++ b/maps/DebugRoom.asm @@ -198,129 +198,6 @@ DebugTextE: line "many items!" done -; Honey Tree script (to be put in Old City) -HoneyGrannyScript: - faceplayer - - opentext - writetext .IntroText - - waitbutton - checkitem HONEY_POT - iffalse .no_pot - - checkflag ENGINE_SWEET_HONEY - iftrue .just_given - - special CheckSweetHoneyTimer - ifequal 1, .waited_a_day - ifequal 2, .just_used - - writetext .UsedHoneyText -.give_honey - setflag ENGINE_SWEET_HONEY - waitbutton - - writetext .ReceivedSweetHoneyText - playsound SFX_ITEM - pause 60 - waitbutton - - writetext .TryUsingText - waitbutton - - closetext - end - -.just_used - writetext .DidYouPutText - waitbutton - closetext - end - -.no_pot - writetext .NoPotText - waitbutton - verbosegiveitem HONEY_POT - writetext .AfterPotGivenText - sjump .give_honey - -.just_given - writetext .TryUsingText - waitbutton - closetext - end - -.waited_a_day - writetext .DidYouPutText2 - waitbutton - closetext - end - -.IntroText: - text "Hello, hello!" - line "I'm the HONEY" - cont "GRANDMA!" - done - -.UsedHoneyText: - text "I see you have a" - line "HONEY POT with" - para "you. You can use" - line "it to collect" - cont "SWEET HONEY." - para "I know! I'll share" - line "some with you." - done - -.ReceivedSweetHoneyText: - text " received" - line "SWEET HONEY." - done - -.DidYouPutText: - text "Did you put SWEET" - line "HONEY on a tree?" - - para "It takes about a" - line "day for #MON to" - cont "be drawn to it." - done - -.NoPotText: - text "You don't have a" - line "HONEY POT?" - - para "Not to worry!" - line "I've got just the" - cont "thing for you." - done - -.AfterPotGivenText: - text "A HONEY POT can" - line "store SWEET HONEY." - para "You can use it to" - line "attract rare wild" - cont "#MON." - - para "In fact, I'll give" - line "you some to try" - cont "it out!" - done - -.TryUsingText: - text "Try spreading some" - line "HONEY on a tree!" - done - -.DidYouPutText2: - text "Did you put SWEET" - line "HONEY on a tree?" - - para "What happened to" - line "it?" - done - DebugRoom_MapEvents: db 0, 0 ; filler @@ -332,7 +209,7 @@ DebugRoom_MapEvents: warp_event 15, 2, GOLDENROD_CITY, 1 ; city warp warp_event 4, 9, PALLET_TOWN, 1 ; left lab/league warp warp_event 5, 9, PALLET_TOWN, 1 ; right lab/league warp - warp_event 35, 17, BLUE_FOREST, 1 ; east warp + warp_event 35, 17, OLD_CITY, 1 ; east warp warp_event 5, 35, BLUE_FOREST, 1 ; southwest warp warp_event 19, 34, BLUE_FOREST, 1 ; southern warp warp_event 33, 33, BLUE_FOREST, 1 ; southeast warp diff --git a/maps/HoneyGrandmasHouse.ablk b/maps/HoneyGrandmasHouse.ablk new file mode 100644 index 0000000..2263a65 --- /dev/null +++ b/maps/HoneyGrandmasHouse.ablk @@ -0,0 +1,2 @@ +) + * \ No newline at end of file diff --git a/maps/HoneyGrandmasHouse.asm b/maps/HoneyGrandmasHouse.asm new file mode 100644 index 0000000..0559fb5 --- /dev/null +++ b/maps/HoneyGrandmasHouse.asm @@ -0,0 +1,144 @@ + object_const_def + const HONEYGRANDMASHOUSE_GRANNY + +HoneyGrandmasHouse_MapScripts: + def_scene_scripts + + def_callbacks + +; Honey Tree script +HoneyGrannyScript: + faceplayer + + opentext + writetext .IntroText + + waitbutton + checkitem HONEY_POT + iffalse .no_pot + + checkflag ENGINE_SWEET_HONEY + iftrue .just_given + + special CheckSweetHoneyTimer + ifequal 1, .waited_a_day + ifequal 2, .just_used + + writetext .UsedHoneyText +.give_honey + setflag ENGINE_SWEET_HONEY + waitbutton + + writetext .ReceivedSweetHoneyText + playsound SFX_ITEM + pause 60 + waitbutton + + writetext .TryUsingText + waitbutton + + closetext + end + +.just_used + writetext .DidYouPutText + waitbutton + closetext + end + +.no_pot + writetext .NoPotText + waitbutton + verbosegiveitem HONEY_POT + writetext .AfterPotGivenText + sjump .give_honey + +.just_given + writetext .TryUsingText + waitbutton + closetext + end + +.waited_a_day + writetext .DidYouPutText2 + waitbutton + closetext + end + +.IntroText: + text "Hello, hello!" + line "I'm the HONEY" + cont "GRANDMA!" + done + +.UsedHoneyText: + text "I see you have a" + line "HONEY POT with" + para "you. You can use" + line "it to collect" + cont "SWEET HONEY." + para "I know! I'll share" + line "some with you." + done + +.ReceivedSweetHoneyText: + text " received" + line "SWEET HONEY." + done + +.DidYouPutText: + text "Did you put SWEET" + line "HONEY on a tree?" + + para "It takes about a" + line "day for #MON to" + cont "be drawn to it." + done + +.NoPotText: + text "You don't have a" + line "HONEY POT?" + + para "Not to worry!" + line "I've got just the" + cont "thing for you." + done + +.AfterPotGivenText: + text "A HONEY POT can" + line "store SWEET HONEY." + para "You can use it to" + line "attract rare wild" + cont "#MON." + + para "In fact, I'll give" + line "you some to try" + cont "it out!" + done + +.TryUsingText: + text "Try spreading some" + line "HONEY on a tree!" + done + +.DidYouPutText2: + text "Did you put SWEET" + line "HONEY on a tree?" + + para "What happened to" + line "it?" + done + +HoneyGrandmasHouse_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 9, OLD_CITY, 11 + warp_event 4, 9, OLD_CITY, 11 + + def_coord_events + + def_bg_events + + def_object_events + object_event 4, 5, SPRITE_GRANNY, SPRITEMOVEDATA_STANDING_RIGHT, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, HoneyGrannyScript, -1 diff --git a/maps/NihonMart.ablk b/maps/NihonMart.ablk new file mode 100644 index 0000000..8341700 --- /dev/null +++ b/maps/NihonMart.ablk @@ -0,0 +1,2 @@ + +    \ No newline at end of file diff --git a/maps/OldCity.ablk b/maps/OldCity.ablk new file mode 100644 index 0000000000000000000000000000000000000000..8ac303510098d5b3087120a7ab19dd615c6ac01f GIT binary patch literal 360 zcmaLT%MOAt5Cza)P>32S5RCOLlCS^;dRcep2PRl9y|sjYjtR(F|TzpBlE~VGptvTz!uwaB&ld0P2@<6ae*gdg literal 0 HcmV?d00001 diff --git a/maps/OldCity.asm b/maps/OldCity.asm new file mode 100644 index 0000000..463546d --- /dev/null +++ b/maps/OldCity.asm @@ -0,0 +1,192 @@ + object_const_def + const OLDCITY_FRUITTREE + const OLDCITY_GRAMPS + const OLDCITY_TWIN + const OLDCITY_BUGCATCHER + const OLDCITY_YOUNGSTER + const OLDCITY_SUPERNERD + const OLDCITY_GRANNY + const OLDCITY_MONSTER + +OldCity_MapScripts: + def_scene_scripts + + def_callbacks + callback MAPCALLBACK_NEWMAP, OldCityFlypointCallback + +OldCityFlypointCallback: + setflag ENGINE_FLYPOINT_OLD + endcallback + +HoneyGrandmaSignScript: + jumptext HoneyGrandmaSignText + +HoneyGrandmaSignText: + text "HONEY GRANDMA's" + line "house" + done + +OldCitySignScript: + jumptext OldCitySignText + +OldCitySignText: + text "OLD CITY" + para "The city of gold-" + line "en leaves." ; doubles as a HGSS ref. maybe have a gold/silver leaf maniac somewhere idfk they're in the game and totally useless + done + +GrowlitheTowerSignScript: + jumptext GrowlitheTowerSignText + +; TODO: What are they doing in the tower? Probably something to do with Shi-Shi, but what? +GrowlitheTowerSignText: + text "GROWLITHE TOWER" + line "Comment to be" + cont "written." + done + +OldCityMuseumSignScript: + jumptext OldCityMuseumSignText + +OldCityMuseumSignText: + text "XX" + line "Comment to be" + cont "written." + done + +OldCityFruitTree: + fruittree FRUITTREE_OLD_CITY + +OldCityPokecenterSign: + jumpstd PokecenterSignScript + +OldCityMartSign: + jumpstd MartSignScript + +OldCityOldManScript: + jumptextfaceplayer OldCityOldManText + +OldCityOldManText: + text "GROWLITHE TOWER" + line "is only open to" + cont "citizens." + + para "We await a hero." ; or something like that. + done + +OldCityTwinScript: + jumptextfaceplayer OldCityTwinText + +OldCityTwinText: + text "Comment to be" + line "written." + done + +OldCityBugCatcherScript: + jumptextfaceplayer OldCityBugCatcherText + +OldCityBugCatcherText: + text "The HONEY GRANDMA" + line "helped me catch" + cont "a HERACROSS!" + + para "I'm so happy! My" + line "friends are so" + cont "jealous!" + done + +OldCityYoungsterScript: + jumptextfaceplayer OldCityYoungsterText + +OldCityYoungsterText: + text "Did you come here" + line "through QUIET" + cont "CAVE?" + + para "My friends go" + line "there to catch" + cont "bug #MON!" + done + +OldCitySuperNerdScript: + jumptextfaceplayer OldCitySuperNerdText + +OldCitySuperNerdText: + text "LARVITAR and I" + line "are on a journey!" + + para "One day, it'll be" + line "big and strong!" + done + +OldCityLarvitarScript: + faceplayer + opentext + writetext OldCityLarvitarText + cry LARVITAR + waitbutton + closetext + end + +OldCityLarvitarText: + text "LARVITAR: Hwarg!" + line "Grr!" + done + +OldCityGrannyScript: + jumptextfaceplayer OldCityGrannyText + +OldCityGrannyText: + text "WALKER? He's from" + line "JOHTO. When he" + cont "left, his son" + cont "inherited the" + cont "GYM." + + para "You beat him?" + + para "Very good." + done + +OldCity_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 18, 31, ROUTE_49_OLD_CITY_GATE_1F, 3 + warp_event 19, 31, ROUTE_49_OLD_CITY_GATE_1F, 4 + warp_event 22, 26, DEBUG_ROOM, 1 ; Right-down house + warp_event 3, 26, OLD_MART, 1 ; Mart + warp_event 27, 12, DEBUG_ROOM, 1 ; gym right + warp_event 26, 12, DEBUG_ROOM, 1 ; gym left + warp_event 5, 12, DEBUG_ROOM, 1 ; Museum(?) right + warp_event 4, 12, DEBUG_ROOM, 1 ; Museum(?) left + warp_event 12, 16, DEBUG_ROOM, 1 ; Growlithe Tower right + warp_event 11, 16, DEBUG_ROOM, 1 ; Growlithe Tower left + warp_event 3, 31, HONEY_GRANDMAS_HOUSE, 1 ; southwest house (Honey Grandma) + warp_event 27, 28, OLD_CITY_POKECENTER_1F, 1 ; pokecenter + warp_event 30, 20, DEBUG_ROOM, 1 ; right-up house + warp_event 10, 26, DEBUG_ROOM, 1 ; house by mart +; considering a tearoom where the waiters are passive-aggressive. classic kyoto. + def_coord_events + + def_bg_events + bg_event 20, 22, BGEVENT_READ, OldCitySignScript + bg_event 4, 32, BGEVENT_READ, HoneyGrandmaSignScript + bg_event 8, 14, BGEVENT_READ, GrowlitheTowerSignScript + bg_event 26, 20, BGEVENT_READ, OldCityMuseumSignScript + bg_event 28, 14, BGEVENT_READ, OldCityMuseumSignScript + bg_event 8, 11, BGEVENT_READ, OldCityMuseumSignScript + bg_event 28, 28, BGEVENT_READ, OldCityPokecenterSign + bg_event 4, 26, BGEVENT_READ, OldCityMartSign + + def_object_events + object_event 24, 3, SPRITE_FRUIT_TREE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityFruitTree, -1 + object_event 9, 16, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_DOWN, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityOldManScript, -1 + object_event 26, 22, SPRITE_TWIN, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityTwinScript, -1 + object_event 17, 16, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_STANDING_UP, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityBugCatcherScript, -1 + object_event 18, 24, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityYoungsterScript, -1 + object_event 14, 21, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_DOWN, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCitySuperNerdScript, -1 + object_event 13, 26, SPRITE_GRANNY, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityGrannyScript, -1 + object_event 15, 21, SPRITE_MONSTER, SPRITEMOVEDATA_STANDING_DOWN, 2, 2, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, OldCityLarvitarScript, -1 + + \ No newline at end of file diff --git a/maps/OldCityPokecenter1F.asm b/maps/OldCityPokecenter1F.asm new file mode 100644 index 0000000..3e230ab --- /dev/null +++ b/maps/OldCityPokecenter1F.asm @@ -0,0 +1,66 @@ + object_const_def + const OLDCITYPOKECENTER1F_NURSE + const OLDCITYPOKECENTER1F_FISHER + const OLDCITYPOKECENTER1F_COOLTRAINER_M + const OLDCITYPOKECENTER1F_COOLTRAINER_F + +OldCityPokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +OldCityPokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +OldCityPokecenter1FCoolTrainerMScript: + jumptextfaceplayer OldCityPokecenter1FCoolTrainerMText + +OldCityPokecenter1FCoolTrainerMText: + text "There's a strange" + line "house full of odd" + cont "geeks on ROUTE 50." + + para "I wonder why? Is" + line "something going" + cont "on?" + done + +OldCityPokecenter1FCoolTrainerFScript: + jumptextfaceplayer OldCityPokecenter1FCoolTrainerFText + +OldCityPokecenter1FCoolTrainerFText: + text "WALKER is always" + line "riding on his" + cont "SKARMORY!" + + para "The problem is, he" + line "doesn't leave time" + cont "for challengers…" + done + +OldCityPokecenter1FFisherScript: + jumptextfaceplayer OldCityPokecenter1FFisherText + +OldCityPokecenter1FFisherText: + text "I caught a strange" + line "fish #MON with" + cont "wings!" + done + +OldCityPokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, OLD_CITY, 12 + warp_event 4, 7, OLD_CITY, 12 + 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, OldCityPokecenter1FNurseScript, -1 + object_event 13, 3, SPRITE_FISHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityPokecenter1FFisherScript, -1 + object_event 1, 4, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WANDER, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityPokecenter1FCoolTrainerFScript, -1 + object_event 7, 5, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_WANDER, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldCityPokecenter1FCoolTrainerMScript, -1 diff --git a/maps/OldMart.asm b/maps/OldMart.asm new file mode 100644 index 0000000..cef74d7 --- /dev/null +++ b/maps/OldMart.asm @@ -0,0 +1,54 @@ + object_const_def + const OLDMART_CLERK + const OLDMART_TWIN + const OLDMART_BUG_CATCHER + +OldMart_MapScripts: + def_scene_scripts + + def_callbacks + +OldMartClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_OLDCITY + closetext + end + +OldMartTwinScript: + jumptextfaceplayer OldMartTwinText + +OldMartBugCatcherScript: + jumptextfaceplayer OldMartBugCatcherText + +OldMartTwinText: + text "I'm buying MAIL" + line "to send to my" + cont "foreign friend!" + done + +OldMartBugCatcherText: + text "I heard there's a" + line "tree with GOLD" + cont "BERRIES around" + cont "here." + + para "If I go to JOHTO's" + line "BATTLE TOWER, they" + cont "could be useful!" + done + +OldMart_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 4, 7, OLD_CITY, 4 + warp_event 5, 7, OLD_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, OldMartClerkScript, -1 + object_event 15, 2, SPRITE_TWIN, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, OldMartTwinScript, -1 + object_event 9, 5, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, OldMartBugCatcherScript, -1 diff --git a/maps/Route49OldCityGate1F.asm b/maps/Route49OldCityGate1F.asm index 24262dc..079a521 100644 --- a/maps/Route49OldCityGate1F.asm +++ b/maps/Route49OldCityGate1F.asm @@ -57,8 +57,8 @@ Route49OldCityGate1F_MapEvents: def_warp_events warp_event 4, 7, ROUTE_49_2, 3 warp_event 5, 7, ROUTE_49_2, 4 - warp_event 4, 0, DEBUG_ROOM, 1 ; OLD_CITY - warp_event 5, 0, DEBUG_ROOM, 1 ; OLD_CITY + warp_event 4, 0, OLD_CITY, 1 + warp_event 5, 0, OLD_CITY, 2 warp_event 1, 0, ROUTE_49_OLD_CITY_GATE_2F, 1 def_coord_events diff --git a/maps/SilentHillsPokecenter1F.asm b/maps/SilentHillsPokecenter1F.asm index f621aa6..5bac0f6 100644 --- a/maps/SilentHillsPokecenter1F.asm +++ b/maps/SilentHillsPokecenter1F.asm @@ -52,7 +52,7 @@ SilentHillsPokecenter1FHoundoomScript: end SilentHillsPokecenter1FHoundoomText: - text "Bark! Bark!" + text "HOUNDOOM: Grr…" done