code:
#ifndef GUARD_CONSTANTS_FRONTIER_UTIL_H
#define GUARD_CONSTANTS_FRONTIER_UTIL_H

#define FRONTIER_BEFORE_TEXT      0
#define FRONTIER_PLAYER_LOST_TEXT 1
#define FRONTIER_PLAYER_WON_TEXT  2

// return values for GetFrontierBrainStatus
#define FRONTIER_BRAIN_NOT_READY   0
#define FRONTIER_BRAIN_SILVER      1
#define FRONTIER_BRAIN_GOLD        2
#define FRONTIER_BRAIN_STREAK      3  // for encountering the brain after getting both symbols
#define FRONTIER_BRAIN_STREAK_LONG 4  //

#define FRONTIER_UTIL_FUNC_GET_STATUS             0
#define FRONTIER_UTIL_FUNC_GET_DATA               1
#define FRONTIER_UTIL_FUNC_SET_DATA               2
#define FRONTIER_UTIL_FUNC_SET_PARTY_ORDER        3
#define FRONTIER_UTIL_FUNC_SOFT_RESET             4
#define FRONTIER_UTIL_FUNC_SET_TRAINERS           5
#define FRONTIER_UTIL_FUNC_SAVE_PARTY             6
#define FRONTIER_UTIL_FUNC_RESULTS_WINDOW         7
#define FRONTIER_UTIL_FUNC_CHECK_AIR_TV_SHOW      8
#define FRONTIER_UTIL_FUNC_GET_BRAIN_STATUS       9
#define FRONTIER_UTIL_FUNC_IS_BRAIN               10
#define FRONTIER_UTIL_FUNC_GIVE_BATTLE_POINTS     11
#define FRONTIER_UTIL_FUNC_GET_FACILITY_SYMBOLS   12
#define FRONTIER_UTIL_FUNC_GIVE_FACILITY_SYMBOL   13
#define FRONTIER_UTIL_FUNC_CHECK_BATTLE_TYPE      14
#define FRONTIER_UTIL_FUNC_CHECK_INELIGIBLE       15
#define FRONTIER_UTIL_FUNC_CHECK_VISIT_TRAINER    16
#define FRONTIER_UTIL_FUNC_INCREMENT_STREAK       17
#define FRONTIER_UTIL_FUNC_RESTORE_HELD_ITEMS     18
#define FRONTIER_UTIL_FUNC_SAVE_BATTLE            19
#define FRONTIER_UTIL_FUNC_BUFFER_TRAINER_NAME    20
#define FRONTIER_UTIL_FUNC_RESET_SKETCH_MOVES     21
#define FRONTIER_UTIL_FUNC_SET_BRAIN_OBJECT       22

#define FRONTIER_DATA_CHALLENGE_STATUS   0
#define FRONTIER_DATA_LVL_MODE           1
#define FRONTIER_DATA_BATTLE_NUM         2
#define FRONTIER_DATA_PAUSED             3
#define FRONTIER_DATA_SELECTED_MON_ORDER 4
#define FRONTIER_DATA_BATTLE_OUTCOME     5
#define FRONTIER_DATA_RECORD_DISABLED    6
#define FRONTIER_DATA_HEARD_BRAIN_SPEECH 7

#define STREAK_TOWER_SINGLES_50       (1 << 0)
#define STREAK_TOWER_SINGLES_OPEN     (1 << 1)
#define STREAK_DOME_SINGLES_50        (1 << 2)
#define STREAK_DOME_SINGLES_OPEN      (1 << 3)
#define STREAK_PALACE_SINGLES_50      (1 << 4)
#define STREAK_PALACE_SINGLES_OPEN    (1 << 5)
#define STREAK_ARENA_50               (1 << 6)
#define STREAK_ARENA_OPEN             (1 << 7)
#define STREAK_FACTORY_SINGLES_50     (1 << 8)
#define STREAK_FACTORY_SINGLES_OPEN   (1 << 9)
#define STREAK_PIKE_50                (1 << 10)
#define STREAK_PIKE_OPEN              (1 << 11)
#define STREAK_PYRAMID_50             (1 << 12)
#define STREAK_PYRAMID_OPEN           (1 << 13)
#define STREAK_TOWER_DOUBLES_50       (1 << 14)
#define STREAK_TOWER_DOUBLES_OPEN     (1 << 15)
#define STREAK_TOWER_MULTIS_50        (1 << 16)
#define STREAK_TOWER_MULTIS_OPEN      (1 << 17)
#define STREAK_TOWER_LINK_MULTIS_50   (1 << 18)
#define STREAK_TOWER_LINK_MULTIS_OPEN (1 << 19)
#define STREAK_DOME_DOUBLES_50        (1 << 20)
#define STREAK_DOME_DOUBLES_OPEN      (1 << 21)
#define STREAK_PALACE_DOUBLES_50      (1 << 22)
#define STREAK_PALACE_DOUBLES_OPEN    (1 << 23)
#define STREAK_FACTORY_DOUBLES_50     (1 << 24)
#define STREAK_FACTORY_DOUBLES_OPEN   (1 << 25)

#endif // GUARD_CONSTANTS_FRONTIER_UTIL_H

repo_name: Lunos/pokeemerald

license: mit


code:
#ifndef GUARD_CONSTANTS_GAME_STAT_H
#define GUARD_CONSTANTS_GAME_STAT_H

#define GAME_STAT_SAVED_GAME                 0
#define GAME_STAT_FIRST_HOF_PLAY_TIME        1
#define GAME_STAT_STARTED_TRENDS             2
#define GAME_STAT_PLANTED_BERRIES            3
#define GAME_STAT_TRADED_BIKES               4
#define GAME_STAT_STEPS                      5
#define GAME_STAT_GOT_INTERVIEWED            6
#define GAME_STAT_TOTAL_BATTLES              7
#define GAME_STAT_WILD_BATTLES               8
#define GAME_STAT_TRAINER_BATTLES            9
#define GAME_STAT_ENTERED_HOF               10
#define GAME_STAT_POKEMON_CAPTURES          11
#define GAME_STAT_FISHING_CAPTURES          12
#define GAME_STAT_HATCHED_EGGS              13
#define GAME_STAT_EVOLVED_POKEMON           14
#define GAME_STAT_USED_POKECENTER           15
#define GAME_STAT_RESTED_AT_HOME            16
#define GAME_STAT_ENTERED_SAFARI_ZONE       17
#define GAME_STAT_USED_CUT                  18
#define GAME_STAT_USED_ROCK_SMASH           19
#define GAME_STAT_MOVED_SECRET_BASE         20
#define GAME_STAT_POKEMON_TRADES            21
#define GAME_STAT_UNKNOWN_22                22
#define GAME_STAT_LINK_BATTLE_WINS          23
#define GAME_STAT_LINK_BATTLE_LOSSES        24
#define GAME_STAT_LINK_BATTLE_DRAWS         25
#define GAME_STAT_USED_SPLASH               26
#define GAME_STAT_USED_STRUGGLE             27
#define GAME_STAT_SLOT_JACKPOTS             28
#define GAME_STAT_CONSECUTIVE_ROULETTE_WINS 29
#define GAME_STAT_ENTERED_BATTLE_TOWER      30
#define GAME_STAT_UNKNOWN_31                31
#define GAME_STAT_BATTLE_TOWER_BEST_STREAK  32
#define GAME_STAT_POKEBLOCKS                33
#define GAME_STAT_POKEBLOCKS_WITH_FRIENDS   34
#define GAME_STAT_WON_LINK_CONTEST          35
#define GAME_STAT_ENTERED_CONTEST           36
#define GAME_STAT_WON_CONTEST               37
#define GAME_STAT_SHOPPED                   38
#define GAME_STAT_USED_ITEMFINDER           39
#define GAME_STAT_GOT_RAINED_ON             40
#define GAME_STAT_CHECKED_POKEDEX           41
#define GAME_STAT_RECEIVED_RIBBONS          42
#define GAME_STAT_JUMPED_DOWN_LEDGES        43
#define GAME_STAT_WATCHED_TV                44
#define GAME_STAT_CHECKED_CLOCK             45
#define GAME_STAT_WON_POKEMON_LOTTERY       46
#define GAME_STAT_USED_DAYCARE              47
#define GAME_STAT_RODE_CABLE_CAR            48
#define GAME_STAT_ENTERED_HOT_SPRINGS       49
#define GAME_STAT_NUM_UNION_ROOM_BATTLES    50
#define GAME_STAT_51                        51

#define NUM_USED_GAME_STATS                 52
#define NUM_GAME_STATS                      64

#endif // GUARD_CONSTANTS_GAME_STAT_H


code:
#ifndef GUARD_CONSTANTS_GLOBAL_H
#define GUARD_CONSTANTS_GLOBAL_H
// Invalid Versions show as "----------" in Gen 4 and Gen 5's summary screen.
// In Gens 6 and 7, invalid versions instead show "a distant land" in the summary screen.
// In Gen 4 only, migrated Pokemon with Diamond, Pearl, or Platinum's ID show as "----------".
// Gen 5 and up read Diamond, Pearl, or Platinum's ID as "Sinnoh".
// In Gen 4 and up, migrated Pokemon with HeartGold or SoulSilver's ID show the otherwise unused "Johto" string.
#define VERSION_SAPPHIRE 1
#define VERSION_RUBY 2
#define VERSION_EMERALD 3
#define VERSION_FIRE_RED 4
#define VERSION_LEAF_GREEN 5
#define VERSION_HEART_GOLD 7
#define VERSION_SOUL_SILVER 8
#define VERSION_DIAMOND 10
#define VERSION_PEARL 11
#define VERSION_PLATINUM 12
#define VERSION_GAMECUBE 15

#define LANGUAGE_JAPANESE 1
#define LANGUAGE_ENGLISH  2
#define LANGUAGE_FRENCH   3
#define LANGUAGE_ITALIAN  4
#define LANGUAGE_GERMAN   5
#define LANGUAGE_KOREAN   6 // 6 goes unused but the theory is it was meant to be Korean
#define LANGUAGE_SPANISH  7
#define NUM_LANGUAGES     7

#define GAME_VERSION (VERSION_EMERALD)
#define GAME_LANGUAGE (LANGUAGE_ENGLISH)

// capacities of various saveblock objects
#define DAYCARE_MON_COUNT 2
#define POKEBLOCKS_COUNT 40
#define OBJECT_EVENTS_COUNT 16
#define BERRY_TREES_COUNT 128
#define MAIL_COUNT 16
#define SECRET_BASES_COUNT 20
#define TV_SHOWS_COUNT 25
#define POKE_NEWS_COUNT 16
#define PC_ITEMS_COUNT 50
#define BAG_ITEMS_COUNT 30
#define BAG_KEYITEMS_COUNT 30
#define BAG_POKEBALLS_COUNT 16
#define BAG_TMHM_COUNT 64
#define BAG_BERRIES_COUNT 46
#define OBJECT_EVENT_TEMPLATES_COUNT 64
#define DECOR_MAX_SECRET_BASE 16
#define DECOR_MAX_PLAYERS_HOUSE 12
#define APPRENTICE_COUNT 4
#define APPRENTICE_MAX_QUESTIONS 9
#define MAX_REMATCH_ENTRIES 100 // only REMATCH_TABLE_ENTRIES (78) are used
#define NUM_CONTEST_WINNERS 13
#define UNION_ROOM_KB_ROW_COUNT 10

#define PYRAMID_BAG_ITEMS_COUNT 10
#define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode.

#define TRAINER_ID_LENGTH 4
#define MAX_MON_MOVES 4
#define NUM_STATS 6

#define CONTESTANT_COUNT 4
#define CONTEST_CATEGORY_COOL     0
#define CONTEST_CATEGORY_BEAUTY   1
#define CONTEST_CATEGORY_CUTE     2
#define CONTEST_CATEGORY_SMART    3
#define CONTEST_CATEGORY_TOUGH    4
#define CONTEST_CATEGORIES_COUNT  5

// party sizes
#define PARTY_SIZE 6
#define MULTI_PARTY_SIZE PARTY_SIZE / 2
#define FRONTIER_PARTY_SIZE         3
#define FRONTIER_DOUBLES_PARTY_SIZE 4
#define FRONTIER_MULTI_PARTY_SIZE   2
#define MAX_FRONTIER_PARTY_SIZE     FRONTIER_DOUBLES_PARTY_SIZE
#define UNION_ROOM_PARTY_SIZE       2

// string lengths
#define ITEM_NAME_LENGTH 14
#define POKEMON_NAME_LENGTH 10
#define PLAYER_NAME_LENGTH 7
#define MAIL_WORDS_COUNT 9
#define EASY_CHAT_BATTLE_WORDS_COUNT 6
#define MOVE_NAME_LENGTH 12

#define MALE 0
#define FEMALE 1
#define GENDER_COUNT 2

#define BARD_SONG_LENGTH       6
#define NUM_STORYTELLER_TALES  4
#define NUM_TRADER_ITEMS       4

#define OPTIONS_BUTTON_MODE_NORMAL 0
#define OPTIONS_BUTTON_MODE_LR 1
#define OPTIONS_BUTTON_MODE_L_EQUALS_A 2

#define OPTIONS_TEXT_SPEED_SLOW 0
#define OPTIONS_TEXT_SPEED_MID 1
#define OPTIONS_TEXT_SPEED_FAST 2

#define OPTIONS_SOUND_MONO 0
#define OPTIONS_SOUND_STEREO 1

#define OPTIONS_BATTLE_STYLE_SHIFT 0
#define OPTIONS_BATTLE_STYLE_SET 1

#define DIR_NONE        0
#define DIR_SOUTH       1
#define DIR_NORTH       2
#define DIR_WEST        3
#define DIR_EAST        4
#define DIR_SOUTHWEST   5
#define DIR_SOUTHEAST   6
#define DIR_NORTHWEST   7
#define DIR_NORTHEAST   8

#endif // GUARD_CONSTANTS_GLOBAL_H


code:
#ifndef GUARD_CONSTANTS_HEAL_LOCATIONS_H
#define GUARD_CONSTANTS_HEAL_LOCATIONS_H

#define HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 1
#define HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE_2F 2
#define HEAL_LOCATION_PETALBURG_CITY 3
#define HEAL_LOCATION_SLATEPORT_CITY 4
#define HEAL_LOCATION_MAUVILLE_CITY 5
#define HEAL_LOCATION_RUSTBORO_CITY 6
#define HEAL_LOCATION_FORTREE_CITY 7
#define HEAL_LOCATION_LILYCOVE_CITY 8
#define HEAL_LOCATION_MOSSDEEP_CITY 9
#define HEAL_LOCATION_SOOTOPOLIS_CITY 10
#define HEAL_LOCATION_EVER_GRANDE_CITY 11
#define HEAL_LOCATION_LITTLEROOT_TOWN_BRENDANS_HOUSE 12
#define HEAL_LOCATION_LITTLEROOT_TOWN_MAYS_HOUSE 13
#define HEAL_LOCATION_OLDALE_TOWN 14
#define HEAL_LOCATION_DEWFORD_TOWN 15
#define HEAL_LOCATION_LAVARIDGE_TOWN 16
#define HEAL_LOCATION_FALLARBOR_TOWN 17
#define HEAL_LOCATION_VERDANTURF_TOWN 18
#define HEAL_LOCATION_PACIFIDLOG_TOWN 19
#define HEAL_LOCATION_EVER_GRANDE_CITY_POKEMON_LEAGUE 20
#define HEAL_LOCATION_SOUTHERN_ISLAND_EXTERIOR 21
#define HEAL_LOCATION_BATTLE_FRONTIER_OUTSIDE_EAST 22

