diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/map_constants.h | 1098 | ||||
-rw-r--r-- | include/menu.h | 2 | ||||
-rw-r--r-- | include/opponent_constants.h | 702 | ||||
-rw-r--r-- | include/sprite.h | 17 | ||||
-rw-r--r-- | include/starter_choose.h | 4 |
5 files changed, 1811 insertions, 12 deletions
diff --git a/include/map_constants.h b/include/map_constants.h new file mode 100644 index 000000000..f525f43a3 --- /dev/null +++ b/include/map_constants.h @@ -0,0 +1,1098 @@ +#ifndef GUARD_MAP_CONSTANTS_H +#define GUARD_MAP_CONSTANTS_H + +//-------------------------------------------------- +// Map Group 0 +//-------------------------------------------------- + +enum +{ + MAP_ID_PETALBURG_CITY, + MAP_ID_SLATEPORT_CITY, + MAP_ID_MAUVILLE_CITY, + MAP_ID_RUSTBORO_CITY, + MAP_ID_FORTREE_CITY, + MAP_ID_LILYCOVE_CITY, + MAP_ID_MOSSDEEP_CITY, + MAP_ID_SOOTOPOLIS_CITY, + MAP_ID_EVER_GRANDE_CITY, + MAP_ID_LITTLEROOT_TOWN, + MAP_ID_OLDALE_TOWN, + MAP_ID_DEWFORD_TOWN, + MAP_ID_LAVARIDGE_TOWN, + MAP_ID_FALLARBOR_TOWN, + MAP_ID_VERDANTURF_TOWN, + MAP_ID_PACIFIDLOG_TOWN, + MAP_ID_ROUTE101, + MAP_ID_ROUTE102, + MAP_ID_ROUTE103, + MAP_ID_ROUTE104, + MAP_ID_ROUTE105, + MAP_ID_ROUTE106, + MAP_ID_ROUTE107, + MAP_ID_ROUTE108, + MAP_ID_ROUTE109, + MAP_ID_ROUTE110, + MAP_ID_ROUTE111, + MAP_ID_ROUTE112, + MAP_ID_ROUTE113, + MAP_ID_ROUTE114, + MAP_ID_ROUTE115, + MAP_ID_ROUTE116, + MAP_ID_ROUTE117, + MAP_ID_ROUTE118, + MAP_ID_ROUTE119, + MAP_ID_ROUTE120, + MAP_ID_ROUTE121, + MAP_ID_ROUTE122, + MAP_ID_ROUTE123, + MAP_ID_ROUTE124, + MAP_ID_ROUTE125, + MAP_ID_ROUTE126, + MAP_ID_ROUTE127, + MAP_ID_ROUTE128, + MAP_ID_ROUTE129, + MAP_ID_ROUTE130, + MAP_ID_ROUTE131, + MAP_ID_ROUTE132, + MAP_ID_ROUTE133, + MAP_ID_ROUTE134, + MAP_ID_UNDERWATER1, + MAP_ID_UNDERWATER2, + MAP_ID_UNDERWATER3, + MAP_ID_UNDERWATER4, +}; + +#define MAP_GROUP_PETALBURG_CITY 0 +#define MAP_GROUP_SLATEPORT_CITY 0 +#define MAP_GROUP_MAUVILLE_CITY 0 +#define MAP_GROUP_RUSTBORO_CITY 0 +#define MAP_GROUP_FORTREE_CITY 0 +#define MAP_GROUP_LILYCOVE_CITY 0 +#define MAP_GROUP_MOSSDEEP_CITY 0 +#define MAP_GROUP_SOOTOPOLIS_CITY 0 +#define MAP_GROUP_EVER_GRANDE_CITY 0 +#define MAP_GROUP_LITTLEROOT_TOWN 0 +#define MAP_GROUP_OLDALE_TOWN 0 +#define MAP_GROUP_DEWFORD_TOWN 0 +#define MAP_GROUP_LAVARIDGE_TOWN 0 +#define MAP_GROUP_FALLARBOR_TOWN 0 +#define MAP_GROUP_VERDANTURF_TOWN 0 +#define MAP_GROUP_PACIFIDLOG_TOWN 0 +#define MAP_GROUP_ROUTE101 0 +#define MAP_GROUP_ROUTE102 0 +#define MAP_GROUP_ROUTE103 0 +#define MAP_GROUP_ROUTE104 0 +#define MAP_GROUP_ROUTE105 0 +#define MAP_GROUP_ROUTE106 0 +#define MAP_GROUP_ROUTE107 0 +#define MAP_GROUP_ROUTE108 0 +#define MAP_GROUP_ROUTE109 0 +#define MAP_GROUP_ROUTE110 0 +#define MAP_GROUP_ROUTE111 0 +#define MAP_GROUP_ROUTE112 0 +#define MAP_GROUP_ROUTE113 0 +#define MAP_GROUP_ROUTE114 0 +#define MAP_GROUP_ROUTE115 0 +#define MAP_GROUP_ROUTE116 0 +#define MAP_GROUP_ROUTE117 0 +#define MAP_GROUP_ROUTE118 0 +#define MAP_GROUP_ROUTE119 0 +#define MAP_GROUP_ROUTE120 0 +#define MAP_GROUP_ROUTE121 0 +#define MAP_GROUP_ROUTE122 0 +#define MAP_GROUP_ROUTE123 0 +#define MAP_GROUP_ROUTE124 0 +#define MAP_GROUP_ROUTE125 0 +#define MAP_GROUP_ROUTE126 0 +#define MAP_GROUP_ROUTE127 0 +#define MAP_GROUP_ROUTE128 0 +#define MAP_GROUP_ROUTE129 0 +#define MAP_GROUP_ROUTE130 0 +#define MAP_GROUP_ROUTE131 0 +#define MAP_GROUP_ROUTE132 0 +#define MAP_GROUP_ROUTE133 0 +#define MAP_GROUP_ROUTE134 0 +#define MAP_GROUP_UNDERWATER1 0 +#define MAP_GROUP_UNDERWATER2 0 +#define MAP_GROUP_UNDERWATER3 0 +#define MAP_GROUP_UNDERWATER4 0 + +//-------------------------------------------------- +// Map Group 1 +//-------------------------------------------------- + +enum +{ + MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F, + MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F, + MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_1F, + MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_2F, + MAP_ID_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, +}; + +#define MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F 1 +#define MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 1 +#define MAP_GROUP_LITTLEROOT_TOWN_MAYS_HOUSE_1F 1 +#define MAP_GROUP_LITTLEROOT_TOWN_MAYS_HOUSE_2F 1 +#define MAP_GROUP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB 1 + +//-------------------------------------------------- +// Map Group 2 +//-------------------------------------------------- + +enum +{ + MAP_ID_OLDALE_TOWN_HOUSE1, + MAP_ID_OLDALE_TOWN_HOUSE2, + MAP_ID_OLDALE_TOWN_POKEMON_CENTER_1F, + MAP_ID_OLDALE_TOWN_POKEMON_CENTER_2F, + MAP_ID_OLDALE_TOWN_MART, +}; + +#define MAP_GROUP_OLDALE_TOWN_HOUSE1 2 +#define MAP_GROUP_OLDALE_TOWN_HOUSE2 2 +#define MAP_GROUP_OLDALE_TOWN_POKEMON_CENTER_1F 2 +#define MAP_GROUP_OLDALE_TOWN_POKEMON_CENTER_2F 2 +#define MAP_GROUP_OLDALE_TOWN_MART 2 + +//-------------------------------------------------- +// Map Group 3 +//-------------------------------------------------- + +enum +{ + MAP_ID_DEWFORD_TOWN_HOUSE1, + MAP_ID_DEWFORD_TOWN_POKEMON_CENTER_1F, + MAP_ID_DEWFORD_TOWN_POKEMON_CENTER_2F, + MAP_ID_DEWFORD_TOWN_GYM, + MAP_ID_DEWFORD_TOWN_HALL, + MAP_ID_DEWFORD_TOWN_HOUSE2, +}; + +#define MAP_GROUP_DEWFORD_TOWN_HOUSE1 3 +#define MAP_GROUP_DEWFORD_TOWN_POKEMON_CENTER_1F 3 +#define MAP_GROUP_DEWFORD_TOWN_POKEMON_CENTER_2F 3 +#define MAP_GROUP_DEWFORD_TOWN_GYM 3 +#define MAP_GROUP_DEWFORD_TOWN_HALL 3 +#define MAP_GROUP_DEWFORD_TOWN_HOUSE2 3 + +//-------------------------------------------------- +// Map Group 4 +//-------------------------------------------------- + +enum +{ + MAP_ID_LAVARIDGE_TOWN_HERB_SHOP, + MAP_ID_LAVARIDGE_TOWN_GYM_1F, + MAP_ID_LAVARIDGE_TOWN_GYM_B1F, + MAP_ID_LAVARIDGE_TOWN_HOUSE, + MAP_ID_LAVARIDGE_TOWN_MART, + MAP_ID_LAVARIDGE_TOWN_POKEMON_CENTER_1F, + MAP_ID_LAVARIDGE_TOWN_POKEMON_CENTER_2F, +}; + +#define MAP_GROUP_LAVARIDGE_TOWN_HERB_SHOP 4 +#define MAP_GROUP_LAVARIDGE_TOWN_GYM_1F 4 +#define MAP_GROUP_LAVARIDGE_TOWN_GYM_B1F 4 +#define MAP_GROUP_LAVARIDGE_TOWN_HOUSE 4 +#define MAP_GROUP_LAVARIDGE_TOWN_MART 4 +#define MAP_GROUP_LAVARIDGE_TOWN_POKEMON_CENTER_1F 4 +#define MAP_GROUP_LAVARIDGE_TOWN_POKEMON_CENTER_2F 4 + +//-------------------------------------------------- +// Map Group 5 +//-------------------------------------------------- + +enum +{ + MAP_ID_FALLARBOR_TOWN_MART, + MAP_ID_FALLARBOR_TOWN_CONTEST_LOBBY, + MAP_ID_FALLARBOR_TOWN_CONTEST_HALL, + MAP_ID_FALLARBOR_TOWN_POKEMON_CENTER_1F, + MAP_ID_FALLARBOR_TOWN_POKEMON_CENTER_2F, + MAP_ID_FALLARBOR_TOWN_HOUSE1, + MAP_ID_FALLARBOR_TOWN_HOUSE2, +}; + +#define MAP_GROUP_FALLARBOR_TOWN_MART 5 +#define MAP_GROUP_FALLARBOR_TOWN_CONTEST_LOBBY 5 +#define MAP_GROUP_FALLARBOR_TOWN_CONTEST_HALL 5 +#define MAP_GROUP_FALLARBOR_TOWN_POKEMON_CENTER_1F 5 +#define MAP_GROUP_FALLARBOR_TOWN_POKEMON_CENTER_2F 5 +#define MAP_GROUP_FALLARBOR_TOWN_HOUSE1 5 +#define MAP_GROUP_FALLARBOR_TOWN_HOUSE2 5 + +//-------------------------------------------------- +// Map Group 6 +//-------------------------------------------------- + +enum +{ + MAP_ID_VERDANTURF_TOWN_CONTEST_LOBBY, + MAP_ID_VERDANTURF_TOWN_CONTEST_HALL, + MAP_ID_VERDANTURF_TOWN_MART, + MAP_ID_VERDANTURF_TOWN_POKEMON_CENTER_1F, + MAP_ID_VERDANTURF_TOWN_POKEMON_CENTER_2F, + MAP_ID_VERDANTURF_TOWN_WANDAS_HOUSE, + MAP_ID_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE, + MAP_ID_VERDANTURF_TOWN_HOUSE, +}; + +#define MAP_GROUP_VERDANTURF_TOWN_CONTEST_LOBBY 6 +#define MAP_GROUP_VERDANTURF_TOWN_CONTEST_HALL 6 +#define MAP_GROUP_VERDANTURF_TOWN_MART 6 +#define MAP_GROUP_VERDANTURF_TOWN_POKEMON_CENTER_1F 6 +#define MAP_GROUP_VERDANTURF_TOWN_POKEMON_CENTER_2F 6 +#define MAP_GROUP_VERDANTURF_TOWN_WANDAS_HOUSE 6 +#define MAP_GROUP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE 6 +#define MAP_GROUP_VERDANTURF_TOWN_HOUSE 6 + +//-------------------------------------------------- +// Map Group 7 +//-------------------------------------------------- + +enum +{ + MAP_ID_PACIFIDLOG_TOWN_POKEMON_CENTER_1F, + MAP_ID_PACIFIDLOG_TOWN_POKEMON_CENTER_2F, + MAP_ID_PACIFIDLOG_TOWN_HOUSE1, + MAP_ID_PACIFIDLOG_TOWN_HOUSE2, + MAP_ID_PACIFIDLOG_TOWN_HOUSE3, + MAP_ID_PACIFIDLOG_TOWN_HOUSE4, + MAP_ID_PACIFIDLOG_TOWN_HOUSE5, +}; + +#define MAP_GROUP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE1 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE2 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE3 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE4 7 +#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE5 7 + +//-------------------------------------------------- +// Map Group 8 +//-------------------------------------------------- + +enum +{ + MAP_ID_PETALBURG_CITY_WALLYS_HOUSE, + MAP_ID_PETALBURG_CITY_GYM, + MAP_ID_PETALBURG_CITY_HOUSE1, + MAP_ID_PETALBURG_CITY_HOUSE2, + MAP_ID_PETALBURG_CITY_POKEMON_CENTER_1F, + MAP_ID_PETALBURG_CITY_POKEMON_CENTER_2F, + MAP_ID_PETALBURG_CITY_MART, +}; + +#define MAP_GROUP_PETALBURG_CITY_WALLYS_HOUSE 8 +#define MAP_GROUP_PETALBURG_CITY_GYM 8 +#define MAP_GROUP_PETALBURG_CITY_HOUSE1 8 +#define MAP_GROUP_PETALBURG_CITY_HOUSE2 8 +#define MAP_GROUP_PETALBURG_CITY_POKEMON_CENTER_1F 8 +#define MAP_GROUP_PETALBURG_CITY_POKEMON_CENTER_2F 8 +#define MAP_GROUP_PETALBURG_CITY_MART 8 + +//-------------------------------------------------- +// Map Group 9 +//-------------------------------------------------- + +enum +{ + MAP_ID_SLATEPORT_CITY_STERNS_SHIPYARD_1F, + MAP_ID_SLATEPORT_CITY_STERNS_SHIPYARD_2F, + MAP_ID_SLATEPORT_CITY_CONTEST_LOBBY, + MAP_ID_SLATEPORT_CITY_CONTEST_HALL, + MAP_ID_SLATEPORT_CITY_HOUSE1, + MAP_ID_SLATEPORT_CITY_POKEMON_FAN_CLUB, + MAP_ID_SLATEPORT_CITY_OCEANIC_MUSEUM_1F, + MAP_ID_SLATEPORT_CITY_OCEANIC_MUSEUM_2F, + MAP_ID_SLATEPORT_CITY_HARBOR, + MAP_ID_SLATEPORT_CITY_HOUSE2, + MAP_ID_SLATEPORT_CITY_POKEMON_CENTER_1F, + MAP_ID_SLATEPORT_CITY_POKEMON_CENTER_2F, + MAP_ID_SLATEPORT_CITY_MART, +}; + +#define MAP_GROUP_SLATEPORT_CITY_STERNS_SHIPYARD_1F 9 +#define MAP_GROUP_SLATEPORT_CITY_STERNS_SHIPYARD_2F 9 +#define MAP_GROUP_SLATEPORT_CITY_CONTEST_LOBBY 9 +#define MAP_GROUP_SLATEPORT_CITY_CONTEST_HALL 9 +#define MAP_GROUP_SLATEPORT_CITY_HOUSE1 9 +#define MAP_GROUP_SLATEPORT_CITY_POKEMON_FAN_CLUB 9 +#define MAP_GROUP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F 9 +#define MAP_GROUP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F 9 +#define MAP_GROUP_SLATEPORT_CITY_HARBOR 9 +#define MAP_GROUP_SLATEPORT_CITY_HOUSE2 9 +#define MAP_GROUP_SLATEPORT_CITY_POKEMON_CENTER_1F 9 +#define MAP_GROUP_SLATEPORT_CITY_POKEMON_CENTER_2F 9 +#define MAP_GROUP_SLATEPORT_CITY_MART 9 + +//-------------------------------------------------- +// Map Group 10 +//-------------------------------------------------- + +enum +{ + MAP_ID_MAUVILLE_CITY_GYM, + MAP_ID_MAUVILLE_CITY_BIKE_SHOP, + MAP_ID_MAUVILLE_CITY_HOUSE1, + MAP_ID_MAUVILLE_CITY_GAME_CORNER, + MAP_ID_MAUVILLE_CITY_HOUSE2, + MAP_ID_MAUVILLE_CITY_POKEMON_CENTER_1F, + MAP_ID_MAUVILLE_CITY_POKEMON_CENTER_2F, + MAP_ID_MAUVILLE_CITY_MART, +}; + +#define MAP_GROUP_MAUVILLE_CITY_GYM 10 +#define MAP_GROUP_MAUVILLE_CITY_BIKE_SHOP 10 +#define MAP_GROUP_MAUVILLE_CITY_HOUSE1 10 +#define MAP_GROUP_MAUVILLE_CITY_GAME_CORNER 10 +#define MAP_GROUP_MAUVILLE_CITY_HOUSE2 10 +#define MAP_GROUP_MAUVILLE_CITY_POKEMON_CENTER_1F 10 +#define MAP_GROUP_MAUVILLE_CITY_POKEMON_CENTER_2F 10 +#define MAP_GROUP_MAUVILLE_CITY_MART 10 + +//-------------------------------------------------- +// Map Group 11 +//-------------------------------------------------- + +enum +{ + MAP_ID_RUSTBORO_CITY_DEVON_CORP_1F, + MAP_ID_RUSTBORO_CITY_DEVON_CORP_2F, + MAP_ID_RUSTBORO_CITY_DEVON_CORP_3F, + MAP_ID_RUSTBORO_CITY_GYM, + MAP_ID_RUSTBORO_CITY_POKEMON_SCHOOL, + MAP_ID_RUSTBORO_CITY_POKEMON_CENTER_1F, + MAP_ID_RUSTBORO_CITY_POKEMON_CENTER_2F, + MAP_ID_RUSTBORO_CITY_MART, + MAP_ID_RUSTBORO_CITY_FLAT1_1F, + MAP_ID_RUSTBORO_CITY_FLAT1_2F, + MAP_ID_RUSTBORO_CITY_HOUSE1, + MAP_ID_RUSTBORO_CITY_CUTTERS_HOUSE, + MAP_ID_RUSTBORO_CITY_HOUSE2, + MAP_ID_RUSTBORO_CITY_FLAT2_1F, + MAP_ID_RUSTBORO_CITY_FLAT2_2F, + MAP_ID_RUSTBORO_CITY_FLAT2_3F, + MAP_ID_RUSTBORO_CITY_HOUSE3, +}; + +#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_1F 11 +#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_2F 11 +#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_3F 11 +#define MAP_GROUP_RUSTBORO_CITY_GYM 11 +#define MAP_GROUP_RUSTBORO_CITY_POKEMON_SCHOOL 11 +#define MAP_GROUP_RUSTBORO_CITY_POKEMON_CENTER_1F 11 +#define MAP_GROUP_RUSTBORO_CITY_POKEMON_CENTER_2F 11 +#define MAP_GROUP_RUSTBORO_CITY_MART 11 +#define MAP_GROUP_RUSTBORO_CITY_FLAT1_1F 11 +#define MAP_GROUP_RUSTBORO_CITY_FLAT1_2F 11 +#define MAP_GROUP_RUSTBORO_CITY_HOUSE1 11 +#define MAP_GROUP_RUSTBORO_CITY_CUTTERS_HOUSE 11 +#define MAP_GROUP_RUSTBORO_CITY_HOUSE2 11 +#define MAP_GROUP_RUSTBORO_CITY_FLAT2_1F 11 +#define MAP_GROUP_RUSTBORO_CITY_FLAT2_2F 11 +#define MAP_GROUP_RUSTBORO_CITY_FLAT2_3F 11 +#define MAP_GROUP_RUSTBORO_CITY_HOUSE3 11 + +//-------------------------------------------------- +// Map Group 12 +//-------------------------------------------------- + +enum +{ + MAP_ID_FORTREE_CITY_HOUSE1, + MAP_ID_FORTREE_CITY_GYM, + MAP_ID_FORTREE_CITY_POKEMON_CENTER_1F, + MAP_ID_FORTREE_CITY_POKEMON_CENTER_2F, + MAP_ID_FORTREE_CITY_MART, + MAP_ID_FORTREE_CITY_HOUSE2, + MAP_ID_FORTREE_CITY_HOUSE3, + MAP_ID_FORTREE_CITY_HOUSE4, + MAP_ID_FORTREE_CITY_HOUSE5, + MAP_ID_FORTREE_CITY_DECORATION_SHOP, +}; + +#define MAP_GROUP_FORTREE_CITY_HOUSE1 12 +#define MAP_GROUP_FORTREE_CITY_GYM 12 +#define MAP_GROUP_FORTREE_CITY_POKEMON_CENTER_1F 12 +#define MAP_GROUP_FORTREE_CITY_POKEMON_CENTER_2F 12 +#define MAP_GROUP_FORTREE_CITY_MART 12 +#define MAP_GROUP_FORTREE_CITY_HOUSE2 12 +#define MAP_GROUP_FORTREE_CITY_HOUSE3 12 +#define MAP_GROUP_FORTREE_CITY_HOUSE4 12 +#define MAP_GROUP_FORTREE_CITY_HOUSE5 12 +#define MAP_GROUP_FORTREE_CITY_DECORATION_SHOP 12 + +//-------------------------------------------------- +// Map Group 13 +//-------------------------------------------------- + +enum +{ + MAP_ID_LILYCOVE_CITY_COVE_LILY_MOTEL_1F, + MAP_ID_LILYCOVE_CITY_COVE_LILY_MOTEL_2F, + MAP_ID_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F, + MAP_ID_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, + MAP_ID_LILYCOVE_CITY_CONTEST_LOBBY, + MAP_ID_LILYCOVE_CITY_CONTEST_HALL, + MAP_ID_LILYCOVE_CITY_POKEMON_CENTER_1F, + MAP_ID_LILYCOVE_CITY_POKEMON_CENTER_2F, + MAP_ID_LILYCOVE_CITY_UNUSED_MART, + MAP_ID_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB, + MAP_ID_LILYCOVE_CITY_HARBOR, + MAP_ID_LILYCOVE_CITY_EMPTY_MAP, + MAP_ID_LILYCOVE_CITY_MOVE_DELETERS_HOUSE, + MAP_ID_LILYCOVE_CITY_HOUSE1, + MAP_ID_LILYCOVE_CITY_HOUSE2, + MAP_ID_LILYCOVE_CITY_HOUSE3, + MAP_ID_LILYCOVE_CITY_HOUSE4, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_1F, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_2F, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_3F, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_4F, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_5F, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP, + MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR, +}; + +#define MAP_GROUP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F 13 +#define MAP_GROUP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F 13 +#define MAP_GROUP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F 13 +#define MAP_GROUP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F 13 +#define MAP_GROUP_LILYCOVE_CITY_CONTEST_LOBBY 13 +#define MAP_GROUP_LILYCOVE_CITY_CONTEST_HALL 13 +#define MAP_GROUP_LILYCOVE_CITY_POKEMON_CENTER_1F 13 +#define MAP_GROUP_LILYCOVE_CITY_POKEMON_CENTER_2F 13 +#define MAP_GROUP_LILYCOVE_CITY_UNUSED_MART 13 +#define MAP_GROUP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB 13 +#define MAP_GROUP_LILYCOVE_CITY_HARBOR 13 +#define MAP_GROUP_LILYCOVE_CITY_EMPTY_MAP 13 +#define MAP_GROUP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE 13 +#define MAP_GROUP_LILYCOVE_CITY_HOUSE1 13 +#define MAP_GROUP_LILYCOVE_CITY_HOUSE2 13 +#define MAP_GROUP_LILYCOVE_CITY_HOUSE3 13 +#define MAP_GROUP_LILYCOVE_CITY_HOUSE4 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_1F 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_2F 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_3F 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_4F 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_5F 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP 13 +#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR 13 + +//-------------------------------------------------- +// Map Group 14 +//-------------------------------------------------- + +enum +{ + MAP_ID_MOSSDEEP_CITY_GYM, + MAP_ID_MOSSDEEP_CITY_HOUSE1, + MAP_ID_MOSSDEEP_CITY_HOUSE2, + MAP_ID_MOSSDEEP_CITY_POKEMON_CENTER_1F, + MAP_ID_MOSSDEEP_CITY_POKEMON_CENTER_2F, + MAP_ID_MOSSDEEP_CITY_MART, + MAP_ID_MOSSDEEP_CITY_HOUSE3, + MAP_ID_MOSSDEEP_CITY_STEVENS_HOUSE, + MAP_ID_MOSSDEEP_CITY_HOUSE4, + MAP_ID_MOSSDEEP_CITY_SPACE_CENTER_1F, + MAP_ID_MOSSDEEP_CITY_SPACE_CENTER_2F, + MAP_ID_MOSSDEEP_CITY_GAME_CORNER_1F, + MAP_ID_MOSSDEEP_CITY_GAME_CORNER_B1F, +}; + +#define MAP_GROUP_MOSSDEEP_CITY_GYM 14 +#define MAP_GROUP_MOSSDEEP_CITY_HOUSE1 14 +#define MAP_GROUP_MOSSDEEP_CITY_HOUSE2 14 +#define MAP_GROUP_MOSSDEEP_CITY_POKEMON_CENTER_1F 14 +#define MAP_GROUP_MOSSDEEP_CITY_POKEMON_CENTER_2F 14 +#define MAP_GROUP_MOSSDEEP_CITY_MART 14 +#define MAP_GROUP_MOSSDEEP_CITY_HOUSE3 14 +#define MAP_GROUP_MOSSDEEP_CITY_STEVENS_HOUSE 14 +#define MAP_GROUP_MOSSDEEP_CITY_HOUSE4 14 +#define MAP_GROUP_MOSSDEEP_CITY_SPACE_CENTER_1F 14 +#define MAP_GROUP_MOSSDEEP_CITY_SPACE_CENTER_2F 14 +#define MAP_GROUP_MOSSDEEP_CITY_GAME_CORNER_1F 14 +#define MAP_GROUP_MOSSDEEP_CITY_GAME_CORNER_B1F 14 + +//-------------------------------------------------- +// Map Group 15 +//-------------------------------------------------- + +enum +{ + MAP_ID_SOOTOPOLIS_CITY_GYM_1F, + MAP_ID_SOOTOPOLIS_CITY_GYM_B1F, + MAP_ID_SOOTOPOLIS_CITY_POKEMON_CENTER_1F, + MAP_ID_SOOTOPOLIS_CITY_POKEMON_CENTER_2F, + MAP_ID_SOOTOPOLIS_CITY_MART, + MAP_ID_SOOTOPOLIS_CITY_HOUSE1, + MAP_ID_SOOTOPOLIS_CITY_HOUSE2, + MAP_ID_SOOTOPOLIS_CITY_HOUSE3, + MAP_ID_SOOTOPOLIS_CITY_HOUSE4, + MAP_ID_SOOTOPOLIS_CITY_HOUSE5, + MAP_ID_SOOTOPOLIS_CITY_HOUSE6, + MAP_ID_SOOTOPOLIS_CITY_HOUSE7, + MAP_ID_SOOTOPOLIS_CITY_HOUSE8, +}; + +#define MAP_GROUP_SOOTOPOLIS_CITY_GYM_1F 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_GYM_B1F 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_MART 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE1 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE2 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE3 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE4 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE5 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE6 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE7 15 +#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE8 15 + +//-------------------------------------------------- +// Map Group 16 +//-------------------------------------------------- + +enum +{ + MAP_ID_EVER_GRANDE_CITY_SIDNEYS_ROOM, + MAP_ID_EVER_GRANDE_CITY_PHOEBES_ROOM, + MAP_ID_EVER_GRANDE_CITY_GLACIAS_ROOM, + MAP_ID_EVER_GRANDE_CITY_DRAKES_ROOM, + MAP_ID_EVER_GRANDE_CITY_CHAMPIONS_ROOM, + MAP_ID_EVER_GRANDE_CITY_CORRIDOR1, + MAP_ID_EVER_GRANDE_CITY_CORRIDOR2, + MAP_ID_EVER_GRANDE_CITY_CORRIDOR3, + MAP_ID_EVER_GRANDE_CITY_CORRIDOR4, + MAP_ID_EVER_GRANDE_CITY_CORRIDOR5, + MAP_ID_EVER_GRANDE_CITY_POKEMON_LEAGUE, + MAP_ID_EVER_GRANDE_CITY_HALL_OF_FAME, + MAP_ID_EVER_GRANDE_CITY_POKEMON_CENTER_1F, + MAP_ID_EVER_GRANDE_CITY_POKEMON_CENTER_2F, +}; + +#define MAP_GROUP_EVER_GRANDE_CITY_SIDNEYS_ROOM 16 +#define MAP_GROUP_EVER_GRANDE_CITY_PHOEBES_ROOM 16 +#define MAP_GROUP_EVER_GRANDE_CITY_GLACIAS_ROOM 16 +#define MAP_GROUP_EVER_GRANDE_CITY_DRAKES_ROOM 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CHAMPIONS_ROOM 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR1 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR2 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR3 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR4 16 +#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR5 16 +#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_LEAGUE 16 +#define MAP_GROUP_EVER_GRANDE_CITY_HALL_OF_FAME 16 +#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_CENTER_1F 16 +#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_CENTER_2F 16 + +//-------------------------------------------------- +// Map Group 17 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE104_MR_BRINEYS_HOUSE, + MAP_ID_ROUTE104_PRETTY_PETAL_FLOWER_SHOP, +}; + +#define MAP_GROUP_ROUTE104_MR_BRINEYS_HOUSE 17 +#define MAP_GROUP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP 17 + +//-------------------------------------------------- +// Map Group 18 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE111_WINSTRATE_FAMILYS_HOUSE, + MAP_ID_ROUTE111_OLD_LADYS_REST_STOP, +}; + +#define MAP_GROUP_ROUTE111_WINSTRATE_FAMILYS_HOUSE 18 +#define MAP_GROUP_ROUTE111_OLD_LADYS_REST_STOP 18 + +//-------------------------------------------------- +// Map Group 19 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE112_CABLE_CAR_STATION, + MAP_ID_MT_CHIMNEY_CABLE_CAR_STATION, +}; + +#define MAP_GROUP_ROUTE112_CABLE_CAR_STATION 19 +#define MAP_GROUP_MT_CHIMNEY_CABLE_CAR_STATION 19 + +//-------------------------------------------------- +// Map Group 20 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE114_FOSSIL_MANIACS_HOUSE, + MAP_ID_ROUTE114_FOSSIL_MANIACS_TUNNEL, + MAP_ID_ROUTE114_LANETTES_HOUSE, +}; + +#define MAP_GROUP_ROUTE114_FOSSIL_MANIACS_HOUSE 20 +#define MAP_GROUP_ROUTE114_FOSSIL_MANIACS_TUNNEL 20 +#define MAP_GROUP_ROUTE114_LANETTES_HOUSE 20 + +//-------------------------------------------------- +// Map Group 21 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE116_TUNNELERS_REST_HOUSE, +}; + +#define MAP_GROUP_ROUTE116_TUNNELERS_REST_HOUSE 21 + +//-------------------------------------------------- +// Map Group 22 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE117_POKEMON_DAY_CARE, +}; + +#define MAP_GROUP_ROUTE117_POKEMON_DAY_CARE 22 + +//-------------------------------------------------- +// Map Group 23 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE121_SAFARI_ZONE_ENTRANCE, +}; + +#define MAP_GROUP_ROUTE121_SAFARI_ZONE_ENTRANCE 23 + +//-------------------------------------------------- +// Map Group 24 +//-------------------------------------------------- + +enum +{ + MAP_ID_METEOR_FALLS_1F_1R, + MAP_ID_METEOR_FALLS_1F_2R, + MAP_ID_METEOR_FALLS_B1F_1R, + MAP_ID_METEOR_FALLS_B1F_2R, + MAP_ID_RUSTURF_TUNNEL, + MAP_ID_UNDERWATER_SOOTOPOLIS_CITY, + MAP_ID_DESERT_RUINS, + MAP_ID_GRANITE_CAVE_1F, + MAP_ID_GRANITE_CAVE_B1F, + MAP_ID_GRANITE_CAVE_B2F, + MAP_ID_GRANITE_CAVE_STEVENS_ROOM, + MAP_ID_PETALBURG_WOODS, + MAP_ID_MT_CHIMNEY, + MAP_ID_JAGGED_PASS, + MAP_ID_FIERY_PATH, + MAP_ID_MT_PYRE_1F, + MAP_ID_MT_PYRE_2F, + MAP_ID_MT_PYRE_3F, + MAP_ID_MT_PYRE_4F, + MAP_ID_MT_PYRE_5F, + MAP_ID_MT_PYRE_6F, + MAP_ID_MT_PYRE_EXTERIOR, + MAP_ID_MT_PYRE_SUMMIT, + MAP_ID_AQUA_HIDEOUT_1F, + MAP_ID_AQUA_HIDEOUT_B1F, + MAP_ID_AQUA_HIDEOUT_B2F, + MAP_ID_UNDERWATER_SEAFLOOR_CAVERN, + MAP_ID_SEAFLOOR_CAVERN_ENTRANCE, + MAP_ID_SEAFLOOR_CAVERN_ROOM1, + MAP_ID_SEAFLOOR_CAVERN_ROOM2, + MAP_ID_SEAFLOOR_CAVERN_ROOM3, + MAP_ID_SEAFLOOR_CAVERN_ROOM4, + MAP_ID_SEAFLOOR_CAVERN_ROOM5, + MAP_ID_SEAFLOOR_CAVERN_ROOM6, + MAP_ID_SEAFLOOR_CAVERN_ROOM7, + MAP_ID_SEAFLOOR_CAVERN_ROOM8, + MAP_ID_SEAFLOOR_CAVERN_ROOM9, + MAP_ID_CAVE_OF_ORIGIN_ENTRANCE, + MAP_ID_CAVE_OF_ORIGIN_1F, + MAP_ID_CAVE_OF_ORIGIN_B1F, + MAP_ID_CAVE_OF_ORIGIN_B2F, + MAP_ID_CAVE_OF_ORIGIN_B3F, + MAP_ID_CAVE_OF_ORIGIN_B4F, + MAP_ID_VICTORY_ROAD_1F, + MAP_ID_VICTORY_ROAD_B1F, + MAP_ID_VICTORY_ROAD_B2F, + MAP_ID_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM, + MAP_ID_SHOAL_CAVE_LOW_TIDE_INNER_ROOM, + MAP_ID_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM, + MAP_ID_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM, + MAP_ID_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM, + MAP_ID_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM, + MAP_ID_NEW_MAUVILLE_ENTRANCE, + MAP_ID_NEW_MAUVILLE_INSIDE, + MAP_ID_ABANDONED_SHIP_DECK, + MAP_ID_ABANDONED_SHIP_CORRIDORS_1F, + MAP_ID_ABANDONED_SHIP_ROOMS_1F, + MAP_ID_ABANDONED_SHIP_CORRIDORS_B1F, + MAP_ID_ABANDONED_SHIP_ROOMS_B1F, + MAP_ID_ABANDONED_SHIP_ROOMS2_B1F, + MAP_ID_ABANDONED_SHIP_UNDERWATER1, + MAP_ID_ABANDONED_SHIP_ROOM_B1F, + MAP_ID_ABANDONED_SHIP_ROOMS2_1F, + MAP_ID_ABANDONED_SHIP_CAPTAINS_OFFICE, + MAP_ID_ABANDONED_SHIP_UNDERWATER2, + MAP_ID_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS, + MAP_ID_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS, + MAP_ID_ISLAND_CAVE, + MAP_ID_ANCIENT_TOMB, + MAP_ID_UNDERWATER_ROUTE134, + MAP_ID_UNDERWATER_SEALED_CHAMBER, + MAP_ID_SEALED_CHAMBER_OUTER_ROOM, + MAP_ID_SEALED_CHAMBER_INNER_ROOM, + MAP_ID_SCORCHED_SLAB, + MAP_ID_MAGMA_HIDEOUT_1F, + MAP_ID_MAGMA_HIDEOUT_B1F, + MAP_ID_MAGMA_HIDEOUT_B2F, + MAP_ID_SKY_PILLAR_ENTRANCE, + MAP_ID_SKY_PILLAR_OUTSIDE, + MAP_ID_SKY_PILLAR_1F, + MAP_ID_SKY_PILLAR_2F, + MAP_ID_SKY_PILLAR_3F, + MAP_ID_SKY_PILLAR_4F, + MAP_ID_SHOAL_CAVE_LOW_TIDE_ICE_ROOM, + MAP_ID_SKY_PILLAR_5F, + MAP_ID_SKY_PILLAR_TOP, +}; + +#define MAP_GROUP_METEOR_FALLS_1F_1R 24 +#define MAP_GROUP_METEOR_FALLS_1F_2R 24 +#define MAP_GROUP_METEOR_FALLS_B1F_1R 24 +#define MAP_GROUP_METEOR_FALLS_B1F_2R 24 +#define MAP_GROUP_RUSTURF_TUNNEL 24 +#define MAP_GROUP_UNDERWATER_SOOTOPOLIS_CITY 24 +#define MAP_GROUP_DESERT_RUINS 24 +#define MAP_GROUP_GRANITE_CAVE_1F 24 +#define MAP_GROUP_GRANITE_CAVE_B1F 24 +#define MAP_GROUP_GRANITE_CAVE_B2F 24 +#define MAP_GROUP_GRANITE_CAVE_STEVENS_ROOM 24 +#define MAP_GROUP_PETALBURG_WOODS 24 +#define MAP_GROUP_MT_CHIMNEY 24 +#define MAP_GROUP_JAGGED_PASS 24 +#define MAP_GROUP_FIERY_PATH 24 +#define MAP_GROUP_MT_PYRE_1F 24 +#define MAP_GROUP_MT_PYRE_2F 24 +#define MAP_GROUP_MT_PYRE_3F 24 +#define MAP_GROUP_MT_PYRE_4F 24 +#define MAP_GROUP_MT_PYRE_5F 24 +#define MAP_GROUP_MT_PYRE_6F 24 +#define MAP_GROUP_MT_PYRE_EXTERIOR 24 +#define MAP_GROUP_MT_PYRE_SUMMIT 24 +#define MAP_GROUP_AQUA_HIDEOUT_1F 24 +#define MAP_GROUP_AQUA_HIDEOUT_B1F 24 +#define MAP_GROUP_AQUA_HIDEOUT_B2F 24 +#define MAP_GROUP_UNDERWATER_SEAFLOOR_CAVERN 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ENTRANCE 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM1 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM2 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM3 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM4 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM5 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM6 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM7 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM8 24 +#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM9 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_ENTRANCE 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_1F 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_B1F 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_B2F 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_B3F 24 +#define MAP_GROUP_CAVE_OF_ORIGIN_B4F 24 +#define MAP_GROUP_VICTORY_ROAD_1F 24 +#define MAP_GROUP_VICTORY_ROAD_B1F 24 +#define MAP_GROUP_VICTORY_ROAD_B2F 24 +#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM 24 +#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM 24 +#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM 24 +#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM 24 +#define MAP_GROUP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM 24 +#define MAP_GROUP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM 24 +#define MAP_GROUP_NEW_MAUVILLE_ENTRANCE 24 +#define MAP_GROUP_NEW_MAUVILLE_INSIDE 24 +#define MAP_GROUP_ABANDONED_SHIP_DECK 24 +#define MAP_GROUP_ABANDONED_SHIP_CORRIDORS_1F 24 +#define MAP_GROUP_ABANDONED_SHIP_ROOMS_1F 24 +#define MAP_GROUP_ABANDONED_SHIP_CORRIDORS_B1F 24 +#define MAP_GROUP_ABANDONED_SHIP_ROOMS_B1F 24 +#define MAP_GROUP_ABANDONED_SHIP_ROOMS2_B1F 24 +#define MAP_GROUP_ABANDONED_SHIP_UNDERWATER1 24 +#define MAP_GROUP_ABANDONED_SHIP_ROOM_B1F 24 +#define MAP_GROUP_ABANDONED_SHIP_ROOMS2_1F 24 +#define MAP_GROUP_ABANDONED_SHIP_CAPTAINS_OFFICE 24 +#define MAP_GROUP_ABANDONED_SHIP_UNDERWATER2 24 +#define MAP_GROUP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS 24 +#define MAP_GROUP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS 24 +#define MAP_GROUP_ISLAND_CAVE 24 +#define MAP_GROUP_ANCIENT_TOMB 24 +#define MAP_GROUP_UNDERWATER_ROUTE134 24 +#define MAP_GROUP_UNDERWATER_SEALED_CHAMBER 24 +#define MAP_GROUP_SEALED_CHAMBER_OUTER_ROOM 24 +#define MAP_GROUP_SEALED_CHAMBER_INNER_ROOM 24 +#define MAP_GROUP_SCORCHED_SLAB 24 +#define MAP_GROUP_MAGMA_HIDEOUT_1F 24 +#define MAP_GROUP_MAGMA_HIDEOUT_B1F 24 +#define MAP_GROUP_MAGMA_HIDEOUT_B2F 24 +#define MAP_GROUP_SKY_PILLAR_ENTRANCE 24 +#define MAP_GROUP_SKY_PILLAR_OUTSIDE 24 +#define MAP_GROUP_SKY_PILLAR_1F 24 +#define MAP_GROUP_SKY_PILLAR_2F 24 +#define MAP_GROUP_SKY_PILLAR_3F 24 +#define MAP_GROUP_SKY_PILLAR_4F 24 +#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM 24 +#define MAP_GROUP_SKY_PILLAR_5F 24 +#define MAP_GROUP_SKY_PILLAR_TOP 24 + +//-------------------------------------------------- +// Map Group 25 +//-------------------------------------------------- + +enum +{ + MAP_ID_SECRET_BASE_RED_CAVE1, + MAP_ID_SECRET_BASE_BROWN_CAVE1, + MAP_ID_SECRET_BASE_BLUE_CAVE1, + MAP_ID_SECRET_BASE_YELLOW_CAVE1, + MAP_ID_SECRET_BASE_TREE1, + MAP_ID_SECRET_BASE_SHRUB1, + MAP_ID_SECRET_BASE_RED_CAVE2, + MAP_ID_SECRET_BASE_BROWN_CAVE2, + MAP_ID_SECRET_BASE_BLUE_CAVE2, + MAP_ID_SECRET_BASE_YELLOW_CAVE2, + MAP_ID_SECRET_BASE_TREE2, + MAP_ID_SECRET_BASE_SHRUB2, + MAP_ID_SECRET_BASE_RED_CAVE3, + MAP_ID_SECRET_BASE_BROWN_CAVE3, + MAP_ID_SECRET_BASE_BLUE_CAVE3, + MAP_ID_SECRET_BASE_YELLOW_CAVE3, + MAP_ID_SECRET_BASE_TREE3, + MAP_ID_SECRET_BASE_SHRUB3, + MAP_ID_SECRET_BASE_RED_CAVE4, + MAP_ID_SECRET_BASE_BROWN_CAVE4, + MAP_ID_SECRET_BASE_BLUE_CAVE4, + MAP_ID_SECRET_BASE_YELLOW_CAVE4, + MAP_ID_SECRET_BASE_TREE4, + MAP_ID_SECRET_BASE_SHRUB4, + MAP_ID_SINGLE_BATTLE_COLOSSEUM, + MAP_ID_TRADE_CENTER, + MAP_ID_RECORD_CORNER, + MAP_ID_DOUBLE_BATTLE_COLOSSEUM, + MAP_ID_LINK_CONTEST_ROOM1, + MAP_ID_UNKNOWN_MAP_25_29, + MAP_ID_UNKNOWN_MAP_25_30, + MAP_ID_UNKNOWN_MAP_25_31, + MAP_ID_UNKNOWN_MAP_25_32, + MAP_ID_UNKNOWN_MAP_25_33, + MAP_ID_UNKNOWN_MAP_25_34, + MAP_ID_LINK_CONTEST_ROOM2, + MAP_ID_LINK_CONTEST_ROOM3, + MAP_ID_LINK_CONTEST_ROOM4, + MAP_ID_LINK_CONTEST_ROOM5, + MAP_ID_LINK_CONTEST_ROOM6, + MAP_ID_INSIDE_OF_TRUCK, + MAP_ID_SS_TIDAL_CORRIDOR, + MAP_ID_SS_TIDAL_LOWER_DECK, + MAP_ID_SS_TIDAL_ROOMS, +}; + +#define MAP_GROUP_SECRET_BASE_RED_CAVE1 25 +#define MAP_GROUP_SECRET_BASE_BROWN_CAVE1 25 +#define MAP_GROUP_SECRET_BASE_BLUE_CAVE1 25 +#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE1 25 +#define MAP_GROUP_SECRET_BASE_TREE1 25 +#define MAP_GROUP_SECRET_BASE_SHRUB1 25 +#define MAP_GROUP_SECRET_BASE_RED_CAVE2 25 +#define MAP_GROUP_SECRET_BASE_BROWN_CAVE2 25 +#define MAP_GROUP_SECRET_BASE_BLUE_CAVE2 25 +#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE2 25 +#define MAP_GROUP_SECRET_BASE_TREE2 25 +#define MAP_GROUP_SECRET_BASE_SHRUB2 25 +#define MAP_GROUP_SECRET_BASE_RED_CAVE3 25 +#define MAP_GROUP_SECRET_BASE_BROWN_CAVE3 25 +#define MAP_GROUP_SECRET_BASE_BLUE_CAVE3 25 +#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE3 25 +#define MAP_GROUP_SECRET_BASE_TREE3 25 +#define MAP_GROUP_SECRET_BASE_SHRUB3 25 +#define MAP_GROUP_SECRET_BASE_RED_CAVE4 25 +#define MAP_GROUP_SECRET_BASE_BROWN_CAVE4 25 +#define MAP_GROUP_SECRET_BASE_BLUE_CAVE4 25 +#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE4 25 +#define MAP_GROUP_SECRET_BASE_TREE4 25 +#define MAP_GROUP_SECRET_BASE_SHRUB4 25 +#define MAP_GROUP_SINGLE_BATTLE_COLOSSEUM 25 +#define MAP_GROUP_TRADE_CENTER 25 +#define MAP_GROUP_RECORD_CORNER 25 +#define MAP_GROUP_DOUBLE_BATTLE_COLOSSEUM 25 +#define MAP_GROUP_LINK_CONTEST_ROOM1 25 +#define MAP_GROUP_UNKNOWN_MAP_25_29 25 +#define MAP_GROUP_UNKNOWN_MAP_25_30 25 +#define MAP_GROUP_UNKNOWN_MAP_25_31 25 +#define MAP_GROUP_UNKNOWN_MAP_25_32 25 +#define MAP_GROUP_UNKNOWN_MAP_25_33 25 +#define MAP_GROUP_UNKNOWN_MAP_25_34 25 +#define MAP_GROUP_LINK_CONTEST_ROOM2 25 +#define MAP_GROUP_LINK_CONTEST_ROOM3 25 +#define MAP_GROUP_LINK_CONTEST_ROOM4 25 +#define MAP_GROUP_LINK_CONTEST_ROOM5 25 +#define MAP_GROUP_LINK_CONTEST_ROOM6 25 +#define MAP_GROUP_INSIDE_OF_TRUCK 25 +#define MAP_GROUP_SS_TIDAL_CORRIDOR 25 +#define MAP_GROUP_SS_TIDAL_LOWER_DECK 25 +#define MAP_GROUP_SS_TIDAL_ROOMS 25 + +//-------------------------------------------------- +// Map Group 26 +//-------------------------------------------------- + +enum +{ + MAP_ID_SAFARI_ZONE_NORTHWEST, + MAP_ID_SAFARI_ZONE_NORTHEAST, + MAP_ID_SAFARI_ZONE_SOUTHWEST, + MAP_ID_SAFARI_ZONE_SOUTHEAST, + MAP_ID_BATTLE_TOWER_OUTSIDE, + MAP_ID_BATTLE_TOWER_LOBBY, + MAP_ID_BATTLE_TOWER_ELEVATOR, + MAP_ID_BATTLE_TOWER_CORRIDOR, + MAP_ID_BATTLE_TOWER_BATTLE_ROOM, + MAP_ID_SOUTHERN_ISLAND_EXTERIOR, + MAP_ID_SOUTHERN_ISLAND_INTERIOR, + MAP_ID_SAFARI_ZONE_REST_HOUSE, +}; + +#define MAP_GROUP_SAFARI_ZONE_NORTHWEST 26 +#define MAP_GROUP_SAFARI_ZONE_NORTHEAST 26 +#define MAP_GROUP_SAFARI_ZONE_SOUTHWEST 26 +#define MAP_GROUP_SAFARI_ZONE_SOUTHEAST 26 +#define MAP_GROUP_BATTLE_TOWER_OUTSIDE 26 +#define MAP_GROUP_BATTLE_TOWER_LOBBY 26 +#define MAP_GROUP_BATTLE_TOWER_ELEVATOR 26 +#define MAP_GROUP_BATTLE_TOWER_CORRIDOR 26 +#define MAP_GROUP_BATTLE_TOWER_BATTLE_ROOM 26 +#define MAP_GROUP_SOUTHERN_ISLAND_EXTERIOR 26 +#define MAP_GROUP_SOUTHERN_ISLAND_INTERIOR 26 +#define MAP_GROUP_SAFARI_ZONE_REST_HOUSE 26 + +//-------------------------------------------------- +// Map Group 27 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE104_PROTOTYPE, + MAP_ID_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP, +}; + +#define MAP_GROUP_ROUTE104_PROTOTYPE 27 +#define MAP_GROUP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP 27 + +//-------------------------------------------------- +// Map Group 28 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE109_SEASHORE_HOUSE, +}; + +#define MAP_GROUP_ROUTE109_SEASHORE_HOUSE 28 + +//-------------------------------------------------- +// Map Group 29 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE110_TRICK_HOUSE_ENTRANCE, + MAP_ID_ROUTE110_TRICK_HOUSE_END, + MAP_ID_ROUTE110_TRICK_HOUSE_CORRIDOR, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE1, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE2, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE3, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE4, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE5, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE6, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE7, + MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE8, + MAP_ID_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE, + MAP_ID_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE, +}; + +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_ENTRANCE 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_END 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_CORRIDOR 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE1 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE2 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE3 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE4 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE5 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE6 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE7 29 +#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE8 29 +#define MAP_GROUP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE 29 +#define MAP_GROUP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE 29 + +//-------------------------------------------------- +// Map Group 30 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE113_GLASS_WORKSHOP, +}; + +#define MAP_GROUP_ROUTE113_GLASS_WORKSHOP 30 + +//-------------------------------------------------- +// Map Group 31 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE123_BERRY_MASTERS_HOUSE, +}; + +#define MAP_GROUP_ROUTE123_BERRY_MASTERS_HOUSE 31 + +//-------------------------------------------------- +// Map Group 32 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE119_WEATHER_INSTITUTE_1F, + MAP_ID_ROUTE119_WEATHER_INSTITUTE_2F, + MAP_ID_ROUTE119_HOUSE, +}; + +#define MAP_GROUP_ROUTE119_WEATHER_INSTITUTE_1F 32 +#define MAP_GROUP_ROUTE119_WEATHER_INSTITUTE_2F 32 +#define MAP_GROUP_ROUTE119_HOUSE 32 + +//-------------------------------------------------- +// Map Group 33 +//-------------------------------------------------- + +enum +{ + MAP_ID_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE, +}; + +#define MAP_GROUP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE 33 + +#endif // GUARD_MAP_CONSTANTS_H diff --git a/include/menu.h b/include/menu.h index 0e4860791..c3dcbc969 100644 --- a/include/menu.h +++ b/include/menu.h @@ -58,7 +58,7 @@ void sub_8072B80(u8 *, u8, u8, u8 *); void sub_8072BD8(u8 *, u8, u8, u16); u8 *sub_8072C14(u8 *, s32, u8, u8); u8 *sub_8072C44(u8 *, s32, u8, u8); -u8 *sub_8072C74(u8 *, u8 *, u8, u8); +u8 *sub_8072C74(u8 *, const u8 *, u8, u8); u8 sub_8072CA4(u8 *s); u8 sub_8072CBC(void); void sub_8072CD4(u8 *, u8 *, u8 *); diff --git a/include/opponent_constants.h b/include/opponent_constants.h new file mode 100644 index 000000000..1829facaa --- /dev/null +++ b/include/opponent_constants.h @@ -0,0 +1,702 @@ +#ifndef GUARD_OPPONENT_CONSTANTS_H +#define GUARD_OPPONENT_CONSTANTS_H + +enum +{ + OPPONENT_NONE, + OPPONENT_ARCHIE_1, + OPPONENT_GRUNT_1, + OPPONENT_GRUNT_2, + OPPONENT_GRUNT_3, + OPPONENT_GRUNT_4, + OPPONENT_GRUNT_5, + OPPONENT_GRUNT_6, + OPPONENT_GRUNT_7, + OPPONENT_GRUNT_8, + OPPONENT_GRUNT_9, + OPPONENT_GRUNT_10, + OPPONENT_GRUNT_11, + OPPONENT_GRUNT_12, + OPPONENT_GRUNT_13, + OPPONENT_GRUNT_14, + OPPONENT_GRUNT_15, + OPPONENT_GRUNT_16, + OPPONENT_GRUNT_17, + OPPONENT_GRUNT_18, + OPPONENT_GRUNT_19, + OPPONENT_GRUNT_20, + OPPONENT_GRUNT_21, + OPPONENT_GRUNT_22, + OPPONENT_GRUNT_23, + OPPONENT_GRUNT_24, + OPPONENT_GRUNT_25, + OPPONENT_GRUNT_26, + OPPONENT_GRUNT_27, + OPPONENT_ANONYMOUS_1, + OPPONENT_MATT_1, + OPPONENT_MATT_2, + OPPONENT_SHELLY_1, + OPPONENT_SHELLY_2, + OPPONENT_ARCHIE_2, + OPPONENT_ARCHIE_3, + OPPONENT_DAISY, + OPPONENT_ROSE_1, + OPPONENT_LILY, + OPPONENT_VIOLET, + OPPONENT_ROSE_2, + OPPONENT_ROSE_3, + OPPONENT_ROSE_4, + OPPONENT_ROSE_5, + OPPONENT_DUSTY_1, + OPPONENT_CHIP, + OPPONENT_FOSTER, + OPPONENT_DUSTY_2, + OPPONENT_DUSTY_3, + OPPONENT_DUSTY_4, + OPPONENT_DUSTY_5, + OPPONENT_GABBY_AND_TY_1, + OPPONENT_GABBY_AND_TY_2, + OPPONENT_GABBY_AND_TY_3, + OPPONENT_GABBY_AND_TY_4, + OPPONENT_GABBY_AND_TY_5, + OPPONENT_GABBY_AND_TY_6, + OPPONENT_LOLA_1, + OPPONENT_CARMEN, + OPPONENT_GWEN, + OPPONENT_LOLA_2, + OPPONENT_LOLA_3, + OPPONENT_LOLA_4, + OPPONENT_LOLA_5, + OPPONENT_RICKY_1, + OPPONENT_SIMON, + OPPONENT_CHARLIE, + OPPONENT_RICKY_2, + OPPONENT_RICKY_3, + OPPONENT_RICKY_4, + OPPONENT_RICKY_5, + OPPONENT_RANDALL, + OPPONENT_PARKER, + OPPONENT_GEORGE, + OPPONENT_BERKE, + OPPONENT_CLYDE, + OPPONENT_VINCENT, + OPPONENT_LEROY, + OPPONENT_WILTON_1, + OPPONENT_EDGAR, + OPPONENT_ALBERT, + OPPONENT_SAMUEL, + OPPONENT_VITO, + OPPONENT_OWEN, + OPPONENT_WILTON_2, + OPPONENT_WILTON_3, + OPPONENT_WILTON_4, + OPPONENT_WILTON_5, + OPPONENT_WARREN, + OPPONENT_MARY, + OPPONENT_LORI, + OPPONENT_JODY, + OPPONENT_WENDY, + OPPONENT_ELAINE, + OPPONENT_BROOKE_1, + OPPONENT_JENNIFER, + OPPONENT_HOPE, + OPPONENT_SHANNON, + OPPONENT_MICHELLE, + OPPONENT_CAROLINE, + OPPONENT_JULIE, + OPPONENT_BROOKE_2, + OPPONENT_BROOKE_3, + OPPONENT_BROOKE_4, + OPPONENT_BROOKE_5, + OPPONENT_PATRICIA, + OPPONENT_KINDRA, + OPPONENT_TAMMY, + OPPONENT_VALERIE_1, + OPPONENT_TASHA, + OPPONENT_VALERIE_2, + OPPONENT_VALERIE_3, + OPPONENT_VALERIE_4, + OPPONENT_VALERIE_5, + OPPONENT_CINDY_1, + OPPONENT_ANONYMOUS_2, + OPPONENT_BRIANNA_1, + OPPONENT_CINDY_2, + OPPONENT_BRIANNA_2, + OPPONENT_ANETTE, + OPPONENT_CINDY_3, + OPPONENT_CINDY_4, + OPPONENT_CINDY_5, + OPPONENT_CINDY_6, + OPPONENT_MELISSA, + OPPONENT_SHEILA, + OPPONENT_SHIRLEY, + OPPONENT_JESSICA_1, + OPPONENT_CONNIE, + OPPONENT_BRIDGET, + OPPONENT_OLIVIA, + OPPONENT_TIFFANY, + OPPONENT_JESSICA_2, + OPPONENT_JESSICA_3, + OPPONENT_JESSICA_4, + OPPONENT_JESSICA_5, + OPPONENT_WINSTON_1, + OPPONENT_ANONYMOUS_3, + OPPONENT_GARRET, + OPPONENT_WINSTON_2, + OPPONENT_WINSTON_3, + OPPONENT_WINSTON_4, + OPPONENT_WINSTON_5, + OPPONENT_STEVE_1, + OPPONENT_CHRIS, + OPPONENT_MARK, + OPPONENT_KENN, + OPPONENT_STEVE_2, + OPPONENT_STEVE_3, + OPPONENT_STEVE_4, + OPPONENT_STEVE_5, + OPPONENT_LUIS, + OPPONENT_AUSTIN, + OPPONENT_DOUGLAS, + OPPONENT_DARRIN, + OPPONENT_TONY_1, + OPPONENT_JEROME, + OPPONENT_MATTHEW, + OPPONENT_DAVID, + OPPONENT_SPENCER, + OPPONENT_ROLAND, + OPPONENT_CODY, + OPPONENT_STAN, + OPPONENT_BARRY, + OPPONENT_DEAN, + OPPONENT_RODNEY, + OPPONENT_RICHARD, + OPPONENT_HERMAN, + OPPONENT_ANONYMOUS_4, + OPPONENT_GILBERT, + OPPONENT_FRANKLIN, + OPPONENT_DANNY, + OPPONENT_JACK, + OPPONENT_DUDLEY, + OPPONENT_CHAD, + OPPONENT_TONY_2, + OPPONENT_TONY_3, + OPPONENT_TONY_4, + OPPONENT_TONY_5, + OPPONENT_HIDEKI, + OPPONENT_HITOSHI, + OPPONENT_KIYO, + OPPONENT_KOICHI, + OPPONENT_NOB_1, + OPPONENT_NOB_2, + OPPONENT_NOB_3, + OPPONENT_NOB_4, + OPPONENT_NOB_5, + OPPONENT_YUJI, + OPPONENT_DAISUKE, + OPPONENT_ATSUSHI, + OPPONENT_KIRK, + OPPONENT_SCOTT, + OPPONENT_HARVEY, + OPPONENT_SHAWN, + OPPONENT_RANDY, + OPPONENT_DALTON_1, + OPPONENT_DALTON_2, + OPPONENT_DALTON_3, + OPPONENT_DALTON_4, + OPPONENT_DALTON_5, + OPPONENT_COLE, + OPPONENT_FLINT, + OPPONENT_AXLE, + OPPONENT_JAKE, + OPPONENT_ANDY, + OPPONENT_BERNIE_1, + OPPONENT_BERNIE_2, + OPPONENT_BERNIE_3, + OPPONENT_BERNIE_4, + OPPONENT_BERNIE_5, + OPPONENT_DREW, + OPPONENT_CLIFF, + OPPONENT_LARRY, + OPPONENT_SHANE, + OPPONENT_JUSTIN, + OPPONENT_ETHAN_1, + OPPONENT_JEFF, + OPPONENT_TRAVIS, + OPPONENT_ETHAN_2, + OPPONENT_ETHAN_3, + OPPONENT_ETHAN_4, + OPPONENT_ETHAN_5, + OPPONENT_BRENT, + OPPONENT_DONALD, + OPPONENT_TAYLOR, + OPPONENT_BRANDON_1, + OPPONENT_DEREK, + OPPONENT_BRANDON_2, + OPPONENT_BRANDON_3, + OPPONENT_BRANDON_4, + OPPONENT_BRANDON_5, + OPPONENT_EDWARD, + OPPONENT_PRESTON, + OPPONENT_VIRGIL, + OPPONENT_FRITZ, + OPPONENT_WILLIAM, + OPPONENT_JOSHUA, + OPPONENT_CAMERON_1, + OPPONENT_CAMERON_2, + OPPONENT_CAMERON_3, + OPPONENT_CAMERON_4, + OPPONENT_CAMERON_5, + OPPONENT_JACLYN, + OPPONENT_HANNAH, + OPPONENT_SAMANTHA, + OPPONENT_MAURA, + OPPONENT_KAYLA, + OPPONENT_ALEXIS, + OPPONENT_JACKI_1, + OPPONENT_JACKI_2, + OPPONENT_JACKI_3, + OPPONENT_JACKI_4, + OPPONENT_JACKI_5, + OPPONENT_WALTER_1, + OPPONENT_TUCKER, + OPPONENT_THOMAS, + OPPONENT_WALTER_2, + OPPONENT_WALTER_3, + OPPONENT_WALTER_4, + OPPONENT_WALTER_5, + OPPONENT_SIDNEY, + OPPONENT_PHOEBE, + OPPONENT_GLACIA, + OPPONENT_DRAKE, + OPPONENT_ROXANNE, + OPPONENT_BRAWLY, + OPPONENT_WATTSON, + OPPONENT_FLANNERY, + OPPONENT_NORMAN, + OPPONENT_WINONA, + OPPONENT_TATE_AND_LIZA, + OPPONENT_WALLACE, + OPPONENT_JERRY_1, + OPPONENT_TED, + OPPONENT_PAUL, + OPPONENT_JERRY_2, + OPPONENT_JERRY_3, + OPPONENT_JERRY_4, + OPPONENT_JERRY_5, + OPPONENT_KAREN_1, + OPPONENT_GEORGIA, + OPPONENT_KAREN_2, + OPPONENT_KAREN_3, + OPPONENT_KAREN_4, + OPPONENT_KAREN_5, + OPPONENT_KATE_AND_JOY, + OPPONENT_ANNA_AND_MEG_1, + OPPONENT_ANNA_AND_MEG_2, + OPPONENT_ANNA_AND_MEG_3, + OPPONENT_ANNA_AND_MEG_4, + OPPONENT_ANNA_AND_MEG_5, + OPPONENT_VICTOR, + OPPONENT_MIGUEL_1, + OPPONENT_COLTON, + OPPONENT_MIGUEL_2, + OPPONENT_MIGUEL_3, + OPPONENT_MIGUEL_4, + OPPONENT_MIGUEL_5, + OPPONENT_VICTORIA, + OPPONENT_VANESSA, + OPPONENT_MARISSA, + OPPONENT_ISABEL_1, + OPPONENT_ISABEL_2, + OPPONENT_ISABEL_3, + OPPONENT_ISABEL_4, + OPPONENT_ISABEL_5, + OPPONENT_TIMOTHY_1, + OPPONENT_TIMOTHY_2, + OPPONENT_TIMOTHY_3, + OPPONENT_TIMOTHY_4, + OPPONENT_TIMOTHY_5, + OPPONENT_VICKY, + OPPONENT_SHELBY_1, + OPPONENT_SHELBY_2, + OPPONENT_SHELBY_3, + OPPONENT_SHELBY_4, + OPPONENT_SHELBY_5, + OPPONENT_CALVIN_1, + OPPONENT_BILLY, + OPPONENT_JOSH, + OPPONENT_TOMMY, + OPPONENT_JOEY, + OPPONENT_BEN, + OPPONENT_ANONYMOUS_5, + OPPONENT_KEVIN, + OPPONENT_NEAL, + OPPONENT_DILLON, + OPPONENT_CALVIN_2, + OPPONENT_CALVIN_3, + OPPONENT_CALVIN_4, + OPPONENT_CALVIN_5, + OPPONENT_EDDIE, + OPPONENT_ALLEN, + OPPONENT_TIMMY, + OPPONENT_STEVEN, + OPPONENT_ANDREW, + OPPONENT_IVAN, + OPPONENT_CLAUDE, + OPPONENT_ELLIOT_1, + OPPONENT_NED, + OPPONENT_DALE, + OPPONENT_NOLAN, + OPPONENT_BARNY, + OPPONENT_WADE, + OPPONENT_CARTER, + OPPONENT_ELLIOT_2, + OPPONENT_ELLIOT_3, + OPPONENT_ELLIOT_4, + OPPONENT_ELLIOT_5, + OPPONENT_RONALD, + OPPONENT_JACOB, + OPPONENT_ANTHONY, + OPPONENT_BENJAMIN_1, + OPPONENT_BENJAMIN_2, + OPPONENT_BENJAMIN_3, + OPPONENT_BENJAMIN_4, + OPPONENT_BENJAMIN_5, + OPPONENT_ABIGAIL_1, + OPPONENT_JASMINE, + OPPONENT_ABIGAIL_2, + OPPONENT_ABIGAIL_3, + OPPONENT_ABIGAIL_4, + OPPONENT_ABIGAIL_5, + OPPONENT_DYLAN_1, + OPPONENT_DYLAN_2, + OPPONENT_DYLAN_3, + OPPONENT_DYLAN_4, + OPPONENT_DYLAN_5, + OPPONENT_MARIA_1, + OPPONENT_MARIA_2, + OPPONENT_MARIA_3, + OPPONENT_MARIA_4, + OPPONENT_MARIA_5, + OPPONENT_CALEB, + OPPONENT_ANONYMOUS_6, + OPPONENT_ISAIAH_1, + OPPONENT_ANONYMOUS_7, + OPPONENT_CHASE, + OPPONENT_ISAIAH_2, + OPPONENT_ISAIAH_3, + OPPONENT_ISAIAH_4, + OPPONENT_ISAIAH_5, + OPPONENT_ANONYMOUS_8, + OPPONENT_CONNOR, + OPPONENT_ANONYMOUS_9, + OPPONENT_KATELYN_1, + OPPONENT_ALLISON, + OPPONENT_KATELYN_2, + OPPONENT_KATELYN_3, + OPPONENT_KATELYN_4, + OPPONENT_KATELYN_5, + OPPONENT_NICOLAS_1, + OPPONENT_NICOLAS_2, + OPPONENT_NICOLAS_3, + OPPONENT_NICOLAS_4, + OPPONENT_NICOLAS_5, + OPPONENT_AARON, + OPPONENT_PERRY, + OPPONENT_HUGH, + OPPONENT_PHIL, + OPPONENT_JARED, + OPPONENT_ANONYMOUS_10, + OPPONENT_TANNER, + OPPONENT_WILL, + OPPONENT_COLIN, + OPPONENT_ROBERT_1, + OPPONENT_BENNY, + OPPONENT_CHESTER, + OPPONENT_ROBERT_2, + OPPONENT_ROBERT_3, + OPPONENT_ROBERT_4, + OPPONENT_ROBERT_5, + OPPONENT_ALEX, + OPPONENT_BECK, + OPPONENT_YASU, + OPPONENT_TAKASHI, + OPPONENT_MAKOTO, + OPPONENT_HIDEO_1, + OPPONENT_LAO_1, + OPPONENT_LUNG, + OPPONENT_LAO_2, + OPPONENT_LAO_3, + OPPONENT_LAO_4, + OPPONENT_LAO_5, + OPPONENT_TESSA, + OPPONENT_LAURA, + OPPONENT_CYNDY_1, + OPPONENT_CORA, + OPPONENT_JILL, + OPPONENT_CYNDY_2, + OPPONENT_CYNDY_3, + OPPONENT_CYNDY_4, + OPPONENT_CYNDY_5, + OPPONENT_MADELINE_1, + OPPONENT_CLARISSA, + OPPONENT_ANGELICA, + OPPONENT_MADELINE_2, + OPPONENT_MADELINE_3, + OPPONENT_MADELINE_4, + OPPONENT_MADELINE_5, + OPPONENT_BEVERLY, + OPPONENT_DAWN, + OPPONENT_NICOLE, + OPPONENT_DENISE, + OPPONENT_BETH, + OPPONENT_TARA, + OPPONENT_MISSY, + OPPONENT_ALICE, + OPPONENT_JENNY_1, + OPPONENT_GRACE, + OPPONENT_TANYA, + OPPONENT_SHARON, + OPPONENT_NIKKI, + OPPONENT_BRENDA, + OPPONENT_KATIE, + OPPONENT_SUSIE, + OPPONENT_KARA, + OPPONENT_DANA, + OPPONENT_ERIN, + OPPONENT_DEBRA, + OPPONENT_LINDA, + OPPONENT_KAYLEE, + OPPONENT_LAUREL, + OPPONENT_DARCY, + OPPONENT_JENNY_2, + OPPONENT_JENNY_3, + OPPONENT_JENNY_4, + OPPONENT_JENNY_5, + OPPONENT_HEIDI, + OPPONENT_BECKY, + OPPONENT_CAROL, + OPPONENT_NANCY, + OPPONENT_MARTHA, + OPPONENT_DIANA_1, + OPPONENT_NINA, + OPPONENT_IRENE, + OPPONENT_DIANA_2, + OPPONENT_DIANA_3, + OPPONENT_DIANA_4, + OPPONENT_DIANA_5, + OPPONENT_AMY_AND_LIV_1, + OPPONENT_AMY_AND_LIV_2, + OPPONENT_GINA_AND_MIA_1, + OPPONENT_MIU_AND_YUKI, + OPPONENT_AMY_AND_LIV_3, + OPPONENT_GINA_AND_MIA_2, + OPPONENT_AMY_AND_LIV_4, + OPPONENT_AMY_AND_LIV_5, + OPPONENT_AMY_AND_LIV_6, + OPPONENT_HUEY, + OPPONENT_EDMOND, + OPPONENT_ERNEST_1, + OPPONENT_DWAYNE, + OPPONENT_PHILLIP, + OPPONENT_LEONARD, + OPPONENT_DUNCAN, + OPPONENT_ERNEST_2, + OPPONENT_ERNEST_3, + OPPONENT_ERNEST_4, + OPPONENT_ERNEST_5, + OPPONENT_ANONYMOUS_11, + OPPONENT_ANONYMOUS_12, + OPPONENT_ANONYMOUS_13, + OPPONENT_SONNY, + OPPONENT_DONOVAN, + OPPONENT_GERALD, + OPPONENT_KELVIN, + OPPONENT_KODY, + OPPONENT_TEVIN, + OPPONENT_DAMON, + OPPONENT_PABLO, + OPPONENT_EDWIN_1, + OPPONENT_HECTOR_1, + OPPONENT_HECTOR_2, + OPPONENT_EDWIN_2, + OPPONENT_EDWIN_3, + OPPONENT_EDWIN_4, + OPPONENT_EDWIN_5, + OPPONENT_WALLY_1, + OPPONENT_BRENDAN_1, + OPPONENT_BRENDAN_2, + OPPONENT_BRENDAN_3, + OPPONENT_BRENDAN_4, + OPPONENT_BRENDAN_5, + OPPONENT_BRENDAN_6, + OPPONENT_BRENDAN_7, + OPPONENT_BRENDAN_8, + OPPONENT_BRENDAN_9, + OPPONENT_MAY_1, + OPPONENT_MAY_2, + OPPONENT_MAY_3, + OPPONENT_MAY_4, + OPPONENT_MAY_5, + OPPONENT_MAY_6, + OPPONENT_MAY_7, + OPPONENT_MAY_8, + OPPONENT_MAY_9, + OPPONENT_ISAAC_1, + OPPONENT_RILEY, + OPPONENT_AIDAN, + OPPONENT_ISAAC_2, + OPPONENT_ISAAC_3, + OPPONENT_ISAAC_4, + OPPONENT_ISAAC_5, + OPPONENT_LYDIA_1, + OPPONENT_ALEXIA, + OPPONENT_DANIELLE, + OPPONENT_LYDIA_2, + OPPONENT_LYDIA_3, + OPPONENT_LYDIA_4, + OPPONENT_LYDIA_5, + OPPONENT_JACKSON_1, + OPPONENT_CARLOS, + OPPONENT_SEBASTIAN, + OPPONENT_JACKSON_2, + OPPONENT_JACKSON_3, + OPPONENT_JACKSON_4, + OPPONENT_JACKSON_5, + OPPONENT_CATHERINE_1, + OPPONENT_JENNA, + OPPONENT_SOPHIA, + OPPONENT_CATHERINE_2, + OPPONENT_CATHERINE_3, + OPPONENT_CATHERINE_4, + OPPONENT_CATHERINE_5, + OPPONENT_MAXIE_1, + OPPONENT_GRUNT_28, + OPPONENT_GRUNT_29, + OPPONENT_GRUNT_30, + OPPONENT_GRUNT_31, + OPPONENT_GRUNT_32, + OPPONENT_GRUNT_33, + OPPONENT_GRUNT_34, + OPPONENT_GRUNT_35, + OPPONENT_GRUNT_36, + OPPONENT_GRUNT_37, + OPPONENT_GRUNT_38, + OPPONENT_GRUNT_39, + OPPONENT_GRUNT_40, + OPPONENT_GRUNT_41, + OPPONENT_GRUNT_42, + OPPONENT_GRUNT_43, + OPPONENT_GRUNT_44, + OPPONENT_GRUNT_45, + OPPONENT_GRUNT_46, + OPPONENT_GRUNT_47, + OPPONENT_GRUNT_48, + OPPONENT_GRUNT_49, + OPPONENT_GRUNT_50, + OPPONENT_GRUNT_51, + OPPONENT_GRUNT_52, + OPPONENT_GRUNT_53, + OPPONENT_GRUNT_54, + OPPONENT_ANONYMOUS_14, + OPPONENT_ANONYMOUS_15, + OPPONENT_TABITHA_1, + OPPONENT_TABITHA_2, + OPPONENT_ANONYMOUS_16, + OPPONENT_COURTNEY_1, + OPPONENT_COURTNEY_2, + OPPONENT_MAXIE_2, + OPPONENT_MAXIE_3, + OPPONENT_TIANA, + OPPONENT_HALEY_1, + OPPONENT_JANICE, + OPPONENT_VIVI, + OPPONENT_HALEY_2, + OPPONENT_HALEY_3, + OPPONENT_HALEY_4, + OPPONENT_HALEY_5, + OPPONENT_SALLY, + OPPONENT_ROBIN, + OPPONENT_ANDREA, + OPPONENT_CRISSY, + OPPONENT_RICK, + OPPONENT_LYLE, + OPPONENT_JOSE, + OPPONENT_DOUG, + OPPONENT_GREG, + OPPONENT_KENT, + OPPONENT_JAMES_1, + OPPONENT_JAMES_2, + OPPONENT_JAMES_3, + OPPONENT_JAMES_4, + OPPONENT_JAMES_5, + OPPONENT_BRICE, + OPPONENT_TRENT_1, + OPPONENT_LENNY, + OPPONENT_LUCAS_1, + OPPONENT_ALAN, + OPPONENT_CLARK, + OPPONENT_ERIC, + OPPONENT_LUCAS_2, + OPPONENT_MIKE_1, + OPPONENT_MIKE_2, + OPPONENT_TRENT_2, + OPPONENT_TRENT_3, + OPPONENT_TRENT_4, + OPPONENT_TRENT_5, + OPPONENT_DEZ_AND_LUKE, + OPPONENT_LEA_AND_JED, + OPPONENT_LOIS_AND_HAL_1, + OPPONENT_LOIS_AND_HAL_2, + OPPONENT_LOIS_AND_HAL_3, + OPPONENT_LOIS_AND_HAL_4, + OPPONENT_LOIS_AND_HAL_5, + OPPONENT_JOHANNA, + OPPONENT_ZANE, + OPPONENT_VIVIAN, + OPPONENT_SADIE, + OPPONENT_HIDEO_2, + OPPONENT_KEIGO, + OPPONENT_TSUNAO, + OPPONENT_TERRELL, + OPPONENT_KYLEE, + OPPONENT_WALLY_2, + OPPONENT_WALLY_3, + OPPONENT_WALLY_4, + OPPONENT_WALLY_5, + OPPONENT_WALLY_6, + OPPONENT_BRENDAN_10, + OPPONENT_BRENDAN_11, + OPPONENT_BRENDAN_12, + OPPONENT_MAY_10, + OPPONENT_MAY_11, + OPPONENT_MAY_12, + OPPONENT_JONAH, + OPPONENT_HENRY, + OPPONENT_ROGER, + OPPONENT_ALEXA, + OPPONENT_RUBEN, + OPPONENT_KOJI, + OPPONENT_WAYNE, + OPPONENT_BYRON, + OPPONENT_REED, + OPPONENT_TISHA, + OPPONENT_TORI_AND_TIA, + OPPONENT_KIM_AND_IRIS, + OPPONENT_TYRA_AND_IVY, + OPPONENT_MEL_AND_PAUL, + OPPONENT_JOHN_AND_JAY_1, + OPPONENT_JOHN_AND_JAY_2, + OPPONENT_JOHN_AND_JAY_3, + OPPONENT_JOHN_AND_JAY_4, + OPPONENT_JOHN_AND_JAY_5, + OPPONENT_RELI_AND_IAN, + OPPONENT_RITA_AND_SAM_1, + OPPONENT_RITA_AND_SAM_2, + OPPONENT_RITA_AND_SAM_3, + OPPONENT_RITA_AND_SAM_4, + OPPONENT_RITA_AND_SAM_5, + OPPONENT_LISA_AND_RAY, + OPPONENT_EUGENE, +}; + +#endif // GUARD_OPPONENT_CONSTANTS_H diff --git a/include/sprite.h b/include/sprite.h index 7a2dd8494..2725d0bab 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -45,6 +45,9 @@ struct AnimJumpCmd u32 target:6; }; +// The first halfword of this union specifies the type of command. +// If it -2, then it is a jump command. If it is -1, then it is the end of the script. +// Otherwise, it is the imageValue for a frame command. union AnimCmd { s16 type; @@ -53,8 +56,8 @@ union AnimCmd struct AnimJumpCmd jump; }; -#define ANIMCMD_FRAME(_imageValue, _duration) \ - {.frame = {.imageValue = _imageValue, .duration = _duration}} +#define ANIMCMD_FRAME(...) \ + {.frame = {__VA_ARGS__}} #define ANIMCMD_JUMP(_target) \ {.jump = {.type = -2, .target = _target}} #define ANIMCMD_END \ @@ -68,11 +71,6 @@ struct AffineAnimFrameCmd u8 duration; }; -#define AFFINEANIMCMD_FRAME(_xScale, _yScale, _rotation, _duration) \ - {.frame = {.xScale = _xScale, .yScale = _yScale, .rotation = _rotation, .duration = _duration}} -#define AFFINEANIMCMD_END \ - {.type = 0x7FFF} - struct AffineAnimLoopCmd { s16 type; @@ -93,6 +91,11 @@ union AffineAnimCmd struct AffineAnimJumpCmd jump; }; +#define AFFINEANIMCMD_FRAME(_xScale, _yScale, _rotation, _duration) \ + {.frame = {.xScale = _xScale, .yScale = _yScale, .rotation = _rotation, .duration = _duration}} +#define AFFINEANIMCMD_END \ + {.type = 0x7FFF} + struct AffineAnimState { u8 animNum; diff --git a/include/starter_choose.h b/include/starter_choose.h index 4a7e0514c..008d1b14e 100644 --- a/include/starter_choose.h +++ b/include/starter_choose.h @@ -5,9 +5,5 @@ u16 GetStarterPokemon(u16); void CB2_ChooseStarter(void); -void nullsub_72(struct Sprite *sprite); -void sub_810A62C(struct Sprite *sprite); -void sub_810A68C(struct Sprite *sprite); -void StarterPokemonSpriteAnimCallback(struct Sprite *sprite); #endif // GUARD_STARTER_CHOOSE_H |