diff options
| author | dannye <33dannye@gmail.com> | 2026-01-17 22:38:33 -0600 |
|---|---|---|
| committer | dannye <33dannye@gmail.com> | 2026-01-17 22:38:33 -0600 |
| commit | bc2354dd6626ce28bb9561547ed2107cfa56c18e (patch) | |
| tree | 5902d4c3389253c76b7c3351e0d7dfecb551c28d /constants | |
| parent | Identify characters in `_OakSpeechText2B` and `Printer_GetMonStats.IDNo` (#144) (diff) | |
| parent | Use macros for `WildMonEncounterSlotChances` (#562) (diff) | |
| download | pokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.tar.gz pokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.tar.xz pokeyellow-bc2354dd6626ce28bb9561547ed2107cfa56c18e.zip | |
Merge branch 'master' of https://github.com/pret/pokered
Diffstat (limited to 'constants')
| -rw-r--r-- | constants/event_constants.asm | 2 | ||||
| -rw-r--r-- | constants/gfx_constants.asm | 6 | ||||
| -rw-r--r-- | constants/hide_show_constants.asm | 248 | ||||
| -rw-r--r-- | constants/map_constants.asm | 137 | ||||
| -rw-r--r-- | constants/menu_constants.asm | 5 | ||||
| -rw-r--r-- | constants/player_constants.asm | 9 | ||||
| -rw-r--r-- | constants/pokemon_data_constants.asm | 4 | ||||
| -rw-r--r-- | constants/text_constants.asm | 13 | ||||
| -rw-r--r-- | constants/toggle_constants.asm | 408 |
9 files changed, 574 insertions, 258 deletions
diff --git a/constants/event_constants.asm b/constants/event_constants.asm index 82fb1018..dfb913f3 100644 --- a/constants/event_constants.asm +++ b/constants/event_constants.asm @@ -610,7 +610,7 @@ const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3 const EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4 const_skip - const EVENT_677 ; ??? + const EVENT_ENTERED_ROCKET_HIDEOUT const_skip 7 const EVENT_67F ; ??? const_skip diff --git a/constants/gfx_constants.asm b/constants/gfx_constants.asm index 3418eee4..f440acc0 100644 --- a/constants/gfx_constants.asm +++ b/constants/gfx_constants.asm @@ -7,7 +7,11 @@ DEF SCREEN_BLOCK_HEIGHT EQU 5 ; blocks DEF SURROUNDING_WIDTH EQU SCREEN_BLOCK_WIDTH * BLOCK_WIDTH ; tiles DEF SURROUNDING_HEIGHT EQU SCREEN_BLOCK_HEIGHT * BLOCK_HEIGHT ; tiles -DEF SPRITEBUFFERSIZE EQU 7 * 7 * TILE_1BPP_SIZE +DEF PIC_WIDTH EQU 7 ; tiles +DEF PIC_HEIGHT EQU PIC_WIDTH ; tiles +DEF PIC_SIZE EQU PIC_WIDTH * PIC_HEIGHT ; tiles + +DEF SPRITEBUFFERSIZE EQU PIC_WIDTH * PIC_HEIGHT * TILE_1BPP_SIZE ; DMGPalToCGBPal DEF CONVERT_BGP EQU 0 diff --git a/constants/hide_show_constants.asm b/constants/hide_show_constants.asm deleted file mode 100644 index 50d9fa06..00000000 --- a/constants/hide_show_constants.asm +++ /dev/null @@ -1,248 +0,0 @@ -DEF HIDE EQU $11 -DEF SHOW EQU $15 - -; MissableObjects indexes (see data/maps/hide_show_data.asm) -; this is a list of the sprites that can be enabled/disabled during the game -; TODO: mark sprite constants with an X that are never used - - const_def - const HS_PALLET_TOWN_OAK ; 00 - const HS_LYING_OLD_MAN ; 01 - const HS_OLD_MAN_1 ; 02 - const HS_OLD_MAN_2 ; 03 - const HS_MUSEUM_GUY ; 04 - const HS_GYM_GUY ; 05 - const HS_CERULEAN_RIVAL ; 06 - const HS_CERULEAN_ROCKET ; 07 - const HS_CERULEAN_GUARD_1 ; 08 - const HS_CERULEAN_CAVE_GUY ; 09 - const HS_CERULEAN_GUARD_2 ; 0A - const HS_SAFFRON_CITY_1 ; 0B - const HS_SAFFRON_CITY_2 ; 0C - const HS_SAFFRON_CITY_3 ; 0D - const HS_SAFFRON_CITY_4 ; 0E - const HS_SAFFRON_CITY_5 ; 0F - const HS_SAFFRON_CITY_6 ; 10 - const HS_SAFFRON_CITY_7 ; 11 - const HS_SAFFRON_CITY_8 ; 12 - const HS_SAFFRON_CITY_9 ; 13 - const HS_SAFFRON_CITY_A ; 14 - const HS_SAFFRON_CITY_B ; 15 - const HS_SAFFRON_CITY_C ; 16 - const HS_SAFFRON_CITY_D ; 17 - const HS_SAFFRON_CITY_E ; 18 - const HS_SAFFRON_CITY_F ; 19 - const HS_ROUTE_2_ITEM_1 ; 1A - const HS_ROUTE_2_ITEM_2 ; 1B - const HS_ROUTE_4_ITEM ; 1C - const HS_ROUTE_9_ITEM ; 1D - const HS_ROUTE_12_SNORLAX ; 1E - const HS_ROUTE_12_ITEM_1 ; 1F - const HS_ROUTE_12_ITEM_2 ; 20 - const HS_ROUTE_15_ITEM ; 21 - const HS_ROUTE_16_SNORLAX ; 22 - const HS_ROUTE_22_RIVAL_1 ; 23 - const HS_ROUTE_22_RIVAL_2 ; 24 - const HS_NUGGET_BRIDGE_GUY ; 25 - const HS_ROUTE_24_ITEM ; 26 - const HS_ROUTE_25_ITEM ; 27 - const HS_DAISY_SITTING ; 28 - const HS_DAISY_WALKING ; 29 - const HS_TOWN_MAP ; 2A - const HS_OAKS_LAB_RIVAL ; 2B - const HS_STARTER_BALL_1 ; 2C - const HS_OAKS_LAB_OAK_1 ; 2D - const HS_POKEDEX_1 ; 2E - const HS_POKEDEX_2 ; 2F - const HS_OAKS_LAB_OAK_2 ; 30 - const HS_VIRIDIAN_GYM_GIOVANNI ; 31 - const HS_VIRIDIAN_GYM_ITEM ; 32 - const HS_OLD_AMBER ; 33 - const HS_CERULEAN_BULBASAUR ; 34 - const HS_CERULEAN_CAVE_1F_ITEM_1 ; 35 - const HS_CERULEAN_CAVE_1F_ITEM_2 ; 36 - const HS_CERULEAN_CAVE_1F_ITEM_3 ; 37 - const HS_CERULEAN_CAVE_1F_ITEM_4 ; 38 - const HS_POKEMON_TOWER_2F_RIVAL ; 39 - const HS_POKEMON_TOWER_3F_ITEM ; 3A - const HS_POKEMON_TOWER_4F_ITEM_1 ; 3B - const HS_POKEMON_TOWER_4F_ITEM_2 ; 3C - const HS_POKEMON_TOWER_4F_ITEM_3 ; 3D - const HS_POKEMON_TOWER_5F_ITEM ; 3E - const HS_POKEMON_TOWER_6F_ITEM_1 ; 3F - const HS_POKEMON_TOWER_6F_ITEM_2 ; 40 - const HS_POKEMON_TOWER_7F_JESSIE ; 41 - const HS_POKEMON_TOWER_7F_JAMES ; 42 - const HS_POKEMON_TOWER_7F_MR_FUJI ; 43 - const HS_MR_FUJIS_HOUSE_MR_FUJI ; 44 - const HS_CELADON_MANSION_EEVEE_GIFT ; 45 - const HS_GAME_CORNER_ROCKET ; 46 - const HS_WARDENS_HOUSE_ITEM ; 47 - const HS_POKEMON_MANSION_1F_ITEM_1 ; 48 - const HS_POKEMON_MANSION_1F_ITEM_2 ; 49 - const HS_FIGHTING_DOJO_GIFT_1 ; 4A - const HS_FIGHTING_DOJO_GIFT_2 ; 4B - const HS_SILPH_CO_1F_RECEPTIONIST ; 4C - const HS_VOLTORB_1 ; 4D - const HS_VOLTORB_2 ; 4E - const HS_VOLTORB_3 ; 4F - const HS_ELECTRODE_1 ; 50 - const HS_VOLTORB_4 ; 51 - const HS_VOLTORB_5 ; 52 - const HS_ELECTRODE_2 ; 53 - const HS_VOLTORB_6 ; 54 - const HS_ZAPDOS ; 55 - const HS_POWER_PLANT_ITEM_1 ; 56 - const HS_POWER_PLANT_ITEM_2 ; 57 - const HS_POWER_PLANT_ITEM_3 ; 58 - const HS_POWER_PLANT_ITEM_4 ; 59 - const HS_POWER_PLANT_ITEM_5 ; 5A - const HS_MOLTRES ; 5B - const HS_VICTORY_ROAD_2F_ITEM_1 ; 5C - const HS_VICTORY_ROAD_2F_ITEM_2 ; 5D - const HS_VICTORY_ROAD_2F_ITEM_3 ; 5E - const HS_VICTORY_ROAD_2F_ITEM_4 ; 5F - const HS_VICTORY_ROAD_2F_BOULDER ; 60 - const HS_BILL_POKEMON ; 61 - const HS_BILL_1 ; 62 - const HS_BILL_2 ; 63 - const HS_VIRIDIAN_FOREST_ITEM_1 ; 64 - const HS_VIRIDIAN_FOREST_ITEM_2 ; 65 - const HS_VIRIDIAN_FOREST_ITEM_3 ; 66 - const HS_MT_MOON_1F_ITEM_1 ; 67 - const HS_MT_MOON_1F_ITEM_2 ; 68 - const HS_MT_MOON_1F_ITEM_3 ; 69 - const HS_MT_MOON_1F_ITEM_4 ; 6A - const HS_MT_MOON_1F_ITEM_5 ; 6B - const HS_MT_MOON_1F_ITEM_6 ; 6C - const HS_MT_MOON_B2F_JESSIE ; 6D - const HS_MT_MOON_B2F_JAMES ; 6E - const HS_MT_MOON_B2F_FOSSIL_1 ; 6F - const HS_MT_MOON_B2F_FOSSIL_2 ; 70 - const HS_MT_MOON_B2F_ITEM_1 ; 71 - const HS_MT_MOON_B2F_ITEM_2 ; 72 - const HS_SS_ANNE_2F_RIVAL ; 73 - const HS_SS_ANNE_1F_ROOMS_ITEM ; 74 - const HS_SS_ANNE_2F_ROOMS_ITEM_1 ; 75 - const HS_SS_ANNE_2F_ROOMS_ITEM_2 ; 76 - const HS_SS_ANNE_B1F_ROOMS_ITEM_1 ; 77 - const HS_SS_ANNE_B1F_ROOMS_ITEM_2 ; 78 - const HS_SS_ANNE_B1F_ROOMS_ITEM_3 ; 79 - const HS_VICTORY_ROAD_3F_ITEM_1 ; 7A - const HS_VICTORY_ROAD_3F_ITEM_2 ; 7B - const HS_VICTORY_ROAD_3F_BOULDER ; 7C - const HS_ROCKET_HIDEOUT_B1F_ITEM_1 ; 7D - const HS_ROCKET_HIDEOUT_B1F_ITEM_2 ; 7E - const HS_ROCKET_HIDEOUT_B2F_ITEM_1 ; 7F - const HS_ROCKET_HIDEOUT_B2F_ITEM_2 ; 80 - const HS_ROCKET_HIDEOUT_B2F_ITEM_3 ; 81 - const HS_ROCKET_HIDEOUT_B2F_ITEM_4 ; 82 - const HS_ROCKET_HIDEOUT_B3F_ITEM_1 ; 83 - const HS_ROCKET_HIDEOUT_B3F_ITEM_2 ; 84 - const HS_ROCKET_HIDEOUT_B4F_GIOVANNI ; 85 - const HS_ROCKET_HIDEOUT_B4F_JAMES ; 86 - const HS_ROCKET_HIDEOUT_B4F_JESSIE ; 87 - const HS_ROCKET_HIDEOUT_B4F_ITEM_1 ; 88 - const HS_ROCKET_HIDEOUT_B4F_ITEM_2 ; 89 - const HS_ROCKET_HIDEOUT_B4F_ITEM_3 ; 8A - const HS_ROCKET_HIDEOUT_B4F_ITEM_4 ; 8B - const HS_ROCKET_HIDEOUT_B4F_ITEM_5 ; 8C - const HS_SILPH_CO_2F_1 ; 8D XXX never (de)activated? - const HS_SILPH_CO_2F_2 ; 8E - const HS_SILPH_CO_2F_3 ; 8F - const HS_SILPH_CO_2F_4 ; 90 - const HS_SILPH_CO_2F_5 ; 91 - const HS_SILPH_CO_3F_1 ; 92 - const HS_SILPH_CO_3F_2 ; 93 - const HS_SILPH_CO_3F_ITEM ; 94 - const HS_SILPH_CO_4F_1 ; 95 - const HS_SILPH_CO_4F_2 ; 96 - const HS_SILPH_CO_4F_3 ; 97 - const HS_SILPH_CO_4F_ITEM_1 ; 98 - const HS_SILPH_CO_4F_ITEM_2 ; 99 - const HS_SILPH_CO_4F_ITEM_3 ; 9A - const HS_SILPH_CO_5F_1 ; 9B - const HS_SILPH_CO_5F_2 ; 9C - const HS_SILPH_CO_5F_3 ; 9D - const HS_SILPH_CO_5F_4 ; 9E - const HS_SILPH_CO_5F_ITEM_1 ; 9F - const HS_SILPH_CO_5F_ITEM_2 ; A0 - const HS_SILPH_CO_5F_ITEM_3 ; A1 - const HS_SILPH_CO_6F_1 ; A2 - const HS_SILPH_CO_6F_2 ; A3 - const HS_SILPH_CO_6F_3 ; A4 - const HS_SILPH_CO_6F_ITEM_1 ; A5 - const HS_SILPH_CO_6F_ITEM_2 ; A6 - const HS_SILPH_CO_7F_1 ; A7 - const HS_SILPH_CO_7F_2 ; A8 - const HS_SILPH_CO_7F_3 ; A9 - const HS_SILPH_CO_7F_4 ; AA - const HS_SILPH_CO_7F_RIVAL ; AB - const HS_SILPH_CO_7F_ITEM_1 ; AC - const HS_SILPH_CO_7F_ITEM_2 ; AD - const HS_SILPH_CO_7F_8 ; AE XXX sprite doesn't exist - const HS_SILPH_CO_8F_1 ; AF - const HS_SILPH_CO_8F_2 ; B0 - const HS_SILPH_CO_8F_3 ; B1 - const HS_SILPH_CO_9F_1 ; B2 - const HS_SILPH_CO_9F_2 ; B3 - const HS_SILPH_CO_9F_3 ; B4 - const HS_SILPH_CO_10F_1 ; B5 - const HS_SILPH_CO_10F_2 ; B6 - const HS_SILPH_CO_10F_3 ; B7 XXX never (de)activated? - const HS_SILPH_CO_10F_ITEM_1 ; B8 - const HS_SILPH_CO_10F_ITEM_2 ; B9 - const HS_SILPH_CO_10F_ITEM_3 ; BA - const HS_SILPH_CO_11F_1 ; BB - const HS_SILPH_CO_11F_JAMES ; BC - const HS_SILPH_CO_11F_2 ; BD - const HS_SILPH_CO_11F_JESSIE ; BE - const HS_UNUSED_MAP_F4_1 ; BF XXX sprite doesn't exist - const HS_POKEMON_MANSION_2F_ITEM ; C0 - const HS_POKEMON_MANSION_3F_ITEM_1 ; C1 - const HS_POKEMON_MANSION_3F_ITEM_2 ; C2 - const HS_POKEMON_MANSION_B1F_ITEM_1 ; C3 - const HS_POKEMON_MANSION_B1F_ITEM_2 ; C4 - const HS_POKEMON_MANSION_B1F_ITEM_3 ; C5 - const HS_POKEMON_MANSION_B1F_ITEM_4 ; C6 - const HS_POKEMON_MANSION_B1F_ITEM_5 ; C7 - const HS_SAFARI_ZONE_EAST_ITEM_1 ; C8 - const HS_SAFARI_ZONE_EAST_ITEM_2 ; C9 - const HS_SAFARI_ZONE_EAST_ITEM_3 ; CA - const HS_SAFARI_ZONE_EAST_ITEM_4 ; CB - const HS_SAFARI_ZONE_NORTH_ITEM_1 ; CC - const HS_SAFARI_ZONE_NORTH_ITEM_2 ; CD - const HS_SAFARI_ZONE_WEST_ITEM_1 ; CE - const HS_SAFARI_ZONE_WEST_ITEM_2 ; CF - const HS_SAFARI_ZONE_WEST_ITEM_3 ; D0 - const HS_SAFARI_ZONE_WEST_ITEM_4 ; D1 - const HS_SAFARI_ZONE_CENTER_ITEM ; D2 - const HS_CERULEAN_CAVE_2F_ITEM_1 ; D3 - const HS_CERULEAN_CAVE_2F_ITEM_2 ; D4 - const HS_CERULEAN_CAVE_2F_ITEM_3 ; D5 - const HS_CERULEAN_CAVE_2F_ITEM_4 ; D6 - const HS_MEWTWO ; D7 - const HS_CERULEAN_CAVE_B1F_ITEM_1 ; D8 - const HS_CERULEAN_CAVE_B1F_ITEM_2 ; D9 - const HS_CERULEAN_CAVE_B1F_ITEM_3 ; DA - const HS_CERULEAN_CAVE_B1F_ITEM_4 ; DB - const HS_VICTORY_ROAD_1F_ITEM_1 ; DC - const HS_VICTORY_ROAD_1F_ITEM_2 ; DD - const HS_CHAMPIONS_ROOM_OAK ; DE - const HS_SEAFOAM_ISLANDS_1F_BOULDER_1 ; DF - const HS_SEAFOAM_ISLANDS_1F_BOULDER_2 ; E0 - const HS_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; E1 - const HS_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; E2 - const HS_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; E3 - const HS_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; E4 - const HS_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; E5 - const HS_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; E6 - const HS_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; E7 - const HS_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E8 - const HS_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E9 - const HS_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; EA - const HS_ARTICUNO ; EB - const HS_DAISY_SITTING_COPY ; EC - const HS_DAISY_WALKING_COPY ; ED - const HS_TOWN_MAP_COPY ; EE -DEF NUM_HS_OBJECTS EQU const_value diff --git a/constants/map_constants.asm b/constants/map_constants.asm index cf23caa7..7f1f21d3 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -4,12 +4,19 @@ MACRO map_const DEF \1_HEIGHT EQU \3 ENDM +; "Indoor" maps are grouped sequentially (see data/maps/town_map_entries.asm) +DEF NUM_INDOOR_MAP_GROUPS EQU 0 +MACRO end_indoor_group + DEF INDOORGROUP_\1 EQU const_value + REDEF NUM_INDOOR_MAP_GROUPS EQU NUM_INDOOR_MAP_GROUPS + 1 +ENDM + ; map ids ; indexes for: ; - MapHeaderBanks (see data/maps/map_header_banks.asm) ; - MapHeaderPointers (see data/maps/map_header_pointers.asm) ; - MapSongBanks (see data/maps/songs.asm) -; - MapHSPointers (see data/maps/hide_show_data.asm) +; - ToggleableObjectMapPointers (see data/maps/toggleable_objects.asm) ; - MapSpriteSets (see data/maps/sprite_sets.asm) ; - ExternalMapEntries (see data/maps/town_map_entries.asm) ; - WildDataPointers (see data/wild/grass_water.asm) @@ -28,7 +35,9 @@ ENDM map_const INDIGO_PLATEAU, 10, 9 ; $09 map_const SAFFRON_CITY, 20, 18 ; $0A DEF NUM_CITY_MAPS EQU const_value + map_const UNUSED_MAP_0B, 0, 0 ; $0B + DEF FIRST_ROUTE_MAP EQU const_value map_const ROUTE_1, 10, 18 ; $0C map_const ROUTE_2, 10, 36 ; $0D @@ -55,22 +64,31 @@ DEF FIRST_ROUTE_MAP EQU const_value map_const ROUTE_23, 10, 72 ; $22 map_const ROUTE_24, 10, 18 ; $23 map_const ROUTE_25, 30, 9 ; $24 + DEF FIRST_INDOOR_MAP EQU const_value map_const REDS_HOUSE_1F, 4, 4 ; $25 map_const REDS_HOUSE_2F, 4, 4 ; $26 map_const BLUES_HOUSE, 4, 4 ; $27 map_const OAKS_LAB, 5, 6 ; $28 + end_indoor_group PALLET_TOWN + map_const VIRIDIAN_POKECENTER, 7, 4 ; $29 map_const VIRIDIAN_MART, 4, 4 ; $2A map_const VIRIDIAN_SCHOOL_HOUSE, 4, 4 ; $2B map_const VIRIDIAN_NICKNAME_HOUSE, 4, 4 ; $2C map_const VIRIDIAN_GYM, 10, 9 ; $2D + end_indoor_group VIRIDIAN_CITY + map_const DIGLETTS_CAVE_ROUTE_2, 4, 4 ; $2E map_const VIRIDIAN_FOREST_NORTH_GATE, 5, 4 ; $2F map_const ROUTE_2_TRADE_HOUSE, 4, 4 ; $30 map_const ROUTE_2_GATE, 5, 4 ; $31 map_const VIRIDIAN_FOREST_SOUTH_GATE, 5, 4 ; $32 + end_indoor_group ROUTE_2 + map_const VIRIDIAN_FOREST, 17, 24 ; $33 + end_indoor_group VIRIDIAN_FOREST + map_const MUSEUM_1F, 10, 4 ; $34 map_const MUSEUM_2F, 7, 4 ; $35 map_const PEWTER_GYM, 5, 7 ; $36 @@ -78,42 +96,72 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const PEWTER_MART, 4, 4 ; $38 map_const PEWTER_SPEECH_HOUSE, 4, 4 ; $39 map_const PEWTER_POKECENTER, 7, 4 ; $3A + end_indoor_group PEWTER_CITY + map_const MT_MOON_1F, 20, 18 ; $3B map_const MT_MOON_B1F, 14, 14 ; $3C map_const MT_MOON_B2F, 20, 18 ; $3D + end_indoor_group MT_MOON + map_const CERULEAN_TRASHED_HOUSE, 4, 4 ; $3E map_const CERULEAN_MELANIES_HOUSE, 4, 4 ; $3F map_const CERULEAN_POKECENTER, 7, 4 ; $40 map_const CERULEAN_GYM, 5, 7 ; $41 map_const BIKE_SHOP, 4, 4 ; $42 map_const CERULEAN_MART, 4, 4 ; $43 + end_indoor_group CERULEAN_CITY + map_const MT_MOON_POKECENTER, 7, 4 ; $44 + end_indoor_group ROUTE_4 + map_const CERULEAN_TRASHED_HOUSE_COPY, 4, 4 ; $45 + end_indoor_group CERULEAN_CITY_2 + map_const ROUTE_5_GATE, 4, 3 ; $46 map_const UNDERGROUND_PATH_ROUTE_5, 4, 4 ; $47 map_const DAYCARE, 4, 4 ; $48 + end_indoor_group ROUTE_5 + map_const ROUTE_6_GATE, 4, 3 ; $49 map_const UNDERGROUND_PATH_ROUTE_6, 4, 4 ; $4A map_const UNDERGROUND_PATH_ROUTE_6_COPY, 4, 4 ; $4B + end_indoor_group ROUTE_6 + map_const ROUTE_7_GATE, 3, 4 ; $4C map_const UNDERGROUND_PATH_ROUTE_7, 4, 4 ; $4D map_const UNDERGROUND_PATH_ROUTE_7_COPY, 4, 4 ; $4E + end_indoor_group ROUTE_7 + map_const ROUTE_8_GATE, 3, 4 ; $4F map_const UNDERGROUND_PATH_ROUTE_8, 4, 4 ; $50 + end_indoor_group ROUTE_8 + map_const ROCK_TUNNEL_POKECENTER, 7, 4 ; $51 map_const ROCK_TUNNEL_1F, 20, 18 ; $52 + end_indoor_group ROCK_TUNNEL + map_const POWER_PLANT, 20, 18 ; $53 + end_indoor_group POWER_PLANT + map_const ROUTE_11_GATE_1F, 4, 5 ; $54 map_const DIGLETTS_CAVE_ROUTE_11, 4, 4 ; $55 map_const ROUTE_11_GATE_2F, 4, 4 ; $56 + end_indoor_group ROUTE_11 + map_const ROUTE_12_GATE_1F, 5, 4 ; $57 + end_indoor_group ROUTE_12 + map_const BILLS_HOUSE, 4, 4 ; $58 + end_indoor_group SEA_COTTAGE + map_const VERMILION_POKECENTER, 7, 4 ; $59 map_const POKEMON_FAN_CLUB, 4, 4 ; $5A map_const VERMILION_MART, 4, 4 ; $5B map_const VERMILION_GYM, 5, 9 ; $5C map_const VERMILION_PIDGEY_HOUSE, 4, 4 ; $5D map_const VERMILION_DOCK, 14, 6 ; $5E + end_indoor_group VERMILION_CITY + map_const SS_ANNE_1F, 20, 9 ; $5F map_const SS_ANNE_2F, 20, 9 ; $60 map_const SS_ANNE_3F, 10, 3 ; $61 @@ -124,10 +172,14 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const SS_ANNE_1F_ROOMS, 12, 8 ; $66 map_const SS_ANNE_2F_ROOMS, 12, 8 ; $67 map_const SS_ANNE_B1F_ROOMS, 12, 8 ; $68 + end_indoor_group SS_ANNE + map_const UNUSED_MAP_69, 0, 0 ; $69 map_const UNUSED_MAP_6A, 0, 0 ; $6A map_const UNUSED_MAP_6B, 0, 0 ; $6B map_const VICTORY_ROAD_1F, 10, 9 ; $6C + end_indoor_group VICTORY_ROAD + map_const UNUSED_MAP_6D, 0, 0 ; $6D map_const UNUSED_MAP_6E, 0, 0 ; $6E map_const UNUSED_MAP_6F, 0, 0 ; $6F @@ -138,9 +190,17 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const UNUSED_MAP_74, 0, 0 ; $74 map_const UNUSED_MAP_75, 0, 0 ; $75 map_const HALL_OF_FAME, 5, 4 ; $76 + end_indoor_group POKEMON_LEAGUE + map_const UNDERGROUND_PATH_NORTH_SOUTH, 4, 24 ; $77 ; UndergroundPathNorthSouth.blk is actually 4x23 + end_indoor_group UNDERGROUND_PATH + map_const CHAMPIONS_ROOM, 4, 4 ; $78 + end_indoor_group POKEMON_LEAGUE_2 + map_const UNDERGROUND_PATH_WEST_EAST, 25, 4 ; $79 + end_indoor_group UNDERGROUND_PATH_2 + map_const CELADON_MART_1F, 10, 4 ; $7A map_const CELADON_MART_2F, 10, 4 ; $7B map_const CELADON_MART_3F, 10, 4 ; $7C @@ -160,7 +220,11 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const CELADON_DINER, 5, 4 ; $8A map_const CELADON_CHIEF_HOUSE, 4, 4 ; $8B map_const CELADON_HOTEL, 7, 4 ; $8C + end_indoor_group CELADON_CITY + map_const LAVENDER_POKECENTER, 7, 4 ; $8D + end_indoor_group LAVENDER_TOWN + map_const POKEMON_TOWER_1F, 10, 9 ; $8E map_const POKEMON_TOWER_2F, 10, 9 ; $8F map_const POKEMON_TOWER_3F, 10, 9 ; $90 @@ -168,23 +232,41 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const POKEMON_TOWER_5F, 10, 9 ; $92 map_const POKEMON_TOWER_6F, 10, 9 ; $93 map_const POKEMON_TOWER_7F, 10, 9 ; $94 + end_indoor_group POKEMON_TOWER + map_const MR_FUJIS_HOUSE, 4, 4 ; $95 map_const LAVENDER_MART, 4, 4 ; $96 map_const LAVENDER_CUBONE_HOUSE, 4, 4 ; $97 + end_indoor_group LAVENDER_TOWN_2 + map_const FUCHSIA_MART, 4, 4 ; $98 map_const FUCHSIA_BILLS_GRANDPAS_HOUSE, 4, 4 ; $99 map_const FUCHSIA_POKECENTER, 7, 4 ; $9A map_const WARDENS_HOUSE, 5, 4 ; $9B + end_indoor_group FUCHSIA_CITY + map_const SAFARI_ZONE_GATE, 4, 3 ; $9C + end_indoor_group SAFARI_ZONE + map_const FUCHSIA_GYM, 5, 9 ; $9D map_const FUCHSIA_MEETING_ROOM, 7, 4 ; $9E + end_indoor_group FUCHSIA_CITY_2 + map_const SEAFOAM_ISLANDS_B1F, 15, 9 ; $9F map_const SEAFOAM_ISLANDS_B2F, 15, 9 ; $A0 map_const SEAFOAM_ISLANDS_B3F, 15, 9 ; $A1 map_const SEAFOAM_ISLANDS_B4F, 15, 9 ; $A2 + end_indoor_group SEAFOAM_ISLANDS + map_const VERMILION_OLD_ROD_HOUSE, 4, 4 ; $A3 + end_indoor_group VERMILION_CITY_2 + map_const FUCHSIA_GOOD_ROD_HOUSE, 4, 4 ; $A4 + end_indoor_group FUCHSIA_CITY_3 + map_const POKEMON_MANSION_1F, 15, 14 ; $A5 + end_indoor_group POKEMON_MANSION + map_const CINNABAR_GYM, 10, 9 ; $A6 map_const CINNABAR_LAB, 9, 4 ; $A7 map_const CINNABAR_LAB_TRADE_ROOM, 4, 4 ; $A8 @@ -193,7 +275,11 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const CINNABAR_POKECENTER, 7, 4 ; $AB map_const CINNABAR_MART, 4, 4 ; $AC map_const CINNABAR_MART_COPY, 4, 4 ; $AD + end_indoor_group CINNABAR_ISLAND + map_const INDIGO_PLATEAU_LOBBY, 8, 6 ; $AE + end_indoor_group INDIGO_PLATEAU + map_const COPYCATS_HOUSE_1F, 4, 4 ; $AF map_const COPYCATS_HOUSE_2F, 4, 4 ; $B0 map_const FIGHTING_DOJO, 5, 6 ; $B1 @@ -203,21 +289,45 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const SILPH_CO_1F, 15, 9 ; $B5 map_const SAFFRON_POKECENTER, 7, 4 ; $B6 map_const MR_PSYCHICS_HOUSE, 4, 4 ; $B7 + end_indoor_group SAFFRON_CITY + map_const ROUTE_15_GATE_1F, 4, 5 ; $B8 map_const ROUTE_15_GATE_2F, 4, 4 ; $B9 + end_indoor_group ROUTE_15 + map_const ROUTE_16_GATE_1F, 4, 7 ; $BA map_const ROUTE_16_GATE_2F, 4, 4 ; $BB map_const ROUTE_16_FLY_HOUSE, 4, 4 ; $BC + end_indoor_group ROUTE_16 + map_const ROUTE_12_SUPER_ROD_HOUSE, 4, 4 ; $BD + end_indoor_group ROUTE_12_2 + map_const ROUTE_18_GATE_1F, 4, 5 ; $BE map_const ROUTE_18_GATE_2F, 4, 4 ; $BF + end_indoor_group ROUTE_18 + map_const SEAFOAM_ISLANDS_1F, 15, 9 ; $C0 + end_indoor_group SEAFOAM_ISLANDS_2 + map_const ROUTE_22_GATE, 5, 4 ; $C1 + end_indoor_group ROUTE_22 + map_const VICTORY_ROAD_2F, 15, 9 ; $C2 + end_indoor_group VICTORY_ROAD_2 + map_const ROUTE_12_GATE_2F, 4, 4 ; $C3 + end_indoor_group ROUTE_12_3 + map_const VERMILION_TRADE_HOUSE, 4, 4 ; $C4 + end_indoor_group VERMILION_CITY_3 + map_const DIGLETTS_CAVE, 20, 18 ; $C5 + end_indoor_group DIGLETTS_CAVE + map_const VICTORY_ROAD_3F, 15, 9 ; $C6 + end_indoor_group VICTORY_ROAD_3 + map_const ROCKET_HIDEOUT_B1F, 15, 14 ; $C7 map_const ROCKET_HIDEOUT_B2F, 15, 14 ; $C8 map_const ROCKET_HIDEOUT_B3F, 15, 14 ; $C9 @@ -226,6 +336,8 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const UNUSED_MAP_CC, 0, 0 ; $CC map_const UNUSED_MAP_CD, 0, 0 ; $CD map_const UNUSED_MAP_CE, 0, 0 ; $CE + end_indoor_group ROCKET_HQ + map_const SILPH_CO_2F, 15, 9 ; $CF map_const SILPH_CO_3F, 15, 9 ; $D0 map_const SILPH_CO_4F, 15, 9 ; $D1 @@ -233,9 +345,13 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const SILPH_CO_6F, 13, 9 ; $D3 map_const SILPH_CO_7F, 13, 9 ; $D4 map_const SILPH_CO_8F, 13, 9 ; $D5 + end_indoor_group SILPH_CO + map_const POKEMON_MANSION_2F, 15, 14 ; $D6 map_const POKEMON_MANSION_3F, 15, 9 ; $D7 map_const POKEMON_MANSION_B1F, 15, 14 ; $D8 + end_indoor_group POKEMON_MANSION_2 + map_const SAFARI_ZONE_EAST, 15, 13 ; $D9 map_const SAFARI_ZONE_NORTH, 20, 18 ; $DA map_const SAFARI_ZONE_WEST, 15, 13 ; $DB @@ -245,17 +361,29 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const SAFARI_ZONE_WEST_REST_HOUSE, 4, 4 ; $DF map_const SAFARI_ZONE_EAST_REST_HOUSE, 4, 4 ; $E0 map_const SAFARI_ZONE_NORTH_REST_HOUSE, 4, 4 ; $E1 + end_indoor_group SAFARI_ZONE_2 + map_const CERULEAN_CAVE_2F, 15, 9 ; $E2 map_const CERULEAN_CAVE_B1F, 15, 9 ; $E3 map_const CERULEAN_CAVE_1F, 15, 9 ; $E4 + end_indoor_group CERULEAN_CAVE + map_const NAME_RATERS_HOUSE, 4, 4 ; $E5 + end_indoor_group LAVENDER_TOWN_3 + map_const CERULEAN_BADGE_HOUSE, 4, 4 ; $E6 + end_indoor_group CERULEAN_CITY_3 + map_const UNUSED_MAP_E7, 0, 0 ; $E7 map_const ROCK_TUNNEL_B1F, 20, 18 ; $E8 + end_indoor_group ROCK_TUNNEL_2 + map_const SILPH_CO_9F, 13, 9 ; $E9 map_const SILPH_CO_10F, 8, 9 ; $EA map_const SILPH_CO_11F, 9, 9 ; $EB map_const SILPH_CO_ELEVATOR, 2, 2 ; $EC + end_indoor_group SILPH_CO_2 + map_const UNUSED_MAP_ED, 0, 0 ; $ED map_const UNUSED_MAP_EE, 0, 0 ; $EE map_const TRADE_CENTER, 5, 4 ; $EF @@ -267,9 +395,14 @@ DEF FIRST_INDOOR_MAP EQU const_value map_const LORELEIS_ROOM, 5, 6 ; $F5 map_const BRUNOS_ROOM, 5, 6 ; $F6 map_const AGATHAS_ROOM, 5, 6 ; $F7 + end_indoor_group POKEMON_LEAGUE_3 + map_const SUMMER_BEACH_HOUSE, 7, 4 ; $F8 + end_indoor_group ROUTE_19 DEF NUM_MAPS EQU const_value ; Indoor maps, such as houses, use this as the Map ID in their exit warps ; This map ID takes the player back to the last outdoor map they were on, stored in wLastMap -DEF LAST_MAP EQU -1 +DEF LAST_MAP EQU $ff + +ASSERT NUM_MAPS <= LAST_MAP, "map IDs overlap LAST_MAP" diff --git a/constants/menu_constants.asm b/constants/menu_constants.asm index a6e035e7..c4476e03 100644 --- a/constants/menu_constants.asm +++ b/constants/menu_constants.asm @@ -90,3 +90,8 @@ DEF FIRST_PARTY_MENU_TEXT_ID EQU const_value const NAME_PLAYER_SCREEN ; 0 const NAME_RIVAL_SCREEN ; 1 const NAME_MON_SCREEN ; 2 + +; Stats box layout (see engine/pokemon/status_screen.asm) + const_def + const STATUS_SCREEN_STATS_BOX ; 0 + const LEVEL_UP_STATS_BOX ; 1 diff --git a/constants/player_constants.asm b/constants/player_constants.asm new file mode 100644 index 00000000..26a640ec --- /dev/null +++ b/constants/player_constants.asm @@ -0,0 +1,9 @@ +DEF NUM_PLAYER_NAMES EQU 3 + +DEF PLAYERNAME1 EQUS "YELLOW" +DEF PLAYERNAME2 EQUS "ASH" +DEF PLAYERNAME3 EQUS "JACK" + +DEF RIVALNAME1 EQUS "BLUE" +DEF RIVALNAME2 EQUS "GARY" +DEF RIVALNAME3 EQUS "JOHN" diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm index 1234acab..16d21f54 100644 --- a/constants/pokemon_data_constants.asm +++ b/constants/pokemon_data_constants.asm @@ -44,7 +44,7 @@ DEF MON_SPD_EXP rw DEF MON_SPC_EXP rw DEF MON_DVS rw DEF MON_PP rb NUM_MOVES -DEF BOXMON_STRUCT_LENGTH EQU _RS +DEF BOXMON_STRUCT_LENGTH EQU _RS ; $21 DEF MON_LEVEL rb DEF MON_STATS rw NUM_STATS rsset MON_STATS @@ -53,7 +53,7 @@ DEF MON_ATK rw DEF MON_DEF rw DEF MON_SPD rw DEF MON_SPC rw -DEF PARTYMON_STRUCT_LENGTH EQU _RS +DEF PARTYMON_STRUCT_LENGTH EQU _RS ; $2c DEF PARTY_LENGTH EQU 6 diff --git a/constants/text_constants.asm b/constants/text_constants.asm index 1b515782..0670f405 100644 --- a/constants/text_constants.asm +++ b/constants/text_constants.asm @@ -1,7 +1,12 @@ -DEF NAME_LENGTH EQU 11 -DEF ITEM_NAME_LENGTH EQU 13 -DEF NAME_BUFFER_LENGTH EQU 20 -DEF NAME_LENGTH_JP EQU 6 +DEF PLAYER_NAME_LENGTH EQU 8 +DEF STAT_NAME_LENGTH EQU 10 +DEF NAME_LENGTH EQU 11 +DEF ITEM_NAME_LENGTH EQU 13 +DEF TRAINER_NAME_LENGTH EQU 13 +DEF MOVE_NAME_LENGTH EQU 14 +DEF GYM_CITY_LENGTH EQU 17 +DEF NAME_BUFFER_LENGTH EQU 20 +DEF NAME_LENGTH_JP EQU 6 ; PrintNumber, PrintBCDNumber const_def 5 diff --git a/constants/toggle_constants.asm b/constants/toggle_constants.asm new file mode 100644 index 00000000..c44dde50 --- /dev/null +++ b/constants/toggle_constants.asm @@ -0,0 +1,408 @@ +DEF OFF EQU $11 +DEF ON EQU $15 + +MACRO toggle_consts_for + DEF TOGGLEMAP{\1}_ID EQU const_value + DEF TOGGLEMAP{\1}_NAME EQUS "\1" +ENDM + +; ToggleableObjectStates indexes (see data/maps/toggleable_objects.asm) +; This lists the object_events that can be toggled by ShowObject/HideObject. +; The constants marked with an X are never used, because those object_events +; are not toggled on/off in any map's script. +; (The X-ed ones are either items or static Pokemon encounters that deactivate +; after battle and are detected in wToggleableObjectList.) + + const_def + + toggle_consts_for PALLET_TOWN + const TOGGLE_PALLET_TOWN_OAK ; 00 + + toggle_consts_for VIRIDIAN_CITY + const TOGGLE_LYING_OLD_MAN ; 01 + const TOGGLE_OLD_MAN_1 ; 02 + const TOGGLE_OLD_MAN_2 ; 03 + + toggle_consts_for PEWTER_CITY + const TOGGLE_MUSEUM_GUY ; 04 + const TOGGLE_GYM_GUY ; 05 + + toggle_consts_for CERULEAN_CITY + const TOGGLE_CERULEAN_RIVAL ; 06 + const TOGGLE_CERULEAN_ROCKET ; 07 + const TOGGLE_CERULEAN_GUARD_1 ; 08 + const TOGGLE_CERULEAN_CAVE_GUY ; 09 + const TOGGLE_CERULEAN_GUARD_2 ; 0A + + toggle_consts_for SAFFRON_CITY + const TOGGLE_SAFFRON_CITY_1 ; 0B + const TOGGLE_SAFFRON_CITY_2 ; 0C + const TOGGLE_SAFFRON_CITY_3 ; 0D + const TOGGLE_SAFFRON_CITY_4 ; 0E + const TOGGLE_SAFFRON_CITY_5 ; 0F + const TOGGLE_SAFFRON_CITY_6 ; 10 + const TOGGLE_SAFFRON_CITY_7 ; 11 + const TOGGLE_SAFFRON_CITY_8 ; 12 + const TOGGLE_SAFFRON_CITY_9 ; 13 + const TOGGLE_SAFFRON_CITY_A ; 14 + const TOGGLE_SAFFRON_CITY_B ; 15 + const TOGGLE_SAFFRON_CITY_C ; 16 + const TOGGLE_SAFFRON_CITY_D ; 17 + const TOGGLE_SAFFRON_CITY_E ; 18 + const TOGGLE_SAFFRON_CITY_F ; 19 + + toggle_consts_for ROUTE_2 + const TOGGLE_ROUTE_2_ITEM_1 ; 1A X + const TOGGLE_ROUTE_2_ITEM_2 ; 1B X + + toggle_consts_for ROUTE_4 + const TOGGLE_ROUTE_4_ITEM ; 1C X + + toggle_consts_for ROUTE_9 + const TOGGLE_ROUTE_9_ITEM ; 1D X + + toggle_consts_for ROUTE_12 + const TOGGLE_ROUTE_12_SNORLAX ; 1E + const TOGGLE_ROUTE_12_ITEM_1 ; 1F X + const TOGGLE_ROUTE_12_ITEM_2 ; 20 X + + toggle_consts_for ROUTE_15 + const TOGGLE_ROUTE_15_ITEM ; 21 X + + toggle_consts_for ROUTE_16 + const TOGGLE_ROUTE_16_SNORLAX ; 22 + + toggle_consts_for ROUTE_22 + const TOGGLE_ROUTE_22_RIVAL_1 ; 23 + const TOGGLE_ROUTE_22_RIVAL_2 ; 24 + + toggle_consts_for ROUTE_24 + const TOGGLE_NUGGET_BRIDGE_GUY ; 25 + const TOGGLE_ROUTE_24_ITEM ; 26 X + + toggle_consts_for ROUTE_25 + const TOGGLE_ROUTE_25_ITEM ; 27 X + + toggle_consts_for BLUES_HOUSE + const TOGGLE_DAISY_SITTING ; 28 + const TOGGLE_DAISY_WALKING ; 29 + const TOGGLE_TOWN_MAP ; 2A + + toggle_consts_for OAKS_LAB + const TOGGLE_OAKS_LAB_RIVAL ; 2B + const TOGGLE_STARTER_BALL_1 ; 2C + const TOGGLE_OAKS_LAB_OAK_1 ; 2D + const TOGGLE_POKEDEX_1 ; 2E + const TOGGLE_POKEDEX_2 ; 2F + const TOGGLE_OAKS_LAB_OAK_2 ; 30 + + toggle_consts_for VIRIDIAN_GYM + const TOGGLE_VIRIDIAN_GYM_GIOVANNI ; 31 + const TOGGLE_VIRIDIAN_GYM_ITEM ; 32 X + + toggle_consts_for MUSEUM_1F + const TOGGLE_OLD_AMBER ; 33 + + toggle_consts_for CERULEAN_MELANIES_HOUSE + const TOGGLE_CERULEAN_BULBASAUR ; 34 + + toggle_consts_for CERULEAN_CAVE_1F + const TOGGLE_CERULEAN_CAVE_1F_ITEM_1 ; 35 X + const TOGGLE_CERULEAN_CAVE_1F_ITEM_2 ; 36 X + const TOGGLE_CERULEAN_CAVE_1F_ITEM_3 ; 37 X + const TOGGLE_CERULEAN_CAVE_1F_ITEM_4 ; 38 X + + toggle_consts_for POKEMON_TOWER_2F + const TOGGLE_POKEMON_TOWER_2F_RIVAL ; 39 + + toggle_consts_for POKEMON_TOWER_3F + const TOGGLE_POKEMON_TOWER_3F_ITEM ; 3A X + + toggle_consts_for POKEMON_TOWER_4F + const TOGGLE_POKEMON_TOWER_4F_ITEM_1 ; 3B X + const TOGGLE_POKEMON_TOWER_4F_ITEM_2 ; 3C X + const TOGGLE_POKEMON_TOWER_4F_ITEM_3 ; 3D X + + toggle_consts_for POKEMON_TOWER_5F + const TOGGLE_POKEMON_TOWER_5F_ITEM ; 3E X + + toggle_consts_for POKEMON_TOWER_6F + const TOGGLE_POKEMON_TOWER_6F_ITEM_1 ; 3F X + const TOGGLE_POKEMON_TOWER_6F_ITEM_2 ; 40 X + + toggle_consts_for POKEMON_TOWER_7F + const TOGGLE_POKEMON_TOWER_7F_JESSIE ; 41 + const TOGGLE_POKEMON_TOWER_7F_JAMES ; 42 + const TOGGLE_POKEMON_TOWER_7F_MR_FUJI ; 43 + + toggle_consts_for MR_FUJIS_HOUSE + const TOGGLE_MR_FUJIS_HOUSE_MR_FUJI ; 44 + + toggle_consts_for CELADON_MANSION_ROOF_HOUSE + const TOGGLE_CELADON_MANSION_EEVEE_GIFT ; 45 + + toggle_consts_for GAME_CORNER + const TOGGLE_GAME_CORNER_ROCKET ; 46 + + toggle_consts_for WARDENS_HOUSE + const TOGGLE_WARDENS_HOUSE_ITEM ; 47 X + + toggle_consts_for POKEMON_MANSION_1F + const TOGGLE_POKEMON_MANSION_1F_ITEM_1 ; 48 X + const TOGGLE_POKEMON_MANSION_1F_ITEM_2 ; 49 X + + toggle_consts_for FIGHTING_DOJO + const TOGGLE_FIGHTING_DOJO_GIFT_1 ; 4A + const TOGGLE_FIGHTING_DOJO_GIFT_2 ; 4B + + toggle_consts_for SILPH_CO_1F + const TOGGLE_SILPH_CO_1F_RECEPTIONIST ; 4C + + toggle_consts_for POWER_PLANT + const TOGGLE_VOLTORB_1 ; 4D X + const TOGGLE_VOLTORB_2 ; 4E X + const TOGGLE_VOLTORB_3 ; 4F X + const TOGGLE_ELECTRODE_1 ; 50 X + const TOGGLE_VOLTORB_4 ; 51 X + const TOGGLE_VOLTORB_5 ; 52 X + const TOGGLE_ELECTRODE_2 ; 53 X + const TOGGLE_VOLTORB_6 ; 54 X + const TOGGLE_ZAPDOS ; 55 X + const TOGGLE_POWER_PLANT_ITEM_1 ; 56 X + const TOGGLE_POWER_PLANT_ITEM_2 ; 57 X + const TOGGLE_POWER_PLANT_ITEM_3 ; 58 X + const TOGGLE_POWER_PLANT_ITEM_4 ; 59 X + const TOGGLE_POWER_PLANT_ITEM_5 ; 5A X + + toggle_consts_for VICTORY_ROAD_2F + const TOGGLE_MOLTRES ; 5B X + const TOGGLE_VICTORY_ROAD_2F_ITEM_1 ; 5C X + const TOGGLE_VICTORY_ROAD_2F_ITEM_2 ; 5D X + const TOGGLE_VICTORY_ROAD_2F_ITEM_3 ; 5E X + const TOGGLE_VICTORY_ROAD_2F_ITEM_4 ; 5F X + const TOGGLE_VICTORY_ROAD_2F_BOULDER ; 60 + + toggle_consts_for BILLS_HOUSE + const TOGGLE_BILL_POKEMON ; 61 + const TOGGLE_BILL_1 ; 62 + const TOGGLE_BILL_2 ; 63 + + toggle_consts_for VIRIDIAN_FOREST + const TOGGLE_VIRIDIAN_FOREST_ITEM_1 ; 64 X + const TOGGLE_VIRIDIAN_FOREST_ITEM_2 ; 65 X + const TOGGLE_VIRIDIAN_FOREST_ITEM_3 ; 66 X + + toggle_consts_for MT_MOON_1F + const TOGGLE_MT_MOON_1F_ITEM_1 ; 67 X + const TOGGLE_MT_MOON_1F_ITEM_2 ; 68 X + const TOGGLE_MT_MOON_1F_ITEM_3 ; 69 X + const TOGGLE_MT_MOON_1F_ITEM_4 ; 6A X + const TOGGLE_MT_MOON_1F_ITEM_5 ; 6B X + const TOGGLE_MT_MOON_1F_ITEM_6 ; 6C X + + toggle_consts_for MT_MOON_B2F + const TOGGLE_MT_MOON_B2F_JESSIE ; 6D + const TOGGLE_MT_MOON_B2F_JAMES ; 6E + const TOGGLE_MT_MOON_B2F_FOSSIL_1 ; 6F + const TOGGLE_MT_MOON_B2F_FOSSIL_2 ; 70 + const TOGGLE_MT_MOON_B2F_ITEM_1 ; 71 X + const TOGGLE_MT_MOON_B2F_ITEM_2 ; 72 X + + toggle_consts_for SS_ANNE_2F + const TOGGLE_SS_ANNE_2F_RIVAL ; 73 + + toggle_consts_for SS_ANNE_1F_ROOMS + const TOGGLE_SS_ANNE_1F_ROOMS_ITEM ; 74 X + + toggle_consts_for SS_ANNE_2F_ROOMS + const TOGGLE_SS_ANNE_2F_ROOMS_ITEM_1 ; 75 X + const TOGGLE_SS_ANNE_2F_ROOMS_ITEM_2 ; 76 X + + toggle_consts_for SS_ANNE_B1F_ROOMS + const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_1 ; 77 X + const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_2 ; 78 X + const TOGGLE_SS_ANNE_B1F_ROOMS_ITEM_3 ; 79 X + + toggle_consts_for VICTORY_ROAD_3F + const TOGGLE_VICTORY_ROAD_3F_ITEM_1 ; 7A X + const TOGGLE_VICTORY_ROAD_3F_ITEM_2 ; 7B X + const TOGGLE_VICTORY_ROAD_3F_BOULDER ; 7C + + toggle_consts_for ROCKET_HIDEOUT_B1F + const TOGGLE_ROCKET_HIDEOUT_B1F_ITEM_1 ; 7D X + const TOGGLE_ROCKET_HIDEOUT_B1F_ITEM_2 ; 7E X + + toggle_consts_for ROCKET_HIDEOUT_B2F + const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_1 ; 7F X + const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_2 ; 80 X + const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_3 ; 81 X + const TOGGLE_ROCKET_HIDEOUT_B2F_ITEM_4 ; 82 X + + toggle_consts_for ROCKET_HIDEOUT_B3F + const TOGGLE_ROCKET_HIDEOUT_B3F_ITEM_1 ; 83 X + const TOGGLE_ROCKET_HIDEOUT_B3F_ITEM_2 ; 84 X + + toggle_consts_for ROCKET_HIDEOUT_B4F + const TOGGLE_ROCKET_HIDEOUT_B4F_GIOVANNI ; 85 + const TOGGLE_ROCKET_HIDEOUT_B4F_JAMES ; 86 + const TOGGLE_ROCKET_HIDEOUT_B4F_JESSIE ; 87 + const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_1 ; 88 X + const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_2 ; 89 X + const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_3 ; 8A X + const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_4 ; 8B + const TOGGLE_ROCKET_HIDEOUT_B4F_ITEM_5 ; 8C + + toggle_consts_for SILPH_CO_2F + const TOGGLE_SILPH_CO_2F_1 ; 8D XXX never (de)activated? + const TOGGLE_SILPH_CO_2F_2 ; 8E + const TOGGLE_SILPH_CO_2F_3 ; 8F + const TOGGLE_SILPH_CO_2F_4 ; 90 + const TOGGLE_SILPH_CO_2F_5 ; 91 + + toggle_consts_for SILPH_CO_3F + const TOGGLE_SILPH_CO_3F_1 ; 92 + const TOGGLE_SILPH_CO_3F_2 ; 93 + const TOGGLE_SILPH_CO_3F_ITEM ; 94 X + + toggle_consts_for SILPH_CO_4F + const TOGGLE_SILPH_CO_4F_1 ; 95 + const TOGGLE_SILPH_CO_4F_2 ; 96 + const TOGGLE_SILPH_CO_4F_3 ; 97 + const TOGGLE_SILPH_CO_4F_ITEM_1 ; 98 X + const TOGGLE_SILPH_CO_4F_ITEM_2 ; 99 X + const TOGGLE_SILPH_CO_4F_ITEM_3 ; 9A X + + toggle_consts_for SILPH_CO_5F + const TOGGLE_SILPH_CO_5F_1 ; 9B + const TOGGLE_SILPH_CO_5F_2 ; 9C + const TOGGLE_SILPH_CO_5F_3 ; 9D + const TOGGLE_SILPH_CO_5F_4 ; 9E + const TOGGLE_SILPH_CO_5F_ITEM_1 ; 9F X + const TOGGLE_SILPH_CO_5F_ITEM_2 ; A0 X + const TOGGLE_SILPH_CO_5F_ITEM_3 ; A1 X + + toggle_consts_for SILPH_CO_6F + const TOGGLE_SILPH_CO_6F_1 ; A2 + const TOGGLE_SILPH_CO_6F_2 ; A3 + const TOGGLE_SILPH_CO_6F_3 ; A4 + const TOGGLE_SILPH_CO_6F_ITEM_1 ; A5 X + const TOGGLE_SILPH_CO_6F_ITEM_2 ; A6 X + + toggle_consts_for SILPH_CO_7F + const TOGGLE_SILPH_CO_7F_1 ; A7 + const TOGGLE_SILPH_CO_7F_2 ; A8 + const TOGGLE_SILPH_CO_7F_3 ; A9 + const TOGGLE_SILPH_CO_7F_4 ; AA + const TOGGLE_SILPH_CO_7F_RIVAL ; AB + const TOGGLE_SILPH_CO_7F_ITEM_1 ; AC X + const TOGGLE_SILPH_CO_7F_ITEM_2 ; AD X + const TOGGLE_SILPH_CO_7F_8 ; AE XXX sprite doesn't exist + + toggle_consts_for SILPH_CO_8F + const TOGGLE_SILPH_CO_8F_1 ; AF + const TOGGLE_SILPH_CO_8F_2 ; B0 + const TOGGLE_SILPH_CO_8F_3 ; B1 + + toggle_consts_for SILPH_CO_9F + const TOGGLE_SILPH_CO_9F_1 ; B2 + const TOGGLE_SILPH_CO_9F_2 ; B3 + const TOGGLE_SILPH_CO_9F_3 ; B4 + + toggle_consts_for SILPH_CO_10F + const TOGGLE_SILPH_CO_10F_1 ; B5 + const TOGGLE_SILPH_CO_10F_2 ; B6 + const TOGGLE_SILPH_CO_10F_3 ; B7 XXX never (de)activated? + const TOGGLE_SILPH_CO_10F_ITEM_1 ; B8 X + const TOGGLE_SILPH_CO_10F_ITEM_2 ; B9 X + const TOGGLE_SILPH_CO_10F_ITEM_3 ; BA X + + toggle_consts_for SILPH_CO_11F + const TOGGLE_SILPH_CO_11F_1 ; BB + const TOGGLE_SILPH_CO_11F_JAMES ; BC + const TOGGLE_SILPH_CO_11F_2 ; BD + const TOGGLE_SILPH_CO_11F_JESSIE ; BE + + toggle_consts_for UNUSED_MAP_F4 + const TOGGLE_UNUSED_MAP_F4_1 ; BF XXX sprite doesn't exist + + toggle_consts_for POKEMON_MANSION_2F + const TOGGLE_POKEMON_MANSION_2F_ITEM ; C0 X + + toggle_consts_for POKEMON_MANSION_3F + const TOGGLE_POKEMON_MANSION_3F_ITEM_1 ; C1 X + const TOGGLE_POKEMON_MANSION_3F_ITEM_2 ; C2 X + + toggle_consts_for POKEMON_MANSION_B1F + const TOGGLE_POKEMON_MANSION_B1F_ITEM_1 ; C3 X + const TOGGLE_POKEMON_MANSION_B1F_ITEM_2 ; C4 X + const TOGGLE_POKEMON_MANSION_B1F_ITEM_3 ; C5 X + const TOGGLE_POKEMON_MANSION_B1F_ITEM_4 ; C6 X + const TOGGLE_POKEMON_MANSION_B1F_ITEM_5 ; C7 X + + toggle_consts_for SAFARI_ZONE_EAST + const TOGGLE_SAFARI_ZONE_EAST_ITEM_1 ; C8 X + const TOGGLE_SAFARI_ZONE_EAST_ITEM_2 ; C9 X + const TOGGLE_SAFARI_ZONE_EAST_ITEM_3 ; CA X + const TOGGLE_SAFARI_ZONE_EAST_ITEM_4 ; CB X + + toggle_consts_for SAFARI_ZONE_NORTH + const TOGGLE_SAFARI_ZONE_NORTH_ITEM_1 ; CC X + const TOGGLE_SAFARI_ZONE_NORTH_ITEM_2 ; CD X + + toggle_consts_for SAFARI_ZONE_WEST + const TOGGLE_SAFARI_ZONE_WEST_ITEM_1 ; CE X + const TOGGLE_SAFARI_ZONE_WEST_ITEM_2 ; CF X + const TOGGLE_SAFARI_ZONE_WEST_ITEM_3 ; D0 X + const TOGGLE_SAFARI_ZONE_WEST_ITEM_4 ; D1 X + + toggle_consts_for SAFARI_ZONE_CENTER + const TOGGLE_SAFARI_ZONE_CENTER_ITEM ; D2 X + + toggle_consts_for CERULEAN_CAVE_2F + const TOGGLE_CERULEAN_CAVE_2F_ITEM_1 ; D3 X + const TOGGLE_CERULEAN_CAVE_2F_ITEM_2 ; D4 X + const TOGGLE_CERULEAN_CAVE_2F_ITEM_3 ; D5 X + const TOGGLE_CERULEAN_CAVE_2F_ITEM_4 ; D6 X + + toggle_consts_for CERULEAN_CAVE_B1F + const TOGGLE_MEWTWO ; D7 X + const TOGGLE_CERULEAN_CAVE_B1F_ITEM_1 ; D8 X + const TOGGLE_CERULEAN_CAVE_B1F_ITEM_2 ; D9 X + const TOGGLE_CERULEAN_CAVE_B1F_ITEM_3 ; DA X + const TOGGLE_CERULEAN_CAVE_B1F_ITEM_4 ; DB X + + toggle_consts_for VICTORY_ROAD_1F + const TOGGLE_VICTORY_ROAD_1F_ITEM_1 ; DC X + const TOGGLE_VICTORY_ROAD_1F_ITEM_2 ; DD X + + toggle_consts_for CHAMPIONS_ROOM + const TOGGLE_CHAMPIONS_ROOM_OAK ; DE + + toggle_consts_for SEAFOAM_ISLANDS_1F + const TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_1 ; DF + const TOGGLE_SEAFOAM_ISLANDS_1F_BOULDER_2 ; E0 + + toggle_consts_for SEAFOAM_ISLANDS_B1F + const TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_1 ; E1 + const TOGGLE_SEAFOAM_ISLANDS_B1F_BOULDER_2 ; E2 + + toggle_consts_for SEAFOAM_ISLANDS_B2F + const TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_1 ; E3 + const TOGGLE_SEAFOAM_ISLANDS_B2F_BOULDER_2 ; E4 + + toggle_consts_for SEAFOAM_ISLANDS_B3F + const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_1 ; E5 + const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_2 ; E6 + const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_3 ; E7 + const TOGGLE_SEAFOAM_ISLANDS_B3F_BOULDER_4 ; E8 + + toggle_consts_for SEAFOAM_ISLANDS_B4F + const TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_1 ; E9 + const TOGGLE_SEAFOAM_ISLANDS_B4F_BOULDER_2 ; EA + const TOGGLE_ARTICUNO ; EB X + + const TOGGLE_DAISY_SITTING_COPY ; EC + const TOGGLE_DAISY_WALKING_COPY ; ED + const TOGGLE_TOWN_MAP_COPY ; EE + +DEF NUM_TOGGLEABLE_OBJECTS EQU const_value |