#endif // GUARD_CONSTANTS_HEAL_LOCATIONS_H


code:
#ifndef GUARD_HOLD_EFFECTS_H
#define GUARD_HOLD_EFFECTS_H

#define HOLD_EFFECT_NONE            0
#define HOLD_EFFECT_RESTORE_HP      1
#define HOLD_EFFECT_CURE_PAR        2
#define HOLD_EFFECT_CURE_SLP        3
#define HOLD_EFFECT_CURE_PSN        4
#define HOLD_EFFECT_CURE_BRN        5
#define HOLD_EFFECT_CURE_FRZ        6
#define HOLD_EFFECT_RESTORE_PP      7
#define HOLD_EFFECT_CURE_CONFUSION  8
#define HOLD_EFFECT_CURE_STATUS     9
#define HOLD_EFFECT_CONFUSE_SPICY  10
#define HOLD_EFFECT_CONFUSE_DRY    11
#define HOLD_EFFECT_CONFUSE_SWEET  12
#define HOLD_EFFECT_CONFUSE_BITTER 13
#define HOLD_EFFECT_CONFUSE_SOUR   14
#define HOLD_EFFECT_ATTACK_UP      15
#define HOLD_EFFECT_DEFENSE_UP     16
#define HOLD_EFFECT_SPEED_UP       17
#define HOLD_EFFECT_SP_ATTACK_UP   18
#define HOLD_EFFECT_SP_DEFENSE_UP  19
#define HOLD_EFFECT_CRITICAL_UP    20
#define HOLD_EFFECT_RANDOM_STAT_UP 21
#define HOLD_EFFECT_EVASION_UP     22
#define HOLD_EFFECT_RESTORE_STATS  23
#define HOLD_EFFECT_MACHO_BRACE    24
#define HOLD_EFFECT_EXP_SHARE      25
#define HOLD_EFFECT_QUICK_CLAW     26
#define HOLD_EFFECT_HAPPINESS_UP   27
#define HOLD_EFFECT_CURE_ATTRACT   28
#define HOLD_EFFECT_CHOICE_BAND    29
#define HOLD_EFFECT_FLINCH         30
#define HOLD_EFFECT_BUG_POWER      31
#define HOLD_EFFECT_DOUBLE_PRIZE   32
#define HOLD_EFFECT_REPEL          33
#define HOLD_EFFECT_SOUL_DEW       34
#define HOLD_EFFECT_DEEP_SEA_TOOTH 35
#define HOLD_EFFECT_DEEP_SEA_SCALE 36
#define HOLD_EFFECT_CAN_ALWAYS_RUN 37
#define HOLD_EFFECT_PREVENT_EVOLVE 38
#define HOLD_EFFECT_FOCUS_BAND     39
#define HOLD_EFFECT_LUCKY_EGG      40
#define HOLD_EFFECT_SCOPE_LENS     41
#define HOLD_EFFECT_STEEL_POWER    42
#define HOLD_EFFECT_LEFTOVERS      43
#define HOLD_EFFECT_DRAGON_SCALE   44
#define HOLD_EFFECT_LIGHT_BALL     45
#define HOLD_EFFECT_GROUND_POWER   46
#define HOLD_EFFECT_ROCK_POWER     47
#define HOLD_EFFECT_GRASS_POWER    48
#define HOLD_EFFECT_DARK_POWER     49
#define HOLD_EFFECT_FIGHTING_POWER 50
#define HOLD_EFFECT_ELECTRIC_POWER 51
#define HOLD_EFFECT_WATER_POWER    52
#define HOLD_EFFECT_FLYING_POWER   53
#define HOLD_EFFECT_POISON_POWER   54
#define HOLD_EFFECT_ICE_POWER      55
#define HOLD_EFFECT_GHOST_POWER    56
#define HOLD_EFFECT_PSYCHIC_POWER  57
#define HOLD_EFFECT_FIRE_POWER     58
#define HOLD_EFFECT_DRAGON_POWER   59
#define HOLD_EFFECT_NORMAL_POWER   60
#define HOLD_EFFECT_UP_GRADE       61
#define HOLD_EFFECT_SHELL_BELL     62
#define HOLD_EFFECT_LUCKY_PUNCH    63
#define HOLD_EFFECT_METAL_POWDER   64
#define HOLD_EFFECT_THICK_CLUB     65
#define HOLD_EFFECT_STICK          66

#endif // GUARD_HOLD_EFFECTS_H


code:
#ifndef GUARD_ITEM_CONSTANTS_H
#define GUARD_ITEM_CONSTANTS_H

// These constants are used in gItems
#define POCKET_NONE        0
#define POCKET_ITEMS       1
#define POCKET_POKE_BALLS  2
#define POCKET_TM_HM       3
#define POCKET_BERRIES     4
#define POCKET_KEY_ITEMS   5

#define ITEMS_POCKET       0
#define BALLS_POCKET       1
#define TMHM_POCKET        2
#define BERRIES_POCKET     3
#define KEYITEMS_POCKET    4
#define POCKETS_COUNT      5

// The TM/HM pocket is the largest pocket, so the maximum amount of items
// in a pocket is its count + 1 for the cancel option
#define MAX_POCKET_ITEMS   (BAG_TMHM_COUNT + 1)

#endif // GUARD_ITEM_CONSTANTS_H


code:
#ifndef GUARD_CONSTANTS_ITEM_EFFECTS_H
#define GUARD_CONSTANTS_ITEM_EFFECTS_H

// field 0 masks
#define ITEM0_X_ATTACK          0x0F
#define ITEM0_DIRE_HIT          0x30 // Works the same way as the move Focus Energy.
#define ITEM0_SACRED_ASH        0x40
#define ITEM0_INFATUATION       0x80

// field 1 masks
#define ITEM1_X_SPEED           0x0F
#define ITEM1_X_DEFEND          0xF0

// field 2 masks
#define ITEM2_X_SPATK           0x0F
#define ITEM2_X_ACCURACY        0xF0

// field 3 masks
#define ITEM3_CONFUSION         0x1
#define ITEM3_PARALYSIS         0x2
#define ITEM3_FREEZE            0x4
#define ITEM3_BURN              0x8
#define ITEM3_POISON            0x10
#define ITEM3_SLEEP             0x20
#define ITEM3_LEVEL_UP          0x40
#define ITEM3_GUARD_SPEC        0x80 // Works the same way as the move Mist.

#define ITEM3_STATUS_ALL        (ITEM3_CONFUSION | ITEM3_PARALYSIS | ITEM3_FREEZE | ITEM3_BURN | ITEM3_POISON | ITEM3_SLEEP)

// field 4 masks
#define ITEM4_EV_HP             0x1
#define ITEM4_EV_ATK            0x2
#define ITEM4_HEAL_HP           0x4
#define ITEM4_HEAL_PP_ALL       0x8
#define ITEM4_HEAL_PP_ONE       0x10
#define ITEM4_PP_UP             0x20
#define ITEM4_REVIVE            0x40
#define ITEM4_EVO_STONE         0x80

// field 5 masks
#define ITEM5_EV_DEF            0x1
#define ITEM5_EV_SPEED          0x2
#define ITEM5_EV_SPDEF          0x4
#define ITEM5_EV_SPATK          0x8
#define ITEM5_PP_MAX            0x10
#define ITEM5_FRIENDSHIP_LOW    0x20
#define ITEM5_FRIENDSHIP_MID    0x40
#define ITEM5_FRIENDSHIP_HIGH   0x80

#define ITEM5_FRIENDSHIP_ALL    (ITEM5_FRIENDSHIP_LOW | ITEM5_FRIENDSHIP_MID | ITEM5_FRIENDSHIP_HIGH)

// fields 6 and onwards are item-specific arguments

// Special HP recovery amounts for ITEM4_HEAL_HP
#define ITEM6_HEAL_FULL   ((u8) -1)
#define ITEM6_HEAL_HALF   ((u8) -2)
#define ITEM6_HEAL_LVL_UP ((u8) -3)

// Used for GetItemEffectType.
#define ITEM_EFFECT_X_ITEM 0
#define ITEM_EFFECT_RAISE_LEVEL 1
#define ITEM_EFFECT_HEAL_HP 2
#define ITEM_EFFECT_CURE_POISON 3
#define ITEM_EFFECT_CURE_SLEEP 4
#define ITEM_EFFECT_CURE_BURN 5
#define ITEM_EFFECT_CURE_FREEZE 6
#define ITEM_EFFECT_CURE_PARALYSIS 7
#define ITEM_EFFECT_CURE_CONFUSION 8
#define ITEM_EFFECT_CURE_INFATUATION 9
#define ITEM_EFFECT_SACRED_ASH 10
#define ITEM_EFFECT_CURE_ALL_STATUS 11
#define ITEM_EFFECT_ATK_EV 12
#define ITEM_EFFECT_HP_EV 13
#define ITEM_EFFECT_SPATK_EV 14
#define ITEM_EFFECT_SPDEF_EV 15
#define ITEM_EFFECT_SPEED_EV 16
#define ITEM_EFFECT_DEF_EV 17
#define ITEM_EFFECT_EVO_STONE 18
#define ITEM_EFFECT_PP_UP 19
#define ITEM_EFFECT_PP_MAX 20
#define ITEM_EFFECT_HEAL_PP 21
#define ITEM_EFFECT_NONE 22

#endif // GUARD_CONSTANTS_ITEM_EFFECTS_H


code:
#ifndef GUARD_CONSTANTS_ITEMS_H
#define GUARD_CONSTANTS_ITEMS_H

#define ITEM_NONE 0

// Balls
#define ITEM_MASTER_BALL 1
#define ITEM_ULTRA_BALL 2
#define ITEM_GREAT_BALL 3
#define ITEM_POKE_BALL 4
#define ITEM_SAFARI_BALL 5
#define ITEM_NET_BALL 6
#define ITEM_DIVE_BALL 7
#define ITEM_NEST_BALL 8
#define ITEM_REPEAT_BALL 9
#define ITEM_TIMER_BALL 10
#define ITEM_LUXURY_BALL 11
#define ITEM_PREMIER_BALL 12

#define LAST_BALL ITEM_PREMIER_BALL

// Pokemon Items
#define ITEM_POTION 13
#define ITEM_ANTIDOTE 14
#define ITEM_BURN_HEAL 15
#define ITEM_ICE_HEAL 16
#define ITEM_AWAKENING 17
#define ITEM_PARALYZE_HEAL 18
#define ITEM_FULL_RESTORE 19
#define ITEM_MAX_POTION 20
#define ITEM_HYPER_POTION 21
#define ITEM_SUPER_POTION 22
#define ITEM_FULL_HEAL 23
#define ITEM_REVIVE 24
#define ITEM_MAX_REVIVE 25
#define ITEM_FRESH_WATER 26
#define ITEM_SODA_POP 27
#define ITEM_LEMONADE 28
#define ITEM_MOOMOO_MILK 29
#define ITEM_ENERGY_POWDER 30
#define ITEM_ENERGY_ROOT 31
#define ITEM_HEAL_POWDER 32
#define ITEM_REVIVAL_HERB 33
#define ITEM_ETHER 34
#define ITEM_MAX_ETHER 35
#define ITEM_ELIXIR 36
#define ITEM_MAX_ELIXIR 37
#define ITEM_LAVA_COOKIE 38
#define ITEM_BLUE_FLUTE 39
#define ITEM_YELLOW_FLUTE 40
#define ITEM_RED_FLUTE 41
#define ITEM_BLACK_FLUTE 42
#define ITEM_WHITE_FLUTE 43
#define ITEM_BERRY_JUICE 44
#define ITEM_SACRED_ASH 45
#define ITEM_SHOAL_SALT 46
#define ITEM_SHOAL_SHELL 47
#define ITEM_RED_SHARD 48
#define ITEM_BLUE_SHARD 49
#define ITEM_YELLOW_SHARD 50
#define ITEM_GREEN_SHARD 51
#define ITEM_034 52
#define ITEM_035 53
#define ITEM_036 54
#define ITEM_037 55
#define ITEM_038 56
#define ITEM_039 57
#define ITEM_03A 58
#define ITEM_03B 59
#define ITEM_03C 60
#define ITEM_03D 61
#define ITEM_03E 62
#define ITEM_HP_UP 63
#define ITEM_PROTEIN 64
#define ITEM_IRON 65
#define ITEM_CARBOS 66
#define ITEM_CALCIUM 67
#define ITEM_RARE_CANDY 68
#define ITEM_PP_UP 69
#define ITEM_ZINC 70
#define ITEM_PP_MAX 71
#define ITEM_048 72
#define ITEM_GUARD_SPEC 73
#define ITEM_DIRE_HIT 74
#define ITEM_X_ATTACK 75
#define ITEM_X_DEFEND 76
#define ITEM_X_SPEED 77
#define ITEM_X_ACCURACY 78
#define ITEM_X_SPECIAL 79
#define ITEM_POKE_DOLL 80
#define ITEM_FLUFFY_TAIL 81
#define ITEM_052 82
#define ITEM_SUPER_REPEL 83
#define ITEM_MAX_REPEL 84
#define ITEM_ESCAPE_ROPE 85
#define ITEM_REPEL 86
#define ITEM_057 87
#define ITEM_058 88
#define ITEM_059 89
#define ITEM_05A 90
#define ITEM_05B 91
#define ITEM_05C 92
#define ITEM_SUN_STONE 93
#define ITEM_MOON_STONE 94
#define ITEM_FIRE_STONE 95
#define ITEM_THUNDER_STONE 96
#define ITEM_WATER_STONE 97
#define ITEM_LEAF_STONE 98
#define ITEM_063 99
#define ITEM_064 100
#define ITEM_065 101
#define ITEM_066 102

// Unusable
#define ITEM_TINY_MUSHROOM 103
#define ITEM_BIG_MUSHROOM 104
#define ITEM_069 105
#define ITEM_PEARL 106
#define ITEM_BIG_PEARL 107
#define ITEM_STARDUST 108
#define ITEM_STAR_PIECE 109
#define ITEM_NUGGET 110
#define ITEM_HEART_SCALE 111
#define ITEM_070 112
#define ITEM_071 113
#define ITEM_072 114
#define ITEM_073 115
#define ITEM_074 116
#define ITEM_075 117
#define ITEM_076 118
#define ITEM_077 119
#define ITEM_078 120

// Mails
#define ITEM_ORANGE_MAIL 121
#define ITEM_HARBOR_MAIL 122
#define ITEM_GLITTER_MAIL 123
#define ITEM_MECH_MAIL 124
#define ITEM_WOOD_MAIL 125
#define ITEM_WAVE_MAIL 126
#define ITEM_BEAD_MAIL 127
#define ITEM_SHADOW_MAIL 128
#define ITEM_TROPIC_MAIL 129
#define ITEM_DREAM_MAIL 130
#define ITEM_FAB_MAIL 131
#define ITEM_RETRO_MAIL 132

