diff options
Diffstat (limited to 'src/data')
-rw-r--r-- | src/data/contest_moves.h | 96 | ||||
-rw-r--r-- | src/data/contest_opponents.h | 327 | ||||
-rwxr-xr-x | src/data/field_effects/field_effect_object_template_pointers.h | 102 | ||||
-rwxr-xr-x | src/data/field_effects/field_effect_objects.h | 851 | ||||
-rw-r--r-- | src/data/graphics/pokemon.h | 3 | ||||
-rw-r--r-- | src/data/graphics/rayquaza_scene.h | 135 | ||||
-rw-r--r-- | src/data/graphics/slot_machine.h | 34 | ||||
-rw-r--r-- | src/data/items.h | 6 | ||||
-rwxr-xr-x | src/data/object_events/object_event_graphics.h | 38 | ||||
-rw-r--r-- | src/data/pokemon_graphics/back_pic_coordinates.h | 880 | ||||
-rw-r--r-- | src/data/pokemon_graphics/front_pic_coordinates.h | 880 | ||||
-rw-r--r-- | src/data/region_map/region_map_entries.h | 426 | ||||
-rw-r--r-- | src/data/text/nature_names.h | 2 | ||||
-rw-r--r-- | src/data/union_room.h | 486 | ||||
-rwxr-xr-x | src/data/wild_encounters.json | 8 |
15 files changed, 2260 insertions, 2014 deletions
diff --git a/src/data/contest_moves.h b/src/data/contest_moves.h index 5460ac806..658528210 100644 --- a/src/data/contest_moves.h +++ b/src/data/contest_moves.h @@ -2838,289 +2838,289 @@ const struct ContestEffect gContestEffects[] = { [CONTEST_EFFECT_HIGHLY_APPEALING] = { - .effectType = 0, + .effectType = CONTEST_EFFECT_TYPE_APPEAL, .appeal = 40, .jam = 0, }, [CONTEST_EFFECT_USER_MORE_EASILY_STARTLED] = { - .effectType = 0, + .effectType = CONTEST_EFFECT_TYPE_APPEAL, .appeal = 60, .jam = 0, }, [CONTEST_EFFECT_GREAT_APPEAL_BUT_NO_MORE_MOVES] = { - .effectType = 0, + .effectType = CONTEST_EFFECT_TYPE_APPEAL, .appeal = 80, .jam = 0, }, [CONTEST_EFFECT_REPETITION_NOT_BORING] = { - .effectType = 0, + .effectType = CONTEST_EFFECT_TYPE_APPEAL, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_AVOID_STARTLE_ONCE] = { - .effectType = 1, + .effectType = CONTEST_EFFECT_TYPE_AVOID_STARTLE, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_AVOID_STARTLE] = { - .effectType = 1, + .effectType = CONTEST_EFFECT_TYPE_AVOID_STARTLE, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_AVOID_STARTLE_SLIGHTLY] = { - .effectType = 1, + .effectType = CONTEST_EFFECT_TYPE_AVOID_STARTLE, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_USER_LESS_EASILY_STARTLED] = { - .effectType = 1, + .effectType = CONTEST_EFFECT_TYPE_AVOID_STARTLE, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_STARTLE_FRONT_MON] = { - .effectType = 2, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MON, .appeal = 30, .jam = 20, }, [CONTEST_EFFECT_SLIGHTLY_STARTLE_PREV_MONS] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 30, .jam = 10, }, [CONTEST_EFFECT_STARTLE_PREV_MON] = { - .effectType = 2, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MON, .appeal = 20, .jam = 30, }, [CONTEST_EFFECT_STARTLE_PREV_MONS] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 20, }, [CONTEST_EFFECT_BADLY_STARTLE_FRONT_MON] = { - .effectType = 2, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MON, .appeal = 10, .jam = 40, }, [CONTEST_EFFECT_BADLY_STARTLE_PREV_MONS] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 10, .jam = 30, }, [CONTEST_EFFECT_STARTLE_PREV_MON_2] = { - .effectType = 2, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MON, .appeal = 30, .jam = 20, }, [CONTEST_EFFECT_STARTLE_PREV_MONS_2] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 30, .jam = 10, }, [CONTEST_EFFECT_SHIFT_JUDGE_ATTENTION] = { - .effectType = 4, + .effectType = CONTEST_EFFECT_TYPE_WORSEN, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_STARTLE_MON_WITH_JUDGES_ATTENTION] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_JAMS_OTHERS_BUT_MISS_ONE_TURN] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 40, .jam = 40, }, [CONTEST_EFFECT_STARTLE_MONS_SAME_TYPE_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_STARTLE_MONS_COOL_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_STARTLE_MONS_BEAUTY_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_STARTLE_MONS_CUTE_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_STARTLE_MONS_SMART_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_STARTLE_MONS_TOUGH_APPEAL] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_MAKE_FOLLOWING_MON_NERVOUS] = { - .effectType = 4, + .effectType = CONTEST_EFFECT_TYPE_WORSEN, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_MAKE_FOLLOWING_MONS_NERVOUS] = { - .effectType = 4, + .effectType = CONTEST_EFFECT_TYPE_WORSEN, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_WORSEN_CONDITION_OF_PREV_MONS] = { - .effectType = 4, + .effectType = CONTEST_EFFECT_TYPE_WORSEN, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_BADLY_STARTLES_MONS_IN_GOOD_CONDITION] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 30, .jam = 10, }, [CONTEST_EFFECT_BETTER_IF_FIRST] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_BETTER_IF_LAST] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONES] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_APPEAL_AS_GOOD_AS_PREV_ONE] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_BETTER_WHEN_LATER] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_QUALITY_DEPENDS_ON_TIMING] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_BETTER_IF_SAME_TYPE] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_BETTER_IF_DIFF_TYPE] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 20, .jam = 0, }, [CONTEST_EFFECT_AFFECTED_BY_PREV_APPEAL] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_IMPROVE_CONDITION_PREVENT_NERVOUSNESS] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_BETTER_WITH_GOOD_CONDITION] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_NEXT_APPEAL_EARLIER] = { - .effectType = 6, + .effectType = CONTEST_EFFECT_TYPE_TURN_ORDER, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_NEXT_APPEAL_LATER] = { - .effectType = 6, + .effectType = CONTEST_EFFECT_TYPE_TURN_ORDER, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_MAKE_SCRAMBLING_TURN_ORDER_EASIER] = { - .effectType = 6, + .effectType = CONTEST_EFFECT_TYPE_TURN_ORDER, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_SCRAMBLE_NEXT_TURN_ORDER] = { - .effectType = 6, + .effectType = CONTEST_EFFECT_TYPE_TURN_ORDER, .appeal = 30, .jam = 0, }, [CONTEST_EFFECT_EXCITE_AUDIENCE_IN_ANY_CONTEST] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_BADLY_STARTLE_MONS_WITH_GOOD_APPEALS] = { - .effectType = 3, + .effectType = CONTEST_EFFECT_TYPE_STARTLE_MONS, .appeal = 20, .jam = 10, }, [CONTEST_EFFECT_BETTER_WHEN_AUDIENCE_EXCITED] = { - .effectType = 5, + .effectType = CONTEST_EFFECT_TYPE_SPECIAL_APPEAL, .appeal = 10, .jam = 0, }, [CONTEST_EFFECT_DONT_EXCITE_AUDIENCE] = { - .effectType = 4, + .effectType = CONTEST_EFFECT_TYPE_WORSEN, .appeal = 30, .jam = 0, }, diff --git a/src/data/contest_opponents.h b/src/data/contest_opponents.h index 8fa746725..6de931ef2 100644 --- a/src/data/contest_opponents.h +++ b/src/data/contest_opponents.h @@ -100,7 +100,44 @@ #define CONTEST_OPPONENT_TREY 94 #define CONTEST_OPPONENT_LANE 95 -const struct ContestWinner gUnknown_08587FA4[] = +// All contest opponents have a common set of AI flags (which contains all of the actually +// useful AI scripts, as well as some dummys) and a random combination of 2-3 dummy flags. +// Seems that like the battle AI they had more plans for this than what ended up in the final game +#define CONTEST_AI_SET_1 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_2 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_19 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_3 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_23) +#define CONTEST_AI_SET_4 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_17 | CONTEST_AI_DUMMY_23) +#define CONTEST_AI_SET_5 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_16 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_6 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_15 | CONTEST_AI_DUMMY_22) +#define CONTEST_AI_SET_7 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_14 | CONTEST_AI_DUMMY_23) +#define CONTEST_AI_SET_8 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_13 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_9 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_12 | CONTEST_AI_DUMMY_24) +#define CONTEST_AI_SET_A (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_11 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_B (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_10 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_C (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_9 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_D (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_8 | CONTEST_AI_DUMMY_22 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_E (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_7 | CONTEST_AI_DUMMY_24) +#define CONTEST_AI_SET_F (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_6 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_10 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_23) +#define CONTEST_AI_SET_11 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_18 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_12 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_17 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_13 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_16 | CONTEST_AI_DUMMY_22) +#define CONTEST_AI_SET_14 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_15 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_15 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_14 | CONTEST_AI_DUMMY_22) +#define CONTEST_AI_SET_16 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_13 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_17 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_12 | CONTEST_AI_DUMMY_23 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_18 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_10 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_19 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_9 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_1A (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_8 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_1B (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_7 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_1C (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_6 | CONTEST_AI_DUMMY_21) +#define CONTEST_AI_SET_1D (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_20 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_1E (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_15 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_1F (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_14 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_20 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_12 | CONTEST_AI_DUMMY_25) +#define CONTEST_AI_SET_21 (CONTEST_AI_COMMON | CONTEST_AI_DUMMY_7 | CONTEST_AI_DUMMY_25) + +const struct ContestWinner gDefaultContestWinners[] = { { .personality = 0, @@ -183,7 +220,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("POOCHY"), .trainerName = _("JIMMY"), .trainerGfxId = OBJ_EVENT_GFX_BOY_1, - .aiChecks = 0xC000FFF, + .aiFlags = CONTEST_AI_SET_1, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -203,7 +240,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 3, .tough = 4, .sheen = 50, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -212,7 +248,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("MUSILLE"), .trainerName = _("EDITH"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_1, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -232,7 +268,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 1, .tough = 2, .sheen = 60, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -241,7 +276,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DUSTER"), .trainerName = _("EVAN"), .trainerGfxId = OBJ_EVENT_GFX_LITTLE_BOY, - .aiChecks = 0x21000FFF, + .aiFlags = CONTEST_AI_SET_3, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -261,7 +296,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 12, .tough = 4, .sheen = 70, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -270,7 +304,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DOTS"), .trainerName = _("KELSEY"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_1, - .aiChecks = 0x20800FFF, + .aiFlags = CONTEST_AI_SET_4, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -290,7 +324,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 2, .tough = 7, .sheen = 80, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -299,7 +332,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TATAY"), .trainerName = _("MADISON"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_F, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -319,7 +352,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 5, .tough = 4, .sheen = 90, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -328,7 +360,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("NINDA"), .trainerName = _("RAYMOND"), .trainerGfxId = OBJ_EVENT_GFX_BLACK_BELT, - .aiChecks = 0x10200FFF, + .aiFlags = CONTEST_AI_SET_6, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -348,7 +380,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 7, .tough = 8, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -357,7 +388,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SMISH"), .trainerName = _("GRANT"), .trainerGfxId = OBJ_EVENT_GFX_YOUNGSTER, - .aiChecks = 0x20100FFF, + .aiFlags = CONTEST_AI_SET_7, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -377,7 +408,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 2, .tough = 2, .sheen = 50, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -386,7 +416,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SLEAL"), .trainerName = _("PAIGE"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_4, - .aiChecks = 0x8080FFF, + .aiFlags = CONTEST_AI_SET_8, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -406,7 +436,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 10, .sheen = 60, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -415,7 +444,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SLOKTH"), .trainerName = _("ALEC"), .trainerGfxId = OBJ_EVENT_GFX_CAMPER, - .aiChecks = 0x40040FFF, + .aiFlags = CONTEST_AI_SET_9, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -435,7 +464,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 5, .tough = 18, .sheen = 70, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -444,7 +472,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("WHIRIS"), .trainerName = _("SYDNEY"), .trainerGfxId = OBJ_EVENT_GFX_LASS, - .aiChecks = 0x80020FFF, + .aiFlags = CONTEST_AI_SET_A, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -464,7 +492,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 2, .tough = 7, .sheen = 80, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -473,7 +500,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("MAHITA"), .trainerName = _("MORRIS"), .trainerGfxId = OBJ_EVENT_GFX_SCHOOL_KID_M, - .aiChecks = 0x8010FFF, + .aiFlags = CONTEST_AI_SET_B, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -493,7 +520,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 8, .tough = 1, .sheen = 90, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -502,7 +528,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("RONAR"), .trainerName = _("MARIAH"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_2, - .aiChecks = 0x8008FFF, + .aiFlags = CONTEST_AI_SET_C, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -522,7 +548,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 2, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -531,7 +556,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BATRO"), .trainerName = _("RUSSELL"), .trainerGfxId = OBJ_EVENT_GFX_MAN_3, - .aiChecks = 0x90004FFF, + .aiFlags = CONTEST_AI_SET_D, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -551,7 +576,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 2, .tough = 10, .sheen = 50, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -560,7 +584,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("GULIN"), .trainerName = _("MELANIE"), .trainerGfxId = OBJ_EVENT_GFX_TWIN, - .aiChecks = 0x40002FFF, + .aiFlags = CONTEST_AI_SET_E, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -580,7 +604,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 5, .sheen = 60, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -589,7 +612,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("RIKELEC"), .trainerName = _("CHANCE"), .trainerGfxId = OBJ_EVENT_GFX_RICH_BOY, - .aiChecks = 0x80001FFF, + .aiFlags = CONTEST_AI_SET_F, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -609,7 +632,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 1, .tough = 1, .sheen = 70, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -618,7 +640,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BULBY"), .trainerName = _("AGATHA"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_2, - .aiChecks = 0xC000FFF, + .aiFlags = CONTEST_AI_SET_1, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -638,7 +660,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 4, .sheen = 50, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -647,7 +668,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("FUTTERBE"), .trainerName = _("BEAU"), .trainerGfxId = OBJ_EVENT_GFX_HEX_MANIAC, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -667,7 +688,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 4, .sheen = 60, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -676,7 +696,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("PIDEOT"), .trainerName = _("KAY"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_5, - .aiChecks = 0x21000FFF, + .aiFlags = CONTEST_AI_SET_3, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -696,7 +716,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 2, .tough = 3, .sheen = 70, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -705,7 +724,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DIGLE"), .trainerName = _("CALE"), .trainerGfxId = OBJ_EVENT_GFX_HIKER, - .aiChecks = 0x20800FFF, + .aiFlags = CONTEST_AI_SET_4, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -725,7 +744,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 5, .tough = 10, .sheen = 80, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -734,7 +752,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("WAGIL"), .trainerName = _("CAITLIN"), .trainerGfxId = OBJ_EVENT_GFX_TUBER_F, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -754,7 +772,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 3, .tough = 10, .sheen = 90, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -763,7 +780,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TOTDIL"), .trainerName = _("COLBY"), .trainerGfxId = OBJ_EVENT_GFX_NINJA_BOY, - .aiChecks = 0x10200FFF, + .aiFlags = CONTEST_AI_SET_6, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -783,7 +800,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 1, .tough = 5, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -792,7 +808,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BALEDY"), .trainerName = _("KYLIE"), .trainerGfxId = OBJ_EVENT_GFX_BEAUTY, - .aiChecks = 0x20100FFF, + .aiFlags = CONTEST_AI_SET_7, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -812,7 +828,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 6, .tough = 2, .sheen = 90, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -821,7 +836,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BIRDLY"), .trainerName = _("LIAM"), .trainerGfxId = OBJ_EVENT_GFX_MAN_5, - .aiChecks = 0x8080FFF, + .aiFlags = CONTEST_AI_SET_8, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -841,7 +856,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 5, .tough = 3, .sheen = 80, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -850,7 +864,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TARVITAR"), .trainerName = _("MILO"), .trainerGfxId = OBJ_EVENT_GFX_MANIAC, - .aiChecks = 0x40040FFF, + .aiFlags = CONTEST_AI_SET_9, .whichRank = CONTEST_RANK_NORMAL, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -870,7 +884,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 8, .tough = 10, .sheen = 70, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -879,7 +892,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("RELIA"), .trainerName = _("KARINA"), .trainerGfxId = OBJ_EVENT_GFX_PICNICKER, - .aiChecks = 0x24000FFF, + .aiFlags = CONTEST_AI_SET_10, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -899,7 +912,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 20, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -908,7 +920,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DUODO"), .trainerName = _("BOBBY"), .trainerGfxId = OBJ_EVENT_GFX_RUNNING_TRIATHLETE_M, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -928,7 +940,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 85, .tough = 35, .sheen = 110, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -937,7 +948,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("PINCHIN"), .trainerName = _("CLAIRE"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_1, - .aiChecks = 0x81000FFF, + .aiFlags = CONTEST_AI_SET_11, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -957,7 +968,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 25, .sheen = 120, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -966,7 +976,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("NACAC"), .trainerName = _("WILLIE"), .trainerGfxId = OBJ_EVENT_GFX_LITTLE_BOY, - .aiChecks = 0x80800FFF, + .aiFlags = CONTEST_AI_SET_12, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -986,7 +996,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 65, .tough = 25, .sheen = 130, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -995,7 +1004,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SHRAND"), .trainerName = _("CASSIDY"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_F, - .aiChecks = 0x10400FFF, + .aiFlags = CONTEST_AI_SET_13, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1015,7 +1024,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 100, .sheen = 140, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1024,7 +1032,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TOYBAL"), .trainerName = _("MORGAN"), .trainerGfxId = OBJ_EVENT_GFX_BLACK_BELT, - .aiChecks = 0x8200FFF, + .aiFlags = CONTEST_AI_SET_14, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1044,7 +1052,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 35, .sheen = 150, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1053,7 +1060,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CHAMCHAM"), .trainerName = _("SUMMER"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_4, - .aiChecks = 0x10100FFF, + .aiFlags = CONTEST_AI_SET_15, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1073,7 +1080,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 40, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1082,7 +1088,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SPININ"), .trainerName = _("MILES"), .trainerGfxId = OBJ_EVENT_GFX_CAMPER, - .aiChecks = 0x80080FFF, + .aiFlags = CONTEST_AI_SET_16, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1102,7 +1108,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 10, .tough = 25, .sheen = 110, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1111,7 +1116,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SWABY"), .trainerName = _("AUDREY"), .trainerGfxId = OBJ_EVENT_GFX_LASS, - .aiChecks = 0xA0040FFF, + .aiFlags = CONTEST_AI_SET_17, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1131,7 +1136,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 30, .tough = 25, .sheen = 120, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1140,7 +1144,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("POINKER"), .trainerName = _("AVERY"), .trainerGfxId = OBJ_EVENT_GFX_SCHOOL_KID_M, - .aiChecks = 0x80020FFF, + .aiFlags = CONTEST_AI_SET_A, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1160,7 +1164,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 30, .sheen = 130, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1169,7 +1172,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("KECON"), .trainerName = _("ARIANA"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_2, - .aiChecks = 0x80010FFF, + .aiFlags = CONTEST_AI_SET_18, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1189,7 +1192,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 75, .tough = 35, .sheen = 140, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1198,7 +1200,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("GOLDEN"), .trainerName = _("ASHTON"), .trainerGfxId = OBJ_EVENT_GFX_MAN_3, - .aiChecks = 0x80008FFF, + .aiFlags = CONTEST_AI_SET_19, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1218,7 +1220,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 30, .tough = 25, .sheen = 150, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1227,7 +1228,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BOBOACH"), .trainerName = _("SANDRA"), .trainerGfxId = OBJ_EVENT_GFX_TWIN, - .aiChecks = 0x80004FFF, + .aiFlags = CONTEST_AI_SET_1A, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1247,7 +1248,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 25, .tough = 15, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1256,7 +1256,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CORPY"), .trainerName = _("CARSON"), .trainerGfxId = OBJ_EVENT_GFX_YOUNGSTER, - .aiChecks = 0x8002FFF, + .aiFlags = CONTEST_AI_SET_1B, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1276,7 +1276,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 60, .tough = 20, .sheen = 110, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1285,7 +1284,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TADO"), .trainerName = _("KATRINA"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_1, - .aiChecks = 0x8001FFF, + .aiFlags = CONTEST_AI_SET_1C, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1305,7 +1304,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 15, .tough = 75, .sheen = 120, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1314,7 +1312,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BROWLO"), .trainerName = _("LUKE"), .trainerGfxId = OBJ_EVENT_GFX_FAT_MAN, - .aiChecks = 0xC000FFF, + .aiFlags = CONTEST_AI_SET_1, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1334,7 +1332,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 30, .tough = 20, .sheen = 100, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1343,7 +1340,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("FETCHIN"), .trainerName = _("RAUL"), .trainerGfxId = OBJ_EVENT_GFX_MAN_5, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1363,7 +1360,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 20, .tough = 20, .sheen = 110, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1372,7 +1368,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SEELEY"), .trainerName = _("JADA"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_2, - .aiChecks = 0x21000FFF, + .aiFlags = CONTEST_AI_SET_3, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1392,7 +1388,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 20, .tough = 20, .sheen = 120, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1401,7 +1396,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DROWZIN"), .trainerName = _("ZEEK"), .trainerGfxId = OBJ_EVENT_GFX_PSYCHIC_M, - .aiChecks = 0x20800FFF, + .aiFlags = CONTEST_AI_SET_4, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1421,7 +1416,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 30, .tough = 45, .sheen = 130, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1430,7 +1424,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("HITEMON"), .trainerName = _("DIEGO"), .trainerGfxId = OBJ_EVENT_GFX_EXPERT_M, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1450,7 +1444,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 20, .tough = 45, .sheen = 140, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1459,7 +1452,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BLISS"), .trainerName = _("ALIYAH"), .trainerGfxId = OBJ_EVENT_GFX_TEALA, - .aiChecks = 0x10200FFF, + .aiFlags = CONTEST_AI_SET_6, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1479,7 +1472,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 20, .tough = 20, .sheen = 150, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1488,7 +1480,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("KIDLEK"), .trainerName = _("NATALIA"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_F, - .aiChecks = 0x20100FFF, + .aiFlags = CONTEST_AI_SET_7, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1508,7 +1500,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 25, .tough = 25, .sheen = 140, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1517,7 +1508,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SNUBBINS"), .trainerName = _("DEVIN"), .trainerGfxId = OBJ_EVENT_GFX_GENTLEMAN, - .aiChecks = 0x8080FFF, + .aiFlags = CONTEST_AI_SET_8, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1537,7 +1528,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 20, .tough = 20, .sheen = 130, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1546,7 +1536,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DREAVIS"), .trainerName = _("TYLOR"), .trainerGfxId = OBJ_EVENT_GFX_HEX_MANIAC, - .aiChecks = 0x40040FFF, + .aiFlags = CONTEST_AI_SET_9, .whichRank = CONTEST_RANK_SUPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1566,7 +1556,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 45, .tough = 20, .sheen = 120, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1575,7 +1564,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LAIRN"), .trainerName = _("RONNIE"), .trainerGfxId = OBJ_EVENT_GFX_HIKER, - .aiChecks = 0x84000FFF, + .aiFlags = CONTEST_AI_SET_1D, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1595,7 +1584,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 100, .tough = 90, .sheen = 200, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1604,7 +1592,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SHIFTY"), .trainerName = _("CLAUDIA"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_1, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1624,7 +1612,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 70, .sheen = 210, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1633,7 +1620,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("NINAS"), .trainerName = _("ELIAS"), .trainerGfxId = OBJ_EVENT_GFX_LITTLE_BOY, - .aiChecks = 0x81000FFF, + .aiFlags = CONTEST_AI_SET_11, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1653,7 +1640,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 70, .tough = 70, .sheen = 220, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1662,7 +1648,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("WELOW"), .trainerName = _("JADE"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_F, - .aiChecks = 0x80800FFF, + .aiFlags = CONTEST_AI_SET_12, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1682,7 +1668,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 75, .tough = 40, .sheen = 230, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1691,7 +1676,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("YENA"), .trainerName = _("FRANCIS"), .trainerGfxId = OBJ_EVENT_GFX_BLACK_BELT, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1711,7 +1696,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 70, .tough = 70, .sheen = 240, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1720,7 +1704,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TIFLY"), .trainerName = _("ALISHA"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_4, - .aiChecks = 0x80200FFF, + .aiFlags = CONTEST_AI_SET_1E, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1740,7 +1724,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 80, .tough = 100, .sheen = 250, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1749,7 +1732,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("KINGSEA"), .trainerName = _("SAUL"), .trainerGfxId = OBJ_EVENT_GFX_CAMPER, - .aiChecks = 0x80100FFF, + .aiFlags = CONTEST_AI_SET_1F, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1769,7 +1752,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 70, .tough = 90, .sheen = 200, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1778,7 +1760,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CASTER"), .trainerName = _("FELICIA"), .trainerGfxId = OBJ_EVENT_GFX_LASS, - .aiChecks = 0x80080FFF, + .aiFlags = CONTEST_AI_SET_16, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -1798,7 +1780,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 50, .tough = 65, .sheen = 210, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1807,7 +1788,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CHOKEM"), .trainerName = _("EMILIO"), .trainerGfxId = OBJ_EVENT_GFX_SCHOOL_KID_M, - .aiChecks = 0x80040FFF, + .aiFlags = CONTEST_AI_SET_20, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -1827,7 +1808,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 60, .tough = 50, .sheen = 220, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1836,7 +1816,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LOMBE"), .trainerName = _("KARLA"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_2, - .aiChecks = 0x80020FFF, + .aiFlags = CONTEST_AI_SET_A, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1856,7 +1836,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 45, .tough = 70, .sheen = 230, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1865,7 +1844,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("VIPES"), .trainerName = _("DARRYL"), .trainerGfxId = OBJ_EVENT_GFX_MAN_3, - .aiChecks = 0x80010FFF, + .aiFlags = CONTEST_AI_SET_18, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1885,7 +1864,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 100, .sheen = 240, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1894,7 +1872,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("MERAIL"), .trainerName = _("SELENA"), .trainerGfxId = OBJ_EVENT_GFX_EXPERT_F, - .aiChecks = 0x80008FFF, + .aiFlags = CONTEST_AI_SET_19, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1914,7 +1892,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 50, .tough = 30, .sheen = 250, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1923,7 +1900,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("KARPAG"), .trainerName = _("NOEL"), .trainerGfxId = OBJ_EVENT_GFX_YOUNGSTER, - .aiChecks = 0x80004FFF, + .aiFlags = CONTEST_AI_SET_1A, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -1943,7 +1920,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 50, .tough = 160, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1952,7 +1928,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LUNONE"), .trainerName = _("LACEY"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_1, - .aiChecks = 0x80002FFF, + .aiFlags = CONTEST_AI_SET_21, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -1972,7 +1948,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 70, .tough = 50, .sheen = 210, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -1981,7 +1956,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("ABSO"), .trainerName = _("CORBIN"), .trainerGfxId = OBJ_EVENT_GFX_MANIAC, - .aiChecks = 0x80001FFF, + .aiFlags = CONTEST_AI_SET_F, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2001,7 +1976,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 35, .sheen = 220, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2010,7 +1984,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("EGGSOR"), .trainerName = _("GRACIE"), .trainerGfxId = OBJ_EVENT_GFX_PICNICKER, - .aiChecks = 0xC000FFF, + .aiFlags = CONTEST_AI_SET_1, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2030,7 +2004,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 100, .tough = 80, .sheen = 200, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2039,7 +2012,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CUBIN"), .trainerName = _("COLTIN"), .trainerGfxId = OBJ_EVENT_GFX_MAN_4, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2059,7 +2032,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 100, .sheen = 210, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2068,7 +2040,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("HITMON"), .trainerName = _("ELLIE"), .trainerGfxId = OBJ_EVENT_GFX_EXPERT_F, - .aiChecks = 0x21000FFF, + .aiFlags = CONTEST_AI_SET_3, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2088,7 +2060,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 50, .tough = 100, .sheen = 220, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2097,7 +2068,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SURTLE"), .trainerName = _("MARCUS"), .trainerGfxId = OBJ_EVENT_GFX_SAILOR, - .aiChecks = 0x20800FFF, + .aiFlags = CONTEST_AI_SET_4, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2117,7 +2088,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 95, .sheen = 230, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2126,7 +2096,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("KHANKAN"), .trainerName = _("KIARA"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_3, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2146,7 +2116,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 50, .tough = 100, .sheen = 240, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2155,7 +2124,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("PINOC"), .trainerName = _("BRYCE"), .trainerGfxId = OBJ_EVENT_GFX_BUG_CATCHER, - .aiChecks = 0x10200FFF, + .aiFlags = CONTEST_AI_SET_6, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2175,7 +2144,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 80, .tough = 80, .sheen = 250, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2184,7 +2152,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DILTOT"), .trainerName = _("JAMIE"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_5, - .aiChecks = 0x20100FFF, + .aiFlags = CONTEST_AI_SET_7, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2204,7 +2172,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 110, .sheen = 240, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2213,7 +2180,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DOOMOND"), .trainerName = _("JORGE"), .trainerGfxId = OBJ_EVENT_GFX_GENTLEMAN, - .aiChecks = 0x8080FFF, + .aiFlags = CONTEST_AI_SET_8, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2233,7 +2200,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 25, .tough = 80, .sheen = 230, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2242,7 +2208,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("MILKAN"), .trainerName = _("DEVON"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_M, - .aiChecks = 0x40040FFF, + .aiFlags = CONTEST_AI_SET_9, .whichRank = CONTEST_RANK_HYPER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2262,7 +2228,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 40, .sheen = 220, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2271,7 +2236,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("RADOS"), .trainerName = _("JUSTINA"), .trainerGfxId = OBJ_EVENT_GFX_PICNICKER, - .aiChecks = 0x84000FFF, + .aiFlags = CONTEST_AI_SET_1D, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2291,7 +2256,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 160, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2300,7 +2264,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LOUDERD"), .trainerName = _("RALPH"), .trainerGfxId = OBJ_EVENT_GFX_EXPERT_M, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2320,7 +2284,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 150, .tough = 160, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2329,7 +2292,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SITTY"), .trainerName = _("ROSA"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_1, - .aiChecks = 0x81000FFF, + .aiFlags = CONTEST_AI_SET_11, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2349,7 +2312,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 185, .tough = 60, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2358,7 +2320,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SLING"), .trainerName = _("KEATON"), .trainerGfxId = OBJ_EVENT_GFX_LITTLE_BOY, - .aiChecks = 0x80800FFF, + .aiFlags = CONTEST_AI_SET_12, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2378,7 +2340,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 110, .tough = 150, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2387,7 +2348,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("TARIA"), .trainerName = _("MAYRA"), .trainerGfxId = OBJ_EVENT_GFX_POKEFAN_F, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2407,7 +2368,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 30, .tough = 90, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2416,7 +2376,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LIRKI"), .trainerName = _("LAMAR"), .trainerGfxId = OBJ_EVENT_GFX_RICH_BOY, - .aiChecks = 0x80200FFF, + .aiFlags = CONTEST_AI_SET_1E, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2436,7 +2396,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 230, .tough = 80, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2445,7 +2404,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("BLOSSOM"), .trainerName = _("AUBREY"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_4, - .aiChecks = 0x80100FFF, + .aiFlags = CONTEST_AI_SET_1F, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2465,7 +2424,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 130, .tough = 40, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2474,7 +2432,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("EYESAB"), .trainerName = _("NIGEL"), .trainerGfxId = OBJ_EVENT_GFX_CAMPER, - .aiChecks = 0x80080FFF, + .aiFlags = CONTEST_AI_SET_16, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2494,7 +2452,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 150, .tough = 160, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2503,7 +2460,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("UTAN"), .trainerName = _("CAMILLE"), .trainerGfxId = OBJ_EVENT_GFX_LASS, - .aiChecks = 0x80040FFF, + .aiFlags = CONTEST_AI_SET_20, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2523,7 +2480,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 130, .tough = 170, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2532,7 +2488,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("PEDOS"), .trainerName = _("DEON"), .trainerGfxId = OBJ_EVENT_GFX_SCHOOL_KID_M, - .aiChecks = 0x80020FFF, + .aiFlags = CONTEST_AI_SET_A, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2552,7 +2508,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 75, .tough = 100, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2561,7 +2516,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("LUVIS"), .trainerName = _("JANELLE"), .trainerGfxId = OBJ_EVENT_GFX_GIRL_2, - .aiChecks = 0x80010FFF, + .aiFlags = CONTEST_AI_SET_18, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2581,7 +2536,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 40, .tough = 190, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2590,7 +2544,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("HEROSS"), .trainerName = _("HEATH"), .trainerGfxId = OBJ_EVENT_GFX_MAN_3, - .aiChecks = 0x80008FFF, + .aiFlags = CONTEST_AI_SET_19, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2610,7 +2564,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 240, .tough = 140, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2619,7 +2572,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("RODLECT"), .trainerName = _("SASHA"), .trainerGfxId = OBJ_EVENT_GFX_TWIN, - .aiChecks = 0x80004FFF, + .aiFlags = CONTEST_AI_SET_1A, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2639,7 +2592,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 35, .tough = 50, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2648,7 +2600,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("CHUPY"), .trainerName = _("FRANKIE"), .trainerGfxId = OBJ_EVENT_GFX_YOUNGSTER, - .aiChecks = 0x80002FFF, + .aiFlags = CONTEST_AI_SET_21, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2668,7 +2620,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 115, .tough = 120, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2677,7 +2628,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("WOBET"), .trainerName = _("HELEN"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_1, - .aiChecks = 0x80001FFF, + .aiFlags = CONTEST_AI_SET_F, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2697,7 +2648,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 220, .tough = 210, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2706,7 +2656,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("GAREN"), .trainerName = _("CAMILE"), .trainerGfxId = OBJ_EVENT_GFX_HEX_MANIAC, - .aiChecks = 0xC000FFF, + .aiFlags = CONTEST_AI_SET_1, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2726,7 +2676,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 80, .tough = 180, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2735,7 +2684,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("GONPOR"), .trainerName = _("MARTIN"), .trainerGfxId = OBJ_EVENT_GFX_SCIENTIST_1, - .aiChecks = 0x82000FFF, + .aiFlags = CONTEST_AI_SET_2, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2755,7 +2704,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 130, .tough = 130, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2764,7 +2712,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("DRITE"), .trainerName = _("SERGIO"), .trainerGfxId = OBJ_EVENT_GFX_BOY_1, - .aiChecks = 0x21000FFF, + .aiFlags = CONTEST_AI_SET_3, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2784,7 +2732,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 120, .tough = 150, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2793,7 +2740,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("MEOWY"), .trainerName = _("KAILEY"), .trainerGfxId = OBJ_EVENT_GFX_TWIN, - .aiChecks = 0x20800FFF, + .aiFlags = CONTEST_AI_SET_4, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2813,7 +2760,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 170, .tough = 80, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2822,7 +2768,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("NYX"), .trainerName = _("PERLA"), .trainerGfxId = OBJ_EVENT_GFX_BEAUTY, - .aiChecks = 0x80400FFF, + .aiFlags = CONTEST_AI_SET_5, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = TRUE, @@ -2842,7 +2788,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 150, .tough = 120, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2851,7 +2796,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("GEPITO"), .trainerName = _("CLARA"), .trainerGfxId = OBJ_EVENT_GFX_WOMAN_2, - .aiChecks = 0x10200FFF, + .aiFlags = CONTEST_AI_SET_6, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2871,7 +2816,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 120, .tough = 80, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2880,7 +2824,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SPEON"), .trainerName = _("JAKOB"), .trainerGfxId = OBJ_EVENT_GFX_PSYCHIC_M, - .aiChecks = 0x20100FFF, + .aiFlags = CONTEST_AI_SET_7, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = TRUE, @@ -2900,7 +2844,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 80, .tough = 150, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2909,7 +2852,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("SLOWGO"), .trainerName = _("TREY"), .trainerGfxId = OBJ_EVENT_GFX_SAILOR, - .aiChecks = 0x8080FFF, + .aiFlags = CONTEST_AI_SET_8, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = FALSE, .aiPool_Beauty = FALSE, @@ -2929,7 +2872,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 110, .tough = 170, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF }, @@ -2938,7 +2880,7 @@ const struct ContestPokemon gContestOpponents[] = .nickname = _("URSING"), .trainerName = _("LANE"), .trainerGfxId = OBJ_EVENT_GFX_BLACK_BELT, - .aiChecks = 0x40040FFF, + .aiFlags = CONTEST_AI_SET_9, .whichRank = CONTEST_RANK_MASTER, .aiPool_Cool = TRUE, .aiPool_Beauty = FALSE, @@ -2958,7 +2900,6 @@ const struct ContestPokemon gContestOpponents[] = .smart = 80, .tough = 190, .sheen = 255, - .unk2C = {0}, .personality = 0, .otId = 0xFFFF } diff --git a/src/data/field_effects/field_effect_object_template_pointers.h b/src/data/field_effects/field_effect_object_template_pointers.h index de39e6db3..41d6271bf 100755 --- a/src/data/field_effects/field_effect_object_template_pointers.h +++ b/src/data/field_effects/field_effect_object_template_pointers.h @@ -8,70 +8,70 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_Ash; const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob; const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow; const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopTallGrass; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass; const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopBigSplash; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash; const struct SpriteTemplate gFieldEffectObjectTemplate_Splash; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopSmallSplash; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash; const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown16; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown17; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown18; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown19; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown20; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown21; -const struct SpriteTemplate gFieldEffectObjectTemplate_BerryTreeGrowthSparkle; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand; +const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing; +const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion; +const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle; const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints; const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise; const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise; const struct SpriteTemplate gFieldEffectObjectTemplate_Bird; const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks; const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown29; +const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile; const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass; const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpOutOfAsh; -const struct SpriteTemplate gFieldEffectObjectTemplate_LavaridgeGymWarp; +const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff; +const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch; const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown35; +const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle; const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza; const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = { - &gFieldEffectObjectTemplate_ShadowSmall, - &gFieldEffectObjectTemplate_ShadowMedium, - &gFieldEffectObjectTemplate_ShadowLarge, - &gFieldEffectObjectTemplate_ShadowExtraLarge, - &gFieldEffectObjectTemplate_TallGrass, - &gFieldEffectObjectTemplate_Ripple, - &gFieldEffectObjectTemplate_Ash, - &gFieldEffectObjectTemplate_SurfBlob, - &gFieldEffectObjectTemplate_Arrow, - &gFieldEffectObjectTemplate_GroundImpactDust, - &gFieldEffectObjectTemplate_BikeHopTallGrass, - &gFieldEffectObjectTemplate_SandFootprints, - &gFieldEffectObjectTemplate_BikeHopBigSplash, - &gFieldEffectObjectTemplate_Splash, - &gFieldEffectObjectTemplate_BikeHopSmallSplash, - &gFieldEffectObjectTemplate_LongGrass, - &gFieldEffectObjectTemplate_Unknown16, - &gFieldEffectObjectTemplate_Unknown17, - &gFieldEffectObjectTemplate_Unknown18, - &gFieldEffectObjectTemplate_Unknown19, - &gFieldEffectObjectTemplate_Unknown20, - &gFieldEffectObjectTemplate_Unknown21, - &gFieldEffectObjectTemplate_BerryTreeGrowthSparkle, - &gFieldEffectObjectTemplate_DeepSandFootprints, - &gFieldEffectObjectTemplate_TreeDisguise, - &gFieldEffectObjectTemplate_MountainDisguise, - &gFieldEffectObjectTemplate_Bird, - &gFieldEffectObjectTemplate_BikeTireTracks, - &gFieldEffectObjectTemplate_SandDisguisePlaceholder, - &gFieldEffectObjectTemplate_Unknown29, - &gFieldEffectObjectTemplate_ShortGrass, - &gFieldEffectObjectTemplate_HotSpringsWater, - &gFieldEffectObjectTemplate_JumpOutOfAsh, - &gFieldEffectObjectTemplate_LavaridgeGymWarp, - &gFieldEffectObjectTemplate_Bubbles, - &gFieldEffectObjectTemplate_Unknown35, - &gFieldEffectObjectTemplate_Rayquaza, + [FLDEFFOBJ_SHADOW_S] = &gFieldEffectObjectTemplate_ShadowSmall, + [FLDEFFOBJ_SHADOW_M] = &gFieldEffectObjectTemplate_ShadowMedium, + [FLDEFFOBJ_SHADOW_L] = &gFieldEffectObjectTemplate_ShadowLarge, + [FLDEFFOBJ_SHADOW_XL] = &gFieldEffectObjectTemplate_ShadowExtraLarge, + [FLDEFFOBJ_TALL_GRASS] = &gFieldEffectObjectTemplate_TallGrass, + [FLDEFFOBJ_RIPPLE] = &gFieldEffectObjectTemplate_Ripple, + [FLDEFFOBJ_ASH] = &gFieldEffectObjectTemplate_Ash, + [FLDEFFOBJ_SURF_BLOB] = &gFieldEffectObjectTemplate_SurfBlob, + [FLDEFFOBJ_ARROW] = &gFieldEffectObjectTemplate_Arrow, + [FLDEFFOBJ_GROUND_IMPACT_DUST] = &gFieldEffectObjectTemplate_GroundImpactDust, + [FLDEFFOBJ_JUMP_TALL_GRASS] = &gFieldEffectObjectTemplate_JumpTallGrass, + [FLDEFFOBJ_SAND_FOOTPRINTS] = &gFieldEffectObjectTemplate_SandFootprints, + [FLDEFFOBJ_JUMP_BIG_SPLASH] = &gFieldEffectObjectTemplate_JumpBigSplash, + [FLDEFFOBJ_SPLASH] = &gFieldEffectObjectTemplate_Splash, + [FLDEFFOBJ_JUMP_SMALL_SPLASH] = &gFieldEffectObjectTemplate_JumpSmallSplash, + [FLDEFFOBJ_LONG_GRASS] = &gFieldEffectObjectTemplate_LongGrass, + [FLDEFFOBJ_JUMP_LONG_GRASS] = &gFieldEffectObjectTemplate_JumpLongGrass, + [FLDEFFOBJ_UNUSED_GRASS] = &gFieldEffectObjectTemplate_UnusedGrass, + [FLDEFFOBJ_UNUSED_GRASS_2] = &gFieldEffectObjectTemplate_UnusedGrass2, + [FLDEFFOBJ_UNUSED_SAND] = &gFieldEffectObjectTemplate_UnusedSand, + [FLDEFFOBJ_WATER_SURFACING] = &gFieldEffectObjectTemplate_WaterSurfacing, + [FLDEFFOBJ_REFLECTION_DISTORTION] = &gFieldEffectObjectTemplate_ReflectionDistortion, + [FLDEFFOBJ_SPARKLE] = &gFieldEffectObjectTemplate_Sparkle, + [FLDEFFOBJ_DEEP_SAND_FOOTPRINTS] = &gFieldEffectObjectTemplate_DeepSandFootprints, + [FLDEFFOBJ_TREE_DISGUISE] = &gFieldEffectObjectTemplate_TreeDisguise, + [FLDEFFOBJ_MOUNTAIN_DISGUISE] = &gFieldEffectObjectTemplate_MountainDisguise, + [FLDEFFOBJ_BIRD] = &gFieldEffectObjectTemplate_Bird, + [FLDEFFOBJ_BIKE_TIRE_TRACKS] = &gFieldEffectObjectTemplate_BikeTireTracks, + [FLDEFFOBJ_SAND_DISGUISE] = &gFieldEffectObjectTemplate_SandDisguisePlaceholder, + [FLDEFFOBJ_SAND_PILE] = &gFieldEffectObjectTemplate_SandPile, + [FLDEFFOBJ_SHORT_GRASS] = &gFieldEffectObjectTemplate_ShortGrass, + [FLDEFFOBJ_HOT_SPRINGS_WATER] = &gFieldEffectObjectTemplate_HotSpringsWater, + [FLDEFFOBJ_ASH_PUFF] = &gFieldEffectObjectTemplate_AshPuff, + [FLDEFFOBJ_ASH_LAUNCH] = &gFieldEffectObjectTemplate_AshLaunch, + [FLDEFFOBJ_BUBBLES] = &gFieldEffectObjectTemplate_Bubbles, + [FLDEFFOBJ_SMALL_SPARKLE] = &gFieldEffectObjectTemplate_SmallSparkle, + [FLDEFFOBJ_RAYQUAZA] = &gFieldEffectObjectTemplate_Rayquaza, }; diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 65f35107d..1626b9f32 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -1,43 +1,74 @@ -const struct SpritePalette gFieldEffectObjectPaletteInfo0 = {gFieldEffectObjectPalette0, 0x1004}; +const struct SpritePalette gSpritePalette_GeneralFieldEffect0 = {gFieldEffectObjectPalette0, FLDEFF_PAL_TAG_GENERAL_0}; +const struct SpritePalette gSpritePalette_GeneralFieldEffect1 = {gFieldEffectObjectPalette1, FLDEFF_PAL_TAG_GENERAL_1}; -const struct SpritePalette gFieldEffectObjectPaletteInfo1 = {gFieldEffectObjectPalette1, 0x1005}; - -const union AnimCmd gFieldEffectObjectImageAnim_850C9D0[] = +static const union AnimCmd sAnim_Shadow[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Shadow[] = +static const union AnimCmd *const sAnimTable_Shadow[] = { - gFieldEffectObjectImageAnim_850C9D0, + sAnim_Shadow, }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_ShadowSmall[] = { +static const struct SpriteFrameImage sPicTable_ShadowSmall[] = { obj_frame_tiles(gFieldEffectObjectPic_ShadowSmall), }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_ShadowMedium[] = { +static const struct SpriteFrameImage sPicTable_ShadowMedium[] = { obj_frame_tiles(gFieldEffectObjectPic_ShadowMedium), }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_ShadowLarge[] = { +static const struct SpriteFrameImage sPicTable_ShadowLarge[] = { obj_frame_tiles(gFieldEffectObjectPic_ShadowLarge), }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_ShadowExtraLarge[] = { +static const struct SpriteFrameImage sPicTable_ShadowExtraLarge[] = { obj_frame_tiles(gFieldEffectObjectPic_ShadowExtraLarge), }; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_8x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowSmall, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowSmall = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_8x8, + .anims = sAnimTable_Shadow, + .images = sPicTable_ShadowSmall, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateShadowFieldEffect, +}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowMedium, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowMedium = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_Shadow, + .images = sPicTable_ShadowMedium, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateShadowFieldEffect, +}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_32x8, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowLarge = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_32x8, + .anims = sAnimTable_Shadow, + .images = sPicTable_ShadowLarge, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateShadowFieldEffect, +}; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_64x32, gFieldEffectObjectImageAnimTable_Shadow, gFieldEffectObjectPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShadowExtraLarge = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_64x32, + .anims = sAnimTable_Shadow, + .images = sPicTable_ShadowExtraLarge, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateShadowFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_TallGrass[] = { +static const struct SpriteFrameImage sPicTable_TallGrass[] = { overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 2), @@ -45,7 +76,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_TallGrass[] = { overworld_frame(gFieldEffectObjectPic_TallGrass, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CA84[] = +static const union AnimCmd sAnim_TallGrass[] = { ANIMCMD_FRAME(1, 10), ANIMCMD_FRAME(2, 10), @@ -55,14 +86,22 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CA84[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_TallGrass[] = +static const union AnimCmd *const sAnimTable_TallGrass[] = { - gFieldEffectObjectImageAnim_850CA84, + sAnim_TallGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_TallGrass, gFieldEffectObjectPicTable_TallGrass, gDummySpriteAffineAnimTable, UpdateTallGrassFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_TallGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_TallGrass, + .images = sPicTable_TallGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateTallGrassFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Ripple[] = { +static const struct SpriteFrameImage sPicTable_Ripple[] = { overworld_frame(gFieldEffectObjectPic_Ripple, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_Ripple, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_Ripple, 2, 2, 2), @@ -70,7 +109,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_Ripple[] = { overworld_frame(gFieldEffectObjectPic_Ripple, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CAE0[] = +static const union AnimCmd sAnim_Ripple[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 9), @@ -83,14 +122,22 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CAE0[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Ripple[] = +static const union AnimCmd *const sAnimTable_Ripple[] = { - gFieldEffectObjectImageAnim_850CAE0, + sAnim_Ripple, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Ripple, gFieldEffectObjectPicTable_Ripple, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Ripple = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_Ripple, + .images = sPicTable_Ripple, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Ash[] = { +static const struct SpriteFrameImage sPicTable_Ash[] = { overworld_frame(gFieldEffectObjectPic_Ash, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_Ash, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_Ash, 2, 2, 2), @@ -98,7 +145,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_Ash[] = { overworld_frame(gFieldEffectObjectPic_Ash, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CB48[] = +static const union AnimCmd sAnim_Ash[] = { ANIMCMD_FRAME(0, 12), ANIMCMD_FRAME(1, 12), @@ -108,54 +155,70 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CB48[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Ash[] = +static const union AnimCmd *const sAnimTable_Ash[] = { - gFieldEffectObjectImageAnim_850CB48, + sAnim_Ash, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Ash = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Ash, gFieldEffectObjectPicTable_Ash, gDummySpriteAffineAnimTable, UpdateAshFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Ash = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_Ash, + .images = sPicTable_Ash, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateAshFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_SurfBlob[] = { +static const struct SpriteFrameImage sPicTable_SurfBlob[] = { overworld_frame(gFieldEffectObjectPic_SurfBlob, 4, 4, 0), overworld_frame(gFieldEffectObjectPic_SurfBlob, 4, 4, 1), overworld_frame(gFieldEffectObjectPic_SurfBlob, 4, 4, 2), }; -const union AnimCmd gSurfBlobAnim_FaceSouth[] = +static const union AnimCmd sSurfBlobAnim_FaceSouth[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gSurfBlobAnim_FaceNorth[] = +static const union AnimCmd sSurfBlobAnim_FaceNorth[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gSurfBlobAnim_FaceWest[] = +static const union AnimCmd sSurfBlobAnim_FaceWest[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_JUMP(0), }; -const union AnimCmd gSurfBlobAnim_FaceEast[] = +static const union AnimCmd sSurfBlobAnim_FaceEast[] = { ANIMCMD_FRAME(2, 1, .hFlip = TRUE), ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_SurfBlob[] = +static const union AnimCmd *const sAnimTable_SurfBlob[] = { - gSurfBlobAnim_FaceSouth, - gSurfBlobAnim_FaceNorth, - gSurfBlobAnim_FaceWest, - gSurfBlobAnim_FaceEast, + sSurfBlobAnim_FaceSouth, + sSurfBlobAnim_FaceNorth, + sSurfBlobAnim_FaceWest, + sSurfBlobAnim_FaceEast, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_32x32, gFieldEffectObjectImageAnimTable_SurfBlob, gFieldEffectObjectPicTable_SurfBlob, gDummySpriteAffineAnimTable, UpdateSurfBlobFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_SurfBlob = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_32x32, + .anims = sAnimTable_SurfBlob, + .images = sPicTable_SurfBlob, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateSurfBlobFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Arrow[] = { +static const struct SpriteFrameImage sPicTable_Arrow[] = { overworld_frame(gFieldEffectObjectPic_Arrow, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_Arrow, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_Arrow, 2, 2, 2), @@ -166,51 +229,59 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_Arrow[] = { overworld_frame(gFieldEffectObjectPic_Arrow, 2, 2, 7), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CC1C[] = +static const union AnimCmd sArrowAnim_South[] = { ANIMCMD_FRAME(3, 32), ANIMCMD_FRAME(7, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CC28[] = +static const union AnimCmd sArrowAnim_North[] = { ANIMCMD_FRAME(0, 32), ANIMCMD_FRAME(4, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CC34[] = +static const union AnimCmd sArrowAnim_West[] = { ANIMCMD_FRAME(1, 32), ANIMCMD_FRAME(5, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CC40[] = +static const union AnimCmd sArrowAnim_East[] = { ANIMCMD_FRAME(2, 32), ANIMCMD_FRAME(6, 32), ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Arrow[] = +static const union AnimCmd *const sAnimTable_Arrow[] = { - gFieldEffectObjectImageAnim_850CC1C, - gFieldEffectObjectImageAnim_850CC28, - gFieldEffectObjectImageAnim_850CC34, - gFieldEffectObjectImageAnim_850CC40, + sArrowAnim_South, + sArrowAnim_North, + sArrowAnim_West, + sArrowAnim_East, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Arrow, gFieldEffectObjectPicTable_Arrow, gDummySpriteAffineAnimTable, SpriteCallbackDummy}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Arrow = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_Arrow, + .images = sPicTable_Arrow, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_GroundImpactDust[] = { +static const struct SpriteFrameImage sPicTable_GroundImpactDust[] = { overworld_frame(gFieldEffectObjectPic_GroundImpactDust, 2, 1, 0), overworld_frame(gFieldEffectObjectPic_GroundImpactDust, 2, 1, 1), overworld_frame(gFieldEffectObjectPic_GroundImpactDust, 2, 1, 2), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CC8C[] = +static const union AnimCmd sAnim_GroundImpactDust[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -218,21 +289,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CC8C[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_GroundImpactDust[] = +static const union AnimCmd *const sAnimTable_GroundImpactDust[] = { - gFieldEffectObjectImageAnim_850CC8C, + sAnim_GroundImpactDust, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_GroundImpactDust, gFieldEffectObjectPicTable_GroundImpactDust, gDummySpriteAffineAnimTable, sub_8156194}; +const struct SpriteTemplate gFieldEffectObjectTemplate_GroundImpactDust = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_GroundImpactDust, + .images = sPicTable_GroundImpactDust, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateJumpImpactEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeHopTallGrass[] = { - overworld_frame(gFieldEffectObjectPic_BikeHopTallGrass, 2, 1, 0), - overworld_frame(gFieldEffectObjectPic_BikeHopTallGrass, 2, 1, 1), - overworld_frame(gFieldEffectObjectPic_BikeHopTallGrass, 2, 1, 2), - overworld_frame(gFieldEffectObjectPic_BikeHopTallGrass, 2, 1, 3), +static const struct SpriteFrameImage sPicTable_JumpTallGrass[] = { + overworld_frame(gFieldEffectObjectPic_JumpTallGrass, 2, 1, 0), + overworld_frame(gFieldEffectObjectPic_JumpTallGrass, 2, 1, 1), + overworld_frame(gFieldEffectObjectPic_JumpTallGrass, 2, 1, 2), + overworld_frame(gFieldEffectObjectPic_JumpTallGrass, 2, 1, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CCD8[] = +static const union AnimCmd sAnim_JumpTallGrass[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -241,171 +320,203 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CCD8[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_BikeHopTallGrass[] = +static const union AnimCmd *const sAnimTable_JumpTallGrass[] = { - gFieldEffectObjectImageAnim_850CCD8, + sAnim_JumpTallGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopTallGrass = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_BikeHopTallGrass, gFieldEffectObjectPicTable_BikeHopTallGrass, gDummySpriteAffineAnimTable, sub_8156194}; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpTallGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_JumpTallGrass, + .images = sPicTable_JumpTallGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateJumpImpactEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_SandFootprints[] = { +static const struct SpriteFrameImage sPicTable_SandFootprints[] = { overworld_frame(gFieldEffectObjectPic_SandFootprints, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_SandFootprints, 2, 2, 1), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD18[] = +static const union AnimCmd sSandFootprintsAnim_South[] = { ANIMCMD_FRAME(0, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD20[] = +static const union AnimCmd sSandFootprintsAnim_North[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD28[] = +static const union AnimCmd sSandFootprintsAnim_West[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD30[] = +static const union AnimCmd sSandFootprintsAnim_East[] = { ANIMCMD_FRAME(1, 1, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_SandFootprints[] = +static const union AnimCmd *const sAnimTable_SandFootprints[] = { - gFieldEffectObjectImageAnim_850CD18, - gFieldEffectObjectImageAnim_850CD18, - gFieldEffectObjectImageAnim_850CD20, - gFieldEffectObjectImageAnim_850CD28, - gFieldEffectObjectImageAnim_850CD30, + sSandFootprintsAnim_South, + sSandFootprintsAnim_South, + sSandFootprintsAnim_North, + sSandFootprintsAnim_West, + sSandFootprintsAnim_East, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_SandFootprints, gFieldEffectObjectPicTable_SandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_SandFootprints = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_SandFootprints, + .images = sPicTable_SandFootprints, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_DeepSandFootprints[] = { +static const struct SpriteFrameImage sPicTable_DeepSandFootprints[] = { overworld_frame(gFieldEffectObjectPic_DeepSandFootprints, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_DeepSandFootprints, 2, 2, 1), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD74[] = +static const union AnimCmd sDeepSandFootprintsAnim_South[] = { ANIMCMD_FRAME(0, 1, .vFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD7C[] = +static const union AnimCmd sDeepSandFootprintsAnim_North[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD84[] = +static const union AnimCmd sDeepSandFootprintsAnim_West[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CD8C[] = +static const union AnimCmd sDeepSandFootprintsAnim_East[] = { ANIMCMD_FRAME(1, 1, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_DeepSandFootprints[] = +static const union AnimCmd *const sAnimTable_DeepSandFootprints[] = { - gFieldEffectObjectImageAnim_850CD74, - gFieldEffectObjectImageAnim_850CD74, - gFieldEffectObjectImageAnim_850CD7C, - gFieldEffectObjectImageAnim_850CD84, - gFieldEffectObjectImageAnim_850CD8C, + sDeepSandFootprintsAnim_South, + sDeepSandFootprintsAnim_South, + sDeepSandFootprintsAnim_North, + sDeepSandFootprintsAnim_West, + sDeepSandFootprintsAnim_East, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_DeepSandFootprints, gFieldEffectObjectPicTable_DeepSandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_DeepSandFootprints, + .images = sPicTable_DeepSandFootprints, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeTireTracks[] = { +static const struct SpriteFrameImage sPicTable_BikeTireTracks[] = { overworld_frame(gFieldEffectObjectPic_BikeTireTracks, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_BikeTireTracks, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_BikeTireTracks, 2, 2, 2), overworld_frame(gFieldEffectObjectPic_BikeTireTracks, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CDE0[] = +static const union AnimCmd sBikeTireTracksAnim_South[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CDE8[] = +static const union AnimCmd sBikeTireTracksAnim_North[] = { ANIMCMD_FRAME(2, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CDF0[] = +static const union AnimCmd sBikeTireTracksAnim_West[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CDF8[] = +static const union AnimCmd sBikeTireTracksAnim_East[] = { ANIMCMD_FRAME(1, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CE00[] = +static const union AnimCmd sBikeTireTracksAnim_SECornerTurn[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CE08[] = +static const union AnimCmd sBikeTireTracksAnim_SWCornerTurn[] = { ANIMCMD_FRAME(0, 1, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CE10[] = +static const union AnimCmd sBikeTireTracksAnim_NWCornerTurn[] = { ANIMCMD_FRAME(3, 1, .hFlip = TRUE), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CE18[] = +static const union AnimCmd sBikeTireTracksAnim_NECornerTurn[] = { ANIMCMD_FRAME(3, 1), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_BikeTireTracks[] = +static const union AnimCmd *const sAnimTable_BikeTireTracks[] = { - gFieldEffectObjectImageAnim_850CDE0, - gFieldEffectObjectImageAnim_850CDE0, - gFieldEffectObjectImageAnim_850CDE8, - gFieldEffectObjectImageAnim_850CDF0, - gFieldEffectObjectImageAnim_850CDF8, - gFieldEffectObjectImageAnim_850CE00, - gFieldEffectObjectImageAnim_850CE08, - gFieldEffectObjectImageAnim_850CE10, - gFieldEffectObjectImageAnim_850CE18, + sBikeTireTracksAnim_South, + sBikeTireTracksAnim_South, + sBikeTireTracksAnim_North, + sBikeTireTracksAnim_West, + sBikeTireTracksAnim_East, + sBikeTireTracksAnim_SECornerTurn, + sBikeTireTracksAnim_SWCornerTurn, + sBikeTireTracksAnim_NWCornerTurn, + sBikeTireTracksAnim_NECornerTurn, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_BikeTireTracks, gFieldEffectObjectPicTable_BikeTireTracks, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_BikeTireTracks, + .images = sPicTable_BikeTireTracks, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeHopBigSplash[] = { - overworld_frame(gFieldEffectObjectPic_BikeHopBigSplash, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_BikeHopBigSplash, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_BikeHopBigSplash, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_BikeHopBigSplash, 2, 2, 3), +static const struct SpriteFrameImage sPicTable_JumpBigSplash[] = { + overworld_frame(gFieldEffectObjectPic_JumpBigSplash, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_JumpBigSplash, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_JumpBigSplash, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_JumpBigSplash, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CE7C[] = +static const union AnimCmd sAnim_JumpBigSplash[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -414,26 +525,34 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CE7C[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_BikeHopBigSplash[] = +static const union AnimCmd *const sAnimTable_JumpBigSplash[] = { - gFieldEffectObjectImageAnim_850CE7C, + sAnim_JumpBigSplash, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopBigSplash = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_BikeHopBigSplash, gFieldEffectObjectPicTable_BikeHopBigSplash, gDummySpriteAffineAnimTable, sub_8156194}; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpBigSplash = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_JumpBigSplash, + .images = sPicTable_JumpBigSplash, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateJumpImpactEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Splash[] = { +static const struct SpriteFrameImage sPicTable_Splash[] = { overworld_frame(gFieldEffectObjectPic_Splash, 2, 1, 0), overworld_frame(gFieldEffectObjectPic_Splash, 2, 1, 1), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CEBC[] = +static const union AnimCmd sAnim_Splash_0[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850CEC8[] = +static const union AnimCmd sAnim_Splash_1[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -446,21 +565,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CEC8[] = ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Splash[] = +static const union AnimCmd *const sAnimTable_Splash[] = { - gFieldEffectObjectImageAnim_850CEBC, - gFieldEffectObjectImageAnim_850CEC8, + sAnim_Splash_0, + sAnim_Splash_1, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Splash = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_Splash, gFieldEffectObjectPicTable_Splash, gDummySpriteAffineAnimTable, UpdateSplashFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Splash = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_Splash, + .images = sPicTable_Splash, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateSplashFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_BikeHopSmallSplash[] = { - overworld_frame(gFieldEffectObjectPic_BikeHopSmallSplash, 2, 1, 0), - overworld_frame(gFieldEffectObjectPic_BikeHopSmallSplash, 2, 1, 1), - overworld_frame(gFieldEffectObjectPic_BikeHopSmallSplash, 2, 1, 2), +static const struct SpriteFrameImage sPicTable_JumpSmallSplash[] = { + overworld_frame(gFieldEffectObjectPic_JumpSmallSplash, 2, 1, 0), + overworld_frame(gFieldEffectObjectPic_JumpSmallSplash, 2, 1, 1), + overworld_frame(gFieldEffectObjectPic_JumpSmallSplash, 2, 1, 2), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CF24[] = +static const union AnimCmd sAnim_JumpSmallSplash[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -468,21 +595,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CF24[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_BikeHopSmallSplash[] = +static const union AnimCmd *const sAnimTable_JumpSmallSplash[] = { - gFieldEffectObjectImageAnim_850CF24, + sAnim_JumpSmallSplash, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_BikeHopSmallSplash = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_BikeHopSmallSplash, gFieldEffectObjectPicTable_BikeHopSmallSplash, gDummySpriteAffineAnimTable, sub_8156194}; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpSmallSplash = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_JumpSmallSplash, + .images = sPicTable_JumpSmallSplash, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateJumpImpactEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_LongGrass[] = { +static const struct SpriteFrameImage sPicTable_LongGrass[] = { overworld_frame(gFieldEffectObjectPic_LongGrass, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_LongGrass, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_LongGrass, 2, 2, 2), overworld_frame(gFieldEffectObjectPic_LongGrass, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CF70[] = +static const union AnimCmd sAnim_LongGrass[] = { ANIMCMD_FRAME(1, 3), ANIMCMD_FRAME(2, 3), @@ -494,23 +629,31 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CF70[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_LongGrass[] = +static const union AnimCmd *const sAnimTable_LongGrass[] = { - gFieldEffectObjectImageAnim_850CF70, + sAnim_LongGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_LongGrass, gFieldEffectObjectPicTable_LongGrass, gDummySpriteAffineAnimTable, UpdateLongGrassFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_LongGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_LongGrass, + .images = sPicTable_LongGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateLongGrassFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown16[] = { - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 3), - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 4), - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 6), +static const struct SpriteFrameImage sPicTable_JumpLongGrass[] = { + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 4), + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 6), }; -const union AnimCmd gFieldEffectObjectImageAnim_850CFDC[] = +static const union AnimCmd sAnim_JumpLongGrass[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -521,15 +664,23 @@ const union AnimCmd gFieldEffectObjectImageAnim_850CFDC[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown16[] = +static const union AnimCmd *const sAnimTable_JumpLongGrass[] = { - gFieldEffectObjectImageAnim_850CFDC, + sAnim_JumpLongGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown16 = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown16, gFieldEffectObjectPicTable_Unknown16, gDummySpriteAffineAnimTable, sub_8156194}; +const struct SpriteTemplate gFieldEffectObjectTemplate_JumpLongGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_JumpLongGrass, + .images = sPicTable_JumpLongGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateJumpImpactEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown17[] = { - overworld_frame(gFieldEffectObjectPic_Unknown16, 2, 2, 6), +static const struct SpriteFrameImage sPicTable_UnusedGrass[] = { + overworld_frame(gFieldEffectObjectPic_JumpLongGrass, 2, 2, 6), overworld_frame(gFieldEffectObjectPic_Unknown17, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_Unknown17, 2, 2, 1), overworld_frame(gFieldEffectObjectPic_Unknown17, 2, 2, 2), @@ -540,7 +691,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown17[] = { overworld_frame(gFieldEffectObjectPic_Unknown17, 2, 2, 7), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D05C[] = +static const union AnimCmd sAnim_UnusedGrass[] = { ANIMCMD_FRAME(0, 10), ANIMCMD_FRAME(1, 4), @@ -554,21 +705,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D05C[] = ANIMCMD_JUMP(7), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown17[] = +static const union AnimCmd *const sAnimTable_UnusedGrass[] = { - gFieldEffectObjectImageAnim_850D05C, + sAnim_UnusedGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown17 = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown17, gFieldEffectObjectPicTable_Unknown17, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_UnusedGrass, + .images = sPicTable_UnusedGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown18[] = { - overworld_frame(gFieldEffectObjectPic_Unknown18, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown18, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_Unknown18, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_Unknown18, 2, 2, 3), +static const struct SpriteFrameImage sPicTable_UnusedGrass2[] = { + overworld_frame(gFieldEffectObjectPic_UnusedGrass2, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_UnusedGrass2, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_UnusedGrass2, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_UnusedGrass2, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D0C0[] = +static const union AnimCmd sAnim_UnusedGrass2[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -579,21 +738,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D0C0[] = ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown18[] = +static const union AnimCmd *const sAnimTable_UnusedGrass2[] = { - gFieldEffectObjectImageAnim_850D0C0, + sAnim_UnusedGrass2, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown18 = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown18, gFieldEffectObjectPicTable_Unknown18, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedGrass2 = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_UnusedGrass2, + .images = sPicTable_UnusedGrass2, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown19[] = { - overworld_frame(gFieldEffectObjectPic_Unknown19, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown19, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_Unknown19, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_Unknown19, 2, 2, 3), +static const struct SpriteFrameImage sPicTable_UnusedSand[] = { + overworld_frame(gFieldEffectObjectPic_UnusedSand, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_UnusedSand, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_UnusedSand, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_UnusedSand, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D118[] = +static const union AnimCmd sAnim_UnusedSand[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -602,20 +769,28 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D118[] = ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown19[] = +static const union AnimCmd *const sAnimTable_UnusedSand[] = { - gFieldEffectObjectImageAnim_850D118, + sAnim_UnusedSand, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown19 = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown19, gFieldEffectObjectPicTable_Unknown19, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_UnusedSand = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_UnusedSand, + .images = sPicTable_UnusedSand, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown29[] = { - overworld_frame(gFieldEffectObjectPic_Unknown29, 2, 1, 0), - overworld_frame(gFieldEffectObjectPic_Unknown29, 2, 1, 1), - overworld_frame(gFieldEffectObjectPic_Unknown29, 2, 1, 2), +static const struct SpriteFrameImage sPicTable_SandPile[] = { + overworld_frame(gFieldEffectObjectPic_SandPile, 2, 1, 0), + overworld_frame(gFieldEffectObjectPic_SandPile, 2, 1, 1), + overworld_frame(gFieldEffectObjectPic_SandPile, 2, 1, 2), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D160[] = +static const union AnimCmd sAnim_SandPile[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -623,21 +798,29 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D160[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown29[] = +static const union AnimCmd *const sAnimTable_SandPile[] = { - gFieldEffectObjectImageAnim_850D160, + sAnim_SandPile, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown29 = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x8, gFieldEffectObjectImageAnimTable_Unknown29, gFieldEffectObjectPicTable_Unknown29, gDummySpriteAffineAnimTable, UpdateSandPileFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_SandPile = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x8, + .anims = sAnimTable_SandPile, + .images = sPicTable_SandPile, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateSandPileFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown20[] = { - overworld_frame(gFieldEffectObjectPic_Unknown20, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown20, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_Unknown20, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_Unknown20, 2, 2, 3), +static const struct SpriteFrameImage sPicTable_WaterSurfacing[] = { + overworld_frame(gFieldEffectObjectPic_WaterSurfacing, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_WaterSurfacing, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_WaterSurfacing, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_WaterSurfacing, 2, 2, 3), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D1AC[] = +static const union AnimCmd sAnim_WaterSurfacing[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -648,14 +831,22 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D1AC[] = ANIMCMD_JUMP(0), }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown20[] = +static const union AnimCmd *const sAnimTable_WaterSurfacing[] = { - gFieldEffectObjectImageAnim_850D1AC, + sAnim_WaterSurfacing, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown20 = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown20, gFieldEffectObjectPicTable_Unknown20, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_WaterSurfacing = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_WaterSurfacing, + .images = sPicTable_WaterSurfacing, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const union AffineAnimCmd gFieldEffectObjectRotScalAnim_850D1E4[] = +static const union AffineAnimCmd sAffineAnim_ReflectionDistortion_0[] = { AFFINEANIMCMD_FRAME(0xFF00, 0x100, -128, 0), AFFINEANIMCMD_FRAME(0x1, 0x0, 0, 4), @@ -669,7 +860,7 @@ const union AffineAnimCmd gFieldEffectObjectRotScalAnim_850D1E4[] = AFFINEANIMCMD_JUMP(1), }; -const union AffineAnimCmd gFieldEffectObjectRotScalAnim_850D234[] = +static const union AffineAnimCmd sAffineAnim_ReflectionDistortion_1[] = { AFFINEANIMCMD_FRAME(0x100, 0x100, -128, 0), AFFINEANIMCMD_FRAME(0xFFFF, 0x0, 0, 4), @@ -683,24 +874,32 @@ const union AffineAnimCmd gFieldEffectObjectRotScalAnim_850D234[] = AFFINEANIMCMD_JUMP(1), }; -const union AffineAnimCmd *const gFieldEffectObjectRotScalAnimTable_Unknown21[] = +static const union AffineAnimCmd *const sAffineAnims_ReflectionDistortion[] = { - gFieldEffectObjectRotScalAnim_850D1E4, - gFieldEffectObjectRotScalAnim_850D234, + sAffineAnim_ReflectionDistortion_0, + sAffineAnim_ReflectionDistortion_1, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown21 = {0x0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gFieldEffectObjectRotScalAnimTable_Unknown21, SpriteCallbackDummy}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ReflectionDistortion = { + .tileTag = 0x0, + .paletteTag = 0xFFFF, + .oam = &gDummyOamData, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = sAffineAnims_ReflectionDistortion, + .callback = SpriteCallbackDummy, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_BerryTreeGrowthSparkle[] = { - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 3), - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 4), - overworld_frame(gFieldEffectObjectPic_BerryTreeGrowthSparkle, 2, 2, 5), +static const struct SpriteFrameImage sPicTable_Sparkle[] = { + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 4), + overworld_frame(gFieldEffectObjectPic_Sparkle, 2, 2, 5), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D2D4[] = +static const union AnimCmd sAnim_Sparkle[] = { ANIMCMD_FRAME(0, 8), ANIMCMD_FRAME(1, 8), @@ -725,14 +924,22 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D2D4[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_BerryTreeGrowthSparkle[] = +static const union AnimCmd *const sAnimTable_Sparkle[] = { - gFieldEffectObjectImageAnim_850D2D4, + sAnim_Sparkle, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_BerryTreeGrowthSparkle = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_BerryTreeGrowthSparkle, gFieldEffectObjectPicTable_BerryTreeGrowthSparkle, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Sparkle = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_Sparkle, + .images = sPicTable_Sparkle, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = WaitFieldEffectSpriteAnim, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_TreeDisguise[] = { +static const struct SpriteFrameImage sPicTable_TreeDisguise[] = { overworld_frame(gFieldEffectObjectPic_TreeDisguise, 2, 4, 0), overworld_frame(gFieldEffectObjectPic_TreeDisguise, 2, 4, 1), overworld_frame(gFieldEffectObjectPic_TreeDisguise, 2, 4, 2), @@ -742,13 +949,13 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_TreeDisguise[] = { overworld_frame(gFieldEffectObjectPic_TreeDisguise, 2, 4, 6), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D37C[] = +static const union AnimCmd sAnim_TreeDisguise[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850D384[] = +static const union AnimCmd sAnim_TreeDisguiseReveal[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -760,15 +967,23 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D384[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_TreeDisguise[] = +static const union AnimCmd *const sAnimTable_TreeDisguise[] = { - gFieldEffectObjectImageAnim_850D37C, - gFieldEffectObjectImageAnim_850D384, + sAnim_TreeDisguise, + sAnim_TreeDisguiseReveal, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_TreeDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_TreeDisguise = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x32, + .anims = sAnimTable_TreeDisguise, + .images = sPicTable_TreeDisguise, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateDisguiseFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_MountainDisguise[] = { +static const struct SpriteFrameImage sPicTable_MountainDisguise[] = { overworld_frame(gFieldEffectObjectPic_MountainDisguise, 2, 4, 0), overworld_frame(gFieldEffectObjectPic_MountainDisguise, 2, 4, 1), overworld_frame(gFieldEffectObjectPic_MountainDisguise, 2, 4, 2), @@ -778,13 +993,13 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_MountainDisguise[] = { overworld_frame(gFieldEffectObjectPic_MountainDisguise, 2, 4, 6), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D3FC[] = +static const union AnimCmd sAnim_MountainDisguise[] = { ANIMCMD_FRAME(0, 16), ANIMCMD_END, }; -const union AnimCmd gFieldEffectObjectImageAnim_850D404[] = +static const union AnimCmd sAnim_MountainDisguiseReveal[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -796,15 +1011,23 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D404[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_MountainDisguise[] = +static const union AnimCmd *const sAnimTable_MountainDisguise[] = { - gFieldEffectObjectImageAnim_850D3FC, - gFieldEffectObjectImageAnim_850D404, + sAnim_MountainDisguise, + sAnim_MountainDisguiseReveal, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x32, gFieldEffectObjectImageAnimTable_MountainDisguise, gFieldEffectObjectPicTable_MountainDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_MountainDisguise = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x32, + .anims = sAnimTable_MountainDisguise, + .images = sPicTable_MountainDisguise, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateDisguiseFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_SandDisguisePlaceholder[] = { +static const struct SpriteFrameImage sPicTable_SandDisguisePlaceholder[] = { overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 0), overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 1), overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 2), @@ -814,70 +1037,102 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_SandDisguisePlaceholder overworld_frame(gFieldEffectObjectPic_SandDisguisePlaceholder, 2, 4, 6), }; -const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_16x32, gFieldEffectObjectImageAnimTable_TreeDisguise, gFieldEffectObjectPicTable_SandDisguisePlaceholder, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_SandDisguisePlaceholder = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_16x32, + .anims = sAnimTable_TreeDisguise, + .images = sPicTable_SandDisguisePlaceholder, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateDisguiseFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Bird[] = { +static const struct SpriteFrameImage sPicTable_Bird[] = { obj_frame_tiles(gFieldEffectObjectPic_Bird), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D49C[] = +static const union AnimCmd sAnim_Bird[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Bird[] = +static const union AnimCmd *const sAnimTable_Bird[] = { - gFieldEffectObjectImageAnim_850D49C, + sAnim_Bird, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bird = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_32x32, gFieldEffectObjectImageAnimTable_Bird, gFieldEffectObjectPicTable_Bird, gDummySpriteAffineAnimTable, SpriteCallbackDummy}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Bird = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_32x32, + .anims = sAnimTable_Bird, + .images = sPicTable_Bird, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_ShortGrass[] = { +static const struct SpriteFrameImage sPicTable_ShortGrass[] = { overworld_frame(gFieldEffectObjectPic_ShortGrass, 2, 2, 0), overworld_frame(gFieldEffectObjectPic_ShortGrass, 2, 2, 1), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D4D0[] = +static const union AnimCmd sAnim_ShortGrass[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_ShortGrass[] = +static const union AnimCmd *const sAnimTable_ShortGrass[] = { - gFieldEffectObjectImageAnim_850D4D0, + sAnim_ShortGrass, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_ShortGrass, gFieldEffectObjectPicTable_ShortGrass, gDummySpriteAffineAnimTable, UpdateShortGrassFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_ShortGrass = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_ShortGrass, + .images = sPicTable_ShortGrass, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateShortGrassFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_HotSpringsWater[] = { +static const struct SpriteFrameImage sPicTable_HotSpringsWater[] = { obj_frame_tiles(gFieldEffectObjectPic_HotSpringsWater), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D500[] = +static const union AnimCmd sAnim_HotSpringsWater[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_HotSpringsWater[] = +static const union AnimCmd *const sAnimTable_HotSpringsWater[] = { - gFieldEffectObjectImageAnim_850D500, + sAnim_HotSpringsWater, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater = {0xFFFF, 0x1005, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_HotSpringsWater, gFieldEffectObjectPicTable_HotSpringsWater, gDummySpriteAffineAnimTable, UpdateHotSpringsWaterFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_HotSpringsWater = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_1, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_HotSpringsWater, + .images = sPicTable_HotSpringsWater, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateHotSpringsWaterFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_JumpOutOfAsh[] = { - overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 3), - overworld_frame(gFieldEffectObjectPic_JumpOutOfAsh, 2, 2, 4), +static const struct SpriteFrameImage sPicTable_AshPuff[] = { + overworld_frame(gFieldEffectObjectPic_AshPuff, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_AshPuff, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_AshPuff, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_AshPuff, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_AshPuff, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D54C[] = +static const union AnimCmd sAnim_AshPuff[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -887,33 +1142,33 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D54C[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_JumpOutOfAsh[] = +static const union AnimCmd *const sAnimTable_AshPuff[] = { - gFieldEffectObjectImageAnim_850D54C, + sAnim_AshPuff, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_JumpOutOfAsh = +const struct SpriteTemplate gFieldEffectObjectTemplate_AshPuff = { .tileTag = 0xFFFF, - .paletteTag = 0x100D, + .paletteTag = FLDEFF_PAL_TAG_ASH, .oam = &gObjectEventBaseOam_16x16, - .anims = gFieldEffectObjectImageAnimTable_JumpOutOfAsh, - .images = gFieldEffectObjectPicTable_JumpOutOfAsh, + .anims = sAnimTable_AshPuff, + .images = sPicTable_AshPuff, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_PopOutOfAsh + .callback = SpriteCB_AshPuff }; -const struct SpritePalette gFieldEffectObjectPaletteInfo2 = {gFieldEffectObjectPalette2, 0x100D}; +const struct SpritePalette gSpritePalette_Ash = {gFieldEffectPal_Ash, FLDEFF_PAL_TAG_ASH}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_LavaridgeGymWarp[] = { - overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 3), - overworld_frame(gFieldEffectObjectPic_LavaridgeGymWarp, 2, 2, 4), +static const struct SpriteFrameImage sPicTable_AshLaunch[] = { + overworld_frame(gFieldEffectObjectPic_AshLaunch, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_AshLaunch, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_AshLaunch, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_AshLaunch, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_AshLaunch, 2, 2, 4), }; -const union AnimCmd gFieldEffectObjectImageAnim_LavaridgeGymWarp[] = +static const union AnimCmd sAnim_AshLaunch[] = { ANIMCMD_FRAME(0, 6), ANIMCMD_FRAME(1, 6), @@ -923,23 +1178,23 @@ const union AnimCmd gFieldEffectObjectImageAnim_LavaridgeGymWarp[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_LavaridgeGymWarp[] = +static const union AnimCmd *const sAnimTable_AshLaunch[] = { - gFieldEffectObjectImageAnim_LavaridgeGymWarp, + sAnim_AshLaunch, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_LavaridgeGymWarp = +const struct SpriteTemplate gFieldEffectObjectTemplate_AshLaunch = { .tileTag = 0xFFFF, - .paletteTag = 0x100D, + .paletteTag = FLDEFF_PAL_TAG_ASH, .oam = &gObjectEventBaseOam_16x16, - .anims = gFieldEffectObjectImageAnimTable_LavaridgeGymWarp, - .images = gFieldEffectObjectPicTable_LavaridgeGymWarp, + .anims = sAnimTable_AshLaunch, + .images = sPicTable_AshLaunch, .affineAnims = gDummySpriteAffineAnimTable, - .callback = SpriteCB_LavaridgeGymWarp + .callback = SpriteCB_AshLaunch }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Bubbles[] = { +static const struct SpriteFrameImage sPicTable_Bubbles[] = { overworld_frame(gFieldEffectObjectPic_Bubbles, 2, 4, 0), overworld_frame(gFieldEffectObjectPic_Bubbles, 2, 4, 1), overworld_frame(gFieldEffectObjectPic_Bubbles, 2, 4, 2), @@ -950,7 +1205,7 @@ const struct SpriteFrameImage gFieldEffectObjectPicTable_Bubbles[] = { overworld_frame(gFieldEffectObjectPic_Bubbles, 2, 4, 7), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D624[] = +static const union AnimCmd sAnim_Bubbles[] = { ANIMCMD_FRAME(0, 4), ANIMCMD_FRAME(1, 4), @@ -963,19 +1218,27 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D624[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Bubbles[] = +static const union AnimCmd *const sAnimTable_Bubbles[] = { - gFieldEffectObjectImageAnim_850D624, + sAnim_Bubbles, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles = {0xFFFF, 0x1004, &gObjectEventBaseOam_16x32, gFieldEffectObjectImageAnimTable_Bubbles, gFieldEffectObjectPicTable_Bubbles, gDummySpriteAffineAnimTable, UpdateBubblesFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Bubbles = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x32, + .anims = sAnimTable_Bubbles, + .images = sPicTable_Bubbles, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateBubblesFieldEffect, +}; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Unknown35[] = { - overworld_frame(gFieldEffectObjectPic_Unknown35, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_Unknown35, 2, 2, 1), +static const struct SpriteFrameImage sPicTable_SmallSparkle[] = { + overworld_frame(gFieldEffectObjectPic_SmallSparkle, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_SmallSparkle, 2, 2, 1), }; -const union AnimCmd gFieldEffectObjectImageAnim_850D674[] = +static const union AnimCmd sAnim_SmallSparkle[] = { ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(1, 5), @@ -983,28 +1246,44 @@ const union AnimCmd gFieldEffectObjectImageAnim_850D674[] = ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Unknown35[] = +static const union AnimCmd *const sAnimTable_SmallSparkle[] = { - gFieldEffectObjectImageAnim_850D674, + sAnim_SmallSparkle, }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Unknown35 = {0xFFFF, 0x100F, &gObjectEventBaseOam_16x16, gFieldEffectObjectImageAnimTable_Unknown35, gFieldEffectObjectPicTable_Unknown35, gDummySpriteAffineAnimTable, UpdateSparkleFieldEffect}; +const struct SpriteTemplate gFieldEffectObjectTemplate_SmallSparkle = { + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_SMALL_SPARKLE, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_SmallSparkle, + .images = sPicTable_SmallSparkle, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateSparkleFieldEffect, +}; -const struct SpritePalette gFieldEffectObjectPaletteInfo3 = {gFieldEffectObjectPalette3, 0x100F}; +const struct SpritePalette gSpritePalette_SmallSparkle = {gFieldEffectPal_SmallSparkle, FLDEFF_PAL_TAG_SMALL_SPARKLE}; -const union AnimCmd gFieldEffectObjectImageAnim_850D6A8[] = { +static const union AnimCmd sAnim_Rayquaza[] = { ANIMCMD_FRAME(0, 1), ANIMCMD_END, }; -const union AnimCmd *const gFieldEffectObjectImageAnimTable_Rayquaza[] = { - gFieldEffectObjectImageAnim_850D6A8, +static const union AnimCmd *const sAnimTable_Rayquaza[] = { + sAnim_Rayquaza, }; -const struct SpriteFrameImage gFieldEffectObjectPicTable_Rayquaza[] = { +const struct SpriteFrameImage sPicTable_Rayquaza[] = { overworld_frame(gObjectEventPic_Rayquaza, 4, 4, 0), }; -const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza = {0xFFFF, 0xFFFF, &gObjectEventBaseOam_32x32, gFieldEffectObjectImageAnimTable_Rayquaza, gFieldEffectObjectPicTable_Rayquaza, gDummySpriteAffineAnimTable, sub_8155F80}; +const struct SpriteTemplate gFieldEffectObjectTemplate_Rayquaza = { + .tileTag = 0xFFFF, + .paletteTag = 0xFFFF, + .oam = &gObjectEventBaseOam_32x32, + .anims = sAnimTable_Rayquaza, + .images = sPicTable_Rayquaza, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateRayquazaSpotlightEffect, +}; -const struct SpritePalette gFieldEffectObjectPaletteInfoUnused = {gObjectEventPalette2, 0x1011}; +static const struct SpritePalette sSpritePalette_Unused = {gObjectEventPalette2, FLDEFF_PAL_TAG_UNKNOWN}; diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index fd4d8b95d..bce0b7a21 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -2698,7 +2698,8 @@ const u8 gMonIcon_Deoxys[] = INCBIN_U8("graphics/pokemon/deoxys/icon.4bpp"); const u8 gMonIcon_DeoxysSpeed[] = INCBIN_U8("graphics/pokemon/deoxys/icon_speed.4bpp"); const u8 gMonIcon_DeoxysSpeedWide[] = INCBIN_U8("graphics/unused/deoxys_speed_icon_wide.4bpp"); -asm(".space 0x6800"); +// Probably the leftover space from the other Deoxys forms +static const u8 sEmpty[0x6800] = {0}; const u16 gUnknown_D437F8[] = INCBIN_U16("graphics/unknown/unknown_D437F8.bin"); diff --git a/src/data/graphics/rayquaza_scene.h b/src/data/graphics/rayquaza_scene.h index d0269980c..633213db8 100644 --- a/src/data/graphics/rayquaza_scene.h +++ b/src/data/graphics/rayquaza_scene.h @@ -1,73 +1,62 @@ -const u32 gRaySceneGroudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/groudon.4bpp.lz"); -const u32 gRaySceneGroudon2_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/groudon_shoulder.4bpp.lz"); -const u32 gRaySceneGroudon3_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/groudon_claw.4bpp.lz"); - -const u32 gRaySceneKyogre_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/kyogre.4bpp.lz"); -const u32 gRaySceneKyogre2_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/kyogre_shoulder.4bpp.lz"); -const u32 gRaySceneKyogre3_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/kyogre_fin.4bpp.lz"); - -const u32 gRaySceneGroudon_Pal[] = INCBIN_U32("graphics/rayquaza_scene/groudon.gbapal.lz"); -const u32 gRaySceneKyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/kyogre.gbapal.lz"); - -const u32 gRaySceneClouds_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/clouds.4bpp.lz"); -const u32 gRaySceneClouds_Pal[] = INCBIN_U32("graphics/rayquaza_scene/clouds.gbapal.lz"); // pal 1 clouds, pal 2 rain -const u32 gRaySceneClouds1_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/clouds1.bin.lz"); -const u32 gRaySceneClouds2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/clouds2.bin.lz"); -const u32 gRaySceneClouds3_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/clouds3.bin.lz"); - -const u32 gRaySceneSmoke_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/smoke.4bpp.lz"); -const u32 gRaySceneSmoke_Pal[] = INCBIN_U32("graphics/rayquaza_scene/smoke.gbapal.lz"); - -const u32 gRaySceneRayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza.8bpp.lz"); -const u32 gRaySceneRayquaza_Pal[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza.gbapal.lz"); -const u32 gRaySceneRayquaza_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza.bin.lz"); - -const u32 gRaySceneOvercast_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/overcast.4bpp.lz"); // uses pal 2 of gRaySceneRayquaza_Pal -const u32 gRaySceneOvercast_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/overcast.bin.lz"); - -const u32 gRaySceneRayquazaFly1_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_fly1.4bpp.lz"); -const u32 gRaySceneRayquazaTail_Gfx[] = INCBIN_U32( "graphics/rayquaza_scene/rayquaza_tail_fix.4bpp.lz"); // for some reason there are an extra 0xC bytes at the end of the original 4bpp, so in order to produce the correct lz, we have to cat the bytes at the end with a make rule. not sure why those bytes are there, it may have been a bug in Game Freak's software. - -const u32 gRaySceneOvercast2_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/overcast2.4bpp.lz"); - -const u32 gRaySceneRayquazaLight_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_light.4bpp.lz"); // uses pal 2 of gRaySceneOvercast2_Pal - -const u32 gRaySceneOvercast2_Pal[] = INCBIN_U32("graphics/rayquaza_scene/overcast2.gbapal.lz"); -const u32 gRaySceneOvercast2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/overcast2.bin.lz"); - -const u32 gRaySceneRayquazaLight_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_light.bin.lz"); - -const u32 gRaySceneChaseBg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/chase_bg.4bpp.lz"); -const u32 gRaySceneChaseBg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/chase_bg.bin.lz"); - -const u32 gRaySceneChaseStreaks_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/chase_streaks.4bpp.lz"); -const u32 gRaySceneChaseStreaks_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/chase_streaks.bin.lz"); - -const u32 gRaySceneRayquazaChase_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_chase.4bpp.lz"); -const u32 gRayChaseRayquazaChase_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_chase.bin.lz"); -const u32 gRayChaseRayquazaChase2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_chase2.bin.lz"); - -const u32 gRaySceneChase_Pal[] = INCBIN_U32("graphics/rayquaza_scene/chase.gbapal.lz"); - -const u32 gRaySceneGroudonLeft_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/groudon_left.4bpp.lz"); -const u32 gRaySceneGroudonTail_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/groudon_tail.4bpp.lz"); - -const u32 gRaySceneKyogreRight_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/kyogre_right.4bpp.lz"); - -const u32 gRaySceneRayquazaHover_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_hover.4bpp.lz"); -const u32 gRaySceneRayquazaFlyIn_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_flyin.4bpp.lz"); - -const u32 gRaySceneSplash_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/splash.4bpp.lz"); - -const u32 gRaySceneGroudonLeft_Pal[] = INCBIN_U32("graphics/rayquaza_scene/groudon_left.gbapal.lz"); -const u32 gRaySceneKyogreRight_Pal[] = INCBIN_U32("graphics/rayquaza_scene/kyogre_right.gbapal.lz"); -const u32 gRaySceneRayquazaHover_Pal[] = INCBIN_U32("graphics/rayquaza_scene/rayquaza_hover.gbapal.lz"); - -const u32 gRaySceneSplash_Pal[] = INCBIN_U32("graphics/rayquaza_scene/splash.gbapal.lz"); - -const u32 gRaySceneHushBg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/hush_bg.4bpp.lz"); -const u32 gRaySceneHushRing_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/hush_ring.8bpp.lz"); -const u32 gRaySceneHushBg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/hush_bg.bin.lz"); -const u32 gRaySceneHushRing_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/hush_ring.bin.lz"); -const u32 gRaySceneHushRing_Map[] = INCBIN_U32("graphics/rayquaza_scene/hush_ring_map.bin.lz"); -const u32 gRaySceneHushBg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/hush_bg.gbapal.lz"); +// Scene 1 (RAY_ANIM_DUO_FIGHT / RAY_ANIM_DUO_FIGHT_PRE) +const u32 gRaySceneDuoFight_Groudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.4bpp.lz"); +const u32 gRaySceneDuoFight_GroudonShoulder_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_shoulder.4bpp.lz"); +const u32 gRaySceneDuoFight_GroudonClaw_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon_claw.4bpp.lz"); +const u32 gRaySceneDuoFight_Kyogre_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.4bpp.lz"); +const u32 gRaySceneDuoFight_KyogrePectoralFin_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_pectoral_fin.4bpp.lz"); +const u32 gRaySceneDuoFight_KyogreDorsalFin_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre_dorsal_fin.4bpp.lz"); +const u32 gRaySceneDuoFight_Groudon_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/groudon.gbapal.lz"); +const u32 gRaySceneDuoFight_Kyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/kyogre.gbapal.lz"); +const u32 gRaySceneDuoFight_Clouds_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.4bpp.lz"); +const u32 gRaySceneDuoFight_Clouds_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds.gbapal.lz"); // pal 1 clouds, pal 2 rain +const u32 gRaySceneDuoFight_Clouds1_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds1.bin.lz"); +const u32 gRaySceneDuoFight_Clouds2_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds2.bin.lz"); +const u32 gRaySceneDuoFight_Clouds3_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_1/clouds3.bin.lz"); + +// Scene 2 (RAY_ANIM_TAKES_FLIGHT) +const u32 gRaySceneTakesFlight_Smoke_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/smoke.4bpp.lz"); +const u32 gRaySceneTakesFlight_Smoke_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/smoke.gbapal.lz"); +const u32 gRaySceneTakesFlight_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/rayquaza.8bpp.lz"); +const u32 gRaySceneTakesFlight_Rayquaza_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/rayquaza.gbapal.lz"); +const u32 gRaySceneTakesFlight_Rayquaza_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/rayquaza.bin.lz"); +const u32 gRaySceneTakesFlight_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/bg.4bpp.lz"); // uses pal 2 of gRaySceneTakesFlight_Rayquaza_Pal +const u32 gRaySceneTakesFlight_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_2/bg.bin.lz"); + +// Scene 3 (RAY_ANIM_DESCENDS) +const u32 gRaySceneDescends_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/rayquaza.4bpp.lz"); +// for some reason there are an extra 0xC bytes at the end of the original rayquaza_tail.4bpp, so in order to produce the correct lz, +// we have to cat the bytes at the end with a make rule. not sure why those bytes are there, it may have been a bug in Game Freak's software. +const u32 gRaySceneDescends_RayquazaTail_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/rayquaza_tail_fix.4bpp.lz"); +const u32 gRaySceneDescends_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/bg.4bpp.lz"); +const u32 gRaySceneDescends_Light_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/light.4bpp.lz"); // uses pal 2 of gRaySceneDescends_Bg_Pal +const u32 gRaySceneDescends_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/bg.gbapal.lz"); +const u32 gRaySceneDescends_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/bg.bin.lz"); +const u32 gRaySceneDescends_Light_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_3/light.bin.lz"); + +// Scene 4 (RAY_ANIM_CHARGES) +const u32 gRaySceneCharges_Bg_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.4bpp.lz"); +const u32 gRaySceneCharges_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.bin.lz"); +const u32 gRaySceneCharges_Streaks_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.4bpp.lz"); +const u32 gRaySceneCharges_Streaks_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/streaks.bin.lz"); +const u32 gRaySceneCharges_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.4bpp.lz"); +const u32 gRaySceneCharges_Rayquaza_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/rayquaza.bin.lz"); +const u32 gRaySceneCharges_Orbs_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/orbs.bin.lz"); +const u32 gRaySceneCharges_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_4/bg.gbapal.lz"); + +// Scene 5 (RAY_ANIM_CHASES_AWAY) +const u32 gRaySceneChasesAway_Groudon_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/groudon.4bpp.lz"); +const u32 gRaySceneChasesAway_GroudonTail_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/groudon_tail.4bpp.lz"); +const u32 gRaySceneChasesAway_Kyogre_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre.4bpp.lz"); +const u32 gRaySceneChasesAway_Rayquaza_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/rayquaza.4bpp.lz"); +const u32 gRaySceneChasesAway_RayquazaTail_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/rayquaza_tail.4bpp.lz"); +const u32 gRaySceneChasesAway_KyogreSplash_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre_splash.4bpp.lz"); +const u32 gRaySceneChasesAway_Groudon_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/groudon.gbapal.lz"); +const u32 gRaySceneChasesAway_Kyogre_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre.gbapal.lz"); +const u32 gRaySceneChasesAway_Rayquaza_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/rayquaza.gbapal.lz"); +const u32 gRaySceneChasesAway_KyogreSplash_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/kyogre_splash.gbapal.lz"); +const u32 gRaySceneChasesAway_Light_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/light.4bpp.lz"); +const u32 gRaySceneChasesAway_Ring_Gfx[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/ring.8bpp.lz"); +const u32 gRaySceneChasesAway_Light_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/light.bin.lz"); +const u32 gRaySceneChasesAway_Bg_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/bg.bin.lz"); +const u32 gRaySceneChasesAway_Ring_Tilemap[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/ring.bin.lz"); +const u32 gRaySceneChasesAway_Bg_Pal[] = INCBIN_U32("graphics/rayquaza_scene/scene_5/bg.gbapal.lz"); diff --git a/src/data/graphics/slot_machine.h b/src/data/graphics/slot_machine.h index a94f2b622..6500ad7f3 100644 --- a/src/data/graphics/slot_machine.h +++ b/src/data/graphics/slot_machine.h @@ -2,21 +2,15 @@ const u16 gSlotMachineMenu_Pal[] = INCBIN_U16("graphics/slot_machine/menu.gbapal const u32 gSlotMachineMenu_Gfx[] = INCBIN_U32("graphics/slot_machine/menu.4bpp.lz"); const u16 gSlotMachineMenu_Tilemap[] = INCBIN_U16("graphics/slot_machine/menu.bin"); -const u16 gUnknown_08DCEC70[] = INCBIN_U16("graphics/slot_machine/slots_layout.bin"); +const u16 gSlotMachineInfoBox_Tilemap[] = INCBIN_U16("graphics/slot_machine/info_box.bin"); -const u16 gUnknown_08DCF170[] = INCBIN_U16("graphics/slot_machine/reel_symbols/1.gbapal"); - -const u16 gUnknown_08DCF190[] = INCBIN_U16("graphics/slot_machine/reel_pikachu.gbapal"); - -const u16 gUnknown_08DCF1B0[] = INCBIN_U16("graphics/slot_machine/shadow.gbapal"); - -const u16 gSlotMachineReelTime_Pal[] = INCBIN_U16("graphics/slot_machine/reel_time.gbapal"); - -const u16 gUnknown_08DCF1F0[] = INCBIN_U16("graphics/slot_machine/smoke.gbapal"); // also duck and pika aura - -const u16 gUnknown_08DCF210[] = INCBIN_U16("graphics/slot_machine/reel_time_explosion/0.gbapal"); - -const u16 gUnknown_08DCF230[] = INCBIN_U16("graphics/slot_machine/spr6.gbapal"); +const u16 gSlotMachineReelSymbols_Pal[] = INCBIN_U16("graphics/slot_machine/reel_symbols/1.gbapal"); +const u16 gSlotMachineReelTimePikachu_Pal[] = INCBIN_U16("graphics/slot_machine/reel_time_pikachu.gbapal"); +const u16 gSlotMachineReelTimeMisc_Pal[] = INCBIN_U16("graphics/slot_machine/shadow.gbapal"); +const u16 gSlotMachineReelTimeMachine_Pal[] = INCBIN_U16("graphics/slot_machine/reel_time_machine.gbapal"); +const u16 gSlotMachineMisc_Pal[] = INCBIN_U16("graphics/slot_machine/smoke.gbapal"); +const u16 gSlotMachineReelTimeExplosion_Pal[] = INCBIN_U16("graphics/slot_machine/reel_time_explosion/0.gbapal"); +const u16 gSlotMachineDigitalDisplay_Pal[] = INCBIN_U16("graphics/slot_machine/digital_display.gbapal"); const u8 gSlotMachineReelSymbol1Tiles[] = INCBIN_U8("graphics/slot_machine/reel_symbols/1.4bpp"); const u8 gSlotMachineReelSymbol2Tiles[] = INCBIN_U8("graphics/slot_machine/reel_symbols/2.4bpp"); @@ -26,7 +20,7 @@ const u8 gSlotMachineReelSymbol5Tiles[] = INCBIN_U8("graphics/slot_machine/reel_ const u8 gSlotMachineReelSymbol6Tiles[] = INCBIN_U8("graphics/slot_machine/reel_symbols/6.4bpp"); const u8 gSlotMachineReelSymbol7Tiles[] = INCBIN_U8("graphics/slot_machine/reel_symbols/7.4bpp"); -const u32 gSlotMachineReelTime_Gfx[] = INCBIN_U32("graphics/slot_machine/reel_time.4bpp.lz"); +const u32 gSlotMachineDigitalDisplay_Gfx[] = INCBIN_U32("graphics/slot_machine/digital_display.4bpp.lz"); const u8 gSlotMachineNumber0Tiles[] = INCBIN_U8("graphics/slot_machine/numbers/0.4bpp"); const u8 gSlotMachineNumber1Tiles[] = INCBIN_U8("graphics/slot_machine/numbers/1.4bpp"); @@ -39,7 +33,7 @@ const u8 gSlotMachineNumber7Tiles[] = INCBIN_U8("graphics/slot_machine/numbers/7 const u8 gSlotMachineNumber8Tiles[] = INCBIN_U8("graphics/slot_machine/numbers/8.4bpp"); const u8 gSlotMachineNumber9Tiles[] = INCBIN_U8("graphics/slot_machine/numbers/9.4bpp"); -const u8 gSlotMachineReelTimeBolt[] = INCBIN_U8("graphics/slot_machine/bolt.4bpp"); +const u8 gSlotMachinePikaPowerBolt[] = INCBIN_U8("graphics/slot_machine/bolt.4bpp"); const u8 gSlotMachineReelTimeDuck[] = INCBIN_U8("graphics/slot_machine/duck.4bpp"); const u8 gSlotMachineReelTimeSmoke[] = INCBIN_U8("graphics/slot_machine/smoke.4bpp"); @@ -50,8 +44,8 @@ const u8 gSlotMachineReelTimeNumber3[] = INCBIN_U8("graphics/slot_machine/reel_t const u8 gSlotMachineReelTimeNumber4[] = INCBIN_U8("graphics/slot_machine/reel_time_numbers/4.4bpp"); const u8 gSlotMachineReelTimeNumber5[] = INCBIN_U8("graphics/slot_machine/reel_time_numbers/5.4bpp"); -const u8 gSlotMachineReelTimeLargeBolt0[] = INCBIN_U8("graphics/slot_machine/large_bolt/0.4bpp"); -const u8 gSlotMachineReelTimeLargeBolt1[] = INCBIN_U8("graphics/slot_machine/large_bolt/1.4bpp"); +const u8 gSlotMachineReelTimeBolt0[] = INCBIN_U8("graphics/slot_machine/large_bolt/0.4bpp"); +const u8 gSlotMachineReelTimeBolt1[] = INCBIN_U8("graphics/slot_machine/large_bolt/1.4bpp"); const u8 gSlotMachineReelTimeExplosion0[] = INCBIN_U8("graphics/slot_machine/reel_time_explosion/0.4bpp"); const u8 gSlotMachineReelTimeExplosion1[] = INCBIN_U8("graphics/slot_machine/reel_time_explosion/1.4bpp"); @@ -59,5 +53,5 @@ const u8 gSlotMachineReelTimeExplosion1[] = INCBIN_U8("graphics/slot_machine/ree const u8 gSlotMachineReelTimeShadow[] = INCBIN_U8("graphics/slot_machine/shadow.4bpp"); const u8 gSlotMachineReelTimePikaAura[] = INCBIN_U8("graphics/slot_machine/pika_aura.4bpp"); -const u8 gUnknown_08DD19F8[] = INCBIN_U8("graphics/unknown/unknown_DD19F8.bin"); -const u8 gUnknown_08DD1A18[] = INCBIN_U8("graphics/unknown/unknown_DD1A18.4bpp"); +const u8 gSlotMachineReelBackground_Tilemap[] = INCBIN_U8("graphics/slot_machine/reel_background.bin"); +const u8 gSlotMachineReelTimeNumberGap_Gfx[] = INCBIN_U8("graphics/slot_machine/reel_time_number_gap.4bpp"); diff --git a/src/data/items.h b/src/data/items.h index 4d262e683..30beb5352 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -3426,7 +3426,7 @@ const struct Item gItems[] = .pocket = POCKET_KEY_ITEMS, .type = 2, .fieldUseFunc = ItemUseOutOfBattle_Rod, - .secondaryId = 0, + .secondaryId = OLD_ROD, }, [ITEM_GOOD_ROD] = @@ -3440,7 +3440,7 @@ const struct Item gItems[] = .pocket = POCKET_KEY_ITEMS, .type = 2, .fieldUseFunc = ItemUseOutOfBattle_Rod, - .secondaryId = 1, + .secondaryId = GOOD_ROD, }, [ITEM_SUPER_ROD] = @@ -3454,7 +3454,7 @@ const struct Item gItems[] = .pocket = POCKET_KEY_ITEMS, .type = 2, .fieldUseFunc = ItemUseOutOfBattle_Rod, - .secondaryId = 2, + .secondaryId = SUPER_ROD, }, [ITEM_SS_TICKET] = diff --git a/src/data/object_events/object_event_graphics.h b/src/data/object_events/object_event_graphics.h index 769a6bb0a..50fc6715c 100755 --- a/src/data/object_events/object_event_graphics.h +++ b/src/data/object_events/object_event_graphics.h @@ -252,7 +252,7 @@ const u32 gObjectEventPic_CableCar[] = INCBIN_U32("graphics/object_events/pics/m const u16 gObjectEventPalette20[] = INCBIN_U16("graphics/object_events/palettes/20.gbapal"); const u32 gObjectEventPic_SSTidal[] = INCBIN_U32("graphics/object_events/pics/misc/ss_tidal.4bpp"); const u16 gObjectEventPalette21[] = INCBIN_U16("graphics/object_events/palettes/21.gbapal"); -const u32 gFieldEffectObjectPic_BerryTreeGrowthSparkle[] = INCBIN_U32("graphics/field_effects/pics/berry_tree_growth_sparkle.4bpp"); +const u32 gFieldEffectObjectPic_Sparkle[] = INCBIN_U32("graphics/field_effects/pics/sparkle.4bpp"); const u32 gObjectEventPic_BerryTreeDirtPile[] = INCBIN_U32("graphics/object_events/pics/berry_trees/dirt_pile.4bpp"); const u32 gObjectEventPic_BerryTreeSprout[] = INCBIN_U32("graphics/object_events/pics/berry_trees/sprout.4bpp"); const u32 gObjectEventPic_PechaBerryTree[] = INCBIN_U32("graphics/object_events/pics/berry_trees/pecha.4bpp"); @@ -293,43 +293,43 @@ const u32 gFieldEffectObjectPic_ShadowSmall[] = INCBIN_U32("graphics/field_effec const u32 gFieldEffectObjectPic_ShadowMedium[] = INCBIN_U32("graphics/field_effects/pics/shadow_medium.4bpp"); const u32 gFieldEffectObjectPic_ShadowLarge[] = INCBIN_U32("graphics/field_effects/pics/shadow_large.4bpp"); const u32 gFieldEffectObjectPic_ShadowExtraLarge[] = INCBIN_U32("graphics/field_effects/pics/shadow_extra_large.4bpp"); -const u32 filler_8368A08[0x48] = {}; +static const u32 sFiller[0x48] = {}; const u8 gFieldEffectPic_CutGrass[] = INCBIN_U8("graphics/field_effects/pics/cut_grass.4bpp"); const u32 gFieldEffectPic_CutGrass_Copy[] = INCBIN_U32("graphics/field_effects/pics/cut_grass.4bpp"); -const u16 gFieldEffectObjectPalette6[] = INCBIN_U16("graphics/field_effects/palettes/06.gbapal"); +const u16 gFieldEffectPal_CutGrass[] = INCBIN_U16("graphics/field_effects/palettes/cut_grass.gbapal"); const u32 gFieldEffectObjectPic_Ripple[] = INCBIN_U32("graphics/field_effects/pics/ripple.4bpp"); const u32 gFieldEffectObjectPic_Ash[] = INCBIN_U32("graphics/field_effects/pics/ash.4bpp"); const u32 gFieldEffectObjectPic_Arrow[] = INCBIN_U32("graphics/field_effects/pics/arrow.4bpp"); -const u16 gFieldEffectObjectPalette0[] = INCBIN_U16("graphics/field_effects/palettes/00.gbapal"); -const u16 gFieldEffectObjectPalette1[] = INCBIN_U16("graphics/field_effects/palettes/01.gbapal"); +const u16 gFieldEffectObjectPalette0[] = INCBIN_U16("graphics/field_effects/palettes/general_0.gbapal"); +const u16 gFieldEffectObjectPalette1[] = INCBIN_U16("graphics/field_effects/palettes/general_1.gbapal"); const u32 gFieldEffectObjectPic_GroundImpactDust[] = INCBIN_U32("graphics/field_effects/pics/ground_impact_dust.4bpp"); -const u32 gFieldEffectObjectPic_BikeHopTallGrass[] = INCBIN_U32("graphics/field_effects/pics/bike_hop_tall_grass.4bpp"); -const u32 gUnusedGrass[] = INCBIN_U32("graphics/field_effects/pics/unused_grass.4bpp"); -const u32 gFieldEffectObjectPic_Unknown16[] = INCBIN_U32("graphics/field_effects/pics/unknown_16.4bpp"); +const u32 gFieldEffectObjectPic_JumpTallGrass[] = INCBIN_U32("graphics/field_effects/pics/jump_tall_grass.4bpp"); +const u32 gUnusedGrass3[] = INCBIN_U32("graphics/field_effects/pics/unused_grass_3.4bpp"); +const u32 gFieldEffectObjectPic_JumpLongGrass[] = INCBIN_U32("graphics/field_effects/pics/unknown_16.4bpp"); const u32 gFieldEffectObjectPic_Unknown17[] = INCBIN_U32("graphics/field_effects/pics/unknown_17.4bpp"); -const u32 gFieldEffectObjectPic_Unknown18[] = INCBIN_U32("graphics/field_effects/pics/unknown_18.4bpp"); +const u32 gFieldEffectObjectPic_UnusedGrass2[] = INCBIN_U32("graphics/field_effects/pics/unused_grass_2.4bpp"); const u32 gFieldEffectObjectPic_LongGrass[] = INCBIN_U32("graphics/field_effects/pics/long_grass.4bpp"); const u32 gFieldEffectObjectPic_TallGrass[] = INCBIN_U32("graphics/field_effects/pics/tall_grass.4bpp"); const u32 gFieldEffectObjectPic_ShortGrass[] = INCBIN_U32("graphics/field_effects/pics/short_grass.4bpp"); const u32 gFieldEffectObjectPic_SandFootprints[] = INCBIN_U32("graphics/field_effects/pics/sand_footprints.4bpp"); const u32 gFieldEffectObjectPic_DeepSandFootprints[] = INCBIN_U32("graphics/field_effects/pics/deep_sand_footprints.4bpp"); const u32 gFieldEffectObjectPic_BikeTireTracks[] = INCBIN_U32("graphics/field_effects/pics/bike_tire_tracks.4bpp"); -const u32 gFieldEffectObjectPic_Unknown19[] = INCBIN_U32("graphics/field_effects/pics/unknown_19.4bpp"); -const u32 gFieldEffectObjectPic_Unknown29[] = INCBIN_U32("graphics/field_effects/pics/unknown_29.4bpp"); -const u32 gFieldEffectObjectPic_BikeHopBigSplash[] = INCBIN_U32("graphics/field_effects/pics/bike_hop_big_splash.4bpp"); +const u32 gFieldEffectObjectPic_UnusedSand[] = INCBIN_U32("graphics/field_effects/pics/unused_sand.4bpp"); +const u32 gFieldEffectObjectPic_SandPile[] = INCBIN_U32("graphics/field_effects/pics/sand_pile.4bpp"); +const u32 gFieldEffectObjectPic_JumpBigSplash[] = INCBIN_U32("graphics/field_effects/pics/jump_big_splash.4bpp"); const u32 gFieldEffectObjectPic_Splash[] = INCBIN_U32("graphics/field_effects/pics/splash.4bpp"); -const u32 gFieldEffectObjectPic_BikeHopSmallSplash[] = INCBIN_U32("graphics/field_effects/pics/bike_hop_small_splash.4bpp"); -const u32 gFieldEffectObjectPic_Unknown20[] = INCBIN_U32("graphics/field_effects/pics/unknown_20.4bpp"); +const u32 gFieldEffectObjectPic_JumpSmallSplash[] = INCBIN_U32("graphics/field_effects/pics/jump_small_splash.4bpp"); +const u32 gFieldEffectObjectPic_WaterSurfacing[] = INCBIN_U32("graphics/field_effects/pics/water_surfacing.4bpp"); const u32 gFieldEffectObjectPic_TreeDisguise[] = INCBIN_U32("graphics/field_effects/pics/tree_disguise.4bpp"); const u32 gFieldEffectObjectPic_MountainDisguise[] = INCBIN_U32("graphics/field_effects/pics/mountain_disguise.4bpp"); const u32 gFieldEffectObjectPic_SandDisguisePlaceholder[] = INCBIN_U32("graphics/field_effects/pics/sand_disguise_placeholder.4bpp"); const u32 gFieldEffectObjectPic_HotSpringsWater[] = INCBIN_U32("graphics/field_effects/pics/hot_springs_water.4bpp"); -const u16 gFieldEffectObjectPalette2[] = INCBIN_U16("graphics/field_effects/palettes/02.gbapal"); -const u32 gFieldEffectObjectPic_JumpOutOfAsh[] = INCBIN_U32("graphics/field_effects/pics/jump_out_of_ash.4bpp"); -const u32 gFieldEffectObjectPic_LavaridgeGymWarp[] = INCBIN_U32("graphics/field_effects/pics/lavaridge_gym_warp.4bpp"); +const u16 gFieldEffectPal_Ash[] = INCBIN_U16("graphics/field_effects/palettes/ash.gbapal"); +const u32 gFieldEffectObjectPic_AshPuff[] = INCBIN_U32("graphics/field_effects/pics/ash_puff.4bpp"); +const u32 gFieldEffectObjectPic_AshLaunch[] = INCBIN_U32("graphics/field_effects/pics/ash_launch.4bpp"); const u32 gFieldEffectObjectPic_Bubbles[] = INCBIN_U32("graphics/field_effects/pics/bubbles.4bpp"); -const u32 gFieldEffectObjectPic_Unknown35[] = INCBIN_U32("graphics/field_effects/pics/unknown_35.4bpp"); -const u16 gFieldEffectObjectPalette3[] = INCBIN_U16("graphics/field_effects/palettes/03.gbapal"); +const u32 gFieldEffectObjectPic_SmallSparkle[] = INCBIN_U32("graphics/field_effects/pics/small_sparkle.4bpp"); +const u16 gFieldEffectPal_SmallSparkle[] = INCBIN_U16("graphics/field_effects/palettes/small_sparkle.gbapal"); const u32 gFieldEffectObjectPic_Bird[] = INCBIN_U32("graphics/field_effects/pics/bird.4bpp"); const u32 gObjectEventPic_Juan[] = INCBIN_U32("graphics/object_events/pics/people/gym_leaders/juan.4bpp"); const u32 gObjectEventPic_Scott[] = INCBIN_U32("graphics/object_events/pics/people/scott.4bpp"); diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h index 0a89f20c8..131ac13d9 100644 --- a/src/data/pokemon_graphics/back_pic_coordinates.h +++ b/src/data/pokemon_graphics/back_pic_coordinates.h @@ -3,2202 +3,2202 @@ const struct MonCoords gMonBackPicCoords[] = [SPECIES_NONE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_BULBASAUR] = { .size = 0x64, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_IVYSAUR] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_VENUSAUR] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_CHARMANDER] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_CHARMELEON] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_CHARIZARD] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SQUIRTLE] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_WARTORTLE] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_BLASTOISE] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_CATERPIE] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_METAPOD] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_BUTTERFREE] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_WEEDLE] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_KAKUNA] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_BEEDRILL] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_PIDGEY] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_PIDGEOTTO] = { .size = 0x85, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_PIDGEOT] = { .size = 0x78, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_RATTATA] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_RATICATE] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_SPEAROW] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_FEAROW] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_EKANS] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_ARBOK] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_PIKACHU] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_RAICHU] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SANDSHREW] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_SANDSLASH] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NIDORAN_F] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_NIDORINA] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_NIDOQUEEN] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_NIDORAN_M] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_NIDORINO] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NIDOKING] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_CLEFAIRY] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_CLEFABLE] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_VULPIX] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NINETALES] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_JIGGLYPUFF] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_WIGGLYTUFF] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ZUBAT] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GOLBAT] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_ODDISH] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GLOOM] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_VILEPLUME] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_PARAS] = { .size = 0x63, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_PARASECT] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_VENONAT] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_VENOMOTH] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_DIGLETT] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_DUGTRIO] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MEOWTH] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_PERSIAN] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_PSYDUCK] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_GOLDUCK] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_MANKEY] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_PRIMEAPE] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_GROWLITHE] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ARCANINE] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_POLIWAG] = { .size = 0x74, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_POLIWHIRL] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_POLIWRATH] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_ABRA] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_KADABRA] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ALAKAZAM] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_MACHOP] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MACHOKE] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_MACHAMP] = { .size = 0x67, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_BELLSPROUT] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_WEEPINBELL] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_VICTREEBEL] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_TENTACOOL] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_TENTACRUEL] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GEODUDE] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GRAVELER] = { .size = 0x75, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_GOLEM] = { .size = 0x84, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_PONYTA] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_RAPIDASH] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_SLOWPOKE] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_SLOWBRO] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_MAGNEMITE] = { .size = 0x43, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_MAGNETON] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_FARFETCHD] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DODUO] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_DODRIO] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SEEL] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DEWGONG] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_GRIMER] = { .size = 0x75, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MUK] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_SHELLDER] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_CLOYSTER] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GASTLY] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_HAUNTER] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_GENGAR] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_ONIX] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_DROWZEE] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_HYPNO] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_KRABBY] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_KINGLER] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_VOLTORB] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_ELECTRODE] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_EXEGGCUTE] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_EXEGGUTOR] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_CUBONE] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_MAROWAK] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_HITMONLEE] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_HITMONCHAN] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_LICKITUNG] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_KOFFING] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_WEEZING] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_RHYHORN] = { .size = 0x85, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_RHYDON] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_CHANSEY] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_TANGELA] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_KANGASKHAN] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_HORSEA] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SEADRA] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_GOLDEEN] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SEAKING] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_STARYU] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_STARMIE] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_MR_MIME] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_SCYTHER] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_JYNX] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_ELECTABUZZ] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAGMAR] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_PINSIR] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_TAUROS] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_MAGIKARP] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_GYARADOS] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LAPRAS] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_DITTO] = { .size = 0x54, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_EEVEE] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_VAPOREON] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_JOLTEON] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_FLAREON] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_PORYGON] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_OMANYTE] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_OMASTAR] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_KABUTO] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_KABUTOPS] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_AERODACTYL] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SNORLAX] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_ARTICUNO] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_ZAPDOS] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MOLTRES] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_DRATINI] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_DRAGONAIR] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_DRAGONITE] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_MEWTWO] = { .size = 0x78, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_MEW] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_CHIKORITA] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_BAYLEEF] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MEGANIUM] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CYNDAQUIL] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_QUILAVA] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_TYPHLOSION] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_TOTODILE] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_CROCONAW] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_FERALIGATR] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SENTRET] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_FURRET] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_HOOTHOOT] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_NOCTOWL] = { .size = 0x68, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_LEDYBA] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_LEDIAN] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_SPINARAK] = { .size = 0x73, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_ARIADOS] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_CROBAT] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_CHINCHOU] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_LANTURN] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_PICHU] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_CLEFFA] = { .size = 0x65, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_IGGLYBUFF] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_TOGEPI] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_TOGETIC] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_NATU] = { .size = 0x54, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_XATU] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAREEP] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_FLAAFFY] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_AMPHAROS] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_BELLOSSOM] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MARILL] = { .size = 0x75, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_AZUMARILL] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SUDOWOODO] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_POLITOED] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_HOPPIP] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SKIPLOOM] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_JUMPLUFF] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_AIPOM] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SUNKERN] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SUNFLORA] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_YANMA] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_WOOPER] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_QUAGSIRE] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ESPEON] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_UMBREON] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_MURKROW] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SLOWKING] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MISDREAVUS] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN] = { .size = 0x36, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_WOBBUFFET] = { .size = 0x75, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_GIRAFARIG] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_PINECO] = { .size = 0x65, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_FORRETRESS] = { .size = 0x84, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_DUNSPARCE] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_GLIGAR] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_STEELIX] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SNUBBULL] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_GRANBULL] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_QWILFISH] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_SCIZOR] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SHUCKLE] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_HERACROSS] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SNEASEL] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_TEDDIURSA] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_URSARING] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SLUGMA] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAGCARGO] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SWINUB] = { .size = 0x63, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_PILOSWINE] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_CORSOLA] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_REMORAID] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_OCTILLERY] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DELIBIRD] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_MANTINE] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_SKARMORY] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_HOUNDOUR] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_HOUNDOOM] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_KINGDRA] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_PHANPY] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_DONPHAN] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_PORYGON2] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_STANTLER] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SMEARGLE] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_TYROGUE] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_HITMONTOP] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_SMOOCHUM] = { .size = 0x56, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_ELEKID] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAGBY] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MILTANK] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_BLISSEY] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_RAIKOU] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_ENTEI] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_SUICUNE] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_LARVITAR] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_PUPITAR] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_TYRANITAR] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LUGIA] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_HO_OH] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_CELEBI] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_OLD_UNOWN_B] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_C] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_D] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_E] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_F] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_G] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_H] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_I] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_J] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_K] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_L] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_M] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_N] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_O] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_P] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_Q] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_R] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_S] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_T] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_U] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_V] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_W] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_X] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_Y] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_OLD_UNOWN_Z] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_TREECKO] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GROVYLE] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SCEPTILE] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_TORCHIC] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_COMBUSKEN] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_BLAZIKEN] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_MUDKIP] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_MARSHTOMP] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SWAMPERT] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_POOCHYENA] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_MIGHTYENA] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_ZIGZAGOON] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_LINOONE] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_WURMPLE] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SILCOON] = { .size = 0x83, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_BEAUTIFLY] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CASCOON] = { .size = 0x73, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_DUSTOX] = { .size = 0x83, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_LOTAD] = { .size = 0x75, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_LOMBRE] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_LUDICOLO] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SEEDOT] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NUZLEAF] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SHIFTRY] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_NINCADA] = { .size = 0x83, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_NINJASK] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SHEDINJA] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_TAILLOW] = { .size = 0x64, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_SWELLOW] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SHROOMISH] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_BRELOOM] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SPINDA] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_WINGULL] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_PELIPPER] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_SURSKIT] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MASQUERAIN] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_WAILMER] = { .size = 0x83, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_WAILORD] = { .size = 0x83, - .y_offset = 0x16, + .y_offset = 22, }, [SPECIES_SKITTY] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DELCATTY] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_KECLEON] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_BALTOY] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_CLAYDOL] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_NOSEPASS] = { .size = 0x85, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_TORKOAL] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SABLEYE] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_BARBOACH] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_WHISCASH] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_LUVDISC] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_CORPHISH] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_CRAWDAUNT] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_FEEBAS] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_MILOTIC] = { .size = 0x68, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_CARVANHA] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_SHARPEDO] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_TRAPINCH] = { .size = 0x75, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_VIBRAVA] = { .size = 0x74, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_FLYGON] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_MAKUHITA] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_HARIYAMA] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_ELECTRIKE] = { .size = 0x84, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_MANECTRIC] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_NUMEL] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_CAMERUPT] = { .size = 0x84, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_SPHEAL] = { .size = 0x64, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_SEALEO] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_WALREIN] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_CACNEA] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_CACTURNE] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_SNORUNT] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_GLALIE] = { .size = 0x85, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_LUNATONE] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_SOLROCK] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_AZURILL] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SPOINK] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GRUMPIG] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_PLUSLE] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MINUN] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAWILE] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_MEDITITE] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MEDICHAM] = { .size = 0x68, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SWABLU] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_ALTARIA] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_WYNAUT] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_DUSKULL] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_DUSCLOPS] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ROSELIA] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SLAKOTH] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_VIGOROTH] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SLAKING] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_GULPIN] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SWALOT] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_TROPIUS] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_WHISMUR] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_LOUDRED] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_EXPLOUD] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_CLAMPERL] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_HUNTAIL] = { .size = 0x68, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_GOREBYSS] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_ABSOL] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SHUPPET] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_BANETTE] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_SEVIPER] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_ZANGOOSE] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_RELICANTH] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_ARON] = { .size = 0x54, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_LAIRON] = { .size = 0x84, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_AGGRON] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_CASTFORM] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_VOLBEAT] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ILLUMISE] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_LILEEP] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_CRADILY] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_ANORITH] = { .size = 0x83, - .y_offset = 0x17, + .y_offset = 23, }, [SPECIES_ARMALDO] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_RALTS] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_KIRLIA] = { .size = 0x57, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GARDEVOIR] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_BAGON] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SHELGON] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_SALAMENCE] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_BELDUM] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_METANG] = { .size = 0x84, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_METAGROSS] = { .size = 0x83, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_REGIROCK] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_REGICE] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_REGISTEEL] = { .size = 0x85, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_KYOGRE] = { .size = 0x84, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_GROUDON] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_RAYQUAZA] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LATIAS] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_LATIOS] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_JIRACHI] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_DEOXYS] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_CHIMECHO] = { .size = 0x47, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_EGG] = { .size = 0x36, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_B] = { .size = 0x56, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_UNOWN_C] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_UNOWN_D] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_UNOWN_E] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_F] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_G] = { .size = 0x57, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_UNOWN_H] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_UNOWN_I] = { .size = 0x37, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_UNOWN_J] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_UNOWN_K] = { .size = 0x57, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_UNOWN_L] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_M] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_UNOWN_N] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_UNOWN_O] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_UNOWN_P] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_Q] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_UNOWN_R] = { .size = 0x45, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_UNOWN_S] = { .size = 0x57, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_UNOWN_T] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_UNOWN_U] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_UNOWN_V] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_UNOWN_W] = { .size = 0x55, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_UNOWN_X] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_UNOWN_Y] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_Z] = { .size = 0x46, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_UNOWN_EMARK] = { .size = 0x37, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_UNOWN_QMARK] = { .size = 0x47, - .y_offset = 0x06, + .y_offset = 6, }, }; diff --git a/src/data/pokemon_graphics/front_pic_coordinates.h b/src/data/pokemon_graphics/front_pic_coordinates.h index 19de9a7dd..b787877b9 100644 --- a/src/data/pokemon_graphics/front_pic_coordinates.h +++ b/src/data/pokemon_graphics/front_pic_coordinates.h @@ -3,2201 +3,2201 @@ const struct MonCoords gMonFrontPicCoords[] = [SPECIES_NONE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_BULBASAUR] = { .size = 0x45, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_IVYSAUR] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_VENUSAUR] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_CHARMANDER] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_CHARMELEON] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_CHARIZARD] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SQUIRTLE] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_WARTORTLE] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_BLASTOISE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CATERPIE] = { .size = 0x45, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_METAPOD] = { .size = 0x54, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_BUTTERFREE] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_WEEDLE] = { .size = 0x54, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_KAKUNA] = { .size = 0x45, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_BEEDRILL] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_PIDGEY] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_PIDGEOTTO] = { .size = 0x67, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_PIDGEOT] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_RATTATA] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_RATICATE] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SPEAROW] = { .size = 0x45, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_FEAROW] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_EKANS] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_ARBOK] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_PIKACHU] = { .size = 0x67, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_RAICHU] = { .size = 0x67, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SANDSHREW] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_SANDSLASH] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NIDORAN_F] = { .size = 0x45, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_NIDORINA] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_NIDOQUEEN] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_NIDORAN_M] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_NIDORINO] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NIDOKING] = { .size = 0x78, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_CLEFAIRY] = { .size = 0x55, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_CLEFABLE] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_VULPIX] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_NINETALES] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_JIGGLYPUFF] = { .size = 0x45, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_WIGGLYTUFF] = { .size = 0x67, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ZUBAT] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GOLBAT] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_ODDISH] = { .size = 0x45, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_GLOOM] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_VILEPLUME] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_PARAS] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_PARASECT] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_VENONAT] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_VENOMOTH] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_DIGLETT] = { .size = 0x54, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_DUGTRIO] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_MEOWTH] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_PERSIAN] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_PSYDUCK] = { .size = 0x56, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_GOLDUCK] = { .size = 0x78, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_MANKEY] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_PRIMEAPE] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_GROWLITHE] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_ARCANINE] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_POLIWAG] = { .size = 0x74, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_POLIWHIRL] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_POLIWRATH] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ABRA] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_KADABRA] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_ALAKAZAM] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_MACHOP] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_MACHOKE] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_MACHAMP] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_BELLSPROUT] = { .size = 0x65, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_WEEPINBELL] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_VICTREEBEL] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_TENTACOOL] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_TENTACRUEL] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_GEODUDE] = { .size = 0x54, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_GRAVELER] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_GOLEM] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_PONYTA] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_RAPIDASH] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SLOWPOKE] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SLOWBRO] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MAGNEMITE] = { .size = 0x43, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_MAGNETON] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_FARFETCHD] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_DODUO] = { .size = 0x57, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_DODRIO] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SEEL] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DEWGONG] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_GRIMER] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MUK] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SHELLDER] = { .size = 0x55, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_CLOYSTER] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_GASTLY] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_HAUNTER] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_GENGAR] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_ONIX] = { .size = 0x78, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_DROWZEE] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_HYPNO] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_KRABBY] = { .size = 0x65, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_KINGLER] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_VOLTORB] = { .size = 0x44, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_ELECTRODE] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_EXEGGCUTE] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_EXEGGUTOR] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CUBONE] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_MAROWAK] = { .size = 0x76, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_HITMONLEE] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_HITMONCHAN] = { .size = 0x67, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_LICKITUNG] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_KOFFING] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_WEEZING] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_RHYHORN] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_RHYDON] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_CHANSEY] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_TANGELA] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_KANGASKHAN] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_HORSEA] = { .size = 0x45, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_SEADRA] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_GOLDEEN] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SEAKING] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_STARYU] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_STARMIE] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_MR_MIME] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SCYTHER] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_JYNX] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_ELECTABUZZ] = { .size = 0x78, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_MAGMAR] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_PINSIR] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_TAUROS] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_MAGIKARP] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GYARADOS] = { .size = 0x88, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_LAPRAS] = { .size = 0x85, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_DITTO] = { .size = 0x54, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_EEVEE] = { .size = 0x56, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_VAPOREON] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_JOLTEON] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_FLAREON] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_PORYGON] = { .size = 0x55, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_OMANYTE] = { .size = 0x45, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_OMASTAR] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_KABUTO] = { .size = 0x54, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_KABUTOPS] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_AERODACTYL] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SNORLAX] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_ARTICUNO] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_ZAPDOS] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_MOLTRES] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_DRATINI] = { .size = 0x75, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_DRAGONAIR] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_DRAGONITE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_MEWTWO] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_MEW] = { .size = 0x55, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_CHIKORITA] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_BAYLEEF] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_MEGANIUM] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CYNDAQUIL] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_QUILAVA] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_TYPHLOSION] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_TOTODILE] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_CROCONAW] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_FERALIGATR] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SENTRET] = { .size = 0x47, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_FURRET] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_HOOTHOOT] = { .size = 0x55, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_NOCTOWL] = { .size = 0x58, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_LEDYBA] = { .size = 0x56, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_LEDIAN] = { .size = 0x67, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SPINARAK] = { .size = 0x54, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_ARIADOS] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_CROBAT] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CHINCHOU] = { .size = 0x75, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_LANTURN] = { .size = 0x87, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_PICHU] = { .size = 0x45, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_CLEFFA] = { .size = 0x44, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_IGGLYBUFF] = { .size = 0x44, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_TOGEPI] = { .size = 0x34, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_TOGETIC] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_NATU] = { .size = 0x44, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_XATU] = { .size = 0x47, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_MAREEP] = { .size = 0x55, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_FLAAFFY] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_AMPHAROS] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_BELLOSSOM] = { .size = 0x45, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_MARILL] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_AZUMARILL] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SUDOWOODO] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_POLITOED] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_HOPPIP] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SKIPLOOM] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_JUMPLUFF] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_AIPOM] = { .size = 0x58, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SUNKERN] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_SUNFLORA] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_YANMA] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_WOOPER] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_QUAGSIRE] = { .size = 0x77, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_ESPEON] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_UMBREON] = { .size = 0x67, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MURKROW] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SLOWKING] = { .size = 0x58, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_MISDREAVUS] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_UNOWN] = { .size = 0x35, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_WOBBUFFET] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GIRAFARIG] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_PINECO] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_FORRETRESS] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_DUNSPARCE] = { .size = 0x74, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_GLIGAR] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_STEELIX] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SNUBBULL] = { .size = 0x55, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_GRANBULL] = { .size = 0x57, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_QWILFISH] = { .size = 0x56, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SCIZOR] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SHUCKLE] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_HERACROSS] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_SNEASEL] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_TEDDIURSA] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_URSARING] = { .size = 0x78, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SLUGMA] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_MAGCARGO] = { .size = 0x57, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_SWINUB] = { .size = 0x43, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_PILOSWINE] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_CORSOLA] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_REMORAID] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_OCTILLERY] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DELIBIRD] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MANTINE] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SKARMORY] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_HOUNDOUR] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_HOUNDOOM] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_KINGDRA] = { .size = 0x78, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_PHANPY] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_DONPHAN] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_PORYGON2] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_STANTLER] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SMEARGLE] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_TYROGUE] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_HITMONTOP] = { .size = 0x67, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_SMOOCHUM] = { .size = 0x35, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_ELEKID] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_MAGBY] = { .size = 0x45, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_MILTANK] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_BLISSEY] = { .size = 0x77, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_RAIKOU] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_ENTEI] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SUICUNE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LARVITAR] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_PUPITAR] = { .size = 0x56, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_TYRANITAR] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LUGIA] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_HO_OH] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CELEBI] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_OLD_UNOWN_B] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_C] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_D] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_E] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_F] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_G] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_H] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_I] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_J] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_K] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_L] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_M] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_N] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_O] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_P] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_Q] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_R] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_S] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_T] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_U] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_V] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_W] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_X] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_Y] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_OLD_UNOWN_Z] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_TREECKO] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_GROVYLE] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SCEPTILE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_TORCHIC] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_COMBUSKEN] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_BLAZIKEN] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_MUDKIP] = { .size = 0x56, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MARSHTOMP] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_SWAMPERT] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_POOCHYENA] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MIGHTYENA] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_ZIGZAGOON] = { .size = 0x85, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_LINOONE] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_WURMPLE] = { .size = 0x45, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_SILCOON] = { .size = 0x75, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_BEAUTIFLY] = { .size = 0x86, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_CASCOON] = { .size = 0x74, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_DUSTOX] = { .size = 0x86, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_LOTAD] = { .size = 0x65, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_LOMBRE] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_LUDICOLO] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SEEDOT] = { .size = 0x46, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_NUZLEAF] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SHIFTRY] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_NINCADA] = { .size = 0x74, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_NINJASK] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SHEDINJA] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_TAILLOW] = { .size = 0x64, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_SWELLOW] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_SHROOMISH] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_BRELOOM] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SPINDA] = { .size = 0x68, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_WINGULL] = { .size = 0x84, - .y_offset = 0x18, + .y_offset = 24, }, [SPECIES_PELIPPER] = { .size = 0x77, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_SURSKIT] = { .size = 0x65, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_MASQUERAIN] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_WAILMER] = { .size = 0x75, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_WAILORD] = { .size = 0x87, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_SKITTY] = { .size = 0x66, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_DELCATTY] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_KECLEON] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_BALTOY] = { .size = 0x55, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_CLAYDOL] = { .size = 0x78, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_NOSEPASS] = { .size = 0x56, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_TORKOAL] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_SABLEYE] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_BARBOACH] = { .size = 0x46, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_WHISCASH] = { .size = 0x76, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_LUVDISC] = { .size = 0x46, - .y_offset = 0x18, + .y_offset = 24, }, [SPECIES_CORPHISH] = { .size = 0x66, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_CRAWDAUNT] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_FEEBAS] = { .size = 0x46, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_MILOTIC] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CARVANHA] = { .size = 0x67, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_SHARPEDO] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_TRAPINCH] = { .size = 0x54, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_VIBRAVA] = { .size = 0x86, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_FLYGON] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_MAKUHITA] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_HARIYAMA] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_ELECTRIKE] = { .size = 0x64, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_MANECTRIC] = { .size = 0x67, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_NUMEL] = { .size = 0x65, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_CAMERUPT] = { .size = 0x87, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SPHEAL] = { .size = 0x65, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_SEALEO] = { .size = 0x86, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_WALREIN] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_CACNEA] = { .size = 0x74, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_CACTURNE] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SNORUNT] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_GLALIE] = { .size = 0x76, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_LUNATONE] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SOLROCK] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_AZURILL] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_SPOINK] = { .size = 0x46, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_GRUMPIG] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_PLUSLE] = { .size = 0x56, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_MINUN] = { .size = 0x66, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MAWILE] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_MEDITITE] = { .size = 0x65, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_MEDICHAM] = { .size = 0x68, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_SWABLU] = { .size = 0x76, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_ALTARIA] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_WYNAUT] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_DUSKULL] = { .size = 0x66, - .y_offset = 0x0a, + .y_offset = 10, }, [SPECIES_DUSCLOPS] = { .size = 0x77, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_ROSELIA] = { .size = 0x76, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_SLAKOTH] = { .size = 0x74, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_VIGOROTH] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SLAKING] = { .size = 0x86, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_GULPIN] = { .size = 0x55, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_SWALOT] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_TROPIUS] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_WHISMUR] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_LOUDRED] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_EXPLOUD] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_CLAMPERL] = { .size = 0x55, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_HUNTAIL] = { .size = 0x78, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_GOREBYSS] = { .size = 0x86, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_ABSOL] = { .size = 0x68, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_SHUPPET] = { .size = 0x56, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_BANETTE] = { .size = 0x55, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_SEVIPER] = { .size = 0x77, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ZANGOOSE] = { .size = 0x87, - .y_offset = 0x05, + .y_offset = 5, }, [SPECIES_RELICANTH] = { .size = 0x77, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_ARON] = { .size = 0x43, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_LAIRON] = { .size = 0x75, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_AGGRON] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_CASTFORM] = { .size = 0x34, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_VOLBEAT] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ILLUMISE] = { .size = 0x56, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_LILEEP] = { .size = 0x67, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_CRADILY] = { .size = 0x78, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_ANORITH] = { .size = 0x66, - .y_offset = 0x08, + .y_offset = 8, }, [SPECIES_ARMALDO] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_RALTS] = { .size = 0x35, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_KIRLIA] = { .size = 0x47, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_GARDEVOIR] = { .size = 0x78, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_BAGON] = { .size = 0x56, - .y_offset = 0x0b, + .y_offset = 11, }, [SPECIES_SHELGON] = { .size = 0x66, - .y_offset = 0x09, + .y_offset = 9, }, [SPECIES_SALAMENCE] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_BELDUM] = { .size = 0x55, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_METANG] = { .size = 0x87, - .y_offset = 0x07, + .y_offset = 7, }, [SPECIES_METAGROSS] = { .size = 0x87, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_REGIROCK] = { .size = 0x78, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_REGICE] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_REGISTEEL] = { .size = 0x88, - .y_offset = 0x03, + .y_offset = 3, }, [SPECIES_KYOGRE] = { .size = 0x87, - .y_offset = 0x04, + .y_offset = 4, }, [SPECIES_GROUDON] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_RAYQUAZA] = { .size = 0x88, - .y_offset = 0x00, + .y_offset = 0, }, [SPECIES_LATIAS] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_LATIOS] = { .size = 0x88, - .y_offset = 0x02, + .y_offset = 2, }, [SPECIES_JIRACHI] = { .size = 0x66, - .y_offset = 0x0d, + .y_offset = 13, }, [SPECIES_DEOXYS] = { .size = 0x88, - .y_offset = 0x01, + .y_offset = 1, }, [SPECIES_CHIMECHO] = { .size = 0x37, - .y_offset = 0x06, + .y_offset = 6, }, [SPECIES_EGG] = { .size = 0x33, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_UNOWN_B] = { .size = 0x34, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_C] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_D] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_E] = { .size = 0x44, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_UNOWN_F] = { .size = 0x44, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_UNOWN_G] = { .size = 0x35, - .y_offset = 0x0e, + .y_offset = 14, }, [SPECIES_UNOWN_H] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_I] = { .size = 0x34, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_J] = { .size = 0x34, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_UNOWN_K] = { .size = 0x44, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_UNOWN_L] = { .size = 0x34, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_UNOWN_M] = { .size = 0x44, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_UNOWN_N] = { .size = 0x43, - .y_offset = 0x14, + .y_offset = 20, }, [SPECIES_UNOWN_O] = { .size = 0x44, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_P] = { .size = 0x34, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_UNOWN_Q] = { .size = 0x43, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_UNOWN_R] = { .size = 0x34, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_UNOWN_S] = { .size = 0x45, - .y_offset = 0x0c, + .y_offset = 12, }, [SPECIES_UNOWN_T] = { .size = 0x34, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_UNOWN_U] = { .size = 0x44, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_UNOWN_V] = { .size = 0x44, - .y_offset = 0x12, + .y_offset = 18, }, [SPECIES_UNOWN_W] = { .size = 0x44, - .y_offset = 0x13, + .y_offset = 19, }, [SPECIES_UNOWN_X] = { .size = 0x33, - .y_offset = 0x15, + .y_offset = 21, }, [SPECIES_UNOWN_Y] = { .size = 0x34, - .y_offset = 0x11, + .y_offset = 17, }, [SPECIES_UNOWN_Z] = { .size = 0x34, - .y_offset = 0x10, + .y_offset = 16, }, [SPECIES_UNOWN_EMARK] = { .size = 0x35, - .y_offset = 0x0f, + .y_offset = 15, }, [SPECIES_UNOWN_QMARK] = { .size = 0x35, - .y_offset = 0x0d, + .y_offset = 13, }, }; diff --git a/src/data/region_map/region_map_entries.h b/src/data/region_map/region_map_entries.h index 1d503d72f..6b433f90f 100644 --- a/src/data/region_map/region_map_entries.h +++ b/src/data/region_map/region_map_entries.h @@ -200,219 +200,219 @@ static const u8 sMapName_DesertUnderpass[] = _("DESERT UNDERPASS"); static const u8 sMapName_TrainerHill[] = _("TRAINER HILL"); const struct RegionMapLocation gRegionMapEntries[] = { - [MAPSEC_LITTLEROOT_TOWN] = { 4, 11, 1, 1, sMapName_LittlerootTown}, - [MAPSEC_OLDALE_TOWN] = { 4, 9, 1, 1, sMapName_OldaleTown}, - [MAPSEC_DEWFORD_TOWN] = { 2, 14, 1, 1, sMapName_DewfordTown}, - [MAPSEC_LAVARIDGE_TOWN] = { 5, 3, 1, 1, sMapName_LavaridgeTown}, - [MAPSEC_FALLARBOR_TOWN] = { 3, 0, 1, 1, sMapName_FallarborTown}, - [MAPSEC_VERDANTURF_TOWN] = { 4, 6, 1, 1, sMapName_VerdanturfTown}, - [MAPSEC_PACIFIDLOG_TOWN] = {17, 10, 1, 1, sMapName_PacifidlogTown}, - [MAPSEC_PETALBURG_CITY] = { 1, 9, 1, 1, sMapName_PetalburgCity}, - [MAPSEC_SLATEPORT_CITY] = { 8, 10, 1, 2, sMapName_SlateportCity}, - [MAPSEC_MAUVILLE_CITY] = { 8, 6, 2, 1, sMapName_MauvilleCity}, - [MAPSEC_RUSTBORO_CITY] = { 0, 5, 1, 2, sMapName_RustboroCity}, - [MAPSEC_FORTREE_CITY] = {12, 0, 1, 1, sMapName_FortreeCity}, - [MAPSEC_LILYCOVE_CITY] = {18, 3, 2, 1, sMapName_LilycoveCity}, - [MAPSEC_MOSSDEEP_CITY] = {24, 5, 2, 1, sMapName_MossdeepCity}, - [MAPSEC_SOOTOPOLIS_CITY] = {21, 7, 1, 1, sMapName_SootopolisCity}, - [MAPSEC_EVER_GRANDE_CITY] = {27, 8, 1, 2, sMapName_EverGrandeCity}, - [MAPSEC_ROUTE_101] = { 4, 10, 1, 1, sMapName_Route101}, - [MAPSEC_ROUTE_102] = { 2, 9, 2, 1, sMapName_Route102}, - [MAPSEC_ROUTE_103] = { 4, 8, 4, 1, sMapName_Route103}, - [MAPSEC_ROUTE_104] = { 0, 7, 1, 3, sMapName_Route104}, - [MAPSEC_ROUTE_105] = { 0, 10, 1, 3, sMapName_Route105}, - [MAPSEC_ROUTE_106] = { 0, 13, 2, 1, sMapName_Route106}, - [MAPSEC_ROUTE_107] = { 3, 14, 3, 1, sMapName_Route107}, - [MAPSEC_ROUTE_108] = { 6, 14, 2, 1, sMapName_Route108}, - [MAPSEC_ROUTE_109] = { 8, 12, 1, 3, sMapName_Route109}, - [MAPSEC_ROUTE_110] = { 8, 7, 1, 3, sMapName_Route110}, - [MAPSEC_ROUTE_111] = { 8, 0, 1, 6, sMapName_Route111}, - [MAPSEC_ROUTE_112] = { 6, 3, 2, 1, sMapName_Route112}, - [MAPSEC_ROUTE_113] = { 4, 0, 4, 1, sMapName_Route113}, - [MAPSEC_ROUTE_114] = { 1, 0, 2, 3, sMapName_Route114}, - [MAPSEC_ROUTE_115] = { 0, 2, 1, 3, sMapName_Route115}, - [MAPSEC_ROUTE_116] = { 1, 5, 4, 1, sMapName_Route116}, - [MAPSEC_ROUTE_117] = { 5, 6, 3, 1, sMapName_Route117}, - [MAPSEC_ROUTE_118] = {10, 6, 2, 1, sMapName_Route118}, - [MAPSEC_ROUTE_119] = {11, 0, 1, 6, sMapName_Route119}, - [MAPSEC_ROUTE_120] = {13, 0, 1, 4, sMapName_Route120}, - [MAPSEC_ROUTE_121] = {14, 3, 4, 1, sMapName_Route121}, - [MAPSEC_ROUTE_122] = {16, 4, 1, 2, sMapName_Route122}, - [MAPSEC_ROUTE_123] = {12, 6, 5, 1, sMapName_Route123}, - [MAPSEC_ROUTE_124] = {20, 3, 4, 3, sMapName_Route124}, - [MAPSEC_ROUTE_125] = {24, 3, 2, 2, sMapName_Route125}, - [MAPSEC_ROUTE_126] = {20, 6, 3, 3, sMapName_Route126}, - [MAPSEC_ROUTE_127] = {23, 6, 3, 3, sMapName_Route127}, - [MAPSEC_ROUTE_128] = {23, 9, 4, 1, sMapName_Route128}, - [MAPSEC_ROUTE_129] = {24, 10, 2, 1, sMapName_Route129}, - [MAPSEC_ROUTE_130] = {21, 10, 3, 1, sMapName_Route130}, - [MAPSEC_ROUTE_131] = {18, 10, 3, 1, sMapName_Route131}, - [MAPSEC_ROUTE_132] = {15, 10, 2, 1, sMapName_Route132}, - [MAPSEC_ROUTE_133] = {12, 10, 3, 1, sMapName_Route133}, - [MAPSEC_ROUTE_134] = { 9, 10, 3, 1, sMapName_Route134}, - [MAPSEC_UNDERWATER_124] = {20, 3, 4, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_125] = {20, 6, 3, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_126] = {23, 6, 3, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_127] = {23, 9, 4, 1, sMapName_Underwater}, - [MAPSEC_UNDERWATER_SOOTOPOLIS] = {21, 7, 1, 1, sMapName_Underwater}, - [MAPSEC_GRANITE_CAVE] = { 1, 13, 1, 1, sMapName_GraniteCave}, - [MAPSEC_MT_CHIMNEY] = { 6, 2, 1, 1, sMapName_MtChimney}, - [MAPSEC_SAFARI_ZONE] = {16, 2, 1, 1, sMapName_SafariZone}, - [MAPSEC_BATTLE_FRONTIER] = {22, 12, 1, 1, sMapName_BattleFrontier}, - [MAPSEC_PETALBURG_WOODS] = { 0, 8, 1, 1, sMapName_PetalburgWoods}, - [MAPSEC_RUSTURF_TUNNEL] = { 2, 5, 1, 1, sMapName_RusturfTunnel}, - [MAPSEC_ABANDONED_SHIP] = { 6, 14, 1, 1, sMapName_AbandonedShip}, - [MAPSEC_NEW_MAUVILLE] = { 8, 7, 1, 1, sMapName_NewMauville}, - [MAPSEC_METEOR_FALLS] = { 0, 3, 1, 1, sMapName_MeteorFalls}, - [MAPSEC_METEOR_FALLS2] = { 1, 2, 1, 1, sMapName_MeteorFalls}, - [MAPSEC_MT_PYRE] = {16, 4, 1, 1, sMapName_MtPyre}, - [MAPSEC_AQUA_HIDEOUT_OLD] = {19, 3, 1, 1, sMapName_AquaHideoutOld}, - [MAPSEC_SHOAL_CAVE] = {24, 4, 1, 1, sMapName_ShoalCave}, - [MAPSEC_SEAFLOOR_CAVERN] = {24, 9, 1, 1, sMapName_SeafloorCavern}, - [MAPSEC_UNDERWATER_128] = {24, 9, 1, 1, sMapName_Underwater}, - [MAPSEC_VICTORY_ROAD] = {27, 9, 1, 1, sMapName_VictoryRoad}, - [MAPSEC_MIRAGE_ISLAND] = {17, 10, 1, 1, sMapName_MirageIsland}, - [MAPSEC_CAVE_OF_ORIGIN] = {21, 7, 1, 1, sMapName_CaveOfOrigin}, - [MAPSEC_SOUTHERN_ISLAND] = {12, 14, 1, 1, sMapName_SouthernIsland}, - [MAPSEC_FIERY_PATH] = { 6, 3, 1, 1, sMapName_FieryPath}, - [MAPSEC_FIERY_PATH2] = { 7, 3, 1, 1, sMapName_FieryPath}, - [MAPSEC_JAGGED_PASS] = { 6, 3, 1, 1, sMapName_JaggedPass}, - [MAPSEC_JAGGED_PASS2] = { 7, 2, 1, 1, sMapName_JaggedPass}, - [MAPSEC_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_SealedChamber}, - [MAPSEC_UNDERWATER_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_Underwater}, - [MAPSEC_SCORCHED_SLAB] = {13, 0, 1, 1, sMapName_ScorchedSlab}, - [MAPSEC_ISLAND_CAVE] = { 0, 10, 1, 1, sMapName_IslandCave}, - [MAPSEC_DESERT_RUINS] = { 8, 3, 1, 1, sMapName_DesertRuins}, - [MAPSEC_ANCIENT_TOMB] = {13, 2, 1, 1, sMapName_AncientTomb}, - [MAPSEC_INSIDE_OF_TRUCK] = { 0, 0, 1, 1, sMapName_InsideOfTruck}, - [MAPSEC_SKY_PILLAR] = {19, 10, 1, 1, sMapName_SkyPillar}, - [MAPSEC_SECRET_BASE] = { 0, 0, 1, 1, sMapName_SecretBase}, - [MAPSEC_DYNAMIC] = { 0, 0, 1, 1, sMapName_None}, - [MAPSEC_PALLET_TOWN] = { 0, 0, 1, 1, sMapName_PalletTown}, - [MAPSEC_VIRIDIAN_CITY] = { 0, 0, 1, 1, sMapName_ViridianCity}, - [MAPSEC_PEWTER_CITY] = { 0, 0, 1, 1, sMapName_PewterCity}, - [MAPSEC_CERULEAN_CITY] = { 0, 0, 1, 1, sMapName_CeruleanCity}, - [MAPSEC_LAVENDER_TOWN] = { 0, 0, 1, 1, sMapName_LavenderTown}, - [MAPSEC_VERMILION_CITY] = { 0, 0, 1, 1, sMapName_VermilionCity}, - [MAPSEC_CELADON_CITY] = { 0, 0, 1, 1, sMapName_CeladonCity}, - [MAPSEC_FUCHSIA_CITY] = { 0, 0, 1, 1, sMapName_FuchsiaCity}, - [MAPSEC_CINNABAR_ISLAND] = { 0, 0, 1, 1, sMapName_CinnabarIsland}, - [MAPSEC_INDIGO_PLATEAU] = { 0, 0, 1, 1, sMapName_IndigoPlateau}, - [MAPSEC_SAFFRON_CITY] = { 0, 0, 1, 1, sMapName_SaffronCity}, - [MAPSEC_ROUTE_4_FLYDUP] = { 0, 0, 1, 1, sMapName_Route4}, - [MAPSEC_ROUTE_10_FLYDUP] = { 0, 0, 1, 1, sMapName_Route10}, - [MAPSEC_ROUTE_1] = { 0, 0, 1, 1, sMapName_Route1}, - [MAPSEC_ROUTE_2] = { 0, 0, 1, 1, sMapName_Route2}, - [MAPSEC_ROUTE_3] = { 0, 0, 1, 1, sMapName_Route3}, - [MAPSEC_ROUTE_4] = { 0, 0, 1, 1, sMapName_Route4_2}, - [MAPSEC_ROUTE_5] = { 0, 0, 1, 1, sMapName_Route5}, - [MAPSEC_ROUTE_6] = { 0, 0, 1, 1, sMapName_Route6}, - [MAPSEC_ROUTE_7] = { 0, 0, 1, 1, sMapName_Route7}, - [MAPSEC_ROUTE_8] = { 0, 0, 1, 1, sMapName_Route8}, - [MAPSEC_ROUTE_9] = { 0, 0, 1, 1, sMapName_Route9}, - [MAPSEC_ROUTE_10] = { 0, 0, 1, 1, sMapName_Route10_2}, - [MAPSEC_ROUTE_11] = { 0, 0, 1, 1, sMapName_Route11}, - [MAPSEC_ROUTE_12] = { 0, 0, 1, 1, sMapName_Route12}, - [MAPSEC_ROUTE_13] = { 0, 0, 1, 1, sMapName_Route13}, - [MAPSEC_ROUTE_14] = { 0, 0, 1, 1, sMapName_Route14}, - [MAPSEC_ROUTE_15] = { 0, 0, 1, 1, sMapName_Route15}, - [MAPSEC_ROUTE_16] = { 0, 0, 1, 1, sMapName_Route16}, - [MAPSEC_ROUTE_17] = { 0, 0, 1, 1, sMapName_Route17}, - [MAPSEC_ROUTE_18] = { 0, 0, 1, 1, sMapName_Route18}, - [MAPSEC_ROUTE_19] = { 0, 0, 1, 1, sMapName_Route19}, - [MAPSEC_ROUTE_20] = { 0, 0, 1, 1, sMapName_Route20}, - [MAPSEC_ROUTE_21] = { 0, 0, 1, 1, sMapName_Route21}, - [MAPSEC_ROUTE_22] = { 0, 0, 1, 1, sMapName_Route22}, - [MAPSEC_ROUTE_23] = { 0, 0, 1, 1, sMapName_Route23}, - [MAPSEC_ROUTE_24] = { 0, 0, 1, 1, sMapName_Route24}, - [MAPSEC_ROUTE_25] = { 0, 0, 1, 1, sMapName_Route25}, - [MAPSEC_VIRIDIAN_FOREST] = { 0, 0, 1, 1, sMapName_ViridianForest}, - [MAPSEC_MT_MOON] = { 0, 0, 1, 1, sMapName_MtMoon}, - [MAPSEC_S_S_ANNE] = { 0, 0, 1, 1, sMapName_SSAnne}, - [MAPSEC_UNDERGROUND_PATH] = { 0, 0, 1, 1, sMapName_UndergroundPath}, - [MAPSEC_UNDERGROUND_PATH_2] = { 0, 0, 1, 1, sMapName_UndergroundPath2}, - [MAPSEC_DIGLETTS_CAVE] = { 0, 0, 1, 1, sMapName_DiglettsCave}, - [MAPSEC_KANTO_VICTORY_ROAD] = { 0, 0, 1, 1, sMapName_KantoVictoryRoad}, - [MAPSEC_ROCKET_HIDEOUT] = { 0, 0, 1, 1, sMapName_RocketHideout}, - [MAPSEC_SILPH_CO] = { 0, 0, 1, 1, sMapName_SilphCo}, - [MAPSEC_POKEMON_MANSION] = { 0, 0, 1, 1, sMapName_PokemonMansion}, - [MAPSEC_KANTO_SAFARI_ZONE] = { 0, 0, 1, 1, sMapName_KantoSafariZone}, - [MAPSEC_POKEMON_LEAGUE] = { 0, 0, 1, 1, sMapName_PokemonLeague}, - [MAPSEC_ROCK_TUNNEL] = { 0, 0, 1, 1, sMapName_RockTunnel}, - [MAPSEC_SEAFOAM_ISLANDS] = { 0, 0, 1, 1, sMapName_SeafoamIslands}, - [MAPSEC_POKEMON_TOWER] = { 0, 0, 1, 1, sMapName_PokemonTower}, - [MAPSEC_CERULEAN_CAVE] = { 0, 0, 1, 1, sMapName_CeruleanCave}, - [MAPSEC_POWER_PLANT] = { 0, 0, 1, 1, sMapName_PowerPlant}, - [MAPSEC_ONE_ISLAND] = { 0, 0, 1, 1, sMapName_OneIsland}, - [MAPSEC_TWO_ISLAND] = { 0, 0, 1, 1, sMapName_TwoIsland}, - [MAPSEC_THREE_ISLAND] = { 0, 0, 1, 1, sMapName_ThreeIsland}, - [MAPSEC_FOUR_ISLAND] = { 0, 0, 1, 1, sMapName_FourIsland}, - [MAPSEC_FIVE_ISLAND] = { 0, 0, 1, 1, sMapName_FiveIsland}, - [MAPSEC_SEVEN_ISLAND] = { 0, 0, 1, 1, sMapName_SevenIsland}, - [MAPSEC_SIX_ISLAND] = { 0, 0, 1, 1, sMapName_SixIsland}, - [MAPSEC_KINDLE_ROAD] = { 0, 0, 1, 1, sMapName_KindleRoad}, - [MAPSEC_TREASURE_BEACH] = { 0, 0, 1, 1, sMapName_TreasureBeach}, - [MAPSEC_CAPE_BRINK] = { 0, 0, 1, 1, sMapName_CapeBrink}, - [MAPSEC_BOND_BRIDGE] = { 0, 0, 1, 1, sMapName_BondBridge}, - [MAPSEC_THREE_ISLE_PORT] = { 0, 0, 1, 1, sMapName_ThreeIslePort}, - [MAPSEC_SEVII_ISLE_6] = { 0, 0, 1, 1, sMapName_SeviiIsle6}, - [MAPSEC_SEVII_ISLE_7] = { 0, 0, 1, 1, sMapName_SeviiIsle7}, - [MAPSEC_SEVII_ISLE_8] = { 0, 0, 1, 1, sMapName_SeviiIsle8}, - [MAPSEC_SEVII_ISLE_9] = { 0, 0, 1, 1, sMapName_SeviiIsle9}, - [MAPSEC_RESORT_GORGEOUS] = { 0, 0, 1, 1, sMapName_ResortGorgeous}, - [MAPSEC_WATER_LABYRINTH] = { 0, 0, 1, 1, sMapName_WaterLabyrinth}, - [MAPSEC_FIVE_ISLE_MEADOW] = { 0, 0, 1, 1, sMapName_FiveIsleMeadow}, - [MAPSEC_MEMORIAL_PILLAR] = { 0, 0, 1, 1, sMapName_MemorialPillar}, - [MAPSEC_OUTCAST_ISLAND] = { 0, 0, 1, 1, sMapName_OutcastIsland}, - [MAPSEC_GREEN_PATH] = { 0, 0, 1, 1, sMapName_GreenPath}, - [MAPSEC_WATER_PATH] = { 0, 0, 1, 1, sMapName_WaterPath}, - [MAPSEC_RUIN_VALLEY] = { 0, 0, 1, 1, sMapName_RuinValley}, - [MAPSEC_TRAINER_TOWER] = { 0, 0, 1, 1, sMapName_TrainerTower}, - [MAPSEC_CANYON_ENTRANCE] = { 0, 0, 1, 1, sMapName_CanyonEntrance}, - [MAPSEC_SEVAULT_CANYON] = { 0, 0, 1, 1, sMapName_SevaultCanyon}, - [MAPSEC_TANOBY_RUINS] = { 0, 0, 1, 1, sMapName_TanobyRuins}, - [MAPSEC_SEVII_ISLE_22] = { 0, 0, 1, 1, sMapName_SeviiIsle22}, - [MAPSEC_SEVII_ISLE_23] = { 0, 0, 1, 1, sMapName_SeviiIsle23}, - [MAPSEC_SEVII_ISLE_24] = { 0, 0, 1, 1, sMapName_SeviiIsle24}, - [MAPSEC_NAVEL_ROCK_FRLG] = { 0, 0, 1, 1, sMapName_NavelRock}, - [MAPSEC_MT_EMBER] = { 0, 0, 1, 1, sMapName_MtEmber}, - [MAPSEC_BERRY_FOREST] = { 0, 0, 1, 1, sMapName_BerryForest}, - [MAPSEC_ICEFALL_CAVE] = { 0, 0, 1, 1, sMapName_IcefallCave}, - [MAPSEC_ROCKET_WAREHOUSE] = { 0, 0, 1, 1, sMapName_RocketWarehouse}, - [MAPSEC_TRAINER_TOWER_2] = { 0, 0, 1, 1, sMapName_TrainerTower2}, - [MAPSEC_DOTTED_HOLE] = { 0, 0, 1, 1, sMapName_DottedHole}, - [MAPSEC_LOST_CAVE] = { 0, 0, 1, 1, sMapName_LostCave}, - [MAPSEC_PATTERN_BUSH] = { 0, 0, 1, 1, sMapName_PatternBush}, - [MAPSEC_ALTERING_CAVE_FRLG] = { 0, 0, 1, 1, sMapName_AlteringCave}, - [MAPSEC_TANOBY_CHAMBERS] = { 0, 0, 1, 1, sMapName_TanobyChambers}, - [MAPSEC_THREE_ISLE_PATH] = { 0, 0, 1, 1, sMapName_ThreeIslePath}, - [MAPSEC_TANOBY_KEY] = { 0, 0, 1, 1, sMapName_TanobyKey}, - [MAPSEC_BIRTH_ISLAND_FRLG] = { 0, 0, 1, 1, sMapName_BirthIsland}, - [MAPSEC_MONEAN_CHAMBER] = { 0, 0, 1, 1, sMapName_MoneanChamber}, - [MAPSEC_LIPTOO_CHAMBER] = { 0, 0, 1, 1, sMapName_LiptooChamber}, - [MAPSEC_WEEPTH_CHAMBER] = { 0, 0, 1, 1, sMapName_WeepthChamber}, - [MAPSEC_DILFORD_CHAMBER] = { 0, 0, 1, 1, sMapName_DilfordChamber}, - [MAPSEC_SCUFIB_CHAMBER] = { 0, 0, 1, 1, sMapName_ScufibChamber}, - [MAPSEC_RIXY_CHAMBER] = { 0, 0, 1, 1, sMapName_RixyChamber}, - [MAPSEC_VIAPOIS_CHAMBER] = { 0, 0, 1, 1, sMapName_ViapoisChamber}, - [MAPSEC_EMBER_SPA] = { 0, 0, 1, 1, sMapName_EmberSpa}, - [MAPSEC_SPECIAL_AREA] = { 0, 0, 1, 1, sMapName_SpecialArea}, - [MAPSEC_AQUA_HIDEOUT] = {19, 3, 1, 1, sMapName_AquaHideout}, - [MAPSEC_MAGMA_HIDEOUT] = { 6, 3, 1, 1, sMapName_MagmaHideout}, - [MAPSEC_MIRAGE_TOWER] = { 8, 2, 1, 1, sMapName_MirageTower}, - [MAPSEC_BIRTH_ISLAND] = { 0, 0, 1, 1, sMapName_BirthIsland}, - [MAPSEC_FARAWAY_ISLAND] = { 0, 0, 1, 1, sMapName_FarawayIsland}, - [MAPSEC_ARTISAN_CAVE] = {22, 12, 1, 1, sMapName_ArtisanCave}, - [MAPSEC_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_MarineCave}, - [MAPSEC_UNDERWATER_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_Underwater}, - [MAPSEC_TERRA_CAVE] = { 0, 0, 1, 1, sMapName_TerraCave}, - [MAPSEC_UNDERWATER_TERRA_CAVE] = { 0, 10, 1, 3, sMapName_Underwater}, - [MAPSEC_UNDERWATER_UNK1] = {24, 3, 2, 2, sMapName_Underwater}, - [MAPSEC_UNDERWATER_129] = {24, 10, 2, 1, sMapName_Underwater}, - [MAPSEC_DESERT_UNDERPASS] = { 2, 0, 1, 1, sMapName_DesertUnderpass}, - [MAPSEC_ALTERING_CAVE] = { 6, 8, 1, 1, sMapName_AlteringCave}, - [MAPSEC_NAVEL_ROCK] = { 0, 0, 1, 1, sMapName_NavelRock}, - [MAPSEC_TRAINER_HILL] = { 8, 4, 1, 1, sMapName_TrainerHill} + [MAPSEC_LITTLEROOT_TOWN] = { 4, 11, 1, 1, sMapName_LittlerootTown}, + [MAPSEC_OLDALE_TOWN] = { 4, 9, 1, 1, sMapName_OldaleTown}, + [MAPSEC_DEWFORD_TOWN] = { 2, 14, 1, 1, sMapName_DewfordTown}, + [MAPSEC_LAVARIDGE_TOWN] = { 5, 3, 1, 1, sMapName_LavaridgeTown}, + [MAPSEC_FALLARBOR_TOWN] = { 3, 0, 1, 1, sMapName_FallarborTown}, + [MAPSEC_VERDANTURF_TOWN] = { 4, 6, 1, 1, sMapName_VerdanturfTown}, + [MAPSEC_PACIFIDLOG_TOWN] = {17, 10, 1, 1, sMapName_PacifidlogTown}, + [MAPSEC_PETALBURG_CITY] = { 1, 9, 1, 1, sMapName_PetalburgCity}, + [MAPSEC_SLATEPORT_CITY] = { 8, 10, 1, 2, sMapName_SlateportCity}, + [MAPSEC_MAUVILLE_CITY] = { 8, 6, 2, 1, sMapName_MauvilleCity}, + [MAPSEC_RUSTBORO_CITY] = { 0, 5, 1, 2, sMapName_RustboroCity}, + [MAPSEC_FORTREE_CITY] = {12, 0, 1, 1, sMapName_FortreeCity}, + [MAPSEC_LILYCOVE_CITY] = {18, 3, 2, 1, sMapName_LilycoveCity}, + [MAPSEC_MOSSDEEP_CITY] = {24, 5, 2, 1, sMapName_MossdeepCity}, + [MAPSEC_SOOTOPOLIS_CITY] = {21, 7, 1, 1, sMapName_SootopolisCity}, + [MAPSEC_EVER_GRANDE_CITY] = {27, 8, 1, 2, sMapName_EverGrandeCity}, + [MAPSEC_ROUTE_101] = { 4, 10, 1, 1, sMapName_Route101}, + [MAPSEC_ROUTE_102] = { 2, 9, 2, 1, sMapName_Route102}, + [MAPSEC_ROUTE_103] = { 4, 8, 4, 1, sMapName_Route103}, + [MAPSEC_ROUTE_104] = { 0, 7, 1, 3, sMapName_Route104}, + [MAPSEC_ROUTE_105] = { 0, 10, 1, 3, sMapName_Route105}, + [MAPSEC_ROUTE_106] = { 0, 13, 2, 1, sMapName_Route106}, + [MAPSEC_ROUTE_107] = { 3, 14, 3, 1, sMapName_Route107}, + [MAPSEC_ROUTE_108] = { 6, 14, 2, 1, sMapName_Route108}, + [MAPSEC_ROUTE_109] = { 8, 12, 1, 3, sMapName_Route109}, + [MAPSEC_ROUTE_110] = { 8, 7, 1, 3, sMapName_Route110}, + [MAPSEC_ROUTE_111] = { 8, 0, 1, 6, sMapName_Route111}, + [MAPSEC_ROUTE_112] = { 6, 3, 2, 1, sMapName_Route112}, + [MAPSEC_ROUTE_113] = { 4, 0, 4, 1, sMapName_Route113}, + [MAPSEC_ROUTE_114] = { 1, 0, 2, 3, sMapName_Route114}, + [MAPSEC_ROUTE_115] = { 0, 2, 1, 3, sMapName_Route115}, + [MAPSEC_ROUTE_116] = { 1, 5, 4, 1, sMapName_Route116}, + [MAPSEC_ROUTE_117] = { 5, 6, 3, 1, sMapName_Route117}, + [MAPSEC_ROUTE_118] = {10, 6, 2, 1, sMapName_Route118}, + [MAPSEC_ROUTE_119] = {11, 0, 1, 6, sMapName_Route119}, + [MAPSEC_ROUTE_120] = {13, 0, 1, 4, sMapName_Route120}, + [MAPSEC_ROUTE_121] = {14, 3, 4, 1, sMapName_Route121}, + [MAPSEC_ROUTE_122] = {16, 4, 1, 2, sMapName_Route122}, + [MAPSEC_ROUTE_123] = {12, 6, 5, 1, sMapName_Route123}, + [MAPSEC_ROUTE_124] = {20, 3, 4, 3, sMapName_Route124}, + [MAPSEC_ROUTE_125] = {24, 3, 2, 2, sMapName_Route125}, + [MAPSEC_ROUTE_126] = {20, 6, 3, 3, sMapName_Route126}, + [MAPSEC_ROUTE_127] = {23, 6, 3, 3, sMapName_Route127}, + [MAPSEC_ROUTE_128] = {23, 9, 4, 1, sMapName_Route128}, + [MAPSEC_ROUTE_129] = {24, 10, 2, 1, sMapName_Route129}, + [MAPSEC_ROUTE_130] = {21, 10, 3, 1, sMapName_Route130}, + [MAPSEC_ROUTE_131] = {18, 10, 3, 1, sMapName_Route131}, + [MAPSEC_ROUTE_132] = {15, 10, 2, 1, sMapName_Route132}, + [MAPSEC_ROUTE_133] = {12, 10, 3, 1, sMapName_Route133}, + [MAPSEC_ROUTE_134] = { 9, 10, 3, 1, sMapName_Route134}, + [MAPSEC_UNDERWATER_124] = {20, 3, 4, 3, sMapName_Underwater}, + [MAPSEC_UNDERWATER_126] = {20, 6, 3, 3, sMapName_Underwater}, + [MAPSEC_UNDERWATER_127] = {23, 6, 3, 3, sMapName_Underwater}, + [MAPSEC_UNDERWATER_128] = {23, 9, 4, 1, sMapName_Underwater}, + [MAPSEC_UNDERWATER_SOOTOPOLIS] = {21, 7, 1, 1, sMapName_Underwater}, + [MAPSEC_GRANITE_CAVE] = { 1, 13, 1, 1, sMapName_GraniteCave}, + [MAPSEC_MT_CHIMNEY] = { 6, 2, 1, 1, sMapName_MtChimney}, + [MAPSEC_SAFARI_ZONE] = {16, 2, 1, 1, sMapName_SafariZone}, + [MAPSEC_BATTLE_FRONTIER] = {22, 12, 1, 1, sMapName_BattleFrontier}, + [MAPSEC_PETALBURG_WOODS] = { 0, 8, 1, 1, sMapName_PetalburgWoods}, + [MAPSEC_RUSTURF_TUNNEL] = { 2, 5, 1, 1, sMapName_RusturfTunnel}, + [MAPSEC_ABANDONED_SHIP] = { 6, 14, 1, 1, sMapName_AbandonedShip}, + [MAPSEC_NEW_MAUVILLE] = { 8, 7, 1, 1, sMapName_NewMauville}, + [MAPSEC_METEOR_FALLS] = { 0, 3, 1, 1, sMapName_MeteorFalls}, + [MAPSEC_METEOR_FALLS2] = { 1, 2, 1, 1, sMapName_MeteorFalls}, + [MAPSEC_MT_PYRE] = {16, 4, 1, 1, sMapName_MtPyre}, + [MAPSEC_AQUA_HIDEOUT_OLD] = {19, 3, 1, 1, sMapName_AquaHideoutOld}, + [MAPSEC_SHOAL_CAVE] = {24, 4, 1, 1, sMapName_ShoalCave}, + [MAPSEC_SEAFLOOR_CAVERN] = {24, 9, 1, 1, sMapName_SeafloorCavern}, + [MAPSEC_UNDERWATER_SEAFLOOR_CAVERN] = {24, 9, 1, 1, sMapName_Underwater}, + [MAPSEC_VICTORY_ROAD] = {27, 9, 1, 1, sMapName_VictoryRoad}, + [MAPSEC_MIRAGE_ISLAND] = {17, 10, 1, 1, sMapName_MirageIsland}, + [MAPSEC_CAVE_OF_ORIGIN] = {21, 7, 1, 1, sMapName_CaveOfOrigin}, + [MAPSEC_SOUTHERN_ISLAND] = {12, 14, 1, 1, sMapName_SouthernIsland}, + [MAPSEC_FIERY_PATH] = { 6, 3, 1, 1, sMapName_FieryPath}, + [MAPSEC_FIERY_PATH2] = { 7, 3, 1, 1, sMapName_FieryPath}, + [MAPSEC_JAGGED_PASS] = { 6, 3, 1, 1, sMapName_JaggedPass}, + [MAPSEC_JAGGED_PASS2] = { 7, 2, 1, 1, sMapName_JaggedPass}, + [MAPSEC_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_SealedChamber}, + [MAPSEC_UNDERWATER_SEALED_CHAMBER] = {11, 10, 1, 1, sMapName_Underwater}, + [MAPSEC_SCORCHED_SLAB] = {13, 0, 1, 1, sMapName_ScorchedSlab}, + [MAPSEC_ISLAND_CAVE] = { 0, 10, 1, 1, sMapName_IslandCave}, + [MAPSEC_DESERT_RUINS] = { 8, 3, 1, 1, sMapName_DesertRuins}, + [MAPSEC_ANCIENT_TOMB] = {13, 2, 1, 1, sMapName_AncientTomb}, + [MAPSEC_INSIDE_OF_TRUCK] = { 0, 0, 1, 1, sMapName_InsideOfTruck}, + [MAPSEC_SKY_PILLAR] = {19, 10, 1, 1, sMapName_SkyPillar}, + [MAPSEC_SECRET_BASE] = { 0, 0, 1, 1, sMapName_SecretBase}, + [MAPSEC_DYNAMIC] = { 0, 0, 1, 1, sMapName_None}, + [MAPSEC_PALLET_TOWN] = { 0, 0, 1, 1, sMapName_PalletTown}, + [MAPSEC_VIRIDIAN_CITY] = { 0, 0, 1, 1, sMapName_ViridianCity}, + [MAPSEC_PEWTER_CITY] = { 0, 0, 1, 1, sMapName_PewterCity}, + [MAPSEC_CERULEAN_CITY] = { 0, 0, 1, 1, sMapName_CeruleanCity}, + [MAPSEC_LAVENDER_TOWN] = { 0, 0, 1, 1, sMapName_LavenderTown}, + [MAPSEC_VERMILION_CITY] = { 0, 0, 1, 1, sMapName_VermilionCity}, + [MAPSEC_CELADON_CITY] = { 0, 0, 1, 1, sMapName_CeladonCity}, + [MAPSEC_FUCHSIA_CITY] = { 0, 0, 1, 1, sMapName_FuchsiaCity}, + [MAPSEC_CINNABAR_ISLAND] = { 0, 0, 1, 1, sMapName_CinnabarIsland}, + [MAPSEC_INDIGO_PLATEAU] = { 0, 0, 1, 1, sMapName_IndigoPlateau}, + [MAPSEC_SAFFRON_CITY] = { 0, 0, 1, 1, sMapName_SaffronCity}, + [MAPSEC_ROUTE_4_FLYDUP] = { 0, 0, 1, 1, sMapName_Route4}, + [MAPSEC_ROUTE_10_FLYDUP] = { 0, 0, 1, 1, sMapName_Route10}, + [MAPSEC_ROUTE_1] = { 0, 0, 1, 1, sMapName_Route1}, + [MAPSEC_ROUTE_2] = { 0, 0, 1, 1, sMapName_Route2}, + [MAPSEC_ROUTE_3] = { 0, 0, 1, 1, sMapName_Route3}, + [MAPSEC_ROUTE_4] = { 0, 0, 1, 1, sMapName_Route4_2}, + [MAPSEC_ROUTE_5] = { 0, 0, 1, 1, sMapName_Route5}, + [MAPSEC_ROUTE_6] = { 0, 0, 1, 1, sMapName_Route6}, + [MAPSEC_ROUTE_7] = { 0, 0, 1, 1, sMapName_Route7}, + [MAPSEC_ROUTE_8] = { 0, 0, 1, 1, sMapName_Route8}, + [MAPSEC_ROUTE_9] = { 0, 0, 1, 1, sMapName_Route9}, + [MAPSEC_ROUTE_10] = { 0, 0, 1, 1, sMapName_Route10_2}, + [MAPSEC_ROUTE_11] = { 0, 0, 1, 1, sMapName_Route11}, + [MAPSEC_ROUTE_12] = { 0, 0, 1, 1, sMapName_Route12}, + [MAPSEC_ROUTE_13] = { 0, 0, 1, 1, sMapName_Route13}, + [MAPSEC_ROUTE_14] = { 0, 0, 1, 1, sMapName_Route14}, + [MAPSEC_ROUTE_15] = { 0, 0, 1, 1, sMapName_Route15}, + [MAPSEC_ROUTE_16] = { 0, 0, 1, 1, sMapName_Route16}, + [MAPSEC_ROUTE_17] = { 0, 0, 1, 1, sMapName_Route17}, + [MAPSEC_ROUTE_18] = { 0, 0, 1, 1, sMapName_Route18}, + [MAPSEC_ROUTE_19] = { 0, 0, 1, 1, sMapName_Route19}, + [MAPSEC_ROUTE_20] = { 0, 0, 1, 1, sMapName_Route20}, + [MAPSEC_ROUTE_21] = { 0, 0, 1, 1, sMapName_Route21}, + [MAPSEC_ROUTE_22] = { 0, 0, 1, 1, sMapName_Route22}, + [MAPSEC_ROUTE_23] = { 0, 0, 1, 1, sMapName_Route23}, + [MAPSEC_ROUTE_24] = { 0, 0, 1, 1, sMapName_Route24}, + [MAPSEC_ROUTE_25] = { 0, 0, 1, 1, sMapName_Route25}, + [MAPSEC_VIRIDIAN_FOREST] = { 0, 0, 1, 1, sMapName_ViridianForest}, + [MAPSEC_MT_MOON] = { 0, 0, 1, 1, sMapName_MtMoon}, + [MAPSEC_S_S_ANNE] = { 0, 0, 1, 1, sMapName_SSAnne}, + [MAPSEC_UNDERGROUND_PATH] = { 0, 0, 1, 1, sMapName_UndergroundPath}, + [MAPSEC_UNDERGROUND_PATH_2] = { 0, 0, 1, 1, sMapName_UndergroundPath2}, + [MAPSEC_DIGLETTS_CAVE] = { 0, 0, 1, 1, sMapName_DiglettsCave}, + [MAPSEC_KANTO_VICTORY_ROAD] = { 0, 0, 1, 1, sMapName_KantoVictoryRoad}, + [MAPSEC_ROCKET_HIDEOUT] = { 0, 0, 1, 1, sMapName_RocketHideout}, + [MAPSEC_SILPH_CO] = { 0, 0, 1, 1, sMapName_SilphCo}, + [MAPSEC_POKEMON_MANSION] = { 0, 0, 1, 1, sMapName_PokemonMansion}, + [MAPSEC_KANTO_SAFARI_ZONE] = { 0, 0, 1, 1, sMapName_KantoSafariZone}, + [MAPSEC_POKEMON_LEAGUE] = { 0, 0, 1, 1, sMapName_PokemonLeague}, + [MAPSEC_ROCK_TUNNEL] = { 0, 0, 1, 1, sMapName_RockTunnel}, + [MAPSEC_SEAFOAM_ISLANDS] = { 0, 0, 1, 1, sMapName_SeafoamIslands}, + [MAPSEC_POKEMON_TOWER] = { 0, 0, 1, 1, sMapName_PokemonTower}, + [MAPSEC_CERULEAN_CAVE] = { 0, 0, 1, 1, sMapName_CeruleanCave}, + [MAPSEC_POWER_PLANT] = { 0, 0, 1, 1, sMapName_PowerPlant}, + [MAPSEC_ONE_ISLAND] = { 0, 0, 1, 1, sMapName_OneIsland}, + [MAPSEC_TWO_ISLAND] = { 0, 0, 1, 1, sMapName_TwoIsland}, + [MAPSEC_THREE_ISLAND] = { 0, 0, 1, 1, sMapName_ThreeIsland}, + [MAPSEC_FOUR_ISLAND] = { 0, 0, 1, 1, sMapName_FourIsland}, + [MAPSEC_FIVE_ISLAND] = { 0, 0, 1, 1, sMapName_FiveIsland}, + [MAPSEC_SEVEN_ISLAND] = { 0, 0, 1, 1, sMapName_SevenIsland}, + [MAPSEC_SIX_ISLAND] = { 0, 0, 1, 1, sMapName_SixIsland}, + [MAPSEC_KINDLE_ROAD] = { 0, 0, 1, 1, sMapName_KindleRoad}, + [MAPSEC_TREASURE_BEACH] = { 0, 0, 1, 1, sMapName_TreasureBeach}, + [MAPSEC_CAPE_BRINK] = { 0, 0, 1, 1, sMapName_CapeBrink}, + [MAPSEC_BOND_BRIDGE] = { 0, 0, 1, 1, sMapName_BondBridge}, + [MAPSEC_THREE_ISLE_PORT] = { 0, 0, 1, 1, sMapName_ThreeIslePort}, + [MAPSEC_SEVII_ISLE_6] = { 0, 0, 1, 1, sMapName_SeviiIsle6}, + [MAPSEC_SEVII_ISLE_7] = { 0, 0, 1, 1, sMapName_SeviiIsle7}, + [MAPSEC_SEVII_ISLE_8] = { 0, 0, 1, 1, sMapName_SeviiIsle8}, + [MAPSEC_SEVII_ISLE_9] = { 0, 0, 1, 1, sMapName_SeviiIsle9}, + [MAPSEC_RESORT_GORGEOUS] = { 0, 0, 1, 1, sMapName_ResortGorgeous}, + [MAPSEC_WATER_LABYRINTH] = { 0, 0, 1, 1, sMapName_WaterLabyrinth}, + [MAPSEC_FIVE_ISLE_MEADOW] = { 0, 0, 1, 1, sMapName_FiveIsleMeadow}, + [MAPSEC_MEMORIAL_PILLAR] = { 0, 0, 1, 1, sMapName_MemorialPillar}, + [MAPSEC_OUTCAST_ISLAND] = { 0, 0, 1, 1, sMapName_OutcastIsland}, + [MAPSEC_GREEN_PATH] = { 0, 0, 1, 1, sMapName_GreenPath}, + [MAPSEC_WATER_PATH] = { 0, 0, 1, 1, sMapName_WaterPath}, + [MAPSEC_RUIN_VALLEY] = { 0, 0, 1, 1, sMapName_RuinValley}, + [MAPSEC_TRAINER_TOWER] = { 0, 0, 1, 1, sMapName_TrainerTower}, + [MAPSEC_CANYON_ENTRANCE] = { 0, 0, 1, 1, sMapName_CanyonEntrance}, + [MAPSEC_SEVAULT_CANYON] = { 0, 0, 1, 1, sMapName_SevaultCanyon}, + [MAPSEC_TANOBY_RUINS] = { 0, 0, 1, 1, sMapName_TanobyRuins}, + [MAPSEC_SEVII_ISLE_22] = { 0, 0, 1, 1, sMapName_SeviiIsle22}, + [MAPSEC_SEVII_ISLE_23] = { 0, 0, 1, 1, sMapName_SeviiIsle23}, + [MAPSEC_SEVII_ISLE_24] = { 0, 0, 1, 1, sMapName_SeviiIsle24}, + [MAPSEC_NAVEL_ROCK_FRLG] = { 0, 0, 1, 1, sMapName_NavelRock}, + [MAPSEC_MT_EMBER] = { 0, 0, 1, 1, sMapName_MtEmber}, + [MAPSEC_BERRY_FOREST] = { 0, 0, 1, 1, sMapName_BerryForest}, + [MAPSEC_ICEFALL_CAVE] = { 0, 0, 1, 1, sMapName_IcefallCave}, + [MAPSEC_ROCKET_WAREHOUSE] = { 0, 0, 1, 1, sMapName_RocketWarehouse}, + [MAPSEC_TRAINER_TOWER_2] = { 0, 0, 1, 1, sMapName_TrainerTower2}, + [MAPSEC_DOTTED_HOLE] = { 0, 0, 1, 1, sMapName_DottedHole}, + [MAPSEC_LOST_CAVE] = { 0, 0, 1, 1, sMapName_LostCave}, + [MAPSEC_PATTERN_BUSH] = { 0, 0, 1, 1, sMapName_PatternBush}, + [MAPSEC_ALTERING_CAVE_FRLG] = { 0, 0, 1, 1, sMapName_AlteringCave}, + [MAPSEC_TANOBY_CHAMBERS] = { 0, 0, 1, 1, sMapName_TanobyChambers}, + [MAPSEC_THREE_ISLE_PATH] = { 0, 0, 1, 1, sMapName_ThreeIslePath}, + [MAPSEC_TANOBY_KEY] = { 0, 0, 1, 1, sMapName_TanobyKey}, + [MAPSEC_BIRTH_ISLAND_FRLG] = { 0, 0, 1, 1, sMapName_BirthIsland}, + [MAPSEC_MONEAN_CHAMBER] = { 0, 0, 1, 1, sMapName_MoneanChamber}, + [MAPSEC_LIPTOO_CHAMBER] = { 0, 0, 1, 1, sMapName_LiptooChamber}, + [MAPSEC_WEEPTH_CHAMBER] = { 0, 0, 1, 1, sMapName_WeepthChamber}, + [MAPSEC_DILFORD_CHAMBER] = { 0, 0, 1, 1, sMapName_DilfordChamber}, + [MAPSEC_SCUFIB_CHAMBER] = { 0, 0, 1, 1, sMapName_ScufibChamber}, + [MAPSEC_RIXY_CHAMBER] = { 0, 0, 1, 1, sMapName_RixyChamber}, + [MAPSEC_VIAPOIS_CHAMBER] = { 0, 0, 1, 1, sMapName_ViapoisChamber}, + [MAPSEC_EMBER_SPA] = { 0, 0, 1, 1, sMapName_EmberSpa}, + [MAPSEC_SPECIAL_AREA] = { 0, 0, 1, 1, sMapName_SpecialArea}, + [MAPSEC_AQUA_HIDEOUT] = {19, 3, 1, 1, sMapName_AquaHideout}, + [MAPSEC_MAGMA_HIDEOUT] = { 6, 3, 1, 1, sMapName_MagmaHideout}, + [MAPSEC_MIRAGE_TOWER] = { 8, 2, 1, 1, sMapName_MirageTower}, + [MAPSEC_BIRTH_ISLAND] = { 0, 0, 1, 1, sMapName_BirthIsland}, + [MAPSEC_FARAWAY_ISLAND] = { 0, 0, 1, 1, sMapName_FarawayIsland}, + [MAPSEC_ARTISAN_CAVE] = {22, 12, 1, 1, sMapName_ArtisanCave}, + [MAPSEC_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_MarineCave}, + [MAPSEC_UNDERWATER_MARINE_CAVE] = { 0, 0, 1, 1, sMapName_Underwater}, + [MAPSEC_TERRA_CAVE] = { 0, 0, 1, 1, sMapName_TerraCave}, + [MAPSEC_UNDERWATER_105] = { 0, 10, 1, 3, sMapName_Underwater}, + [MAPSEC_UNDERWATER_125] = {24, 3, 2, 2, sMapName_Underwater}, + [MAPSEC_UNDERWATER_129] = {24, 10, 2, 1, sMapName_Underwater}, + [MAPSEC_DESERT_UNDERPASS] = { 2, 0, 1, 1, sMapName_DesertUnderpass}, + [MAPSEC_ALTERING_CAVE] = { 6, 8, 1, 1, sMapName_AlteringCave}, + [MAPSEC_NAVEL_ROCK] = { 0, 0, 1, 1, sMapName_NavelRock}, + [MAPSEC_TRAINER_HILL] = { 8, 4, 1, 1, sMapName_TrainerHill} }; #endif //GUARD_DATA_REGION_MAP_REGION_MAP_ENTRIES_H diff --git a/src/data/text/nature_names.h b/src/data/text/nature_names.h index d0d217d9b..601898445 100644 --- a/src/data/text/nature_names.h +++ b/src/data/text/nature_names.h @@ -24,7 +24,7 @@ static const u8 sSassyNatureName[] = _("SASSY"); static const u8 sCarefulNatureName[] = _("CAREFUL"); static const u8 sQuirkyNatureName[] = _("QUIRKY"); -const u8 *const gNatureNamePointers[] = +const u8 *const gNatureNamePointers[NUM_NATURES] = { [NATURE_HARDY] = sHardyNatureName, [NATURE_LONELY] = sLonelyNatureName, diff --git a/src/data/union_room.h b/src/data/union_room.h index 8cb0bc8aa..be7bfae71 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -50,27 +50,36 @@ const u8 sText_4PlayerMode[] = _("4-PLAYER\nMODE"); const u8 sText_5PlayerMode[] = _("5-PLAYER\nMODE"); static const u8 *const sPlayersNeededOrModeTexts[][5] = { + // 2 players required { sText_1PlayerNeeded, sText_2PlayerMode - }, { + }, + // 4 players required + { sText_3PlayersNeeded, sText_2PlayersNeeded, sText_1PlayerNeeded, sText_4PlayerMode - }, { + }, + // 2-5 players required + { sText_1PlayerNeeded, sText_2PlayerMode, sText_3PlayerMode, sText_4PlayerMode, sText_5PlayerMode - }, { + }, + // 3-5 players required + { sText_2PlayersNeeded, sText_1PlayerNeeded, sText_3PlayerMode, sText_4PlayerMode, sText_5PlayerMode - }, { + }, + // 2-4 players required + { sText_1PlayerNeeded, sText_2PlayerMode, sText_3PlayerMode, @@ -90,15 +99,15 @@ ALIGNED(4) const u8 sText_OtherTrainerUnavailableNow[] = _("The other TRAINER do ALIGNED(4) const u8 sText_CantTransmitTrainerTooFar[] = _("You can't transmit with a TRAINER\nwho is too far away.\p"); ALIGNED(4) const u8 sText_TrainersNotReadyYet[] = _("The other TRAINER(S) is/are not\nready yet.\p"); -const u8 *const sCantTransmitToTrainerTexts[] = { - sText_CantTransmitTrainerTooFar, - sText_TrainersNotReadyYet +static const u8 *const sCantTransmitToTrainerTexts[] = { + [UR_TRADE_PLAYER_NOT_READY - 1] = sText_CantTransmitTrainerTooFar, + [UR_TRADE_PARTNER_NOT_READY - 1] = sText_TrainersNotReadyYet }; ALIGNED(4) const u8 sText_ModeWithTheseMembersWillBeCanceled[] = _("The {STR_VAR_1} MODE with\nthese members will be canceled.{PAUSE 60}"); ALIGNED(4) const u8 sText_MemberNoLongerAvailable[] = _("There is a member who can no\nlonger remain available.\p"); -const u8 *const sPlayerUnavailableTexts[] = { +static const u8 *const sPlayerUnavailableTexts[] = { sText_OtherTrainerUnavailableNow, sText_MemberNoLongerAvailable }; @@ -111,17 +120,17 @@ ALIGNED(4) const u8 sText_AwaitingOtherMembers[] = _("{STR_VAR_1}!\nAwaiting oth ALIGNED(4) const u8 sText_QuitBeingMember[] = _("Quit being a member?"); ALIGNED(4) const u8 sText_StoppedBeingMember[] = _("You stopped being a member.\p"); -const u8 *const sPlayerDisconnectedTexts[] = { - NULL, - sText_MemberNoLongerAvailable, - sText_TrainerAppearsUnavailable, - NULL, - NULL, - NULL, - sText_PlayerRepliedNo, - NULL, - NULL, - sText_StoppedBeingMember +static const u8 *const sPlayerDisconnectedTexts[] = { + [RFU_STATUS_OK] = NULL, + [RFU_STATUS_FATAL_ERROR] = sText_MemberNoLongerAvailable, + [RFU_STATUS_CONNECTION_ERROR] = sText_TrainerAppearsUnavailable, + [RFU_STATUS_CHILD_SEND_COMPLETE] = NULL, + [RFU_STATUS_NEW_CHILD_DETECTED] = NULL, + [RFU_STATUS_JOIN_GROUP_OK] = NULL, + [RFU_STATUS_JOIN_GROUP_NO] = sText_PlayerRepliedNo, + [RFU_STATUS_WAIT_ACK_JOIN_GROUP] = NULL, + [RFU_STATUS_LEAVE_GROUP_NOTICE] = NULL, + [RFU_STATUS_LEAVE_GROUP] = sText_StoppedBeingMember }; ALIGNED(4) const u8 sText_WirelessLinkEstablished[] = _("The WIRELESS COMMUNICATION\nSYSTEM link has been established."); @@ -130,16 +139,16 @@ ALIGNED(4) const u8 sText_LinkWithFriendDropped[] = _("The link with your friend ALIGNED(4) const u8 sText_PlayerRepliedNo2[] = _("{STR_VAR_1} replied, “No…”"); const u8 *const sLinkDroppedTexts[] = { - NULL, - sText_LinkWithFriendDropped, - sText_LinkWithFriendDropped, - NULL, - NULL, - NULL, - sText_PlayerRepliedNo2, - NULL, - NULL, - NULL + [RFU_STATUS_OK] = NULL, + [RFU_STATUS_FATAL_ERROR] = sText_LinkWithFriendDropped, + [RFU_STATUS_CONNECTION_ERROR] = sText_LinkWithFriendDropped, + [RFU_STATUS_CHILD_SEND_COMPLETE] = NULL, + [RFU_STATUS_NEW_CHILD_DETECTED] = NULL, + [RFU_STATUS_JOIN_GROUP_OK] = NULL, + [RFU_STATUS_JOIN_GROUP_NO] = sText_PlayerRepliedNo2, + [RFU_STATUS_WAIT_ACK_JOIN_GROUP] = NULL, + [RFU_STATUS_LEAVE_GROUP_NOTICE] = NULL, + [RFU_STATUS_LEAVE_GROUP] = NULL }; ALIGNED(4) const u8 sText_DoYouWantXMode[] = _("Do you want the {STR_VAR_2}\nMODE?"); @@ -213,7 +222,7 @@ static const u8 *const sAwaitingResponseTexts[] = { ALIGNED(4) const u8 sText_ShowTrainerCard[] = _("The other TRAINER showed\nyou their TRAINER CARD.\pWould you like to show your\nTRAINER CARD?"); ALIGNED(4) const u8 sText_BattleChallenge[] = _("The other TRAINER challenges you\nto battle.\pWill you accept the battle\nchallenge?"); ALIGNED(4) const u8 sText_ChatInvitation[] = _("The other TRAINER invites you\nto chat.\pWill you accept the chat\ninvitation?"); -ALIGNED(4) const u8 sText_OfferToTradeMon[] = _("There is an offer to trade your\nregistered Lv. {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}\pin exchange for a\nLv. {SPECIAL_F7 0x02} {SPECIAL_F7 0x03}.\pWill you accept this trade\noffer?"); +ALIGNED(4) const u8 sText_OfferToTradeMon[] = _("There is an offer to trade your\nregistered Lv. {DYNAMIC 0} {DYNAMIC 1}\pin exchange for a\nLv. {DYNAMIC 2} {DYNAMIC 3}.\pWill you accept this trade\noffer?"); ALIGNED(4) const u8 sText_OfferToTradeEgg[] = _("There is an offer to trade your\nregistered EGG.\lWill you accept this trade offer?"); ALIGNED(4) const u8 sText_ChatDropped[] = _("The chat has been dropped.\p"); ALIGNED(4) const u8 sText_OfferDeclined1[] = _("You declined the offer.\p"); @@ -251,7 +260,7 @@ ALIGNED(4) const u8 sText_WaitForBattleFemale[] = _("A battle? Of course, but I ALIGNED(4) const u8 sText_WaitForChatFemale[] = _("Did you want to chat?\nOkay, but please wait a moment."); ALIGNED(4) const u8 sText_ShowTrainerCardFemale[] = _("As my introduction, I'll show you\nmy TRAINER CARD."); -const u8 *const sText_WaitOrShowCardTexts[GENDER_COUNT][4] = { +static const u8 *const sText_WaitOrShowCardTexts[GENDER_COUNT][4] = { { sText_WaitForBattleMale, sText_WaitForChatMale, @@ -274,7 +283,7 @@ ALIGNED(4) const u8 sText_TradeWillBeStarted[] = _("The trade will be started.{P ALIGNED(4) const u8 sText_BattleWillBeStarted[] = _("The battle will be started.{PAUSE 60}"); ALIGNED(4) const u8 sText_EnteringChat[] = _("Entering the chat…{PAUSE 60}"); -const u8 *const sStartActivityTexts[][GENDER_COUNT][3] = { +static const u8 *const sStartActivityTexts[][GENDER_COUNT][3] = { { { sText_BattleWillBeStarted, @@ -325,18 +334,21 @@ const u8 *const sIfYouWantToDoSomethingTexts[GENDER_COUNT] = { ALIGNED(4) const u8 sText_TrainerBattleBusy[] = _("Whoops! Sorry, but I have to do\nsomething else.\lAnother time, okay?\p"); ALIGNED(4) const u8 sText_NeedTwoMonsOfLevel30OrLower1[] = _("If you want to battle, you need\ntwo POKéMON that are below\lLv. 30.\p"); ALIGNED(4) const u8 sText_NeedTwoMonsOfLevel30OrLower2[] = _("For a battle, you need two\nPOKéMON that are below Lv. 30.\p"); -ALIGNED(4) const u8 sText_DeclineBattleMale[] = _("Oh, all right.\nCome see me anytime, okay?\p"); -ALIGNED(4) const u8 stext_DeclineBattleFemale[] = _("Oh…\nPlease come by anytime.\p"); -static const u8 *const sDeclineBattleTexts[GENDER_COUNT] = { - sText_DeclineBattleMale, - stext_DeclineBattleFemale +ALIGNED(4) const u8 sText_DeclineChatMale[] = _("Oh, all right.\nCome see me anytime, okay?\p"); +ALIGNED(4) const u8 stext_DeclineChatFemale[] = _("Oh…\nPlease come by anytime.\p"); + +// Response from partner when player declines chat +static const u8 *const sDeclineChatTexts[GENDER_COUNT] = { + sText_DeclineChatMale, + stext_DeclineChatFemale }; ALIGNED(4) const u8 sText_ChatDeclinedMale[] = _("Oh, sorry!\nI just can't right this instant.\lLet's chat another time.\p"); ALIGNED(4) const u8 sText_ChatDeclinedFemale[] = _("Oh, I'm sorry.\nI have too much to do right now.\lLet's chat some other time.\p"); -const u8 *const sChatDeclinedTexts[GENDER_COUNT] = { +// Response from partner when they decline chat +static const u8 *const sChatDeclinedTexts[GENDER_COUNT] = { sText_ChatDeclinedMale, sText_ChatDeclinedFemale }; @@ -484,8 +496,8 @@ static const u8 *const sChooseTrainerTexts[NUM_LINK_GROUP_TYPES] = [LINK_GROUP_BERRY_PICKING] = sText_ChooseLeaderBerryPicking, [LINK_GROUP_WONDER_CARD] = sText_ChooseTrainerToShareWonderCards, [LINK_GROUP_WONDER_NEWS] = sText_ChooseTrainerToShareWonderNews, - [LINK_GROUP_UNK_9] = NULL, - [LINK_GROUP_UNK_10] = NULL, + [LINK_GROUP_UNION_ROOM_RESUME] = NULL, + [LINK_GROUP_UNION_ROOM_INIT] = NULL, [LINK_GROUP_UNK_11] = NULL, [LINK_GROUP_RECORD_CORNER] = sText_ChooseLeaderRecordCorner, [LINK_GROUP_BERRY_BLENDER] = sText_ChooseLeaderBerryBlender, @@ -555,51 +567,51 @@ static const u8 *const sCardColorTexts[] = { sText_ItsGoldCard }; -ALIGNED(4) const u8 sText_TrainerCardInfoPage1[] = _("This is {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}'s\nTRAINER CARD…\l{SPECIAL_F7 0x02}\pPOKéDEX: {SPECIAL_F7 0x03}\nTIME: {SPECIAL_F7 0x04}:{SPECIAL_F7 0x05}\p"); -ALIGNED(4) const u8 sText_TrainerCardInfoPage2[] = _("BATTLES: WINS: {SPECIAL_F7 0x00} LOSSES: {SPECIAL_F7 0x02}\nTRADES: {SPECIAL_F7 0x03}\p“{SPECIAL_F7 0x04} {SPECIAL_F7 0x05}\n{SPECIAL_F7 0x06} {SPECIAL_F7 0x07}”\p"); -ALIGNED(4) const u8 sText_GladToMeetYouMale[] = _("{SPECIAL_F7 0x01}: Glad to have met you!{PAUSE 60}"); -ALIGNED(4) const u8 sText_GladToMeetYouFemale[] = _("{SPECIAL_F7 0x01}: Glad to meet you!{PAUSE 60}"); +ALIGNED(4) const u8 sText_TrainerCardInfoPage1[] = _("This is {DYNAMIC 0} {DYNAMIC 1}'s\nTRAINER CARD…\l{DYNAMIC 2}\pPOKéDEX: {DYNAMIC 3}\nTIME: {DYNAMIC 4}:{DYNAMIC 5}\p"); +ALIGNED(4) const u8 sText_TrainerCardInfoPage2[] = _("BATTLES: WINS: {DYNAMIC 0} LOSSES: {DYNAMIC 2}\nTRADES: {DYNAMIC 3}\p“{DYNAMIC 4} {DYNAMIC 5}\n{DYNAMIC 6} {DYNAMIC 7}”\p"); +ALIGNED(4) const u8 sText_GladToMeetYouMale[] = _("{DYNAMIC 1}: Glad to have met you!{PAUSE 60}"); +ALIGNED(4) const u8 sText_GladToMeetYouFemale[] = _("{DYNAMIC 1}: Glad to meet you!{PAUSE 60}"); const u8 *const sGladToMeetYouTexts[GENDER_COUNT] = { sText_GladToMeetYouMale, sText_GladToMeetYouFemale }; -ALIGNED(4) const u8 sText_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {SPECIAL_F7 0x01}'s\nTRAINER CARD.{PAUSE 60}"); - -const u8 *const sLinkGroupActivityTexts[] = { - sText_EmptyString, - sText_SingleBattle, - sText_DoubleBattle, - sText_MultiBattle, - sText_PokemonTrades, - sText_Chat, - sText_WonderCards, - sText_WonderNews, - sText_Cards, - sText_PokemonJump, - sText_BerryCrush, - sText_BerryPicking, - sText_Search, - sText_EmptyString, - sText_BattleTowerOpenLv, - sText_RecordCorner, - sText_BerryBlender, - sText_EmptyString, - sText_EmptyString, - sText_EmptyString, - sText_EmptyString, - sText_WonderCards, - sText_WonderNews, - sText_CoolContest, - sText_BeautyContest, - sText_CuteContest, - sText_SmartContest, - sText_ToughContest, - sText_BattleTowerLv50 +ALIGNED(4) const u8 sText_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {DYNAMIC 1}'s\nTRAINER CARD.{PAUSE 60}"); + +static const u8 *const sLinkGroupActivityNameTexts[] = { + [ACTIVITY_NONE] = sText_EmptyString, + [ACTIVITY_BATTLE_SINGLE] = sText_SingleBattle, + [ACTIVITY_BATTLE_DOUBLE] = sText_DoubleBattle, + [ACTIVITY_BATTLE_MULTI] = sText_MultiBattle, + [ACTIVITY_TRADE] = sText_PokemonTrades, + [ACTIVITY_CHAT] = sText_Chat, + [ACTIVITY_WONDER_CARD] = sText_WonderCards, + [ACTIVITY_WONDER_NEWS] = sText_WonderNews, + [ACTIVITY_CARD] = sText_Cards, + [ACTIVITY_POKEMON_JUMP] = sText_PokemonJump, + [ACTIVITY_BERRY_CRUSH] = sText_BerryCrush, + [ACTIVITY_BERRY_PICK] = sText_BerryPicking, + [ACTIVITY_SEARCH] = sText_Search, + [ACTIVITY_SPIN_TRADE] = sText_EmptyString, + [ACTIVITY_BATTLE_TOWER_OPEN] = sText_BattleTowerOpenLv, + [ACTIVITY_RECORD_CORNER] = sText_RecordCorner, + [ACTIVITY_BERRY_BLENDER] = sText_BerryBlender, + [ACTIVITY_ACCEPT] = sText_EmptyString, + [ACTIVITY_DECLINE] = sText_EmptyString, + [ACTIVITY_NPCTALK] = sText_EmptyString, + [ACTIVITY_PLYRTALK] = sText_EmptyString, + [ACTIVITY_WONDER_CARD2] = sText_WonderCards, + [ACTIVITY_WONDER_NEWS2] = sText_WonderNews, + [ACTIVITY_CONTEST_COOL] = sText_CoolContest, + [ACTIVITY_CONTEST_BEAUTY] = sText_BeautyContest, + [ACTIVITY_CONTEST_CUTE] = sText_CuteContest, + [ACTIVITY_CONTEST_SMART] = sText_SmartContest, + [ACTIVITY_CONTEST_TOUGH] = sText_ToughContest, + [ACTIVITY_BATTLE_TOWER] = sText_BattleTowerLv50 }; -const struct WindowTemplate gUnknown_082F00BC = { +static const struct WindowTemplate sWindowTemplate_BButtonCancel = { .bg = 0x00, .tilemapLeft = 0x00, .tilemapTop = 0x00, @@ -609,62 +621,69 @@ const struct WindowTemplate gUnknown_082F00BC = { .baseBlock = 0x0008 }; -const u32 gUnknown_082F00C4[NUM_LINK_GROUP_TYPES] = { - 0x0201, - 0x0202, - 0x0403, - 0x0204, - 0x2509, - 0x250a, - 0x350b, - 0x0000, - 0x0000, - 0x0000, - 0x0000, - 0x0000, - 0x240f, - 0x2410, - 0x0000, - 0x2417, - 0x2418, - 0x2419, - 0x241a, - 0x241b, - 0x021c, - 0x020e +// Minimum and maximum number of players for a link group +// A minimum of 0 means the min and max are equal +#define LINK_GROUP_CAPACITY(min, max)(((min) << 12) | ((max) << 8)) +#define GROUP_MAX(capacity)(capacity & 0x0F) +#define GROUP_MIN(capacity)(capacity >> 4) +#define GROUP_MIN2(capacity)(capacity & 0xF0) // Unnecessary to have both, but needed to match + +static const u32 sLinkGroupToActivityAndCapacity[NUM_LINK_GROUP_TYPES] = { + [LINK_GROUP_SINGLE_BATTLE] = ACTIVITY_BATTLE_SINGLE | LINK_GROUP_CAPACITY(0, 2), + [LINK_GROUP_DOUBLE_BATTLE] = ACTIVITY_BATTLE_DOUBLE | LINK_GROUP_CAPACITY(0, 2), + [LINK_GROUP_MULTI_BATTLE] = ACTIVITY_BATTLE_MULTI | LINK_GROUP_CAPACITY(0, 4), + [LINK_GROUP_TRADE] = ACTIVITY_TRADE | LINK_GROUP_CAPACITY(0, 2), + [LINK_GROUP_POKEMON_JUMP] = ACTIVITY_POKEMON_JUMP | LINK_GROUP_CAPACITY(2, 5), + [LINK_GROUP_BERRY_CRUSH] = ACTIVITY_BERRY_CRUSH | LINK_GROUP_CAPACITY(2, 5), + [LINK_GROUP_BERRY_PICKING] = ACTIVITY_BERRY_PICK | LINK_GROUP_CAPACITY(3, 5), + [LINK_GROUP_WONDER_CARD] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_WONDER_NEWS] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_UNION_ROOM_RESUME] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_UNION_ROOM_INIT] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_UNK_11] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_RECORD_CORNER] = ACTIVITY_RECORD_CORNER | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_BERRY_BLENDER] = ACTIVITY_BERRY_BLENDER | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_UNK_14] = ACTIVITY_NONE | LINK_GROUP_CAPACITY(0, 0), + [LINK_GROUP_COOL_CONTEST] = ACTIVITY_CONTEST_COOL | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_BEAUTY_CONTEST] = ACTIVITY_CONTEST_BEAUTY | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_CUTE_CONTEST] = ACTIVITY_CONTEST_CUTE | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_SMART_CONTEST] = ACTIVITY_CONTEST_SMART | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_TOUGH_CONTEST] = ACTIVITY_CONTEST_TOUGH | LINK_GROUP_CAPACITY(2, 4), + [LINK_GROUP_BATTLE_TOWER] = ACTIVITY_BATTLE_TOWER | LINK_GROUP_CAPACITY(0, 2), + [LINK_GROUP_BATTLE_TOWER_OPEN] = ACTIVITY_BATTLE_TOWER_OPEN | LINK_GROUP_CAPACITY(0, 2) }; -const struct WindowTemplate gUnknown_082F011C = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x03, - .width = 0x0d, - .height = 0x08, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_PlayerList = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 13, + .height = 8, + .paletteNum = 15, .baseBlock = 0x0044 }; -const struct WindowTemplate gUnknown_082F0124 = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x03, - .width = 0x0d, - .height = 0x0a, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_5PlayerList = { + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 3, + .width = 13, + .height = 10, + .paletteNum = 15, .baseBlock = 0x0044 }; -const struct WindowTemplate gUnknown_082F012C = { - .bg = 0x00, - .tilemapLeft = 0x10, - .tilemapTop = 0x03, - .width = 0x07, - .height = 0x04, - .paletteNum = 0x0f, +static const struct WindowTemplate sWindowTemplate_NumPlayerMode = { + .bg = 0, + .tilemapLeft = 16, + .tilemapTop = 3, + .width = 7, + .height = 4, + .paletteNum = 15, .baseBlock = 0x00c6 }; -const struct ListMenuItem gUnknown_082F0134[] = { +static const struct ListMenuItem sPossibleGroupMembersListMenuItems[] = { { sText_EmptyString, 0 }, { sText_EmptyString, 1 }, { sText_EmptyString, 2 }, @@ -672,11 +691,11 @@ const struct ListMenuItem gUnknown_082F0134[] = { { sText_EmptyString, 4 } }; -const struct ListMenuTemplate gUnknown_082F015C = { - .items = gUnknown_082F0134, +static const struct ListMenuTemplate sListMenuTemplate_PossibleGroupMembers = { + .items = sPossibleGroupMembersListMenuItems, .moveCursorFunc = NULL, - .itemPrintFunc = sub_8013278, - .totalItems = 5, + .itemPrintFunc = ItemPrintFunc_PossibleGroupMembers, + .totalItems = ARRAY_COUNT(sPossibleGroupMembersListMenuItems), .maxShowed = 5, .windowId = 0, .header_X = 0, @@ -732,11 +751,11 @@ const struct ListMenuItem gUnknown_082F0184[] = { { sText_EmptyString, 15 } }; -const struct ListMenuTemplate gUnknown_082F0204 = { +static const struct ListMenuTemplate sListMenuTemplate_UnionRoomGroups = { .items = gUnknown_082F0184, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = sub_8013DF4, - .totalItems = 16, + .itemPrintFunc = ListMenuItemPrintFunc_UnionRoomGroups, + .totalItems = ARRAY_COUNT(gUnknown_082F0184), .maxShowed = 5, .windowId = 0, .header_X = 0, @@ -753,7 +772,7 @@ const struct ListMenuTemplate gUnknown_082F0204 = { .cursorKind = 0 }; -const struct WindowTemplate gUnknown_082F021C = { +static const struct WindowTemplate sWindowTemplate_InviteToActivity = { .bg = 0x00, .tilemapLeft = 0x14, .tilemapTop = 0x05, @@ -770,11 +789,11 @@ const struct ListMenuItem gUnknown_082F0224[] = { { sText_Exit, 0x040 } }; -const struct ListMenuTemplate gUnknown_082F0244 = { +static const struct ListMenuTemplate sListMenuTemplate_InviteToActivity = { .items = gUnknown_082F0224, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = NULL, - .totalItems = 4, + .totalItems = ARRAY_COUNT(gUnknown_082F0224), .maxShowed = 4, .windowId = 0, .header_X = 0, @@ -791,7 +810,7 @@ const struct ListMenuTemplate gUnknown_082F0244 = { .cursorKind = 0 }; -const struct WindowTemplate gUnknown_082F025C = { +static const struct WindowTemplate sWindowTemplate_RegisterForTrade = { .bg = 0x00, .tilemapLeft = 0x12, .tilemapTop = 0x07, @@ -801,17 +820,17 @@ const struct WindowTemplate gUnknown_082F025C = { .baseBlock = 0x0001 }; -const struct ListMenuItem gUnknown_082F0264[] = { +static const struct ListMenuItem sRegisterForTradeListMenuItems[] = { { gText_Register, 1 }, { sText_Info, 2 }, { sText_Exit, 3 } }; -const struct ListMenuTemplate gUnknown_082F027C = { - .items = gUnknown_082F0264, +static const struct ListMenuTemplate sListMenuTemplate_RegisterForTrade = { + .items = sRegisterForTradeListMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = NULL, - .totalItems = 3, + .totalItems = ARRAY_COUNT(sRegisterForTradeListMenuItems), .maxShowed = 3, .windowId = 0, .header_X = 0, @@ -838,7 +857,7 @@ const struct WindowTemplate gUnknown_082F0294 = { .baseBlock = 0x0001 }; -static const struct ListMenuItem sTradingBoardTypes[] = { +static const struct ListMenuItem sTradingBoardTypes[NUMBER_OF_MON_TYPES] = { { gTypeNames[TYPE_NORMAL], TYPE_NORMAL }, { gTypeNames[TYPE_FIRE], TYPE_FIRE }, { gTypeNames[TYPE_WATER], TYPE_WATER }, @@ -856,14 +875,14 @@ static const struct ListMenuItem sTradingBoardTypes[] = { { gTypeNames[TYPE_DRAGON], TYPE_DRAGON }, { gTypeNames[TYPE_STEEL], TYPE_STEEL }, { gTypeNames[TYPE_DARK], TYPE_DARK }, - { sText_Exit, NUMBER_OF_MON_TYPES } + { sText_Exit, NUMBER_OF_MON_TYPES } }; -const struct ListMenuTemplate sMenuTemplate_TradingBoardRequestType = { +static const struct ListMenuTemplate sMenuTemplate_TradingBoardRequestType = { .items = sTradingBoardTypes, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = NULL, - .totalItems = NUMBER_OF_MON_TYPES, + .totalItems = ARRAY_COUNT(sTradingBoardTypes), .maxShowed = 6, .windowId = 0, .header_X = 0, @@ -880,7 +899,7 @@ const struct ListMenuTemplate sMenuTemplate_TradingBoardRequestType = { .cursorKind = 0 }; -const struct WindowTemplate gUnknown_082F0344 = { +static const struct WindowTemplate sWindowTemplate_TradingBoard = { .bg = 0x00, .tilemapLeft = 0x01, .tilemapTop = 0x01, @@ -900,7 +919,7 @@ const struct WindowTemplate gUnknown_082F034C = { .baseBlock = 0x0039 }; -const struct ListMenuItem gUnknown_082F0354[] = { +static const struct ListMenuItem sTradeBoardListMenuItems[] = { { sText_EmptyString, -3 }, { sText_EmptyString, 0 }, { sText_EmptyString, 1 }, @@ -913,11 +932,11 @@ const struct ListMenuItem gUnknown_082F0354[] = { { sText_Exit2, 8 } }; -const struct ListMenuTemplate gUnknown_082F03A4 = { - .items = gUnknown_082F0354, +static const struct ListMenuTemplate sTradeBoardListMenuTemplate = { + .items = sTradeBoardListMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, - .itemPrintFunc = sub_8017BE8, - .totalItems = 10, + .itemPrintFunc = TradeBoardListMenuItemPrintFunc, + .totalItems = ARRAY_COUNT(sTradeBoardListMenuItems), .maxShowed = 6, .windowId = 0, .header_X = 0, @@ -944,7 +963,7 @@ const struct WindowTemplate UnrefWindowTemplate_082F03B4 = { .baseBlock = 0x0039 }; -const struct ListMenuItem gUnknown_082F03C4[] = { +static const struct ListMenuItem sEmptyListMenuItems[] = { { sText_EmptyString, 0 }, { sText_EmptyString, 1 }, { sText_EmptyString, 2 }, @@ -963,11 +982,12 @@ const struct ListMenuItem gUnknown_082F03C4[] = { { sText_EmptyString, 15 } }; -const struct ListMenuTemplate UnrefListMenuTemplate_082F0444 = { - .items = gUnknown_082F03C4, +// Unused +static const struct ListMenuTemplate sUnknownListMenuTemplate = { + .items = sEmptyListMenuItems, .moveCursorFunc = ListMenuDefaultCursorMoveFunc, .itemPrintFunc = nullsub_14, - .totalItems = 16, + .totalItems = ARRAY_COUNT(sEmptyListMenuItems), .maxShowed = 4, .windowId = 0, .header_X = 0, @@ -984,78 +1004,100 @@ const struct ListMenuTemplate UnrefListMenuTemplate_082F0444 = { .cursorKind = 0 }; -const struct UnkStruct_Shared gUnknown_082F045C = {0}; - -ALIGNED(4) const u8 gUnknown_082F0474[] = {0x01, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0478[] = {0x02, 0xff}; -ALIGNED(4) const u8 gUnknown_082F047C[] = {0x03, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0480[] = {0x04, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0484[] = {0x09, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0488[] = {0x0a, 0xff}; -ALIGNED(4) const u8 gUnknown_082F048C[] = {0x0b, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0490[] = {0x15, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0494[] = {0x16, 0xff}; -ALIGNED(4) const u8 gUnknown_082F0498[] = {0x40, 0x41, 0x44, 0x45, 0x48, 0x51, 0x52, 0x53, 0x54, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04A4[] = {0x0c, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04A8[] = {0x01, 0x02, 0x03, 0x04, 0x09, 0x0a, 0x0b, 0x15, 0x16, 0x0d, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04B4[] = {0x0f, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04B8[] = {0x10, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04BC[] = {0x17, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04C0[] = {0x18, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04C4[] = {0x19, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04C8[] = {0x1a, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04CC[] = {0x1b, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04D0[] = {0x1c, 0xff}; -ALIGNED(4) const u8 gUnknown_082F04D4[] = {0x0e, 0xff}; - -const u8 *const gUnknown_082F04D8[NUM_LINK_GROUP_TYPES] = { - gUnknown_082F0474, - gUnknown_082F0478, - gUnknown_082F047C, - gUnknown_082F0480, - gUnknown_082F0484, - gUnknown_082F0488, - gUnknown_082F048C, - gUnknown_082F0490, - gUnknown_082F0494, - gUnknown_082F0498, - gUnknown_082F04A4, - gUnknown_082F04A8, - gUnknown_082F04B4, - gUnknown_082F04B8, - NULL, - gUnknown_082F04BC, - gUnknown_082F04C0, - gUnknown_082F04C4, - gUnknown_082F04C8, - gUnknown_082F04CC, - gUnknown_082F04D0, - gUnknown_082F04D4 +const struct WirelessGnameUnamePair sWirelessGnameUnamePair_Dummy = {0}; + +ALIGNED(4) const u8 sAcceptedActivityIds_SingleBattle[] = {ACTIVITY_BATTLE_SINGLE, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_DoubleBattle[] = {ACTIVITY_BATTLE_DOUBLE, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_MultiBattle[] = {ACTIVITY_BATTLE_MULTI, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_Trade[] = {ACTIVITY_TRADE, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_PokemonJump[] = {ACTIVITY_POKEMON_JUMP, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BerryCrush[] = {ACTIVITY_BERRY_CRUSH, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BerryPicking[] = {ACTIVITY_BERRY_PICK, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_WonderCard[] = {ACTIVITY_WONDER_CARD2, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_WonderNews[] = {ACTIVITY_WONDER_NEWS2, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_Resume[] = { + IN_UNION_ROOM | ACTIVITY_NONE, + IN_UNION_ROOM | ACTIVITY_BATTLE_SINGLE, + IN_UNION_ROOM | ACTIVITY_TRADE, + IN_UNION_ROOM | ACTIVITY_CHAT, + IN_UNION_ROOM | ACTIVITY_CARD, + IN_UNION_ROOM | ACTIVITY_ACCEPT, + IN_UNION_ROOM | ACTIVITY_DECLINE, + IN_UNION_ROOM | ACTIVITY_NPCTALK, + IN_UNION_ROOM | ACTIVITY_PLYRTALK, + 0xff +}; +ALIGNED(4) const u8 sAcceptedActivityIds_Init[] = {ACTIVITY_SEARCH, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_Unk11[] = { + ACTIVITY_BATTLE_SINGLE, + ACTIVITY_BATTLE_DOUBLE, + ACTIVITY_BATTLE_MULTI, + ACTIVITY_TRADE, + ACTIVITY_POKEMON_JUMP, + ACTIVITY_BERRY_CRUSH, + ACTIVITY_BERRY_PICK, + ACTIVITY_WONDER_CARD2, + ACTIVITY_WONDER_NEWS2, + ACTIVITY_SPIN_TRADE, + 0xff +}; +ALIGNED(4) const u8 sAcceptedActivityIds_RecordCorner[] = {ACTIVITY_RECORD_CORNER, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BerryBlender[] = {ACTIVITY_BERRY_BLENDER, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_CoolContest[] = {ACTIVITY_CONTEST_COOL, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BeautyContest[] = {ACTIVITY_CONTEST_BEAUTY, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_CuteContest[] = {ACTIVITY_CONTEST_CUTE, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_SmartContest[] = {ACTIVITY_CONTEST_SMART, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_ToughContest[] = {ACTIVITY_CONTEST_TOUGH, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BattleTower[] = {ACTIVITY_BATTLE_TOWER, 0xff}; +ALIGNED(4) const u8 sAcceptedActivityIds_BattleTowerOpen[] = {ACTIVITY_BATTLE_TOWER_OPEN, 0xff}; + +const u8 *const sAcceptedActivityIds[NUM_LINK_GROUP_TYPES] = { + [LINK_GROUP_SINGLE_BATTLE] = sAcceptedActivityIds_SingleBattle, + [LINK_GROUP_DOUBLE_BATTLE] = sAcceptedActivityIds_DoubleBattle, + [LINK_GROUP_MULTI_BATTLE] = sAcceptedActivityIds_MultiBattle, + [LINK_GROUP_TRADE] = sAcceptedActivityIds_Trade, + [LINK_GROUP_POKEMON_JUMP] = sAcceptedActivityIds_PokemonJump, + [LINK_GROUP_BERRY_CRUSH] = sAcceptedActivityIds_BerryCrush, + [LINK_GROUP_BERRY_PICKING] = sAcceptedActivityIds_BerryPicking, + [LINK_GROUP_WONDER_CARD] = sAcceptedActivityIds_WonderCard, + [LINK_GROUP_WONDER_NEWS] = sAcceptedActivityIds_WonderNews, + [LINK_GROUP_UNION_ROOM_RESUME] = sAcceptedActivityIds_Resume, + [LINK_GROUP_UNION_ROOM_INIT] = sAcceptedActivityIds_Init, + [LINK_GROUP_UNK_11] = sAcceptedActivityIds_Unk11, + [LINK_GROUP_RECORD_CORNER] = sAcceptedActivityIds_RecordCorner, + [LINK_GROUP_BERRY_BLENDER] = sAcceptedActivityIds_BerryBlender, + [LINK_GROUP_UNK_14] = NULL, + [LINK_GROUP_COOL_CONTEST] = sAcceptedActivityIds_CoolContest, + [LINK_GROUP_BEAUTY_CONTEST] = sAcceptedActivityIds_BeautyContest, + [LINK_GROUP_CUTE_CONTEST] = sAcceptedActivityIds_CuteContest, + [LINK_GROUP_SMART_CONTEST] = sAcceptedActivityIds_SmartContest, + [LINK_GROUP_TOUGH_CONTEST] = sAcceptedActivityIds_ToughContest, + [LINK_GROUP_BATTLE_TOWER] = sAcceptedActivityIds_BattleTower, + [LINK_GROUP_BATTLE_TOWER_OPEN] = sAcceptedActivityIds_BattleTowerOpen }; -// Link group type to ID for gUnknown_02022C2C -const u8 gUnknown_082F0530[NUM_LINK_GROUP_TYPES + 2] = +static const u8 sLinkGroupToURoomActivity[NUM_LINK_GROUP_TYPES + 2] = { - 0x01, - 0x02, - 0x03, - 0x04, - 0x09, - 0x0a, - 0x0b, - 0x15, - 0x16, - 0x00, - 0x00, - 0x00, - 0x0f, - 0x10, - 0x00, - 0x17, - 0x18, - 0x19, - 0x1a, - 0x1b, - 0x1c, - 0x0e + [LINK_GROUP_SINGLE_BATTLE] = ACTIVITY_BATTLE_SINGLE, + [LINK_GROUP_DOUBLE_BATTLE] = ACTIVITY_BATTLE_DOUBLE, + [LINK_GROUP_MULTI_BATTLE] = ACTIVITY_BATTLE_MULTI, + [LINK_GROUP_TRADE] = ACTIVITY_TRADE, + [LINK_GROUP_POKEMON_JUMP] = ACTIVITY_POKEMON_JUMP, + [LINK_GROUP_BERRY_CRUSH] = ACTIVITY_BERRY_CRUSH, + [LINK_GROUP_BERRY_PICKING] = ACTIVITY_BERRY_PICK, + [LINK_GROUP_WONDER_CARD] = ACTIVITY_WONDER_CARD2, + [LINK_GROUP_WONDER_NEWS] = ACTIVITY_WONDER_NEWS2, + [LINK_GROUP_UNION_ROOM_RESUME] = ACTIVITY_NONE, + [LINK_GROUP_UNION_ROOM_INIT] = ACTIVITY_NONE, + [LINK_GROUP_UNK_11] = ACTIVITY_NONE, + [LINK_GROUP_RECORD_CORNER] = ACTIVITY_RECORD_CORNER, + [LINK_GROUP_BERRY_BLENDER] = ACTIVITY_BERRY_BLENDER, + [LINK_GROUP_UNK_14] = ACTIVITY_NONE, + [LINK_GROUP_COOL_CONTEST] = ACTIVITY_CONTEST_COOL, + [LINK_GROUP_BEAUTY_CONTEST] = ACTIVITY_CONTEST_BEAUTY, + [LINK_GROUP_CUTE_CONTEST] = ACTIVITY_CONTEST_CUTE, + [LINK_GROUP_SMART_CONTEST] = ACTIVITY_CONTEST_SMART, + [LINK_GROUP_TOUGH_CONTEST] = ACTIVITY_CONTEST_TOUGH, + [LINK_GROUP_BATTLE_TOWER] = ACTIVITY_BATTLE_TOWER, + [LINK_GROUP_BATTLE_TOWER_OPEN] = ACTIVITY_BATTLE_TOWER_OPEN }; diff --git a/src/data/wild_encounters.json b/src/data/wild_encounters.json index b27de4513..0b30c0f65 100755 --- a/src/data/wild_encounters.json +++ b/src/data/wild_encounters.json @@ -2265,8 +2265,8 @@ } }, { - "map": "MAP_UNDERWATER2", - "base_label": "gUnderwater2", + "map": "MAP_UNDERWATER_ROUTE126", + "base_label": "gUnderwater_Route126", "water_mons": { "encounter_rate": 4, "mons": [ @@ -9075,8 +9075,8 @@ } }, { - "map": "MAP_UNDERWATER1", - "base_label": "gUnderwater1", + "map": "MAP_UNDERWATER_ROUTE124", + "base_label": "gUnderwater_Route124", "water_mons": { "encounter_rate": 4, "mons": [ |