// Berries
#define ITEM_CHERI_BERRY 133
#define ITEM_CHESTO_BERRY 134
#define ITEM_PECHA_BERRY 135
#define ITEM_RAWST_BERRY 136
#define ITEM_ASPEAR_BERRY 137
#define ITEM_LEPPA_BERRY 138
#define ITEM_ORAN_BERRY 139
#define ITEM_PERSIM_BERRY 140
#define ITEM_LUM_BERRY 141
#define ITEM_SITRUS_BERRY 142
#define ITEM_FIGY_BERRY 143
#define ITEM_WIKI_BERRY 144
#define ITEM_MAGO_BERRY 145
#define ITEM_AGUAV_BERRY 146
#define ITEM_IAPAPA_BERRY 147
#define ITEM_RAZZ_BERRY 148
#define ITEM_BLUK_BERRY 149
#define ITEM_NANAB_BERRY 150
#define ITEM_WEPEAR_BERRY 151
#define ITEM_PINAP_BERRY 152
#define ITEM_POMEG_BERRY 153
#define ITEM_KELPSY_BERRY 154
#define ITEM_QUALOT_BERRY 155
#define ITEM_HONDEW_BERRY 156
#define ITEM_GREPA_BERRY 157
#define ITEM_TAMATO_BERRY 158
#define ITEM_CORNN_BERRY 159
#define ITEM_MAGOST_BERRY 160
#define ITEM_RABUTA_BERRY 161
#define ITEM_NOMEL_BERRY 162
#define ITEM_SPELON_BERRY 163
#define ITEM_PAMTRE_BERRY 164
#define ITEM_WATMEL_BERRY 165
#define ITEM_DURIN_BERRY 166
#define ITEM_BELUE_BERRY 167
#define ITEM_LIECHI_BERRY 168
#define ITEM_GANLON_BERRY 169
#define ITEM_SALAC_BERRY 170
#define ITEM_PETAYA_BERRY 171
#define ITEM_APICOT_BERRY 172
#define ITEM_LANSAT_BERRY 173
#define ITEM_STARF_BERRY 174
#define ITEM_ENIGMA_BERRY 175
#define ITEM_0B0 176
#define ITEM_0B1 177
#define ITEM_0B2 178

// Battle Held items
#define ITEM_BRIGHT_POWDER 179
#define ITEM_WHITE_HERB 180
#define ITEM_MACHO_BRACE 181
#define ITEM_EXP_SHARE 182
#define ITEM_QUICK_CLAW 183
#define ITEM_SOOTHE_BELL 184
#define ITEM_MENTAL_HERB 185
#define ITEM_CHOICE_BAND 186
#define ITEM_KINGS_ROCK 187
#define ITEM_SILVER_POWDER 188
#define ITEM_AMULET_COIN 189
#define ITEM_CLEANSE_TAG 190
#define ITEM_SOUL_DEW 191
#define ITEM_DEEP_SEA_TOOTH 192
#define ITEM_DEEP_SEA_SCALE 193
#define ITEM_SMOKE_BALL 194
#define ITEM_EVERSTONE 195
#define ITEM_FOCUS_BAND 196
#define ITEM_LUCKY_EGG 197
#define ITEM_SCOPE_LENS 198
#define ITEM_METAL_COAT 199
#define ITEM_LEFTOVERS 200
#define ITEM_DRAGON_SCALE 201
#define ITEM_LIGHT_BALL 202
#define ITEM_SOFT_SAND 203
#define ITEM_HARD_STONE 204
#define ITEM_MIRACLE_SEED 205
#define ITEM_BLACK_GLASSES 206
#define ITEM_BLACK_BELT 207
#define ITEM_MAGNET 208
#define ITEM_MYSTIC_WATER 209
#define ITEM_SHARP_BEAK 210
#define ITEM_POISON_BARB 211
#define ITEM_NEVER_MELT_ICE 212
#define ITEM_SPELL_TAG 213
#define ITEM_TWISTED_SPOON 214
#define ITEM_CHARCOAL 215
#define ITEM_DRAGON_FANG 216
#define ITEM_SILK_SCARF 217
#define ITEM_UP_GRADE 218
#define ITEM_SHELL_BELL 219
#define ITEM_SEA_INCENSE 220
#define ITEM_LAX_INCENSE 221
#define ITEM_LUCKY_PUNCH 222
#define ITEM_METAL_POWDER 223
#define ITEM_THICK_CLUB 224
#define ITEM_STICK 225
#define ITEM_0E2 226
#define ITEM_0E3 227
#define ITEM_0E4 228
#define ITEM_0E5 229
#define ITEM_0E6 230
#define ITEM_0E7 231
#define ITEM_0E8 232
#define ITEM_0E9 233
#define ITEM_0EA 234
#define ITEM_0EB 235
#define ITEM_0EC 236
#define ITEM_0ED 237
#define ITEM_0EE 238
#define ITEM_0EF 239
#define ITEM_0F0 240
#define ITEM_0F1 241
#define ITEM_0F2 242
#define ITEM_0F3 243
#define ITEM_0F4 244
#define ITEM_0F5 245
#define ITEM_0F6 246
#define ITEM_0F7 247
#define ITEM_0F8 248
#define ITEM_0F9 249
#define ITEM_0FA 250
#define ITEM_0FB 251
#define ITEM_0FC 252
#define ITEM_0FD 253

// Contest held items
#define ITEM_RED_SCARF 254
#define ITEM_BLUE_SCARF 255
#define ITEM_PINK_SCARF 256
#define ITEM_GREEN_SCARF 257
#define ITEM_YELLOW_SCARF 258

// Key Items
#define ITEM_MACH_BIKE 259
#define ITEM_COIN_CASE 260
#define ITEM_ITEMFINDER 261
#define ITEM_OLD_ROD 262
#define ITEM_GOOD_ROD 263
#define ITEM_SUPER_ROD 264
#define ITEM_SS_TICKET 265
#define ITEM_CONTEST_PASS 266
#define ITEM_10B 267
#define ITEM_WAILMER_PAIL 268
#define ITEM_DEVON_GOODS 269
#define ITEM_SOOT_SACK 270
#define ITEM_BASEMENT_KEY 271
#define ITEM_ACRO_BIKE 272
#define ITEM_POKEBLOCK_CASE 273
#define ITEM_LETTER 274
#define ITEM_EON_TICKET 275
#define ITEM_RED_ORB 276
#define ITEM_BLUE_ORB 277
#define ITEM_SCANNER 278
#define ITEM_GO_GOGGLES 279
#define ITEM_METEORITE 280
#define ITEM_ROOM_1_KEY 281
#define ITEM_ROOM_2_KEY 282
#define ITEM_ROOM_4_KEY 283
#define ITEM_ROOM_6_KEY 284
#define ITEM_STORAGE_KEY 285
#define ITEM_ROOT_FOSSIL 286
#define ITEM_CLAW_FOSSIL 287
#define ITEM_DEVON_SCOPE 288

// TMs/HMs
#define ITEM_TM01 289
#define ITEM_TM02 290
#define ITEM_TM03 291
#define ITEM_TM04 292
#define ITEM_TM05 293
#define ITEM_TM06 294
#define ITEM_TM07 295
#define ITEM_TM08 296
#define ITEM_TM09 297
#define ITEM_TM10 298
#define ITEM_TM11 299
#define ITEM_TM12 300
#define ITEM_TM13 301
#define ITEM_TM14 302
#define ITEM_TM15 303
#define ITEM_TM16 304
#define ITEM_TM17 305
#define ITEM_TM18 306
#define ITEM_TM19 307
#define ITEM_TM20 308
#define ITEM_TM21 309
#define ITEM_TM22 310
#define ITEM_TM23 311
#define ITEM_TM24 312
#define ITEM_TM25 313
#define ITEM_TM26 314
#define ITEM_TM27 315
#define ITEM_TM28 316
#define ITEM_TM29 317
#define ITEM_TM30 318
#define ITEM_TM31 319
#define ITEM_TM32 320
#define ITEM_TM33 321
#define ITEM_TM34 322
#define ITEM_TM35 323
#define ITEM_TM36 324
#define ITEM_TM37 325
#define ITEM_TM38 326
#define ITEM_TM39 327
#define ITEM_TM40 328
#define ITEM_TM41 329
#define ITEM_TM42 330
#define ITEM_TM43 331
#define ITEM_TM44 332
#define ITEM_TM45 333
#define ITEM_TM46 334
#define ITEM_TM47 335
#define ITEM_TM48 336
#define ITEM_TM49 337
#define ITEM_TM50 338
#define ITEM_HM01 339
#define ITEM_HM02 340
#define ITEM_HM03 341
#define ITEM_HM04 342
#define ITEM_HM05 343
#define ITEM_HM06 344
#define ITEM_HM07 345
#define ITEM_HM08 346

#define ITEM_TM01_FOCUS_PUNCH ITEM_TM01
#define ITEM_TM02_DRAGON_CLAW ITEM_TM02
#define ITEM_TM03_WATER_PULSE ITEM_TM03
#define ITEM_TM04_CALM_MIND ITEM_TM04
#define ITEM_TM05_ROAR ITEM_TM05
#define ITEM_TM06_TOXIC ITEM_TM06
#define ITEM_TM07_HAIL ITEM_TM07
#define ITEM_TM08_BULK_UP ITEM_TM08
#define ITEM_TM09_BULLET_SEED ITEM_TM09
#define ITEM_TM10_HIDDEN_POWER ITEM_TM10
#define ITEM_TM11_SUNNY_DAY ITEM_TM11
#define ITEM_TM12_TAUNT ITEM_TM12
#define ITEM_TM13_ICE_BEAM ITEM_TM13
#define ITEM_TM14_BLIZZARD ITEM_TM14
#define ITEM_TM15_HYPER_BEAM ITEM_TM15
#define ITEM_TM16_LIGHT_SCREEN ITEM_TM16
#define ITEM_TM17_PROTECT ITEM_TM17
#define ITEM_TM18_RAIN_DANCE ITEM_TM18
#define ITEM_TM19_GIGA_DRAIN ITEM_TM19
#define ITEM_TM20_SAFEGUARD ITEM_TM20
#define ITEM_TM21_FRUSTRATION ITEM_TM21
#define ITEM_TM22_SOLARBEAM ITEM_TM22
#define ITEM_TM23_IRON_TAIL ITEM_TM23
#define ITEM_TM24_THUNDERBOLT ITEM_TM24
#define ITEM_TM25_THUNDER ITEM_TM25
#define ITEM_TM26_EARTHQUAKE ITEM_TM26
#define ITEM_TM27_RETURN ITEM_TM27
#define ITEM_TM28_DIG ITEM_TM28
#define ITEM_TM29_PSYCHIC ITEM_TM29
#define ITEM_TM30_SHADOW_BALL ITEM_TM30
#define ITEM_TM31_BRICK_BREAK ITEM_TM31
#define ITEM_TM32_DOUBLE_TEAM ITEM_TM32
#define ITEM_TM33_REFLECT ITEM_TM33
#define ITEM_TM34_SHOCK_WAVE ITEM_TM34
#define ITEM_TM35_FLAMETHROWER ITEM_TM35
#define ITEM_TM36_SLUDGE_BOMB ITEM_TM36
#define ITEM_TM37_SANDSTORM ITEM_TM37
#define ITEM_TM38_FIRE_BLAST ITEM_TM38
#define ITEM_TM39_ROCK_TOMB ITEM_TM39
#define ITEM_TM40_AERIAL_ACE ITEM_TM40
#define ITEM_TM41_TORMENT ITEM_TM41
#define ITEM_TM42_FACADE ITEM_TM42
#define ITEM_TM43_SECRET_POWER ITEM_TM43
#define ITEM_TM44_REST ITEM_TM44
#define ITEM_TM45_ATTRACT ITEM_TM45
#define ITEM_TM46_THIEF ITEM_TM46
#define ITEM_TM47_STEEL_WING ITEM_TM47
#define ITEM_TM48_SKILL_SWAP ITEM_TM48
#define ITEM_TM49_SNATCH ITEM_TM49
#define ITEM_TM50_OVERHEAT ITEM_TM50
#define ITEM_HM01_CUT ITEM_HM01
#define ITEM_HM02_FLY ITEM_HM02
#define ITEM_HM03_SURF ITEM_HM03
#define ITEM_HM04_STRENGTH ITEM_HM04
#define ITEM_HM05_FLASH ITEM_HM05
#define ITEM_HM06_ROCK_SMASH ITEM_HM06
#define ITEM_HM07_WATERFALL ITEM_HM07
#define ITEM_HM08_DIVE ITEM_HM08

// Unknown
#define ITEM_15B 347
#define ITEM_15C 348

// FireRed/LeafGreen
#define ITEM_OAKS_PARCEL 349
#define ITEM_POKE_FLUTE 350
#define ITEM_SECRET_KEY 351
#define ITEM_BIKE_VOUCHER 352
#define ITEM_GOLD_TEETH 353
#define ITEM_OLD_AMBER 354
#define ITEM_CARD_KEY 355
#define ITEM_LIFT_KEY 356
#define ITEM_HELIX_FOSSIL 357
#define ITEM_DOME_FOSSIL 358
#define ITEM_SILPH_SCOPE 359
#define ITEM_BICYCLE 360
#define ITEM_TOWN_MAP 361
#define ITEM_VS_SEEKER 362
#define ITEM_FAME_CHECKER 363
#define ITEM_TM_CASE 364
#define ITEM_BERRY_POUCH 365
#define ITEM_TEACHY_TV 366
#define ITEM_TRI_PASS 367
#define ITEM_RAINBOW_PASS 368
#define ITEM_TEA 369
#define ITEM_MYSTIC_TICKET 370
#define ITEM_AURORA_TICKET 371
#define ITEM_POWDER_JAR 372
#define ITEM_RUBY 373
#define ITEM_SAPPHIRE 374

// Emerald
#define ITEM_MAGMA_EMBLEM 375
#define ITEM_OLD_SEA_MAP 376

#define ITEMS_COUNT 377
#define ITEM_FIELD_ARROW ITEMS_COUNT

#define FIRST_BERRY_INDEX             ITEM_CHERI_BERRY
#define LAST_BERRY_INDEX              ITEM_ENIGMA_BERRY

// Range of berries given out by various NPCS
#define FIRST_BERRY_MASTER_BERRY      ITEM_POMEG_BERRY
#define LAST_BERRY_MASTER_BERRY       ITEM_NOMEL_BERRY
#define FIRST_BERRY_MASTER_WIFE_BERRY ITEM_CHERI_BERRY
#define LAST_BERRY_MASTER_WIFE_BERRY  ITEM_SITRUS_BERRY
#define FIRST_KIRI_BERRY              ITEM_POMEG_BERRY
#define LAST_KIRI_BERRY               ITEM_NOMEL_BERRY
#define FIRST_ROUTE_114_MAN_BERRY     ITEM_RAZZ_BERRY
#define LAST_ROUTE_114_MAN_BERRY      ITEM_PINAP_BERRY

#define NUM_BERRY_MASTER_BERRIES          (LAST_BERRY_MASTER_BERRY - FIRST_BERRY_MASTER_BERRY + 1)
#define NUM_BERRY_MASTER_BERRIES_SKIPPED  (FIRST_BERRY_MASTER_BERRY - FIRST_BERRY_INDEX)
#define NUM_BERRY_MASTER_WIFE_BERRIES     (LAST_BERRY_MASTER_WIFE_BERRY - FIRST_BERRY_MASTER_WIFE_BERRY + 1)
#define NUM_KIRI_BERRIES                  (LAST_KIRI_BERRY - FIRST_KIRI_BERRY + 1)
#define NUM_KIRI_BERRIES_SKIPPED          (FIRST_KIRI_BERRY - FIRST_BERRY_INDEX)
#define NUM_ROUTE_114_MAN_BERRIES         (LAST_ROUTE_114_MAN_BERRY - FIRST_ROUTE_114_MAN_BERRY + 1)
#define NUM_ROUTE_114_MAN_BERRIES_SKIPPED (FIRST_ROUTE_114_MAN_BERRY - FIRST_BERRY_INDEX)

#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1))

#define NUM_TECHNICAL_MACHINES 50
#define NUM_HIDDEN_MACHINES     8

#define MAX_BAG_ITEM_CAPACITY  99
#define MAX_PC_ITEM_CAPACITY   999
#define MAX_BERRY_CAPACITY     999

#define BAG_ITEM_CAPACITY_DIGITS 2
#define BERRY_CAPACITY_DIGITS 3
#define MAX_ITEM_DIGITS BERRY_CAPACITY_DIGITS

// Secondary IDs for rods
#define OLD_ROD   0
#define GOOD_ROD  1
#define SUPER_ROD 2

// Check if the item is one that can be used on a Pokemon.
#define ITEM_HAS_EFFECT(item) ((item) >= ITEM_POTION && (item) <= ITEM_0B2)

#endif  // GUARD_CONSTANTS_ITEMS_H


code:
#ifndef GUARD_CONSTANTS_LAYOUTS_H
#define GUARD_CONSTANTS_LAYOUTS_H

//
// DO NOT MODIFY THIS FILE! It is auto-generated from data/layouts/layouts.json
//

#define LAYOUT_PETALBURG_CITY 1
#define LAYOUT_SLATEPORT_CITY 2
#define LAYOUT_MAUVILLE_CITY 3
#define LAYOUT_RUSTBORO_CITY 4
#define LAYOUT_FORTREE_CITY 5
#define LAYOUT_LILYCOVE_CITY 6
#define LAYOUT_MOSSDEEP_CITY 7
#define LAYOUT_SOOTOPOLIS_CITY 8
#define LAYOUT_EVER_GRANDE_CITY 9
#define LAYOUT_LITTLEROOT_TOWN 10
#define LAYOUT_OLDALE_TOWN 11
#define LAYOUT_DEWFORD_TOWN 12
#define LAYOUT_LAVARIDGE_TOWN 13
#define LAYOUT_FALLARBOR_TOWN 14
#define LAYOUT_VERDANTURF_TOWN 15
#define LAYOUT_PACIFIDLOG_TOWN 16
#define LAYOUT_ROUTE101 17
#define LAYOUT_ROUTE102 18
#define LAYOUT_ROUTE103 19
#define LAYOUT_ROUTE104 20
#define LAYOUT_ROUTE105 21
#define LAYOUT_ROUTE106 22
#define LAYOUT_ROUTE107 23
#define LAYOUT_ROUTE108 24
#define LAYOUT_ROUTE109 25
#define LAYOUT_ROUTE110 26
#define LAYOUT_ROUTE111 27
#define LAYOUT_ROUTE112 28
#define LAYOUT_ROUTE113 29
#define LAYOUT_ROUTE114 30
#define LAYOUT_ROUTE115 31
#define LAYOUT_ROUTE116 32
#define LAYOUT_ROUTE117 33
#define LAYOUT_ROUTE118 34
#define LAYOUT_ROUTE119 35
#define LAYOUT_ROUTE120 36
#define LAYOUT_ROUTE121 37
#define LAYOUT_ROUTE122 38
#define LAYOUT_ROUTE123 39
#define LAYOUT_ROUTE124 40
#define LAYOUT_ROUTE125 41
#define LAYOUT_ROUTE126 42
#define LAYOUT_ROUTE127 43
#define LAYOUT_ROUTE128 44
#define LAYOUT_ROUTE129 45
#define LAYOUT_ROUTE130_MIRAGE_ISLAND 46
#define LAYOUT_ROUTE131 47
#define LAYOUT_ROUTE132 48
#define LAYOUT_ROUTE133 49
#define LAYOUT_ROUTE134 50
#define LAYOUT_UNDERWATER_ROUTE126 51
#define LAYOUT_UNDERWATER_ROUTE127 52
#define LAYOUT_UNDERWATER_ROUTE128 53
#define LAYOUT_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F 54
#define LAYOUT_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 55
#define LAYOUT_LITTLEROOT_TOWN_MAYS_HOUSE_1F 56
#define LAYOUT_LITTLEROOT_TOWN_MAYS_HOUSE_2F 57
#define LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB 58
#define LAYOUT_HOUSE1 59
#define LAYOUT_HOUSE2 60
#define LAYOUT_POKEMON_CENTER_1F 61
#define LAYOUT_POKEMON_CENTER_2F 62
#define LAYOUT_MART 63
#define LAYOUT_HOUSE3 64
#define LAYOUT_DEWFORD_TOWN_GYM 65
#define LAYOUT_DEWFORD_TOWN_HALL 66
#define LAYOUT_HOUSE4 67
#define LAYOUT_LAVARIDGE_TOWN_HERB_SHOP 68
#define LAYOUT_LAVARIDGE_TOWN_GYM_1F 69
#define LAYOUT_LAVARIDGE_TOWN_GYM_B1F 70
#define LAYOUT_LAVARIDGE_TOWN_POKEMON_CENTER_1F 71
#define LAYOUT_FALLARBOR_TOWN_LEFTOVER_RSCONTEST_LOBBY 72
#define LAYOUT_FALLARBOR_TOWN_LEFTOVER_RSCONTEST_HALL 73
#define LAYOUT_LILYCOVE_CITY_HOUSE2 74
#define LAYOUT_UNKNOWN_08428450 75
#define LAYOUT_VERDANTURF_TOWN_WANDAS_HOUSE 76
#define LAYOUT_PACIFIDLOG_TOWN_HOUSE1 77
#define LAYOUT_PACIFIDLOG_TOWN_HOUSE2 78
#define LAYOUT_PETALBURG_CITY_GYM 79
#define LAYOUT_HOUSE_WITH_BED 80
#define LAYOUT_SLATEPORT_CITY_STERNS_SHIPYARD_1F 81
#define LAYOUT_SLATEPORT_CITY_STERNS_SHIPYARD_2F 82
#define LAYOUT_UNKNOWN_084294C4 83
#define LAYOUT_UNKNOWN_084294E8 84
#define LAYOUT_SLATEPORT_CITY_POKEMON_FAN_CLUB 85
#define LAYOUT_SLATEPORT_CITY_OCEANIC_MUSEUM_1F 86
#define LAYOUT_SLATEPORT_CITY_OCEANIC_MUSEUM_2F 87
#define LAYOUT_HARBOR 88
#define LAYOUT_MAUVILLE_CITY_GYM 89
#define LAYOUT_MAUVILLE_CITY_BIKE_SHOP 90
#define LAYOUT_MAUVILLE_CITY_GAME_CORNER 91
#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_1F 92
#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_2F 93
#define LAYOUT_RUSTBORO_CITY_GYM 94
#define LAYOUT_RUSTBORO_CITY_POKEMON_SCHOOL 95
#define LAYOUT_RUSTBORO_CITY_HOUSE 96
#define LAYOUT_RUSTBORO_CITY_HOUSE1 97
#define LAYOUT_RUSTBORO_CITY_CUTTERS_HOUSE 98
#define LAYOUT_FORTREE_CITY_HOUSE1 99
#define LAYOUT_FORTREE_CITY_GYM 100
#define LAYOUT_FORTREE_CITY_HOUSE2 101
#define LAYOUT_ROUTE104_MR_BRINEYS_HOUSE 102
#define LAYOUT_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F 103
#define LAYOUT_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F 104
#define LAYOUT_LILYCOVE_CITY_CONTEST_LOBBY 105
#define LAYOUT_LILYCOVE_CITY_CONTEST_HALL 106
#define LAYOUT_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB 107
#define LAYOUT_MOSSDEEP_CITY_GYM 108
#define LAYOUT_SOOTOPOLIS_CITY_GYM_1F 109
#define LAYOUT_SOOTOPOLIS_CITY_GYM_B1F 110
#define LAYOUT_EVER_GRANDE_CITY_SIDNEYS_ROOM 111
#define LAYOUT_EVER_GRANDE_CITY_PHOEBES_ROOM 112
#define LAYOUT_EVER_GRANDE_CITY_GLACIAS_ROOM 113
#define LAYOUT_EVER_GRANDE_CITY_DRAKES_ROOM 114
#define LAYOUT_EVER_GRANDE_CITY_CHAMPIONS_ROOM 115
#define LAYOUT_EVER_GRANDE_CITY_SHORT_HALL 116
#define LAYOUT_ROUTE104_PRETTY_PETAL_FLOWER_SHOP 117
#define LAYOUT_CABLE_CAR_STATION 118
#define LAYOUT_ROUTE114_FOSSIL_MANIACS_HOUSE 119
#define LAYOUT_ROUTE114_FOSSIL_MANIACS_TUNNEL 120
#define LAYOUT_ROUTE114_LANETTES_HOUSE 121
#define LAYOUT_ROUTE116_TUNNELERS_REST_HOUSE 122
#define LAYOUT_ROUTE117_POKEMON_DAY_CARE 123
#define LAYOUT_ROUTE121_SAFARI_ZONE_ENTRANCE 124
#define LAYOUT_METEOR_FALLS_1F_1R 125
#define LAYOUT_METEOR_FALLS_1F_2R 126
#define LAYOUT_METEOR_FALLS_B1F_1R 127
#define LAYOUT_METEOR_FALLS_B1F_2R 128
#define LAYOUT_RUSTURF_TUNNEL 129
#define LAYOUT_UNDERWATER_SOOTOPOLIS_CITY 130
#define LAYOUT_DESERT_RUINS 131
#define LAYOUT_GRANITE_CAVE_1F 132
#define LAYOUT_GRANITE_CAVE_B1F 133
#define LAYOUT_GRANITE_CAVE_B2F 134
#define LAYOUT_PETALBURG_WOODS 135
#define LAYOUT_MT_CHIMNEY 136
#define LAYOUT_MT_PYRE_1F 137
#define LAYOUT_MT_PYRE_2F 138
#define LAYOUT_MT_PYRE_3F 139
#define LAYOUT_MT_PYRE_4F 140
#define LAYOUT_MT_PYRE_5F 141
#define LAYOUT_MT_PYRE_6F 142
#define LAYOUT_AQUA_HIDEOUT_1F 143
#define LAYOUT_AQUA_HIDEOUT_B1F 144
#define LAYOUT_AQUA_HIDEOUT_B2F 145
#define LAYOUT_UNDERWATER_SEAFLOOR_CAVERN 146
#define LAYOUT_SEAFLOOR_CAVERN_ENTRANCE 147
#define LAYOUT_SEAFLOOR_CAVERN_ROOM1 148
#define LAYOUT_SEAFLOOR_CAVERN_ROOM2 149
#define LAYOUT_SEAFLOOR_CAVERN_ROOM3 150
#define LAYOUT_SEAFLOOR_CAVERN_ROOM4 151
#define LAYOUT_SEAFLOOR_CAVERN_ROOM5 152
#define LAYOUT_SEAFLOOR_CAVERN_ROOM6 153
#define LAYOUT_SEAFLOOR_CAVERN_ROOM7 154
#define LAYOUT_SEAFLOOR_CAVERN_ROOM8 155
#define LAYOUT_SEAFLOOR_CAVERN_ROOM9 156
#define LAYOUT_CAVE_OF_ORIGIN_ENTRANCE 157
#define LAYOUT_CAVE_OF_ORIGIN_1F 158
#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1 159
#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2 160
#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3 161
#define LAYOUT_CAVE_OF_ORIGIN_B1F 162
#define LAYOUT_VICTORY_ROAD_1F 163
#define LAYOUT_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM 164
#define LAYOUT_SHOAL_CAVE_LOW_TIDE_INNER_ROOM 165
#define LAYOUT_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM 166
#define LAYOUT_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM 167
#define LAYOUT_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM 168
#define LAYOUT_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM 169
#define LAYOUT_UNKNOWN_0843E6C0 170
#define LAYOUT_UNKNOWN_0843E6E4 171
#define LAYOUT_UNKNOWN_0843E708 172
#define LAYOUT_UNKNOWN_0843E72C 173
#define LAYOUT_UNKNOWN_0843E750 174
#define LAYOUT_UNKNOWN_0843E774 175
#define LAYOUT_UNKNOWN_0843E798 176
#define LAYOUT_UNKNOWN_0843E7BC 177
#define LAYOUT_UNKNOWN_0843E7E0 178
#define LAYOUT_UNKNOWN_0843E804 179
#define LAYOUT_UNKNOWN_0843E828 180
#define LAYOUT_UNKNOWN_0843E84C 181
#define LAYOUT_UNKNOWN_0843E870 182
#define LAYOUT_UNKNOWN_0843E894 183
#define LAYOUT_NEW_MAUVILLE_ENTRANCE 184
#define LAYOUT_NEW_MAUVILLE_INSIDE 185
#define LAYOUT_ABANDONED_SHIP_DECK 186
#define LAYOUT_ABANDONED_SHIP_CORRIDORS_1F 187
#define LAYOUT_ABANDONED_SHIP_ROOMS_1F 188
#define LAYOUT_ABANDONED_SHIP_CORRIDORS_B1F 189
#define LAYOUT_ABANDONED_SHIP_ROOMS_B1F 190
#define LAYOUT_ABANDONED_SHIP_ROOMS2_B1F 191
#define LAYOUT_ABANDONED_SHIP_UNDERWATER1 192
#define LAYOUT_ABANDONED_SHIP_ROOM_B1F 193
#define LAYOUT_ABANDONED_SHIP_ROOMS2_1F 194
#define LAYOUT_ABANDONED_SHIP_CAPTAINS_OFFICE 195
#define LAYOUT_ABANDONED_SHIP_UNDERWATER2 196
#define LAYOUT_SECRET_BASE_RED_CAVE1 197
#define LAYOUT_SECRET_BASE_BROWN_CAVE1 198
#define LAYOUT_SECRET_BASE_BLUE_CAVE1 199
#define LAYOUT_SECRET_BASE_YELLOW_CAVE1 200
#define LAYOUT_SECRET_BASE_TREE1 201
#define LAYOUT_SECRET_BASE_SHRUB1 202
#define LAYOUT_SECRET_BASE_RED_CAVE2 203
#define LAYOUT_SECRET_BASE_BROWN_CAVE2 204
#define LAYOUT_SECRET_BASE_BLUE_CAVE2 205
#define LAYOUT_SECRET_BASE_YELLOW_CAVE2 206
#define LAYOUT_SECRET_BASE_TREE2 207
#define LAYOUT_SECRET_BASE_SHRUB2 208
#define LAYOUT_SECRET_BASE_RED_CAVE3 209
#define LAYOUT_SECRET_BASE_BROWN_CAVE3 210
#define LAYOUT_SECRET_BASE_BLUE_CAVE3 211
#define LAYOUT_SECRET_BASE_YELLOW_CAVE3 212
#define LAYOUT_SECRET_BASE_TREE3 213
#define LAYOUT_SECRET_BASE_SHRUB3 214
#define LAYOUT_SECRET_BASE_RED_CAVE4 215
#define LAYOUT_SECRET_BASE_BROWN_CAVE4 216
#define LAYOUT_SECRET_BASE_BLUE_CAVE4 217
#define LAYOUT_SECRET_BASE_YELLOW_CAVE4 218
#define LAYOUT_SECRET_BASE_TREE4 219
#define LAYOUT_SECRET_BASE_SHRUB4 220
#define LAYOUT_BATTLE_COLOSSEUM_2P 221
#define LAYOUT_TRADE_CENTER 222
#define LAYOUT_RECORD_CORNER 223
#define LAYOUT_BATTLE_COLOSSEUM_4P 224
#define LAYOUT_CONTEST_HALL 225
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_29 226
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_30 227
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_31 228
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_32 229
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_33 230
#define LAYOUT_UNKNOWN_LINK_CONTEST_ROOM_25_34 231
#define LAYOUT_CONTEST_HALL_BEAUTY 232
#define LAYOUT_CONTEST_HALL_TOUGH 233
#define LAYOUT_CONTEST_HALL_COOL 234
#define LAYOUT_CONTEST_HALL_SMART 235
#define LAYOUT_CONTEST_HALL_CUTE 236
#define LAYOUT_INSIDE_OF_TRUCK 237
#define LAYOUT_SAFARI_ZONE_NORTHWEST 238
#define LAYOUT_SAFARI_ZONE_NORTH 239
#define LAYOUT_SAFARI_ZONE_SOUTHWEST 240
#define LAYOUT_SAFARI_ZONE_SOUTH 241
#define LAYOUT_UNKNOWN_08447028 242
#define LAYOUT_ROUTE109_SEASHORE_HOUSE 243
#define LAYOUT_ROUTE110_TRICK_HOUSE_ENTRANCE 244
#define LAYOUT_ROUTE110_TRICK_HOUSE_END 245
#define LAYOUT_ROUTE110_TRICK_HOUSE_CORRIDOR 246
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE1 247
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE2 248
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE3 249
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE4 250
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE5 251
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE6 252
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE7 253
#define LAYOUT_ROUTE110_TRICK_HOUSE_PUZZLE8 254
#define LAYOUT_FORTREE_CITY_DECORATION_SHOP 255
#define LAYOUT_ROUTE110_SEASIDE_CYCLING_ROAD_ENTRANCE 256
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_1F 257
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_2F 258
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_3F 259
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_4F 260
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_5F 261
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP 262
#define LAYOUT_ROUTE130 263
#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY 264
#define LAYOUT_BATTLE_FRONTIER_OUTSIDE_WEST 265
#define LAYOUT_BATTLE_ELEVATOR 266
#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR 267
#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM 268
#define LAYOUT_RUSTBORO_CITY_DEVON_CORP_3F 269
#define LAYOUT_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F 270
#define LAYOUT_ROUTE119_WEATHER_INSTITUTE_1F 271
#define LAYOUT_ROUTE119_WEATHER_INSTITUTE_2F 272
#define LAYOUT_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR 273
#define LAYOUT_UNDERWATER_ROUTE124 274
#define LAYOUT_MOSSDEEP_CITY_SPACE_CENTER_1F 275
#define LAYOUT_MOSSDEEP_CITY_SPACE_CENTER_2F 276
#define LAYOUT_SS_TIDAL_CORRIDOR 277
#define LAYOUT_SS_TIDAL_LOWER_DECK 278
#define LAYOUT_SS_TIDAL_ROOMS 279
#define LAYOUT_ISLAND_CAVE 280
#define LAYOUT_ANCIENT_TOMB 281
#define LAYOUT_UNDERWATER_ROUTE134 282
#define LAYOUT_UNDERWATER_SEALED_CHAMBER 283
#define LAYOUT_SEALED_CHAMBER_OUTER_ROOM 284
#define LAYOUT_VICTORY_ROAD_B1F 285
#define LAYOUT_VICTORY_ROAD_B2F 286
#define LAYOUT_ROUTE104_PROTOTYPE 287
#define LAYOUT_GRANITE_CAVE_STEVENS_ROOM 288
#define LAYOUT_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS 289
#define LAYOUT_SOUTHERN_ISLAND_EXTERIOR 290
#define LAYOUT_SOUTHERN_ISLAND_INTERIOR 291
#define LAYOUT_JAGGED_PASS 292
#define LAYOUT_FIERY_PATH 293
#define LAYOUT_RUSTBORO_CITY_FLAT2_1F 294
#define LAYOUT_RUSTBORO_CITY_FLAT2_2F 295
#define LAYOUT_RUSTBORO_CITY_FLAT2_3F 296
#define LAYOUT_SOOTOPOLIS_CITY_LOTAD_AND_SEEDOT_HOUSE 297
#define LAYOUT_EVER_GRANDE_CITY_HALL_OF_FAME 298
#define LAYOUT_LILYCOVE_CITY_COVE_LILY_MOTEL_1F 299
#define LAYOUT_LILYCOVE_CITY_COVE_LILY_MOTEL_2F 300
#define LAYOUT_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE 301
#define LAYOUT_MT_PYRE_EXTERIOR 302
#define LAYOUT_MT_PYRE_SUMMIT 303
#define LAYOUT_SEALED_CHAMBER_INNER_ROOM 304
#define LAYOUT_MOSSDEEP_CITY_GAME_CORNER_1F 305
#define LAYOUT_MOSSDEEP_CITY_GAME_CORNER_B1F 306
#define LAYOUT_SOOTOPOLIS_CITY_HOUSE1 307
#define LAYOUT_SOOTOPOLIS_CITY_HOUSE2 308
#define LAYOUT_SOOTOPOLIS_CITY_HOUSE3 309
#define LAYOUT_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS 310
#define LAYOUT_SCORCHED_SLAB 311
#define LAYOUT_CAVE_OF_ORIGIN_UNUSED_B4F_LAVA 312
#define LAYOUT_RUSTBORO_CITY_FLAT1_1F 313
#define LAYOUT_RUSTBORO_CITY_FLAT1_2F 314
#define LAYOUT_EVER_GRANDE_CITY_HALL4 315
#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP1 316
#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP2 317
#define LAYOUT_AQUA_HIDEOUT_UNUSED_RUBY_MAP3 318
#define LAYOUT_ROUTE131_SKY_PILLAR 319
#define LAYOUT_SKY_PILLAR_ENTRANCE 320
#define LAYOUT_SKY_PILLAR_OUTSIDE 321
#define LAYOUT_SKY_PILLAR_1F 322
#define LAYOUT_SKY_PILLAR_2F 323
#define LAYOUT_SKY_PILLAR_3F 324
#define LAYOUT_SKY_PILLAR_4F 325
#define LAYOUT_SEAFLOOR_CAVERN_ROOM9_LAVA 326
#define LAYOUT_MOSSDEEP_CITY_STEVENS_HOUSE 327
#define LAYOUT_SHOAL_CAVE_LOW_TIDE_ICE_ROOM 328
#define LAYOUT_SAFARI_ZONE_REST_HOUSE 329
#define LAYOUT_SKY_PILLAR_5F 330
#define LAYOUT_SKY_PILLAR_TOP 331
#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_LOBBY 332
#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR 333
#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM 334
#define LAYOUT_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM 335
#define LAYOUT_MAGMA_HIDEOUT_1F 336
#define LAYOUT_MAGMA_HIDEOUT_2F_1R 337
#define LAYOUT_MAGMA_HIDEOUT_2F_2R 338
#define LAYOUT_MAGMA_HIDEOUT_3F_1R 339
#define LAYOUT_MAGMA_HIDEOUT_3F_2R 340
#define LAYOUT_MAGMA_HIDEOUT_4F 341
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY 342
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR 343
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM 344
#define LAYOUT_BATTLE_FRONTIER_OUTSIDE_EAST 345
#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY 346
#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM 347
#define LAYOUT_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM 348
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY 349
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR 350
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM 351
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL 352
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL 353
#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY 354
#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR 355
#define LAYOUT_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM 356
#define LAYOUT_SOOTOPOLIS_CITY_LEGENDS_BATTLE 357
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS 358
#define LAYOUT_UNKNOWN_084693AC 359
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY 360
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR 361
#define LAYOUT_BATTLE_PYRAMID_SQUARE01 362
#define LAYOUT_BATTLE_PYRAMID_SQUARE02 363
#define LAYOUT_BATTLE_PYRAMID_SQUARE03 364
#define LAYOUT_BATTLE_PYRAMID_SQUARE04 365
#define LAYOUT_BATTLE_PYRAMID_SQUARE05 366
#define LAYOUT_BATTLE_PYRAMID_SQUARE06 367
#define LAYOUT_BATTLE_PYRAMID_SQUARE07 368
#define LAYOUT_BATTLE_PYRAMID_SQUARE08 369
#define LAYOUT_BATTLE_PYRAMID_SQUARE09 370
#define LAYOUT_BATTLE_PYRAMID_SQUARE10 371
#define LAYOUT_BATTLE_PYRAMID_SQUARE11 372
#define LAYOUT_BATTLE_PYRAMID_SQUARE12 373
#define LAYOUT_BATTLE_PYRAMID_SQUARE13 374
#define LAYOUT_BATTLE_PYRAMID_SQUARE14 375
#define LAYOUT_BATTLE_PYRAMID_SQUARE15 376
#define LAYOUT_BATTLE_PYRAMID_SQUARE16 377
#define LAYOUT_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP 378
#define LAYOUT_MAGMA_HIDEOUT_3F_3R 379
#define LAYOUT_MAGMA_HIDEOUT_2F_3R 380
#define LAYOUT_MIRAGE_TOWER_1F 381
#define LAYOUT_MIRAGE_TOWER_2F 382
#define LAYOUT_MIRAGE_TOWER_3F 383
#define LAYOUT_BATTLE_TENT_LOBBY 384
#define LAYOUT_BATTLE_TENT_CORRIDOR 385
#define LAYOUT_BATTLE_TENT_BATTLE_ROOM 386
#define LAYOUT_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM 387
#define LAYOUT_MIRAGE_TOWER_4F 388
#define LAYOUT_DESERT_UNDERPASS 389
#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM 390
#define LAYOUT_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR 391
#define LAYOUT_ROUTE111_NO_MIRAGE_TOWER 392
#define LAYOUT_UNION_ROOM 393
#define LAYOUT_SAFARI_ZONE_NORTHEAST 394
#define LAYOUT_SAFARI_ZONE_SOUTHEAST 395
#define LAYOUT_BATTLE_FRONTIER_RANKING_HALL 396
#define LAYOUT_BATTLE_FRONTIER_LOUNGE1 397
#define LAYOUT_BATTLE_FRONTIER_EXCHANGE_SERVICE_CORNER 398
#define LAYOUT_BATTLE_FRONTIER_RECEPTION_GATE 399
#define LAYOUT_ARTISAN_CAVE_B1F 400
#define LAYOUT_ARTISAN_CAVE_1F 401
#define LAYOUT_FARAWAY_ISLAND_ENTRANCE 402
#define LAYOUT_FARAWAY_ISLAND_INTERIOR 403
#define LAYOUT_BIRTH_ISLAND_EXTERIOR 404
#define LAYOUT_ISLAND_HARBOR 405
#define LAYOUT_UNDERWATER_MARINE_CAVE 406
#define LAYOUT_MARINE_CAVE_ENTRANCE 407
#define LAYOUT_TERRA_CAVE_ENTRANCE 408
#define LAYOUT_TERRA_CAVE_END 409
#define LAYOUT_UNDERWATER_ROUTE105 410
#define LAYOUT_UNDERWATER_ROUTE125 411
#define LAYOUT_UNDERWATER_ROUTE129 412
#define LAYOUT_MARINE_CAVE_END 413
#define LAYOUT_TRAINER_HILL_ENTRANCE 414
#define LAYOUT_TRAINER_HILL_1F 415
#define LAYOUT_TRAINER_HILL_2F 416
#define LAYOUT_TRAINER_HILL_3F 417
#define LAYOUT_TRAINER_HILL_4F 418
#define LAYOUT_TRAINER_HILL_ROOF 419
#define LAYOUT_ALTERING_CAVE 420
#define LAYOUT_NAVEL_ROCK_EXTERIOR 421
#define LAYOUT_NAVEL_ROCK_ENTRANCE 422
#define LAYOUT_NAVEL_ROCK_TOP 423
#define LAYOUT_NAVEL_ROCK_BOTTOM 424
#define LAYOUT_NAVEL_ROCK_LADDER_ROOM1 425
#define LAYOUT_NAVEL_ROCK_LADDER_ROOM2 426
#define LAYOUT_NAVEL_ROCK_B1F 427
#define LAYOUT_NAVEL_ROCK_FORK 428
#define LAYOUT_BATTLE_FRONTIER_LOUNGE2 429
#define LAYOUT_BATTLE_FRONTIER_SCOTTS_HOUSE 430
#define LAYOUT_METEOR_FALLS_STEVENS_CAVE 431
#define LAYOUT_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB_WITH_TABLE 432
#define LAYOUT_SKY_PILLAR_1F_CLEAN 433
#define LAYOUT_SKY_PILLAR_2F_CLEAN 434
#define LAYOUT_SKY_PILLAR_3F_CLEAN 435
#define LAYOUT_SKY_PILLAR_4F_CLEAN 436
#define LAYOUT_SKY_PILLAR_5F_CLEAN 437
#define LAYOUT_SKY_PILLAR_TOP_CLEAN 438
#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F 439
#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F 440
#define LAYOUT_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F_STAIRS_UNBLOCKED 441

#endif // GUARD_CONSTANTS_LAYOUTS_H


code:
#ifndef GUARD_LILYCOVE_LADY_CONSTANTS_H
#define GUARD_LILYCOVE_LADY_CONSTANTS_H

#define LILYCOVE_LADY_QUIZ      0
#define LILYCOVE_LADY_FAVOR     1
#define LILYCOVE_LADY_CONTEST   2
#define LILYCOVE_LADY_COUNT     3

#define LILYCOVE_LADY_STATE_READY       0
#define LILYCOVE_LADY_STATE_COMPLETED   1
#define LILYCOVE_LADY_STATE_PRIZE       2

#define LILYCOVE_LADY_GIFT_THRESHOLD    5

#define QUIZ_AUTHOR_PLAYER           0
#define QUIZ_AUTHOR_OTHER_PLAYER     1
#define QUIZ_AUTHOR_LADY             2

// Would be redundant with the above set if GF hadn't mixed the order
#define QUIZ_AUTHOR_NAME_LADY            0
#define QUIZ_AUTHOR_NAME_PLAYER          1
#define QUIZ_AUTHOR_NAME_OTHER_PLAYER    2

#define QUIZ_QUESTION_LEN 9

#endif


code:
#ifndef GUARD_CONSTANTS_MAP_GROUPS_H
#define GUARD_CONSTANTS_MAP_GROUPS_H

//
// DO NOT MODIFY THIS FILE! It is auto-generated from data/maps/map_groups.json
//

// Map Group 0
#define MAP_PETALBURG_CITY      (0 | (0 << 8))
#define MAP_SLATEPORT_CITY      (1 | (0 << 8))
#define MAP_MAUVILLE_CITY       (2 | (0 << 8))
#define MAP_RUSTBORO_CITY       (3 | (0 << 8))
#define MAP_FORTREE_CITY        (4 | (0 << 8))
#define MAP_LILYCOVE_CITY       (5 | (0 << 8))
#define MAP_MOSSDEEP_CITY       (6 | (0 << 8))
#define MAP_SOOTOPOLIS_CITY     (7 | (0 << 8))
#define MAP_EVER_GRANDE_CITY    (8 | (0 << 8))
#define MAP_LITTLEROOT_TOWN     (9 | (0 << 8))
#define MAP_OLDALE_TOWN         (10 | (0 << 8))
#define MAP_DEWFORD_TOWN        (11 | (0 << 8))
#define MAP_LAVARIDGE_TOWN      (12 | (0 << 8))
#define MAP_FALLARBOR_TOWN      (13 | (0 << 8))
#define MAP_VERDANTURF_TOWN     (14 | (0 << 8))
#define MAP_PACIFIDLOG_TOWN     (15 | (0 << 8))
#define MAP_ROUTE101            (16 | (0 << 8))
#define MAP_ROUTE102            (17 | (0 << 8))
#define MAP_ROUTE103            (18 | (0 << 8))
#define MAP_ROUTE104            (19 | (0 << 8))
#define MAP_ROUTE105            (20 | (0 << 8))
#define MAP_ROUTE106            (21 | (0 << 8))
#define MAP_ROUTE107            (22 | (0 << 8))
#define MAP_ROUTE108            (23 | (0 << 8))
#define MAP_ROUTE109            (24 | (0 << 8))
#define MAP_ROUTE110            (25 | (0 << 8))
#define MAP_ROUTE111            (26 | (0 << 8))
#define MAP_ROUTE112            (27 | (0 << 8))
#define MAP_ROUTE113            (28 | (0 << 8))
#define MAP_ROUTE114            (29 | (0 << 8))
#define MAP_ROUTE115            (30 | (0 << 8))
#define MAP_ROUTE116            (31 | (0 << 8))
#define MAP_ROUTE117            (32 | (0 << 8))
#define MAP_ROUTE118            (33 | (0 << 8))
#define MAP_ROUTE119            (34 | (0 << 8))
#define MAP_ROUTE120            (35 | (0 << 8))
#define MAP_ROUTE121            (36 | (0 << 8))
#define MAP_ROUTE122            (37 | (0 << 8))
#define MAP_ROUTE123            (38 | (0 << 8))
#define MAP_ROUTE124            (39 | (0 << 8))
#define MAP_ROUTE125            (40 | (0 << 8))
#define MAP_ROUTE126            (41 | (0 << 8))
#define MAP_ROUTE127            (42 | (0 << 8))
#define MAP_ROUTE128            (43 | (0 << 8))
#define MAP_ROUTE129            (44 | (0 << 8))
#define MAP_ROUTE130            (45 | (0 << 8))
#define MAP_ROUTE131            (46 | (0 << 8))
#define MAP_ROUTE132            (47 | (0 << 8))
#define MAP_ROUTE133            (48 | (0 << 8))
#define MAP_ROUTE134            (49 | (0 << 8))
#define MAP_UNDERWATER_ROUTE124 (50 | (0 << 8))
#define MAP_UNDERWATER_ROUTE126 (51 | (0 << 8))
#define MAP_UNDERWATER_ROUTE127 (52 | (0 << 8))
#define MAP_UNDERWATER_ROUTE128 (53 | (0 << 8))
#define MAP_UNDERWATER_ROUTE129 (54 | (0 << 8))
#define MAP_UNDERWATER_ROUTE105 (55 | (0 << 8))
#define MAP_UNDERWATER_ROUTE125 (56 | (0 << 8))

// Map Group 1
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F    (0 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F    (1 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F        (2 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F        (3 | (1 << 8))
#define MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB (4 | (1 << 8))

// Map Group 2
#define MAP_OLDALE_TOWN_HOUSE1            (0 | (2 << 8))
#define MAP_OLDALE_TOWN_HOUSE2            (1 | (2 << 8))
#define MAP_OLDALE_TOWN_POKEMON_CENTER_1F (2 | (2 << 8))
#define MAP_OLDALE_TOWN_POKEMON_CENTER_2F (3 | (2 << 8))
#define MAP_OLDALE_TOWN_MART              (4 | (2 << 8))

// Map Group 3
#define MAP_DEWFORD_TOWN_HOUSE1            (0 | (3 << 8))
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_1F (1 | (3 << 8))
#define MAP_DEWFORD_TOWN_POKEMON_CENTER_2F (2 | (3 << 8))
#define MAP_DEWFORD_TOWN_GYM               (3 | (3 << 8))
#define MAP_DEWFORD_TOWN_HALL              (4 | (3 << 8))
#define MAP_DEWFORD_TOWN_HOUSE2            (5 | (3 << 8))

// Map Group 4
#define MAP_LAVARIDGE_TOWN_HERB_SHOP         (0 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_GYM_1F            (1 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_GYM_B1F           (2 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_HOUSE             (3 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_MART              (4 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8))
#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8))

// Map Group 5
#define MAP_FALLARBOR_TOWN_MART                    (0 | (5 << 8))
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY       (1 | (5 << 8))
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR    (2 | (5 << 8))
#define MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM (3 | (5 << 8))
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F       (4 | (5 << 8))
#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F       (5 | (5 << 8))
#define MAP_FALLARBOR_TOWN_COZMOS_HOUSE            (6 | (5 << 8))
#define MAP_FALLARBOR_TOWN_MOVE_RELEARNERS_HOUSE   (7 | (5 << 8))

// Map Group 6
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY       (0 | (6 << 8))
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR    (1 | (6 << 8))
#define MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM (2 | (6 << 8))
#define MAP_VERDANTURF_TOWN_MART                    (3 | (6 << 8))
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F       (4 | (6 << 8))
#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F       (5 | (6 << 8))
#define MAP_VERDANTURF_TOWN_WANDAS_HOUSE            (6 | (6 << 8))
#define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (7 | (6 << 8))
#define MAP_VERDANTURF_TOWN_HOUSE                   (8 | (6 << 8))

// Map Group 7
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F (0 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F (1 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE1            (2 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE2            (3 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE3            (4 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE4            (5 | (7 << 8))
#define MAP_PACIFIDLOG_TOWN_HOUSE5            (6 | (7 << 8))

// Map Group 8
#define MAP_PETALBURG_CITY_WALLYS_HOUSE      (0 | (8 << 8))
#define MAP_PETALBURG_CITY_GYM               (1 | (8 << 8))
#define MAP_PETALBURG_CITY_HOUSE1            (2 | (8 << 8))
#define MAP_PETALBURG_CITY_HOUSE2            (3 | (8 << 8))
#define MAP_PETALBURG_CITY_POKEMON_CENTER_1F (4 | (8 << 8))
#define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8))
#define MAP_PETALBURG_CITY_MART              (6 | (8 << 8))

// Map Group 9
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F      (0 | (9 << 8))
#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F      (1 | (9 << 8))
#define MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY       (2 | (9 << 8))
#define MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR    (3 | (9 << 8))
#define MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM (4 | (9 << 8))
#define MAP_SLATEPORT_CITY_NAME_RATERS_HOUSE       (5 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB        (6 | (9 << 8))
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F       (7 | (9 << 8))
#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F       (8 | (9 << 8))
#define MAP_SLATEPORT_CITY_HARBOR                  (9 | (9 << 8))
#define MAP_SLATEPORT_CITY_HOUSE                   (10 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_1F       (11 | (9 << 8))
#define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F       (12 | (9 << 8))
#define MAP_SLATEPORT_CITY_MART                    (13 | (9 << 8))

// Map Group 10
#define MAP_MAUVILLE_CITY_GYM               (0 | (10 << 8))
#define MAP_MAUVILLE_CITY_BIKE_SHOP         (1 | (10 << 8))
#define MAP_MAUVILLE_CITY_HOUSE1            (2 | (10 << 8))
#define MAP_MAUVILLE_CITY_GAME_CORNER       (3 | (10 << 8))
#define MAP_MAUVILLE_CITY_HOUSE2            (4 | (10 << 8))
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_1F (5 | (10 << 8))
#define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8))
#define MAP_MAUVILLE_CITY_MART              (7 | (10 << 8))

// Map Group 11
#define MAP_RUSTBORO_CITY_DEVON_CORP_1F     (0 | (11 << 8))
#define MAP_RUSTBORO_CITY_DEVON_CORP_2F     (1 | (11 << 8))
#define MAP_RUSTBORO_CITY_DEVON_CORP_3F     (2 | (11 << 8))
#define MAP_RUSTBORO_CITY_GYM               (3 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_SCHOOL    (4 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_1F (5 | (11 << 8))
#define MAP_RUSTBORO_CITY_POKEMON_CENTER_2F (6 | (11 << 8))
#define MAP_RUSTBORO_CITY_MART              (7 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT1_1F          (8 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT1_2F          (9 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE1            (10 | (11 << 8))
#define MAP_RUSTBORO_CITY_CUTTERS_HOUSE     (11 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE2            (12 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_1F          (13 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_2F          (14 | (11 << 8))
#define MAP_RUSTBORO_CITY_FLAT2_3F          (15 | (11 << 8))
#define MAP_RUSTBORO_CITY_HOUSE3            (16 | (11 << 8))

// Map Group 12
#define MAP_FORTREE_CITY_HOUSE1            (0 | (12 << 8))
#define MAP_FORTREE_CITY_GYM               (1 | (12 << 8))
#define MAP_FORTREE_CITY_POKEMON_CENTER_1F (2 | (12 << 8))
#define MAP_FORTREE_CITY_POKEMON_CENTER_2F (3 | (12 << 8))
#define MAP_FORTREE_CITY_MART              (4 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE2            (5 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE3            (6 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE4            (7 | (12 << 8))
#define MAP_FORTREE_CITY_HOUSE5            (8 | (12 << 8))
#define MAP_FORTREE_CITY_DECORATION_SHOP   (9 | (12 << 8))

// Map Group 13
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F        (0 | (13 << 8))
#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F        (1 | (13 << 8))
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F        (2 | (13 << 8))
#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F        (3 | (13 << 8))
#define MAP_LILYCOVE_CITY_CONTEST_LOBBY             (4 | (13 << 8))
#define MAP_LILYCOVE_CITY_CONTEST_HALL              (5 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_1F         (6 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_CENTER_2F         (7 | (13 << 8))
#define MAP_LILYCOVE_CITY_UNUSED_MART               (8 | (13 << 8))
#define MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB  (9 | (13 << 8))
#define MAP_LILYCOVE_CITY_HARBOR                    (10 | (13 << 8))
#define MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE       (11 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE1                    (12 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE2                    (13 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE3                    (14 | (13 << 8))
#define MAP_LILYCOVE_CITY_HOUSE4                    (15 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F       (16 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F       (17 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F       (18 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F       (19 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F       (20 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP  (21 | (13 << 8))
#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (22 | (13 << 8))

// Map Group 14
#define MAP_MOSSDEEP_CITY_GYM               (0 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE1            (1 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE2            (2 | (14 << 8))
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F (3 | (14 << 8))
#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F (4 | (14 << 8))
#define MAP_MOSSDEEP_CITY_MART              (5 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE3            (6 | (14 << 8))
#define MAP_MOSSDEEP_CITY_STEVENS_HOUSE     (7 | (14 << 8))
#define MAP_MOSSDEEP_CITY_HOUSE4            (8 | (14 << 8))
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_1F   (9 | (14 << 8))
#define MAP_MOSSDEEP_CITY_SPACE_CENTER_2F   (10 | (14 << 8))
#define MAP_MOSSDEEP_CITY_GAME_CORNER_1F    (11 | (14 << 8))
#define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F   (12 | (14 << 8))

// Map Group 15
#define MAP_SOOTOPOLIS_CITY_GYM_1F                   (0 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_GYM_B1F                  (1 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F        (2 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F        (3 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_MART                     (4 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE1                   (5 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE2                   (6 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE3                   (7 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE4                   (8 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE5                   (9 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE6                   (10 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_HOUSE7                   (11 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_LOTAD_AND_SEEDOT_HOUSE   (12 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_1F  (13 | (15 << 8))
#define MAP_SOOTOPOLIS_CITY_MYSTERY_EVENTS_HOUSE_B1F (14 | (15 << 8))

// Map Group 16
#define MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM      (0 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_PHOEBES_ROOM      (1 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_GLACIAS_ROOM      (2 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_DRAKES_ROOM       (3 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM    (4 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL1             (5 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL2             (6 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL3             (7 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL4             (8 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL5             (9 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F (10 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_HALL_OF_FAME      (11 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F (12 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8))
#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F (14 | (16 << 8))

// Map Group 17
#define MAP_ROUTE104_MR_BRINEYS_HOUSE         (0 | (17 << 8))
#define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8))

// Map Group 18
#define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8))
#define MAP_ROUTE111_OLD_LADYS_REST_STOP     (1 | (18 << 8))

// Map Group 19
#define MAP_ROUTE112_CABLE_CAR_STATION   (0 | (19 << 8))
#define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8))

// Map Group 20
#define MAP_ROUTE114_FOSSIL_MANIACS_HOUSE  (0 | (20 << 8))
#define MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL (1 | (20 << 8))
#define MAP_ROUTE114_LANETTES_HOUSE        (2 | (20 << 8))

// Map Group 21
#define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8))

// Map Group 22
#define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8))

// Map Group 23
#define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8))

// Map Group 24
#define MAP_METEOR_FALLS_1F_1R                       (0 | (24 << 8))
#define MAP_METEOR_FALLS_1F_2R                       (1 | (24 << 8))
#define MAP_METEOR_FALLS_B1F_1R                      (2 | (24 << 8))
#define MAP_METEOR_FALLS_B1F_2R                      (3 | (24 << 8))
#define MAP_RUSTURF_TUNNEL                           (4 | (24 << 8))
#define MAP_UNDERWATER_SOOTOPOLIS_CITY               (5 | (24 << 8))
#define MAP_DESERT_RUINS                             (6 | (24 << 8))
#define MAP_GRANITE_CAVE_1F                          (7 | (24 << 8))
#define MAP_GRANITE_CAVE_B1F                         (8 | (24 << 8))
#define MAP_GRANITE_CAVE_B2F                         (9 | (24 << 8))
#define MAP_GRANITE_CAVE_STEVENS_ROOM                (10 | (24 << 8))
#define MAP_PETALBURG_WOODS                          (11 | (24 << 8))
#define MAP_MT_CHIMNEY                               (12 | (24 << 8))
#define MAP_JAGGED_PASS                              (13 | (24 << 8))
#define MAP_FIERY_PATH                               (14 | (24 << 8))
#define MAP_MT_PYRE_1F                               (15 | (24 << 8))
#define MAP_MT_PYRE_2F                               (16 | (24 << 8))
#define MAP_MT_PYRE_3F                               (17 | (24 << 8))
#define MAP_MT_PYRE_4F                               (18 | (24 << 8))
#define MAP_MT_PYRE_5F                               (19 | (24 << 8))
#define MAP_MT_PYRE_6F                               (20 | (24 << 8))
#define MAP_MT_PYRE_EXTERIOR                         (21 | (24 << 8))
#define MAP_MT_PYRE_SUMMIT                           (22 | (24 << 8))
#define MAP_AQUA_HIDEOUT_1F                          (23 | (24 << 8))
#define MAP_AQUA_HIDEOUT_B1F                         (24 | (24 << 8))
#define MAP_AQUA_HIDEOUT_B2F                         (25 | (24 << 8))
#define MAP_UNDERWATER_SEAFLOOR_CAVERN               (26 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ENTRANCE                 (27 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM1                    (28 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM2                    (29 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM3                    (30 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM4                    (31 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM5                    (32 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM6                    (33 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM7                    (34 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM8                    (35 | (24 << 8))
#define MAP_SEAFLOOR_CAVERN_ROOM9                    (36 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_ENTRANCE                  (37 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_1F                        (38 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP1 (39 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP2 (40 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_UNUSED_RUBY_SAPPHIRE_MAP3 (41 | (24 << 8))
#define MAP_CAVE_OF_ORIGIN_B1F                       (42 | (24 << 8))
#define MAP_VICTORY_ROAD_1F                          (43 | (24 << 8))
#define MAP_VICTORY_ROAD_B1F                         (44 | (24 << 8))
#define MAP_VICTORY_ROAD_B2F                         (45 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM        (46 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM           (47 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM          (48 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM           (49 | (24 << 8))
#define MAP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM       (50 | (24 << 8))
#define MAP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM          (51 | (24 << 8))
#define MAP_NEW_MAUVILLE_ENTRANCE                    (52 | (24 << 8))
#define MAP_NEW_MAUVILLE_INSIDE                      (53 | (24 << 8))
#define MAP_ABANDONED_SHIP_DECK                      (54 | (24 << 8))
#define MAP_ABANDONED_SHIP_CORRIDORS_1F              (55 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS_1F                  (56 | (24 << 8))
#define MAP_ABANDONED_SHIP_CORRIDORS_B1F             (57 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS_B1F                 (58 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS2_B1F                (59 | (24 << 8))
#define MAP_ABANDONED_SHIP_UNDERWATER1               (60 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOM_B1F                  (61 | (24 << 8))
#define MAP_ABANDONED_SHIP_ROOMS2_1F                 (62 | (24 << 8))
#define MAP_ABANDONED_SHIP_CAPTAINS_OFFICE           (63 | (24 << 8))
#define MAP_ABANDONED_SHIP_UNDERWATER2               (64 | (24 << 8))
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS    (65 | (24 << 8))
#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS        (66 | (24 << 8))
#define MAP_ISLAND_CAVE                              (67 | (24 << 8))
#define MAP_ANCIENT_TOMB                             (68 | (24 << 8))
#define MAP_UNDERWATER_ROUTE134                      (69 | (24 << 8))
#define MAP_UNDERWATER_SEALED_CHAMBER                (70 | (24 << 8))
#define MAP_SEALED_CHAMBER_OUTER_ROOM                (71 | (24 << 8))
#define MAP_SEALED_CHAMBER_INNER_ROOM                (72 | (24 << 8))
#define MAP_SCORCHED_SLAB                            (73 | (24 << 8))
#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP1            (74 | (24 << 8))
#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP2            (75 | (24 << 8))
#define MAP_AQUA_HIDEOUT_UNUSED_RUBY_MAP3            (76 | (24 << 8))
#define MAP_SKY_PILLAR_ENTRANCE                      (77 | (24 << 8))
#define MAP_SKY_PILLAR_OUTSIDE                       (78 | (24 << 8))
#define MAP_SKY_PILLAR_1F                            (79 | (24 << 8))
#define MAP_SKY_PILLAR_2F                            (80 | (24 << 8))
#define MAP_SKY_PILLAR_3F                            (81 | (24 << 8))
#define MAP_SKY_PILLAR_4F                            (82 | (24 << 8))
#define MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM             (83 | (24 << 8))
#define MAP_SKY_PILLAR_5F                            (84 | (24 << 8))
#define MAP_SKY_PILLAR_TOP                           (85 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_1F                         (86 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_2F_1R                      (87 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_2F_2R                      (88 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_3F_1R                      (89 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_3F_2R                      (90 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_4F                         (91 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_3F_3R                      (92 | (24 << 8))
#define MAP_MAGMA_HIDEOUT_2F_3R                      (93 | (24 << 8))
#define MAP_MIRAGE_TOWER_1F                          (94 | (24 << 8))
#define MAP_MIRAGE_TOWER_2F                          (95 | (24 << 8))
#define MAP_MIRAGE_TOWER_3F                          (96 | (24 << 8))
#define MAP_MIRAGE_TOWER_4F                          (97 | (24 << 8))
#define MAP_DESERT_UNDERPASS                         (98 | (24 << 8))
#define MAP_ARTISAN_CAVE_B1F                         (99 | (24 << 8))
#define MAP_ARTISAN_CAVE_1F                          (100 | (24 << 8))
#define MAP_UNDERWATER_MARINE_CAVE                   (101 | (24 << 8))
#define MAP_MARINE_CAVE_ENTRANCE                     (102 | (24 << 8))
#define MAP_MARINE_CAVE_END                          (103 | (24 << 8))
#define MAP_TERRA_CAVE_ENTRANCE                      (104 | (24 << 8))
#define MAP_TERRA_CAVE_END                           (105 | (24 << 8))
#define MAP_ALTERING_CAVE                            (106 | (24 << 8))
#define MAP_METEOR_FALLS_STEVENS_CAVE                (107 | (24 << 8))

// Map Group 25
#define MAP_SECRET_BASE_RED_CAVE1           (0 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE1         (1 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE1          (2 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE1        (3 | (25 << 8))
#define MAP_SECRET_BASE_TREE1               (4 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB1              (5 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE2           (6 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE2         (7 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE2          (8 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE2        (9 | (25 << 8))
#define MAP_SECRET_BASE_TREE2               (10 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB2              (11 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE3           (12 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE3         (13 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE3          (14 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE3        (15 | (25 << 8))
#define MAP_SECRET_BASE_TREE3               (16 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB3              (17 | (25 << 8))
#define MAP_SECRET_BASE_RED_CAVE4           (18 | (25 << 8))
#define MAP_SECRET_BASE_BROWN_CAVE4         (19 | (25 << 8))
#define MAP_SECRET_BASE_BLUE_CAVE4          (20 | (25 << 8))
#define MAP_SECRET_BASE_YELLOW_CAVE4        (21 | (25 << 8))
#define MAP_SECRET_BASE_TREE4               (22 | (25 << 8))
#define MAP_SECRET_BASE_SHRUB4              (23 | (25 << 8))
#define MAP_BATTLE_COLOSSEUM_2P             (24 | (25 << 8))
#define MAP_TRADE_CENTER                    (25 | (25 << 8))
#define MAP_RECORD_CORNER                   (26 | (25 << 8))
#define MAP_BATTLE_COLOSSEUM_4P             (27 | (25 << 8))
#define MAP_CONTEST_HALL                    (28 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_29 (29 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_30 (30 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_31 (31 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_32 (32 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_33 (33 | (25 << 8))
#define MAP_UNKNOWN_LINK_CONTEST_ROOM_25_34 (34 | (25 << 8))
#define MAP_CONTEST_HALL_BEAUTY             (35 | (25 << 8))
#define MAP_CONTEST_HALL_TOUGH              (36 | (25 << 8))
#define MAP_CONTEST_HALL_COOL               (37 | (25 << 8))
#define MAP_CONTEST_HALL_SMART              (38 | (25 << 8))
#define MAP_CONTEST_HALL_CUTE               (39 | (25 << 8))
#define MAP_INSIDE_OF_TRUCK                 (40 | (25 << 8))
#define MAP_SS_TIDAL_CORRIDOR               (41 | (25 << 8))
#define MAP_SS_TIDAL_LOWER_DECK             (42 | (25 << 8))
#define MAP_SS_TIDAL_ROOMS                  (43 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE01         (44 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE02         (45 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE03         (46 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE04         (47 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE05         (48 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE06         (49 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE07         (50 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE08         (51 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE09         (52 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE10         (53 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE11         (54 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE12         (55 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE13         (56 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE14         (57 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE15         (58 | (25 << 8))
#define MAP_BATTLE_PYRAMID_SQUARE16         (59 | (25 << 8))
#define MAP_UNION_ROOM                      (60 | (25 << 8))

// Map Group 26
#define MAP_SAFARI_ZONE_NORTHWEST                           (0 | (26 << 8))
#define MAP_SAFARI_ZONE_NORTH                               (1 | (26 << 8))
#define MAP_SAFARI_ZONE_SOUTHWEST                           (2 | (26 << 8))
#define MAP_SAFARI_ZONE_SOUTH                               (3 | (26 << 8))
#define MAP_BATTLE_FRONTIER_OUTSIDE_WEST                    (4 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY              (5 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR           (6 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR           (7 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM        (8 | (26 << 8))
#define MAP_SOUTHERN_ISLAND_EXTERIOR                        (9 | (26 << 8))
#define MAP_SOUTHERN_ISLAND_INTERIOR                        (10 | (26 << 8))
#define MAP_SAFARI_ZONE_REST_HOUSE                          (11 | (26 << 8))
#define MAP_SAFARI_ZONE_NORTHEAST                           (12 | (26 << 8))
#define MAP_SAFARI_ZONE_SOUTHEAST                           (13 | (26 << 8))
#define MAP_BATTLE_FRONTIER_OUTSIDE_EAST                    (14 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_PARTNER_ROOM (15 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_CORRIDOR     (16 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM  (17 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY               (18 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR            (19 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM     (20 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM         (21 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY             (22 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR          (23 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM       (24 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY            (25 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_FLOOR            (26 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP              (27 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY              (28 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR           (29 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM        (30 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY            (31 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM  (32 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM      (33 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY               (34 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR            (35 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM     (36 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_NORMAL         (37 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_FINAL          (38 | (26 << 8))
#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_ROOM_WILD_MONS      (39 | (26 << 8))
#define MAP_BATTLE_FRONTIER_RANKING_HALL                    (40 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE1                         (41 | (26 << 8))
#define MAP_BATTLE_FRONTIER_EXCHANGE_SERVICE_CORNER         (42 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE2                         (43 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE3                         (44 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE4                         (45 | (26 << 8))
#define MAP_BATTLE_FRONTIER_SCOTTS_HOUSE                    (46 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE5                         (47 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE6                         (48 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE7                         (49 | (26 << 8))
#define MAP_BATTLE_FRONTIER_RECEPTION_GATE                  (50 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE8                         (51 | (26 << 8))
#define MAP_BATTLE_FRONTIER_LOUNGE9                         (52 | (26 << 8))
#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F               (53 | (26 << 8))
#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F               (54 | (26 << 8))
#define MAP_BATTLE_FRONTIER_MART                            (55 | (26 << 8))
#define MAP_FARAWAY_ISLAND_ENTRANCE                         (56 | (26 << 8))
#define MAP_FARAWAY_ISLAND_INTERIOR                         (57 | (26 << 8))
#define MAP_BIRTH_ISLAND_EXTERIOR                           (58 | (26 << 8))
#define MAP_BIRTH_ISLAND_HARBOR                             (59 | (26 << 8))
#define MAP_TRAINER_HILL_ENTRANCE                           (60 | (26 << 8))
#define MAP_TRAINER_HILL_1F                                 (61 | (26 << 8))
#define MAP_TRAINER_HILL_2F                                 (62 | (26 << 8))
#define MAP_TRAINER_HILL_3F                                 (63 | (26 << 8))
#define MAP_TRAINER_HILL_4F                                 (64 | (26 << 8))
#define MAP_TRAINER_HILL_ROOF                               (65 | (26 << 8))
#define MAP_NAVEL_ROCK_EXTERIOR                             (66 | (26 << 8))
#define MAP_NAVEL_ROCK_HARBOR                               (67 | (26 << 8))
#define MAP_NAVEL_ROCK_ENTRANCE                             (68 | (26 << 8))
#define MAP_NAVEL_ROCK_B1F                                  (69 | (26 << 8))
#define MAP_NAVEL_ROCK_FORK                                 (70 | (26 << 8))
#define MAP_NAVEL_ROCK_UP1                                  (71 | (26 << 8))
#define MAP_NAVEL_ROCK_UP2                                  (72 | (26 << 8))
#define MAP_NAVEL_ROCK_UP3                                  (73 | (26 << 8))
#define MAP_NAVEL_ROCK_UP4                                  (74 | (26 << 8))
#define MAP_NAVEL_ROCK_TOP                                  (75 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN01                               (76 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN02                               (77 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN03                               (78 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN04                               (79 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN05                               (80 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN06                               (81 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN07                               (82 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN08                               (83 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN09                               (84 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN10                               (85 | (26 << 8))
#define MAP_NAVEL_ROCK_DOWN11                               (86 | (26 << 8))
#define MAP_NAVEL_ROCK_BOTTOM                               (87 | (26 << 8))
#define MAP_TRAINER_HILL_ELEVATOR                           (88 | (26 << 8))

// Map Group 27
#define MAP_ROUTE104_PROTOTYPE                          (0 | (27 << 8))
#define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8))

// Map Group 28
#define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8))

// Map Group 29
#define MAP_ROUTE110_TRICK_HOUSE_ENTRANCE                (0 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_END                     (1 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_CORRIDOR                (2 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE1                 (3 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE2                 (4 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE3                 (5 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE4                 (6 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE5                 (7 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE6                 (8 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE7                 (9 | (29 << 8))
#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE8                 (10 | (29 << 8))
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (11 | (29 << 8))
#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (12 | (29 << 8))

// Map Group 30
#define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8))

// Map Group 31
#define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8))

// Map Group 32
#define MAP_ROUTE119_WEATHER_INSTITUTE_1F (0 | (32 << 8))
#define MAP_ROUTE119_WEATHER_INSTITUTE_2F (1 | (32 << 8))
#define MAP_ROUTE119_HOUSE                (2 | (32 << 8))

// Map Group 33
#define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8))

#define MAP_GROUPS_COUNT 34

#endif // GUARD_CONSTANTS_MAP_GROUPS_H


code:
#ifndef GUARD_CONSTANTS_MAP_SCRIPTS_H
#define GUARD_CONSTANTS_MAP_SCRIPTS_H

/*
    IDs for special scripts that can be run for a particular map.
    For the functions that handle when they are run, see these constants' uses in src/script.c

    Below describes when a script of this kind will be called, and what it typically does.
    They are numbered in the order that they will be called when entering a map (from a warp or camera transition).
    NOTE: These descriptions are just of what they generally do, not what they always or have to do

    3. ON_LOAD: Run after the layout is loaded (but not drawn yet).
                Almost exclusively used to set metatiles on the map before it's first drawn

    6. ON_FRAME_TABLE: Run every frame after the map has faded in, before player input is processed.
                       This is a table of scripts that each run if their condition is satisfied.
                       Used to trigger an event, such as the player exiting the cable car or the SS Tidal sailor announcing progress

    2. ON_TRANSITION: Run during the transition to the map
                      Used to set map-specific flags/vars, update object positions/movement types, set weather, etc

    5. ON_WARP_INTO_MAP_TABLE: Run after the map's objects are loaded.
                               This is a table of scripts that each run if their condition is satisfied.
                               Used to add objects to the scene or update something about the player as they warp in (e.g. their facing dir or visibility)
                               Note that ON_TRANSITION may also handle object visibility, but would do so by modifying a flag or var

    4. ON_RESUME: Run at the end of map load, and again any time upon returning to field (e.g. exiting the Bag menu, or finishing a battle)
                  Used to hide defeated static pokemon, or maintain some map state (e.g. the Trainer Hill timer, or the cycling road challenge)
                  In some maps this takes the metatile setting job of ON_LOAD

    1. ON_DIVE_WARP: Run after the player chooses to dive/emerge.
                     Only used once, to determine whether or not the player should emerge in the Sealed Chamber

    x. ON_RETURN_TO_FIELD: Run exlusively upon returning to the field, shortly after ON_RESUME (as opposed to ON_RESUME, which also runs once on entering the map)
                           Used rarely, when something must only happen on reload (e.g. making sure Mew is above the grass after battling it on Faraway Island)

*/

#define MAP_SCRIPT_ON_LOAD 1
#define MAP_SCRIPT_ON_FRAME_TABLE 2
#define MAP_SCRIPT_ON_TRANSITION 3
#define MAP_SCRIPT_ON_WARP_INTO_MAP_TABLE 4
#define MAP_SCRIPT_ON_RESUME 5
#define MAP_SCRIPT_ON_DIVE_WARP 6
#define MAP_SCRIPT_ON_RETURN_TO_FIELD 7

#endif // GUARD_CONSTANTS_MAP_SCRIPTS_H


code:
#ifndef GUARD_CONSTANTS_MAP_TYPES_H
#define GUARD_CONSTANTS_MAP_TYPES_H

#define MAP_TYPE_NONE        0
#define MAP_TYPE_TOWN        1
#define MAP_TYPE_CITY        2
#define MAP_TYPE_ROUTE       3
#define MAP_TYPE_UNDERGROUND 4
#define MAP_TYPE_UNDERWATER  5
#define MAP_TYPE_OCEAN_ROUTE 6
#define MAP_TYPE_UNKNOWN     7 // Not used by any map.
#define MAP_TYPE_INDOOR      8
#define MAP_TYPE_SECRET_BASE 9

#define MAP_BATTLE_SCENE_NORMAL       0
#define MAP_BATTLE_SCENE_GYM          1
#define MAP_BATTLE_SCENE_MAGMA        2
#define MAP_BATTLE_SCENE_AQUA         3
#define MAP_BATTLE_SCENE_SIDNEY       4
#define MAP_BATTLE_SCENE_PHOEBE       5
#define MAP_BATTLE_SCENE_GLACIA       6
#define MAP_BATTLE_SCENE_DRAKE        7
#define MAP_BATTLE_SCENE_FRONTIER     8

#endif  // GUARD_CONSTANTS_MAP_TYPES_H


code:
#ifndef GUARD_CONSTANTS_MAPS_H
#define GUARD_CONSTANTS_MAPS_H

#include "map_groups.h"

#define MAP_NONE (0x7F | (0x7F << 8))
#define MAP_UNDEFINED (0xFF | (0xFF << 8))

#define MAP_GROUP(map) (MAP_##map >> 8)
#define MAP_NUM(map) (MAP_##map & 0xFF)

// These groups are used by pokedex_area_screen.c to find wild
// pokemon locations.
#define MAP_GROUP_OVERWORLD_MONS MAP_GROUP(PETALBURG_CITY)
#define MAP_GROUP_SPECIAL_MONS_1 MAP_GROUP(METEOR_FALLS_1F_1R)
#define MAP_GROUP_SPECIAL_MONS_2 MAP_GROUP(SAFARI_ZONE_NORTHWEST)

#endif  // GUARD_CONSTANTS_MAPS_H


code:
#ifndef GUARD_CONSTANTS_MAUVILLE_OLD_MAN_H
#define GUARD_CONSTANTS_MAUVILLE_OLD_MAN_H

#define MAUVILLE_MAN_BARD           0
#define MAUVILLE_MAN_HIPSTER        1
#define MAUVILLE_MAN_TRADER         2
#define MAUVILLE_MAN_STORYTELLER    3
#define MAUVILLE_MAN_GIDDY          4
#define MAUVILLE_MAN_UNUSED1        5
#define MAUVILLE_MAN_UNUSED2        6

#endif // GUARD_CONSTANTS_MAUVILLE_OLD_MAN_H


code:
#ifndef GUARD_METATILE_BEHAVIORS
#define GUARD_METATILE_BEHAVIORS

#define MB_NORMAL 0x00
#define MB_SECRET_BASE_WALL 0x01
#define MB_TALL_GRASS 0x02
#define MB_LONG_GRASS 0x03
#define MB_UNUSED_04 0x04
#define MB_UNUSED_05 0x05
#define MB_DEEP_SAND 0x06
#define MB_SHORT_GRASS 0x07
#define MB_UNUSED_CAVE 0x08
#define MB_LONG_GRASS_SOUTH_EDGE 0x09
#define MB_NO_RUNNING 0x0A
#define MB_INDOOR_ENCOUNTER 0x0B
#define MB_MOUNTAIN_TOP 0x0C
#define MB_BATTLE_PYRAMID_WARP 0x0D
#define MB_MOSSDEEP_GYM_WARP 0x0E
#define MB_MT_PYRE_HOLE 0x0F
#define MB_POND_WATER 0x10
#define MB_SEMI_DEEP_WATER 0x11
#define MB_DEEP_WATER 0x12
#define MB_WATERFALL 0x13
#define MB_SOOTOPOLIS_DEEP_WATER 0x14
#define MB_OCEAN_WATER 0x15
#define MB_PUDDLE 0x16
#define MB_SHALLOW_WATER 0x17
#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER 0x18
#define MB_NO_SURFACING 0x19
#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2 0x1A
#define MB_STAIRS_OUTSIDE_ABANDONED_SHIP 0x1B
#define MB_SHOAL_CAVE_ENTRANCE 0x1C
#define MB_UNUSED_1D 0x1D
#define MB_UNUSED_1E 0x1E
#define MB_UNUSED_1F 0x1F
#define MB_ICE 0x20
#define MB_SAND 0x21
#define MB_SEAWEED 0x22
#define MB_UNUSED_23 0x23
#define MB_ASHGRASS 0x24
#define MB_FOOTPRINTS 0x25
#define MB_THIN_ICE 0x26
#define MB_CRACKED_ICE 0x27
#define MB_HOT_SPRINGS 0x28
#define MB_LAVARIDGE_GYM_B1F_WARP 0x29
#define MB_SEAWEED_NO_SURFACING 0x2A
#define MB_REFLECTION_UNDER_BRIDGE 0x2B
#define MB_UNUSED_2C 0x2C
#define MB_UNUSED_2D 0x2D
#define MB_UNUSED_2E 0x2E
#define MB_UNUSED_2F 0x2F
#define MB_IMPASSABLE_EAST 0x30
#define MB_IMPASSABLE_WEST 0x31
#define MB_IMPASSABLE_NORTH 0x32
#define MB_IMPASSABLE_SOUTH 0x33
#define MB_IMPASSABLE_NORTHEAST 0x34
#define MB_IMPASSABLE_NORTHWEST 0x35
#define MB_IMPASSABLE_SOUTHEAST 0x36
#define MB_IMPASSABLE_SOUTHWEST 0x37
#define MB_JUMP_EAST 0x38
#define MB_JUMP_WEST 0x39
#define MB_JUMP_NORTH 0x3A
#define MB_JUMP_SOUTH 0x3B
#define MB_JUMP_NORTHEAST 0x3C
#define MB_JUMP_NORTHWEST 0x3D
#define MB_JUMP_SOUTHEAST 0x3E
#define MB_JUMP_SOUTHWEST 0x3F
#define MB_WALK_EAST 0x40
#define MB_WALK_WEST 0x41
#define MB_WALK_NORTH 0x42
#define MB_WALK_SOUTH 0x43
#define MB_SLIDE_EAST 0x44
#define MB_SLIDE_WEST 0x45
#define MB_SLIDE_NORTH 0x46
#define MB_SLIDE_SOUTH 0x47
#define MB_TRICK_HOUSE_PUZZLE_8_FLOOR 0x48
#define MB_UNUSED_49 0x49
#define MB_UNUSED_4A 0x4A
#define MB_UNUSED_4B 0x4B
#define MB_UNUSED_4C 0x4C
#define MB_UNUSED_4D 0x4D
#define MB_UNUSED_4E 0x4E
#define MB_UNUSED_4F 0x4F
#define MB_EASTWARD_CURRENT 0x50
#define MB_WESTWARD_CURRENT 0x51
#define MB_NORTHWARD_CURRENT 0x52
#define MB_SOUTHWARD_CURRENT 0x53
#define MB_UNUSED_54 0x54
#define MB_UNUSED_55 0x55
#define MB_UNUSED_56 0x56
#define MB_UNUSED_57 0x57
#define MB_UNUSED_58 0x58
#define MB_UNUSED_59 0x59
#define MB_UNUSED_5A 0x5A
#define MB_UNUSED_5B 0x5B
#define MB_UNUSED_5C 0x5C
#define MB_UNUSED_5D 0x5D
#define MB_UNUSED_5E 0x5E
#define MB_UNUSED_5F 0x5F
#define MB_NON_ANIMATED_DOOR 0x60
#define MB_LADDER 0x61
#define MB_EAST_ARROW_WARP 0x62
#define MB_WEST_ARROW_WARP 0x63
#define MB_NORTH_ARROW_WARP 0x64
#define MB_SOUTH_ARROW_WARP 0x65
#define MB_CRACKED_FLOOR_HOLE 0x66
#define MB_AQUA_HIDEOUT_WARP 0x67
#define MB_LAVARIDGE_GYM_1F_WARP 0x68
#define MB_ANIMATED_DOOR 0x69
#define MB_UP_ESCALATOR 0x6A
#define MB_DOWN_ESCALATOR 0x6B
#define MB_WATER_DOOR 0x6C
#define MB_WATER_SOUTH_ARROW_WARP 0x6D
#define MB_DEEP_SOUTH_WARP 0x6E
#define MB_UNUSED_6F 0x6F
#define MB_WARP_OR_BRIDGE 0x70
#define MB_UNUSED_71 0x71
#define MB_ROUTE120_NORTH_BRIDGE_1 0x72
#define MB_ROUTE120_NORTH_BRIDGE_2 0x73
#define MB_PACIFIDLOG_VERTICAL_LOG_1 0x74
#define MB_PACIFIDLOG_VERTICAL_LOG_2 0x75
#define MB_PACIFIDLOG_HORIZONTAL_LOG_1 0x76
#define MB_PACIFIDLOG_HORIZONTAL_LOG_2 0x77
#define MB_FORTREE_BRIDGE 0x78
#define MB_UNUSED_79 0x79
#define MB_ROUTE120_SOUTH_BRIDGE_1 0x7A
#define MB_ROUTE120_SOUTH_BRIDGE_2 0x7B
#define MB_ROUTE120_NORTH_BRIDGE_3 0x7C
#define MB_ROUTE120_NORTH_BRIDGE_4 0x7D
#define MB_UNUSED_7E 0x7E
#define MB_ROUTE110_BRIDGE 0x7F
#define MB_COUNTER 0x80
#define MB_UNUSED_81 0x81
#define MB_UNUSED_82 0x82
#define MB_PC 0x83
#define MB_CABLE_BOX_RESULTS_1 0x84
#define MB_REGION_MAP 0x85
#define MB_TELEVISION 0x86
#define MB_POKEBLOCK_FEEDER 0x87
#define MB_UNUSED_88 0x88
#define MB_SLOT_MACHINE 0x89
#define MB_ROULETTE 0x8A
#define MB_CLOSED_SOOTOPOLIS_DOOR 0x8B
#define MB_TRICK_HOUSE_PUZZLE_DOOR 0x8C
#define MB_PETALBURG_GYM_DOOR 0x8D
#define MB_RUNNING_SHOES_INSTRUCTION 0x8E
#define MB_QUESTIONNAIRE 0x8F
#define MB_SECRET_BASE_SPOT_RED_CAVE 0x90
#define MB_SECRET_BASE_SPOT_RED_CAVE_OPEN 0x91
#define MB_SECRET_BASE_SPOT_BROWN_CAVE 0x92
#define MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN 0x93
#define MB_SECRET_BASE_SPOT_YELLOW_CAVE 0x94
#define MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN 0x95
#define MB_SECRET_BASE_SPOT_TREE_LEFT 0x96
#define MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN 0x97
#define MB_SECRET_BASE_SPOT_SHRUB 0x98
#define MB_SECRET_BASE_SPOT_SHRUB_OPEN 0x99
#define MB_SECRET_BASE_SPOT_BLUE_CAVE 0x9A
#define MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN 0x9B
#define MB_SECRET_BASE_SPOT_TREE_RIGHT 0x9C
#define MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN 0x9D
#define MB_UNUSED_9E 0x9E
#define MB_UNUSED_9F 0x9F
#define MB_BERRY_TREE_SOIL 0xA0
#define MB_UNUSED_A1 0xA1
#define MB_UNUSED_A2 0xA2
#define MB_UNUSED_A3 0xA3
#define MB_UNUSED_A4 0xA4
#define MB_UNUSED_A5 0xA5
#define MB_UNUSED_A6 0xA6
#define MB_UNUSED_A7 0xA7
#define MB_UNUSED_A8 0xA8
#define MB_UNUSED_A9 0xA9
#define MB_UNUSED_AA 0xAA
#define MB_UNUSED_AB 0xAB
#define MB_UNUSED_AC 0xAC
#define MB_UNUSED_AD 0xAD
#define MB_UNUSED_AE 0xAE
#define MB_UNUSED_AF 0xAF
#define MB_SECRET_BASE_PC 0xB0
#define MB_SECRET_BASE_REGISTER_PC 0xB1
#define MB_SECRET_BASE_UNUSED 0xB2
#define MB_BLOCK_DECORATION 0xB3
#define MB_SECRET_BASE_DECORATION 0xB4
#define MB_HOLDS_SMALL_DECORATION 0xB5
#define MB_UNUSED_B6 0xB6
#define MB_SECRET_BASE_NORTH_WALL 0xB7
#define MB_SECRET_BASE_BALLOON 0xB8
#define MB_SECRET_BASE_IMPASSABLE 0xB9
#define MB_SECRET_BASE_GLITTER_MAT 0xBA
#define MB_SECRET_BASE_JUMP_MAT 0xBB
#define MB_SECRET_BASE_SPIN_MAT 0xBC
#define MB_SECRET_BASE_SOUND_MAT 0xBD
#define MB_SECRET_BASE_BREAKABLE_DOOR 0xBE
#define MB_SECRET_BASE_SAND_ORNAMENT 0xBF
#define MB_IMPASSABLE_SOUTH_AND_NORTH 0xC0
#define MB_IMPASSABLE_WEST_AND_EAST 0xC1
#define MB_SECRET_BASE_HOLE 0xC2
#define MB_HOLDS_LARGE_DECORATION 0xC3
#define MB_SECRET_BASE_TV_SHIELD 0xC4
#define MB_PLAYER_ROOM_PC_ON 0xC5
#define MB_C6 0xC6
#define MB_SECRET_BASE_POSTER 0xC7
#define MB_UNUSED_C8 0xC8
#define MB_UNUSED_C9 0xC9
#define MB_UNUSED_CA 0xCA
#define MB_UNUSED_CB 0xCB
#define MB_UNUSED_CC 0xCC
#define MB_UNUSED_CD 0xCD
#define MB_UNUSED_CE 0xCE
#define MB_UNUSED_CF 0xCF
#define MB_MUDDY_SLOPE 0xD0
#define MB_BUMPY_SLOPE 0xD1
#define MB_CRACKED_FLOOR 0xD2
#define MB_ISOLATED_VERTICAL_RAIL 0xD3
#define MB_ISOLATED_HORIZONTAL_RAIL 0xD4
#define MB_VERTICAL_RAIL 0xD5
#define MB_HORIZONTAL_RAIL 0xD6
#define MB_UNUSED_D7 0xD7
#define MB_UNUSED_D8 0xD8
#define MB_UNUSED_D9 0xD9
#define MB_UNUSED_DA 0xDA
#define MB_UNUSED_DB 0xDB
#define MB_UNUSED_DC 0xDC
#define MB_UNUSED_DD 0xDD
#define MB_UNUSED_DE 0xDE
#define MB_UNUSED_DF 0xDF
#define MB_PICTURE_BOOK_SHELF 0xE0
#define MB_BOOKSHELF 0xE1
#define MB_POKEMON_CENTER_BOOKSHELF 0xE2
#define MB_VASE 0xE3
#define MB_TRASH_CAN 0xE4
#define MB_SHOP_SHELF 0xE5
#define MB_BLUEPRINT 0xE6
#define MB_CABLE_BOX_RESULTS_2 0xE7
#define MB_WIRELESS_BOX_RESULTS 0xE8
#define MB_TRAINER_HILL_TIMER 0xE9
#define MB_SKY_PILLAR_CLOSED_DOOR 0xEA
#define MB_UNUSED_EB 0xEB
#define MB_UNUSED_EC 0xEC
#define MB_UNUSED_ED 0xED
#define MB_UNUSED_EE 0xEE
#define MB_UNUSED_EF 0xEF

#endif // GUARD_METATILE_BEHAVIORS