pmd-sky/include/enums.h
2024-12-30 00:22:22 -06:00

2904 lines
94 KiB
C

#ifndef PMDSKY_ENUMS_H
#define PMDSKY_ENUMS_H
// Terrain type for a tile
enum terrain_type {
TERRAIN_WALL = 0,
TERRAIN_NORMAL = 1,
TERRAIN_SECONDARY = 2, // Water or lava
TERRAIN_CHASM = 3,
};
// Tactic ID. These are usually encoded as bitvectors.
enum tactic_id {
TACTIC_LETS_GO_TOGETHER = 0,
TACTIC_YOU_GO_THE_OTHER_WAY = 1,
TACTIC_GO_AFTER_FOES = 2,
TACTIC_AVOID_THE_FIRST_HIT = 3,
TACTIC_ALL_FOR_ONE = 4,
TACTIC_GROUP_SAFETY = 5,
TACTIC_AVOID_TROUBLE = 6,
TACTIC_BE_PATIENT = 7,
TACTIC_KEEP_YOUR_DISTANCE = 8,
TACTIC_WAIT_THERE = 9,
TACTIC_GET_AWAY_FROM_HERE = 10,
TACTIC_NONE = 11, // used as an empty placeholder in menus (and maybe other things).
};
// AI objective that controls how an AI acts in the moment.
// These were probably taken from Rescue Team; need to confirm validity in Explorers.
enum ai_objective {
AI_UNKNOWN = 0,
AI_CHASE_TARGET = 1,
AI_CHASE_REMEMBERED_TARGET = 2, // Chase a target using a previous position
AI_ROAM = 3, // Roam hallways
AI_LEAVE_ROOM = 4, // Get out of a room
AI_RUN_AWAY = 5,
AI_STAND_STILL = 6,
AI_TAKE_ITEM = 7,
};
// Move ID
enum move_id {
MOVE_NOTHING = 0,
MOVE_IRON_TAIL = 1,
MOVE_ICE_BALL = 2,
MOVE_YAWN = 3,
MOVE_LOVELY_KISS = 4,
MOVE_NIGHTMARE = 5,
MOVE_MORNING_SUN = 6,
MOVE_VITAL_THROW = 7,
MOVE_DIG = 8,
MOVE_THRASH = 9,
MOVE_SWEET_SCENT = 10,
MOVE_CHARM = 11,
MOVE_RAIN_DANCE = 12,
MOVE_CONFUSE_RAY = 13,
MOVE_HAIL = 14,
MOVE_AROMATHERAPY = 15,
MOVE_BUBBLE = 16,
MOVE_ENCORE = 17,
MOVE_CUT = 18,
MOVE_RAGE = 19,
MOVE_SUPER_FANG = 20,
MOVE_PAIN_SPLIT = 21,
MOVE_TORMENT = 22,
MOVE_STRING_SHOT = 23,
MOVE_SWAGGER = 24,
MOVE_SNORE = 25,
MOVE_HEAL_BELL = 26,
MOVE_SCREECH = 27,
MOVE_ROCK_THROW = 28,
MOVE_ROCK_SMASH = 29,
MOVE_ROCK_SLIDE = 30,
MOVE_WEATHER_BALL = 31,
MOVE_WHIRLPOOL = 32,
MOVE_FAKE_TEARS = 33,
MOVE_SING = 34,
MOVE_SPITE = 35,
MOVE_AIR_CUTTER = 36,
MOVE_SMOKESCREEN = 37,
MOVE_PURSUIT = 38,
MOVE_DOUBLESLAP = 39,
MOVE_MIRROR_MOVE = 40,
MOVE_OVERHEAT = 41,
MOVE_AURORA_BEAM = 42,
MOVE_MEMENTO = 43,
MOVE_OCTAZOOKA = 44,
MOVE_FLATTER = 45,
MOVE_ASTONISH = 46,
MOVE_WILL_O_WISP = 47,
MOVE_RETURN = 48,
MOVE_GRUDGE = 49,
MOVE_STRENGTH = 50,
MOVE_COUNTER = 51,
MOVE_FLAME_WHEEL = 52,
MOVE_FLAMETHROWER = 53,
MOVE_ODOR_SLEUTH = 54,
MOVE_SHARPEN = 55,
MOVE_DOUBLE_TEAM = 56,
MOVE_GUST = 57,
MOVE_HARDEN = 58,
MOVE_DISABLE = 59,
MOVE_RAZOR_WIND = 60,
MOVE_BIDE = 61,
MOVE_CRUNCH = 62,
MOVE_BITE = 63,
MOVE_THUNDER = 64,
MOVE_THUNDERPUNCH = 65,
MOVE_ENDEAVOR = 66,
MOVE_FACADE = 67,
MOVE_KARATE_CHOP = 68,
MOVE_CLAMP = 69,
MOVE_WITHDRAW = 70,
MOVE_CONSTRICT = 71,
MOVE_BRICK_BREAK = 72,
MOVE_ROCK_TOMB = 73,
MOVE_FOCUS_ENERGY = 74,
MOVE_FOCUS_PUNCH = 75,
MOVE_GIGA_DRAIN = 76,
MOVE_REVERSAL = 77,
MOVE_SMELLINGSALT = 78,
MOVE_SPORE = 79,
MOVE_LEECH_LIFE = 80,
MOVE_SLASH = 81,
MOVE_SILVER_WIND = 82,
MOVE_METAL_SOUND = 83,
MOVE_GRASSWHISTLE = 84,
MOVE_TICKLE = 85,
MOVE_SPIDER_WEB = 86,
MOVE_CRABHAMMER = 87,
MOVE_HAZE = 88,
MOVE_MEAN_LOOK = 89,
MOVE_CROSS_CHOP = 90,
MOVE_OUTRAGE = 91,
MOVE_LOW_KICK = 92,
MOVE_ANCIENTPOWER = 93,
MOVE_SYNTHESIS = 94,
MOVE_AGILITY = 95,
MOVE_RAPID_SPIN = 96,
MOVE_ICY_WIND = 97,
MOVE_MIND_READER = 98,
MOVE_COSMIC_POWER = 99,
MOVE_SKY_ATTACK = 100,
MOVE_POWDER_SNOW = 101,
MOVE_FOLLOW_ME = 102,
MOVE_METEOR_MASH = 103,
MOVE_ENDURE = 104,
MOVE_ROLLOUT = 105,
MOVE_SCARY_FACE = 106,
MOVE_PSYBEAM = 107,
MOVE_PSYWAVE = 108,
MOVE_PSYCHIC = 109,
MOVE_PSYCHO_BOOST = 110,
MOVE_HYPNOSIS = 111,
MOVE_UPROAR = 112,
MOVE_WATER_SPOUT = 113,
MOVE_SIGNAL_BEAM = 114,
MOVE_PSYCH_UP = 115,
MOVE_SUBMISSION = 116,
MOVE_RECOVER = 117,
MOVE_EARTHQUAKE = 118,
MOVE_NATURE_POWER = 119,
MOVE_LICK = 120,
MOVE_FLAIL = 121,
MOVE_TAIL_WHIP = 122,
MOVE_SELFDESTRUCT = 123,
MOVE_STUN_SPORE = 124,
MOVE_BIND = 125,
MOVE_SHADOW_PUNCH = 126,
MOVE_SHADOW_BALL = 127,
MOVE_CHARGE = 128,
MOVE_THUNDERBOLT = 129,
MOVE_MIST = 130,
MOVE_FISSURE = 131,
MOVE_EXTREMESPEED = 132,
MOVE_EXTRASENSORY = 133,
MOVE_SAFEGUARD = 134,
MOVE_ABSORB = 135,
MOVE_SKY_UPPERCUT = 136,
MOVE_SKILL_SWAP = 137,
MOVE_SKETCH = 138,
MOVE_HEADBUTT = 139,
MOVE_DOUBLE_EDGE = 140,
MOVE_SANDSTORM = 141,
MOVE_SAND_ATTACK = 142,
MOVE_SAND_TOMB = 143,
MOVE_SPARK = 144,
MOVE_SWIFT = 145,
MOVE_KINESIS = 146,
MOVE_SMOG = 147,
MOVE_GROWTH = 148,
MOVE_SACRED_FIRE = 149,
MOVE_SHEER_COLD = 150,
MOVE_SOLARBEAM = 151,
MOVE_SONICBOOM = 152,
MOVE_FLY = 153,
MOVE_TACKLE = 154,
MOVE_EXPLOSION = 155,
MOVE_DIVE = 156,
MOVE_FIRE_BLAST = 157,
MOVE_WATERFALL = 158,
MOVE_MUDDY_WATER = 159,
MOVE_STOCKPILE = 160,
MOVE_SLAM = 161,
MOVE_TWISTER = 162,
MOVE_BULLET_SEED = 163,
MOVE_TWINEEDLE = 164,
MOVE_SOFTBOILED = 165,
MOVE_EGG_BOMB = 166,
MOVE_FAINT_ATTACK = 167,
MOVE_BARRAGE = 168,
MOVE_MINIMIZE = 169,
MOVE_SEISMIC_TOSS = 170,
MOVE_SUPERSONIC = 171,
MOVE_TAUNT = 172,
MOVE_MOONLIGHT = 173,
MOVE_PECK = 174,
MOVE_ARM_THRUST = 175,
MOVE_HORN_ATTACK = 176,
MOVE_HORN_DRILL = 177,
MOVE_WING_ATTACK = 178,
MOVE_AERIAL_ACE = 179,
MOVE_ICICLE_SPEAR = 180,
MOVE_SWORDS_DANCE = 181,
MOVE_VINE_WHIP = 182,
MOVE_CONVERSION = 183,
MOVE_CONVERSION_2 = 184,
MOVE_HELPING_HAND = 185,
MOVE_IRON_DEFENSE = 186,
MOVE_TELEPORT = 187,
MOVE_THUNDERSHOCK = 188,
MOVE_SHOCK_WAVE = 189,
MOVE_QUICK_ATTACK = 190,
MOVE_SWEET_KISS = 191,
MOVE_THUNDER_WAVE = 192,
MOVE_ZAP_CANNON = 193,
MOVE_BLOCK = 194,
MOVE_HOWL = 195,
MOVE_POISON_GAS = 196,
MOVE_TOXIC = 197,
MOVE_POISON_FANG = 198,
MOVE_POISONPOWDER = 199,
MOVE_POISON_STING = 200,
MOVE_SPIKE_CANNON = 201,
MOVE_ACID_ARMOR = 202,
MOVE_TAKE_DOWN = 203,
MOVE_JUMP_KICK = 204,
MOVE_BOUNCE = 205,
MOVE_HI_JUMP_KICK = 206,
MOVE_TRI_ATTACK = 207,
MOVE_DRAGON_CLAW = 208,
MOVE_TRICK = 209,
MOVE_TRIPLE_KICK = 210,
MOVE_DRILL_PECK = 211,
MOVE_MUD_SPORT = 212,
MOVE_MUD_SLAP = 213,
MOVE_THIEF = 214,
MOVE_AMNESIA = 215,
MOVE_NIGHT_SHADE = 216,
MOVE_GROWL = 217,
MOVE_SLACK_OFF = 218,
MOVE_SURF = 219,
MOVE_ROLE_PLAY = 220,
MOVE_NEEDLE_ARM = 221,
MOVE_DOUBLE_KICK = 222,
MOVE_SUNNY_DAY = 223,
MOVE_LEER = 224,
MOVE_WISH = 225,
MOVE_FAKE_OUT = 226,
MOVE_SLEEP_TALK = 227,
MOVE_PAY_DAY = 228,
MOVE_ASSIST = 229,
MOVE_HEAT_WAVE = 230,
MOVE_SLEEP_POWDER = 231,
MOVE_REST = 232,
MOVE_INGRAIN = 233,
MOVE_CONFUSION = 234,
MOVE_BODY_SLAM = 235,
MOVE_SWALLOW = 236,
MOVE_CURSE = 237,
MOVE_FRENZY_PLANT = 238,
MOVE_HYDRO_CANNON = 239,
MOVE_HYDRO_PUMP = 240,
MOVE_HYPER_VOICE = 241,
MOVE_HYPER_BEAM = 242,
MOVE_SUPERPOWER = 243,
MOVE_STEEL_WING = 244,
MOVE_SPIT_UP = 245,
MOVE_DYNAMICPUNCH = 246,
MOVE_GUILLOTINE = 247,
MOVE_VICEGRIP = 248,
MOVE_KNOCK_OFF = 249,
MOVE_POUND = 250,
MOVE_RAZOR_LEAF = 251,
MOVE_BATON_PASS = 252,
MOVE_PETAL_DANCE = 253,
MOVE_SPLASH = 254,
MOVE_BUBBLEBEAM = 255,
MOVE_DOOM_DESIRE = 256,
MOVE_BELLY_DRUM = 257,
MOVE_BARRIER = 258,
MOVE_LIGHT_SCREEN = 259,
MOVE_SCRATCH = 260,
MOVE_HYPER_FANG = 261,
MOVE_EMBER = 262,
MOVE_SECRET_POWER = 263,
MOVE_DIZZY_PUNCH = 264,
MOVE_BULK_UP = 265,
MOVE_IMPRISON = 266,
MOVE_FEATHERDANCE = 267,
MOVE_WHIRLWIND = 268,
MOVE_BEAT_UP = 269,
MOVE_BLIZZARD = 270,
MOVE_STOMP = 271,
MOVE_BLAST_BURN = 272,
MOVE_FLASH = 273,
MOVE_TEETER_DANCE = 274,
MOVE_CRUSH_CLAW = 275,
MOVE_BLAZE_KICK = 276,
MOVE_PRESENT = 277,
MOVE_ERUPTION = 278,
MOVE_SLUDGE = 279,
MOVE_SLUDGE_BOMB = 280,
MOVE_GLARE = 281,
MOVE_TRANSFORM = 282,
MOVE_POISON_TAIL = 283,
MOVE_ROAR = 284,
MOVE_BONE_RUSH = 285,
MOVE_CAMOUFLAGE = 286,
MOVE_COVET = 287,
MOVE_TAIL_GLOW = 288,
MOVE_BONE_CLUB = 289,
MOVE_BONEMERANG = 290,
MOVE_FIRE_SPIN = 291,
MOVE_FIRE_PUNCH = 292,
MOVE_PERISH_SONG = 293,
MOVE_WRAP = 294,
MOVE_SPIKES = 295,
MOVE_MAGNITUDE = 296,
MOVE_MAGICAL_LEAF = 297,
MOVE_MAGIC_COAT = 298,
MOVE_MUD_SHOT = 299,
MOVE_MACH_PUNCH = 300,
MOVE_PROTECT = 301,
MOVE_DEFENSE_CURL = 302,
MOVE_ROLLING_KICK = 303,
MOVE_SUBSTITUTE = 304,
MOVE_DETECT = 305,
MOVE_PIN_MISSILE = 306,
MOVE_WATER_SPORT = 307,
MOVE_WATER_GUN = 308,
MOVE_MIST_BALL = 309,
MOVE_WATER_PULSE = 310,
MOVE_FURY_ATTACK = 311,
MOVE_FURY_SWIPES = 312,
MOVE_DESTINY_BOND = 313,
MOVE_FALSE_SWIPE = 314,
MOVE_FORESIGHT = 315,
MOVE_MIRROR_COAT = 316,
MOVE_FUTURE_SIGHT = 317,
MOVE_MILK_DRINK = 318,
MOVE_CALM_MIND = 319,
MOVE_MEGA_DRAIN = 320,
MOVE_MEGA_KICK = 321,
MOVE_MEGA_PUNCH = 322,
MOVE_MEGAHORN = 323,
MOVE_HIDDEN_POWER = 324,
MOVE_METAL_CLAW = 325,
MOVE_ATTRACT = 326,
MOVE_MIMIC = 327,
MOVE_FRUSTRATION = 328,
MOVE_LEECH_SEED = 329,
MOVE_METRONOME = 330,
MOVE_DREAM_EATER = 331,
MOVE_ACID = 332,
MOVE_MEDITATE = 333,
MOVE_SNATCH = 334,
MOVE_LUSTER_PURGE = 335,
MOVE_LEAF_BLADE = 336,
MOVE_RECYCLE = 337,
MOVE_REFLECT = 338,
MOVE_REFRESH = 339,
MOVE_REVENGE = 340,
MOVE_DRAGON_RAGE = 341,
MOVE_DRAGONBREATH = 342,
MOVE_DRAGON_DANCE = 343,
MOVE_ICE_PUNCH = 344,
MOVE_ICE_BEAM = 345,
MOVE_FURY_CUTTER = 346,
MOVE_COMET_PUNCH = 347,
MOVE_SKULL_BASH = 348,
MOVE_LOCK_ON = 349,
MOVE_ROCK_BLAST = 350,
MOVE_COTTON_SPORE = 351,
MOVE_STRUGGLE = 352,
MOVE_AEROBLAST = 353,
MOVE_VOLT_TACKLE = 354,
MOVE_REGULAR_ATTACK = 355,
MOVE_IS_WATCHING = 356,
MOVE_BIDE_UNLEASH = 357,
MOVE_REVENGE_UNLEASH = 358,
MOVE_AVALANCHE_UNLEASH = 359,
MOVE_WIDE_SLASH = 360,
MOVE_UNNAMED_0x169 = 361,
MOVE_UNNAMED_0x16A = 362,
MOVE_SEE_TRAP = 363,
MOVE_TAKEAWAY = 364,
MOVE_REBOUND = 365,
MOVE_BLOOP_SLASH = 366,
MOVE_SWITCHER = 367,
MOVE_BLOWBACK = 368,
MOVE_WARP = 369,
MOVE_TRANSFER = 370,
MOVE_SLOW_DOWN = 371,
MOVE_SPEED_BOOST = 372,
MOVE_SEARCHLIGHT = 373,
MOVE_PETRIFY = 374,
MOVE_STAY_AWAY = 375,
MOVE_POUNCE = 376,
MOVE_TRAWL = 377,
MOVE_CLEANSE = 378,
MOVE_OBSERVER = 379,
MOVE_DECOY_MAKER = 380,
MOVE_SIESTA = 381,
MOVE_TOTTER = 382,
MOVE_TWO_EDGE = 383,
MOVE_NO_MOVE = 384,
MOVE_ESCAPE = 385,
MOVE_SCAN = 386,
MOVE_POWER_EARS = 387,
MOVE_DROUGHT = 388,
MOVE_TRAP_BUSTER = 389,
MOVE_WILD_CALL = 390,
MOVE_INVISIFY = 391,
MOVE_ONE_SHOT = 392,
MOVE_HP_GAUGE = 393,
MOVE_VACUUM_CUT = 394,
MOVE_REVIVER = 395,
MOVE_SHOCKER = 396,
MOVE_ECHO = 397,
MOVE_FAMISH = 398,
MOVE_ONE_ROOM = 399,
MOVE_FILL_IN = 400,
MOVE_TRAPPER = 401,
MOVE_POSSESS = 402,
MOVE_ITEMIZE = 403,
MOVE_TAG_0x194 = 404,
MOVE_PROJECTILE = 405,
MOVE_HURL = 406,
MOVE_MOBILE = 407,
MOVE_ITEM_TOSS = 408,
MOVE_SEE_STAIRS = 409,
MOVE_LONG_TOSS = 410,
MOVE_TAG_0x19B = 411,
MOVE_PIERCE = 412,
MOVE_TAG_0x19D = 413,
MOVE_TAG_0x19E = 414,
MOVE_TAG_0x19F = 415,
MOVE_TAG_0x1A0 = 416,
MOVE_TAG_0x1A1 = 417,
MOVE_TAG_0x1A2 = 418,
MOVE_TAG_0x1A3 = 419,
MOVE_TAG_0x1A4 = 420,
MOVE_TAG_0x1A5 = 421,
MOVE_TAG_0x1A6 = 422,
MOVE_TAG_0x1A7 = 423,
MOVE_TAG_0x1A8 = 424,
MOVE_TAG_0x1A9 = 425,
MOVE_TAG_0x1AA = 426,
MOVE_TAG_0x1AB = 427,
MOVE_TAG_0x1AC = 428,
MOVE_TAG_0x1AD = 429,
MOVE_HAMMER_ARM = 430,
MOVE_IRON_HEAD = 431,
MOVE_AQUA_JET = 432,
MOVE_AQUA_TAIL = 433,
MOVE_AQUA_RING = 434,
MOVE_SPACIAL_REND = 435,
MOVE_DARK_PULSE = 436,
MOVE_OMINOUS_WIND = 437,
MOVE_GASTRO_ACID = 438,
MOVE_HEALING_WISH = 439,
MOVE_CLOSE_COMBAT = 440,
MOVE_WOOD_HAMMER = 441,
MOVE_AIR_SLASH = 442,
MOVE_ENERGY_BALL = 443,
MOVE_TAILWIND = 444,
MOVE_PUNISHMENT = 445,
MOVE_CHATTER = 446,
MOVE_LUCKY_CHANT = 447,
MOVE_GUARD_SWAP = 448,
MOVE_HEAL_ORDER = 449,
MOVE_HEAL_BLOCK = 450,
MOVE_SHADOW_SNEAK = 451,
MOVE_THUNDER_FANG = 452,
MOVE_ROCK_WRECKER = 453,
MOVE_FOCUS_BLAST = 454,
MOVE_GIGA_IMPACT = 455,
MOVE_DEFOG = 456,
MOVE_TRUMP_CARD = 457,
MOVE_GRASS_KNOT = 458,
MOVE_CROSS_POISON = 459,
MOVE_ATTACK_ORDER = 460,
MOVE_ICE_FANG = 461,
MOVE_ICE_SHARD = 462,
MOVE_PSYCHO_CUT = 463,
MOVE_PSYCHO_SHIFT = 464,
MOVE_ME_FIRST = 465,
MOVE_EMBARGO = 466,
MOVE_JUDGMENT = 467,
MOVE_SEED_FLARE = 468,
MOVE_BRINE = 469,
MOVE_X_SCISSOR = 470,
MOVE_NATURAL_GIFT = 471,
MOVE_PAYBACK = 472,
MOVE_ZEN_HEADBUTT = 473,
MOVE_WRING_OUT = 474,
MOVE_GYRO_BALL = 475,
MOVE_SHADOW_CLAW = 476,
MOVE_SHADOW_FORCE = 477,
MOVE_GRAVITY = 478,
MOVE_VACUUM_WAVE = 479,
MOVE_STEALTH_ROCK = 480,
MOVE_STONE_EDGE = 481,
MOVE_SWITCHEROO = 482,
MOVE_DARK_VOID = 483,
MOVE_EARTH_POWER = 484,
MOVE_GUNK_SHOT = 485,
MOVE_SEED_BOMB = 486,
MOVE_DOUBLE_HIT = 487,
MOVE_ASSURANCE = 488,
MOVE_CHARGE_BEAM = 489,
MOVE_PLUCK = 490,
MOVE_NIGHT_SLASH = 491,
MOVE_ACUPRESSURE = 492,
MOVE_MAGNET_RISE = 493,
MOVE_ROAR_OF_TIME = 494,
MOVE_POISON_JAB = 495,
MOVE_TOXIC_SPIKES = 496,
MOVE_LAST_RESORT = 497,
MOVE_DRAGON_RUSH = 498,
MOVE_TRICK_ROOM = 499,
MOVE_DRAIN_PUNCH = 500,
MOVE_MUD_BOMB = 501,
MOVE_U_TURN = 502,
MOVE_FLING = 503,
MOVE_WORRY_SEED = 504,
MOVE_CRUSH_GRIP = 505,
MOVE_HEART_SWAP = 506,
MOVE_FORCE_PALM = 507,
MOVE_AURA_SPHERE = 508,
MOVE_ROOST = 509,
MOVE_BULLET_PUNCH = 510,
MOVE_POWER_WHIP = 511,
MOVE_POWER_GEM = 512,
MOVE_POWER_SWAP = 513,
MOVE_POWER_TRICK = 514,
MOVE_SUCKER_PUNCH = 515,
MOVE_FEINT = 516,
MOVE_FLARE_BLITZ = 517,
MOVE_BRAVE_BIRD = 518,
MOVE_LAVA_PLUME = 519,
MOVE_DEFEND_ORDER = 520,
MOVE_DISCHARGE = 521,
MOVE_FIRE_FANG = 522,
MOVE_MAGNET_BOMB = 523,
MOVE_MAGMA_STORM = 524,
MOVE_COPYCAT = 525,
MOVE_LUNAR_DANCE = 526,
MOVE_MIRROR_SHOT = 527,
MOVE_MIRACLE_EYE = 528,
MOVE_BUG_BITE = 529,
MOVE_BUG_BUZZ = 530,
MOVE_WAKE_UP_SLAP = 531,
MOVE_METAL_BURST = 532,
MOVE_HEAD_SMASH = 533,
MOVE_CAPTIVATE = 534,
MOVE_AVALANCHE = 535,
MOVE_FLASH_CANNON = 536,
MOVE_LEAF_STORM = 537,
MOVE_DRACO_METEOR = 538,
MOVE_DRAGON_PULSE = 539,
MOVE_ROCK_POLISH = 540,
MOVE_ROCK_CLIMB = 541,
MOVE_NASTY_PLOT = 542,
MOVE_TAG_0x21F = 543,
MOVE_TAG_0x220 = 544,
MOVE_TAG_0x221 = 545,
MOVE_TAG_0x222 = 546,
MOVE_TAG_0x223 = 547,
MOVE_TAG_0x224 = 548,
MOVE_TAG_0x225 = 549,
MOVE_TAG_0x226 = 550,
MOVE_TAG_0x227 = 551,
MOVE_TAG_0x228 = 552,
MOVE_TAG_0x229 = 553,
MOVE_TAG_0x22A = 554,
MOVE_TAG_0x22B = 555,
MOVE_TAG_0x22C = 556,
MOVE_TAG_0x22D = 557,
MOVE_TAG_0x22E = 558,
};
// Affects the chance of items spawning on each tile in a Kecleon Shop
// The chances (in %) of each tile (in a 3x3 area at the center of the shop)
// having an item are listed below.
enum shop_item_positions {
// 30 30 30
// 100 100 30
// 30 30 30
SHOP_POSITION_0 = 0,
// 30 30 30
// 100 30 30
// 30 100 30
SHOP_POSITION_1 = 1,
// 30 30 30
// 100 30 30
// 30 30 100
SHOP_POSITION_2 = 2,
// 100 30 30
// 30 30 100
// 30 30 30
SHOP_POSITION_3 = 3,
// 100 30 100
// 30 30 30
// 30 30 30
SHOP_POSITION_4 = 4,
// 30 30 30
// 30 30 100
// 100 30 30
SHOP_POSITION_5 = 5,
// 30 30 30
// 100 30 100
// 30 30 30
// The rest of the entries all have the same layout
SHOP_POSITION_6 = 6,
SHOP_POSITION_7 = 7,
SHOP_POSITION_8 = 8,
SHOP_POSITION_9 = 9,
SHOP_POSITION_A = 10,
SHOP_POSITION_B = 11,
SHOP_POSITION_C = 12,
SHOP_POSITION_D = 13,
SHOP_POSITION_E = 14,
SHOP_POSITION_F = 15,
};
// Ability ID
enum ability_id {
ABILITY_UNKNOWN = 0,
ABILITY_STENCH = 1,
ABILITY_THICK_FAT = 2,
ABILITY_RAIN_DISH = 3,
ABILITY_DRIZZLE = 4,
ABILITY_ARENA_TRAP = 5,
ABILITY_INTIMIDATE = 6,
ABILITY_ROCK_HEAD = 7,
ABILITY_AIR_LOCK = 8,
ABILITY_HYPER_CUTTER = 9,
ABILITY_SHADOW_TAG = 10,
ABILITY_SPEED_BOOST = 11,
ABILITY_BATTLE_ARMOR = 12,
ABILITY_STURDY = 13,
ABILITY_SUCTION_CUPS = 14,
ABILITY_CLEAR_BODY = 15,
ABILITY_TORRENT = 16,
ABILITY_GUTS = 17,
ABILITY_ROUGH_SKIN = 18,
ABILITY_SHELL_ARMOR = 19,
ABILITY_NATURAL_CURE = 20,
ABILITY_DAMP = 21,
ABILITY_LIMBER = 22,
ABILITY_MAGNET_PULL = 23,
ABILITY_WHITE_SMOKE = 24,
ABILITY_SYNCHRONIZE = 25,
ABILITY_OVERGROW = 26,
ABILITY_SWIFT_SWIM = 27,
ABILITY_SAND_STREAM = 28,
ABILITY_SAND_VEIL = 29,
ABILITY_KEEN_EYE = 30,
ABILITY_INNER_FOCUS = 31,
ABILITY_STATIC = 32,
ABILITY_SHED_SKIN = 33,
ABILITY_HUGE_POWER = 34,
ABILITY_VOLT_ABSORB = 35,
ABILITY_WATER_ABSORB = 36,
ABILITY_FORECAST = 37,
ABILITY_SERENE_GRACE = 38,
ABILITY_POISON_POINT = 39,
ABILITY_TRACE = 40,
ABILITY_OBLIVIOUS = 41,
ABILITY_TRUANT = 42,
ABILITY_RUN_AWAY = 43,
ABILITY_STICKY_HOLD = 44,
ABILITY_CLOUD_NINE = 45,
ABILITY_ILLUMINATE = 46,
ABILITY_EARLY_BIRD = 47,
ABILITY_HUSTLE = 48,
ABILITY_DROUGHT = 49,
ABILITY_LIGHTNINGROD = 50,
ABILITY_COMPOUNDEYES = 51,
ABILITY_MARVEL_SCALE = 52,
ABILITY_WONDER_GUARD = 53,
ABILITY_INSOMNIA = 54,
ABILITY_LEVITATE = 55,
ABILITY_PLUS = 56,
ABILITY_PRESSURE = 57,
ABILITY_LIQUID_OOZE = 58,
ABILITY_COLOR_CHANGE = 59,
ABILITY_SOUNDPROOF = 60,
ABILITY_EFFECT_SPORE = 61,
ABILITY_FLAME_BODY = 62,
ABILITY_MINUS = 63,
ABILITY_OWN_TEMPO = 64,
ABILITY_MAGMA_ARMOR = 65,
ABILITY_WATER_VEIL = 66,
ABILITY_SWARM = 67,
ABILITY_CUTE_CHARM = 68,
ABILITY_IMMUNITY = 69,
ABILITY_BLAZE = 70,
ABILITY_PICKUP = 71,
ABILITY_FLASH_FIRE = 72,
ABILITY_VITAL_SPIRIT = 73,
ABILITY_CHLOROPHYLL = 74,
ABILITY_PURE_POWER = 75,
ABILITY_SHIELD_DUST = 76,
ABILITY_ICE_BODY = 77,
ABILITY_STALL = 78,
ABILITY_ANGER_POINT = 79,
ABILITY_TINTED_LENS = 80,
ABILITY_HYDRATION = 81,
ABILITY_FRISK = 82,
ABILITY_MOLD_BREAKER = 83,
ABILITY_UNBURDEN = 84,
ABILITY_DRY_SKIN = 85,
ABILITY_ANTICIPATION = 86,
ABILITY_SCRAPPY = 87,
ABILITY_SUPER_LUCK = 88,
ABILITY_GLUTTONY = 89,
ABILITY_SOLAR_POWER = 90,
ABILITY_SKILL_LINK = 91,
ABILITY_RECKLESS = 92,
ABILITY_SNIPER = 93,
ABILITY_SLOW_START = 94,
ABILITY_HEATPROOF = 95,
ABILITY_DOWNLOAD = 96,
ABILITY_SIMPLE = 97,
ABILITY_TANGLED_FEET = 98,
ABILITY_ADAPTABILITY = 99,
ABILITY_TECHNICIAN = 100,
ABILITY_IRON_FIST = 101,
ABILITY_MOTOR_DRIVE = 102,
ABILITY_UNAWARE = 103,
ABILITY_RIVALRY = 104,
ABILITY_BAD_DREAMS = 105,
ABILITY_NO_GUARD = 106,
ABILITY_NORMALIZE = 107,
ABILITY_SOLID_ROCK = 108,
ABILITY_QUICK_FEET = 109,
ABILITY_FILTER = 110,
ABILITY_KLUTZ = 111,
ABILITY_STEADFAST = 112,
ABILITY_FLOWER_GIFT = 113,
ABILITY_POISON_HEAL = 114,
ABILITY_MAGIC_GUARD = 115,
ABILITY_MULTITYPE = 116, // Named "$$$" in game in NA/EU
ABILITY_HONEY_GATHER = 117,
ABILITY_AFTERMATH = 118,
ABILITY_SNOW_CLOAK = 119,
ABILITY_SNOW_WARNING = 120,
ABILITY_FOREWARN = 121,
ABILITY_STORM_DRAIN = 122,
ABILITY_LEAF_GUARD = 123,
};
// Dungeon ID.
// Each "section" of what we would normally consider "one dungeon" has its own ID. Many of the
// later dungeon IDs are not actual dungeons, and are used for the "Joined at" field for teammates
enum dungeon_id {
DUNGEON_TEST_DUNGEON = 0,
DUNGEON_BEACH_CAVE = 1,
DUNGEON_BEACH_CAVE_PIT = 2,
DUNGEON_DRENCHED_BLUFF = 3,
DUNGEON_MT_BRISTLE = 4,
DUNGEON_MT_BRISTLE_PEAK = 5,
DUNGEON_WATERFALL_CAVE = 6,
DUNGEON_APPLE_WOODS = 7,
DUNGEON_CRAGGY_COAST = 8,
DUNGEON_SIDE_PATH = 9,
DUNGEON_MT_HORN = 10,
DUNGEON_ROCK_PATH = 11,
DUNGEON_FOGGY_FOREST = 12,
DUNGEON_FOREST_PATH = 13,
DUNGEON_STEAM_CAVE = 14,
DUNGEON_UPPER_STEAM_CAVE = 15,
DUNGEON_STEAM_CAVE_PEAK = 16,
DUNGEON_AMP_PLAINS = 17,
DUNGEON_FAR_AMP_PLAINS = 18,
DUNGEON_AMP_CLEARING = 19,
DUNGEON_NORTHERN_DESERT = 20,
DUNGEON_QUICKSAND_CAVE = 21,
DUNGEON_QUICKSAND_PIT = 22,
DUNGEON_UNDERGROUND_LAKE = 23,
DUNGEON_CRYSTAL_CAVE = 24,
DUNGEON_CRYSTAL_CROSSING = 25,
DUNGEON_CRYSTAL_LAKE = 26,
DUNGEON_CHASM_CAVE = 27,
DUNGEON_DARK_HILL = 28,
DUNGEON_SEALED_RUIN = 29,
DUNGEON_DEEP_SEALED_RUIN = 30,
DUNGEON_SEALED_RUIN_PIT = 31,
DUNGEON_DUSK_FOREST = 32,
DUNGEON_DEEP_DUSK_FOREST = 33,
DUNGEON_TREESHROUD_FOREST = 34,
DUNGEON_BRINE_CAVE = 35,
DUNGEON_LOWER_BRINE_CAVE = 36,
DUNGEON_BRINE_CAVE_PIT = 37,
DUNGEON_HIDDEN_LAND = 38,
DUNGEON_HIDDEN_HIGHLAND = 39,
DUNGEON_OLD_RUINS = 40,
DUNGEON_TEMPORAL_TOWER = 41,
DUNGEON_TEMPORAL_SPIRE = 42,
DUNGEON_TEMPORAL_PINNACLE = 43,
DUNGEON_MYSTIFYING_FOREST = 44,
DUNGEON_MYSTIFYING_FOREST_CLEARING = 45,
DUNGEON_BLIZZARD_ISLAND = 46,
DUNGEON_CREVICE_CAVE = 47,
DUNGEON_LOWER_CREVICE_CAVE = 48,
DUNGEON_CREVICE_CAVE_PIT = 49,
DUNGEON_SURROUNDED_SEA = 50,
DUNGEON_MIRACLE_SEA = 51,
DUNGEON_DEEP_MIRACLE_SEA = 52,
DUNGEON_MIRACLE_SEABED = 53,
DUNGEON_ICE_AEGIS_CAVE = 54,
DUNGEON_REGICE_CHAMBER = 55,
DUNGEON_ROCK_AEGIS_CAVE = 56,
DUNGEON_REGIROCK_CHAMBER = 57,
DUNGEON_STEEL_AEGIS_CAVE = 58,
DUNGEON_REGISTEEL_CHAMBER = 59,
DUNGEON_AEGIS_CAVE_PIT = 60,
DUNGEON_REGIGIGAS_CHAMBER = 61,
DUNGEON_MT_TRAVAIL = 62,
DUNGEON_THE_NIGHTMARE = 63,
DUNGEON_SPACIAL_RIFT = 64,
DUNGEON_DEEP_SPACIAL_RIFT = 65,
DUNGEON_SPACIAL_RIFT_BOTTOM = 66,
DUNGEON_DARK_CRATER = 67,
DUNGEON_DEEP_DARK_CRATER = 68,
DUNGEON_DARK_CRATER_PIT = 69,
DUNGEON_CONCEALED_RUINS = 70,
DUNGEON_DEEP_CONCEALED_RUINS = 71,
DUNGEON_MARINE_RESORT = 72,
DUNGEON_BOTTOMLESS_SEA = 73,
DUNGEON_BOTTOMLESS_SEA_DEPTHS = 74,
DUNGEON_SHIMMER_DESERT = 75,
DUNGEON_SHIMMER_DESERT_PIT = 76,
DUNGEON_MT_AVALANCHE = 77,
DUNGEON_MT_AVALANCHE_PEAK = 78,
DUNGEON_GIANT_VOLCANO = 79,
DUNGEON_GIANT_VOLCANO_PEAK = 80,
DUNGEON_WORLD_ABYSS = 81,
DUNGEON_WORLD_ABYSS_PIT = 82,
DUNGEON_SKY_STAIRWAY = 83,
DUNGEON_SKY_STAIRWAY_APEX = 84,
DUNGEON_MYSTERY_JUNGLE = 85,
DUNGEON_DEEP_MYSTERY_JUNGLE = 86,
DUNGEON_SERENITY_RIVER = 87,
DUNGEON_LANDSLIDE_CAVE = 88,
DUNGEON_LUSH_PRAIRIE = 89,
DUNGEON_TINY_MEADOW = 90,
DUNGEON_LABYRINTH_CAVE = 91,
DUNGEON_ORAN_FOREST = 92,
DUNGEON_LAKE_AFAR = 93,
DUNGEON_HAPPY_OUTLOOK = 94,
DUNGEON_MY_MISTRAL = 95,
DUNGEON_SHIMMER_HILL = 96,
DUNGEON_LOST_WILDERNESS = 97,
DUNGEON_MIDNIGHT_FOREST = 98,
DUNGEON_ZERO_ISLE_NORTH = 99,
DUNGEON_ZERO_ISLE_EAST = 100,
DUNGEON_ZERO_ISLE_WEST = 101,
DUNGEON_ZERO_ISLE_SOUTH = 102,
DUNGEON_ZERO_ISLE_CENTER = 103,
DUNGEON_DESTINY_TOWER = 104,
DUNGEON_DUMMY_0x69 = 105,
DUNGEON_DUMMY_0x6A = 106,
DUNGEON_OBLIVION_FOREST = 107,
DUNGEON_TREACHEROUS_WATERS = 108,
DUNGEON_SOUTHEASTERN_ISLANDS = 109,
DUNGEON_INFERNO_CAVE = 110,
DUNGEON_1ST_STATION_PASS = 111,
DUNGEON_2ND_STATION_PASS = 112,
DUNGEON_3RD_STATION_PASS = 113,
DUNGEON_4TH_STATION_PASS = 114,
DUNGEON_5TH_STATION_PASS = 115,
DUNGEON_6TH_STATION_PASS = 116,
DUNGEON_7TH_STATION_PASS = 117,
DUNGEON_8TH_STATION_PASS = 118,
DUNGEON_9TH_STATION_PASS = 119,
DUNGEON_SKY_PEAK_SUMMIT_PASS = 120,
DUNGEON_5TH_STATION_CLEARING = 121,
DUNGEON_SKY_PEAK_SUMMIT = 122,
DUNGEON_STAR_CAVE_SE1 = 123,
DUNGEON_DEEP_STAR_CAVE = 124,
DUNGEON_DEEP_STAR_CAVE_TEAM_ROGUE = 125,
DUNGEON_STAR_CAVE_DEPTHS = 126,
DUNGEON_STAR_CAVE_PIT = 127,
DUNGEON_MURKY_FOREST = 128,
DUNGEON_EASTERN_CAVE = 129,
DUNGEON_FORTUNE_RAVINE = 130,
DUNGEON_FORTUNE_RAVINE_DEPTHS = 131,
DUNGEON_FORTUNE_RAVINE_PIT = 132,
DUNGEON_BARREN_VALLEY = 133,
DUNGEON_DEEP_BARREN_VALLEY = 134,
DUNGEON_BARREN_VALLEY_CLEARING = 135,
DUNGEON_DARK_WASTELAND = 136,
DUNGEON_TEMPORAL_TOWER_SE5 = 137,
DUNGEON_TEMPORAL_SPIRE_SE5 = 138,
DUNGEON_DUSK_FOREST_SE5 = 139,
DUNGEON_BLACK_SWAMP = 140,
DUNGEON_SPACIAL_CLIFFS = 141,
DUNGEON_DARK_ICE_MOUNTAIN = 142,
DUNGEON_DARK_ICE_MOUNTAIN_PEAK = 143,
DUNGEON_DARK_ICE_MOUNTAIN_PINNACLE = 144,
DUNGEON_ICICLE_FOREST = 145,
DUNGEON_VAST_ICE_MOUNTAIN = 146,
DUNGEON_VAST_ICE_MOUNTAIN_PEAK = 147,
DUNGEON_VAST_ICE_MOUNTAIN_PINNACLE = 148,
DUNGEON_SOUTHERN_JUNGLE = 149,
DUNGEON_BOULDER_QUARRY = 150,
DUNGEON_DEEP_BOULDER_QUARRY = 151,
DUNGEON_BOULDER_QUARRY_CLEARING = 152,
DUNGEON_RIGHT_CAVE_PATH = 153,
DUNGEON_LEFT_CAVE_PATH = 154,
DUNGEON_LIMESTONE_CAVERN = 155,
DUNGEON_DEEP_LIMESTONE_CAVERN = 156,
DUNGEON_LIMESTONE_CAVERN_DEPTHS = 157,
DUNGEON_SPRING_CAVE = 158,
DUNGEON_UPPER_SPRING_CAVE_HAUNTER = 159,
DUNGEON_UPPER_SPRING_CAVE = 160,
DUNGEON_MIDDLE_SPRING_CAVE = 161,
DUNGEON_LOWER_SPRING_CAVE = 162,
DUNGEON_SPRING_CAVE_DEPTHS = 163,
DUNGEON_SPRING_CAVE_PIT = 164,
DUNGEON_LITTLE_PLAINS = 165,
DUNGEON_MT_CLEAR = 166,
DUNGEON_CHALLENGE_RIVER = 167,
DUNGEON_TRIAL_FOREST = 168,
DUNGEON_GUIDING_SEA = 169,
DUNGEON_HIDDEN_SHOPKEEPER_VILLAGE = 170,
DUNGEON_DUMMY_0xAB = 171,
DUNGEON_DUMMY_0xAC = 172,
DUNGEON_DUMMY_0xAD = 173,
DUNGEON_STAR_CAVE = 174,
DUNGEON_SHAYMIN_VILLAGE = 175,
DUNGEON_ARMALDOS_SHELTER = 176,
DUNGEON_LUMINOUS_SPRING = 177,
DUNGEON_HOT_SPRING = 178,
DUNGEON_RESCUE = 179,
DUNGEON_NORMAL_FLY_MAZE = 180,
DUNGEON_DARK_FIRE_MAZE = 181,
DUNGEON_ROCK_WATER_MAZE = 182,
DUNGEON_GRASS_MAZE = 183,
DUNGEON_ELEC_STEEL_MAZE = 184,
DUNGEON_ICE_GROUND_MAZE = 185,
DUNGEON_FIGHT_PSYCH_MAZE = 186,
DUNGEON_POISON_BUG_MAZE = 187,
DUNGEON_DRAGON_MAZE = 188,
DUNGEON_GHOST_MAZE = 189,
DUNGEON_EXPLORER_MAZE = 190,
DUNGEON_FINAL_MAZE = 191,
DUNGEON_DOJO_0xC0 = 192,
DUNGEON_DOJO_0xC1 = 193,
DUNGEON_DOJO_0xC2 = 194,
DUNGEON_DOJO_0xC3 = 195,
DUNGEON_DOJO_0xC4 = 196,
DUNGEON_DOJO_0xC5 = 197,
DUNGEON_DOJO_0xC6 = 198,
DUNGEON_DOJO_0xC7 = 199,
DUNGEON_DOJO_0xC8 = 200,
DUNGEON_DOJO_0xC9 = 201,
DUNGEON_DOJO_0xCA = 202,
DUNGEON_DOJO_0xCB = 203,
DUNGEON_DOJO_0xCC = 204,
DUNGEON_DOJO_0xCD = 205,
DUNGEON_DOJO_0xCE = 206,
DUNGEON_DOJO_0xCF = 207,
DUNGEON_DOJO_0xD0 = 208,
DUNGEON_DOJO_0xD1 = 209,
DUNGEON_DOJO_0xD2 = 210,
DUNGEON_DOJO_0xD3 = 211,
DUNGEON_RESCUE_DUNGEON = 212,
DUNGEON_BASE = 213,
DUNGEON_JOINED_AT_QUESTION_MARKS = 214, // Joined at ???
DUNGEON_BEACH = 215,
DUNGEON_JOINED_AT_UNKNOWN = 216,
DUNGEON_JOINED_AT_BIDOOF = 217,
DUNGEON_JOINED_AT_GROVYLE = 218,
DUNGEON_JOINED_AT_CELEBI = 219,
DUNGEON_JOINED_AT_CHATOT = 220,
DUNGEON_JOINED_AT_CRESSELIA = 221, // As a guest member during the story
DUNGEON_DUMMY_0xDE = 222,
DUNGEON_DUMMY_0xDF = 223,
DUNGEON_DUMMY_0xE0 = 224,
DUNGEON_DUMMY_0xE1 = 225,
DUNGEON_DUMMY_0xE2 = 226,
DUNGEON_DUMMY_0xE3 = 227,
DUNGEON_DUMMY_0xE4 = 228,
DUNGEON_DUMMY_0xE5 = 229,
DUNGEON_DUMMY_0xE6 = 230,
DUNGEON_DUMMY_0xE7 = 231,
DUNGEON_DUMMY_0xE8 = 232,
DUNGEON_DUMMY_0xE9 = 233,
DUNGEON_DUMMY_0xEA = 234,
DUNGEON_DUMMY_0xEB = 235,
DUNGEON_DUMMY_0xEC = 236,
DUNGEON_DUMMY_0xED = 237,
DUNGEON_DUMMY_0xEE = 238,
DUNGEON_DUMMY_0xEF = 239,
DUNGEON_DUMMY_0xF0 = 240,
DUNGEON_JOINED_AT_MANAPHY_RECRUITED = 241, // When recruited
DUNGEON_JOINED_AT_CRESSELIA_RECRUITED = 242, // When recruited
DUNGEON_JOINED_AT_SHAYMIN_LAND_RECRUITED = 243, // When recruited
DUNGEON_DUMMY_0xF4 = 244,
DUNGEON_DUMMY_0xF5 = 245,
DUNGEON_DUMMY_0xF6 = 246,
DUNGEON_TREASURE_TOWN_0xF7 = 247,
DUNGEON_TREASURE_TOWN_0xF8 = 248,
DUNGEON_OUTSIDE = 249,
DUNGEON_CLIENT = 250,
DUNGEON_DUMMY_0xFB = 251,
DUNGEON_DUMMY_0xFC = 252,
DUNGEON_DUMMY_0xFD = 253,
DUNGEON_DUMMY_0xFE = 254,
DUNGEON_DUMMY_0xFF = 255,
};
// Dungeon group ID.
// This is more in line with what we would think of as a "whole dungeon".
// A single dungeon group might encompass multiple dungeon IDs.
enum dungeon_group_id {
DGROUP_TEST_DUNGEON = 0,
DGROUP_BEACH_CAVE = 1,
DGROUP_DRENCHED_BLUFF = 2,
DGROUP_MT_BRISTLE = 3,
DGROUP_WATERFALL_CAVE = 4,
DGROUP_APPLE_WOODS = 5,
DGROUP_CRAGGY_COAST = 6,
DGROUP_SIDE_PATH = 7,
DGROUP_MT_HORN = 8,
DGROUP_ROCK_PATH = 9,
DGROUP_FOGGY_FOREST = 10,
DGROUP_FOREST_PATH = 11,
DGROUP_STEAM_CAVE = 12,
DGROUP_AMP_PLAINS = 13,
DGROUP_NORTHERN_DESERT = 14,
DGROUP_QUICKSAND_CAVE = 15,
DGROUP_CRYSTAL_CAVE = 16,
DGROUP_CRYSTAL_CROSSING = 17,
DGROUP_CHASM_CAVE = 18,
DGROUP_DARK_HILL = 19,
DGROUP_SEALED_RUIN = 20,
DGROUP_DUSK_FOREST = 21,
DGROUP_DEEP_DUSK_FOREST = 22,
DGROUP_TREESHROUD_FOREST = 23,
DGROUP_BRINE_CAVE = 24,
DGROUP_HIDDEN_LAND = 25,
DGROUP_TEMPORAL_TOWER = 26,
DGROUP_MYSTIFYING_FOREST = 27,
DGROUP_MIDNIGHT_FOREST = 28,
DGROUP_LAKE_AFAR = 29,
DGROUP_MT_MISTRAL = 30,
DGROUP_SHIMMER_HILL = 31,
DGROUP_BOTTOMLESS_SEA = 32,
DGROUP_SURROUNDED_SEA = 33,
DGROUP_MIRACLE_SEA = 34,
DGROUP_CONCEALED_RUINS = 35,
DGROUP_LOST_WILDERNESS = 36,
DGROUP_MYSTERY_JUNGLE = 37,
DGROUP_HAPPY_OUTLOOK = 38,
DGROUP_SERENITY_RIVER = 39,
DGROUP_LANDSLIDE_CAVE = 40,
DGROUP_BLIZZARD_ISLAND = 41,
DGROUP_SHIMMER_DESERT = 42,
DGROUP_CREVICE_CAVE = 43,
DGROUP_MT_AVALANCHE = 44,
DGROUP_GIANT_VOLCANO = 45,
DGROUP_WORLD_ABYSS = 46,
DGROUP_LUSH_PRAIRIE = 47,
DGROUP_TINY_MEADOW = 48,
DGROUP_LABYRINTH_CAVE = 49,
DGROUP_ORAN_FOREST = 50,
DGROUP_SKY_STAIRWAY = 51,
DGROUP_AEGIS_CAVE = 52,
DGROUP_MAROWAK_DOJO = 53,
DGROUP_DARK_CRATER = 54,
DGROUP_MARINE_RESORT = 55,
DGROUP_MT_TRAVAIL = 56,
DGROUP_THE_NIGHTMARE = 57,
DGROUP_SPACIAL_RIFT = 58,
DGROUP_ZERO_ISLE_NORTH = 59,
DGROUP_ZERO_ISLE_WEST = 60,
DGROUP_ZERO_ISLE_EAST = 61,
DGROUP_ZERO_ISLE_SOUTH = 62,
DGROUP_RESCUE = 63,
DGROUP_ZERO_ISLE_CENTER = 64,
DGROUP_DESTINY_TOWER = 65,
DGROUP_DUMMY_0x42 = 66,
DGROUP_DUMMY_0x43 = 67,
DGROUP_OBLIVION_FOREST = 68,
DGROUP_TREACHEROUS_WATERS = 69,
DGROUP_SOUTHEASTERN_ISLANDS = 70,
DGROUP_INFERNO_CAVE = 71,
DGROUP_SKY_PEAK = 72,
DGROUP_STAR_CAVE_SE1 = 73,
DGROUP_MURKY_FOREST = 74,
DGROUP_EASTERN_CAVE = 75,
DGROUP_FORTUNE_RAVINE = 76,
DGROUP_BARREN_VALLEY = 77,
DGROUP_DARK_WASTELAND = 78,
DGROUP_TEMPORAL_TOWER_SE5 = 79,
DGROUP_DUSK_FOREST_SE5 = 80,
DGROUP_SPACIAL_CLIFFS = 81,
DGROUP_DARK_ICE_MOUNTAIN = 82,
DGROUP_ICICLE_FOREST = 83,
DGROUP_VAST_ICE_MOUNTAIN = 84,
DGROUP_SOUTHERN_JUNGLE = 85,
DGROUP_BOULDER_QUARRY = 86,
DGROUP_RIGHT_CAVE_PATH = 87,
DGROUP_LEFT_CAVE_PATH = 88,
DGROUP_LIMESTONE_CAVERN = 89,
DGROUP_SPRING_CAVE = 90,
DGROUP_STAR_CAVE = 91,
DGROUP_LITTLE_PLAINS = 92,
DGROUP_MT_CLEAR = 93,
DGROUP_CHALLENGE_RIVER = 94,
DGROUP_TRIAL_FOREST = 95,
DGROUP_GUIDING_SEA = 96,
DGROUP_HIDDEN_SHOPKEEPER_VILLAGE = 97,
DGROUP_DUMMY_0x62 = 98,
DGROUP_DUMMY_0x63 = 99,
};
// Controls whether the loop that runs until the current floor ends should continue
// iterating or not and why
enum floor_loop_status {
FLOOR_LOOP_CONTINUE = 0, // The floor loop keeps executing as normal
FLOOR_LOOP_LEADER_FAINTED = 1, // The floor loop exits because the leader fainted
FLOOR_LOOP_NEXT_FLOOR = 2, // The floor loop exits because the floor is over
};
// Type IDx
enum type_id {
TYPE_NONE = 0,
TYPE_NORMAL = 1,
TYPE_FIRE = 2,
TYPE_WATER = 3,
TYPE_GRASS = 4,
TYPE_ELECTRIC = 5,
TYPE_ICE = 6,
TYPE_FIGHTING = 7,
TYPE_POISON = 8,
TYPE_GROUND = 9,
TYPE_FLYING = 10,
TYPE_PSYCHIC = 11,
TYPE_BUG = 12,
TYPE_ROCK = 13,
TYPE_GHOST = 14,
TYPE_DRAGON = 15,
TYPE_DARK = 16,
TYPE_STEEL = 17,
TYPE_NEUTRAL = 18,
};
// Modes related to shopkeeper behavior
enum shopkeeper_mode {
SHOPKEEPER_MODE_NORMAL = 0,
SHOPKEEPER_MODE_SHOPKEEPER = 1,
SHOPKEEPER_MODE_ATTACK_ENEMIES = 2,
SHOPKEEPER_MODE_ATTACK_TEAM = 3,
};
#define MONSTER_GENDER_ID_OFFSET 600
// Some macro shenanigans to define the monster secondary gender labels neatly.
#define _MONSTER_ID_GENDERED(name, base_value) \
MONSTER_##name = base_value, MONSTER_##name##_SECONDARY = base_value + MONSTER_GENDER_ID_OFFSET
// Monster ID. Add 600 to the base value to get secondary genders (typically female).
enum monster_id {
_MONSTER_ID_GENDERED(NONE, 0),
_MONSTER_ID_GENDERED(BULBASAUR, 1),
_MONSTER_ID_GENDERED(IVYSAUR, 2),
_MONSTER_ID_GENDERED(VENUSAUR, 3),
_MONSTER_ID_GENDERED(CHARMANDER, 4),
_MONSTER_ID_GENDERED(CHARMELEON, 5),
_MONSTER_ID_GENDERED(CHARIZARD, 6),
_MONSTER_ID_GENDERED(SQUIRTLE, 7),
_MONSTER_ID_GENDERED(WARTORTLE, 8),
_MONSTER_ID_GENDERED(BLASTOISE, 9),
_MONSTER_ID_GENDERED(CATERPIE, 10),
_MONSTER_ID_GENDERED(METAPOD, 11),
_MONSTER_ID_GENDERED(BUTTERFREE, 12),
_MONSTER_ID_GENDERED(WEEDLE, 13),
_MONSTER_ID_GENDERED(KAKUNA, 14),
_MONSTER_ID_GENDERED(BEEDRILL, 15),
_MONSTER_ID_GENDERED(PIDGEY, 16),
_MONSTER_ID_GENDERED(PIDGEOTTO, 17),
_MONSTER_ID_GENDERED(PIDGEOT, 18),
_MONSTER_ID_GENDERED(RATTATA, 19),
_MONSTER_ID_GENDERED(RATICATE, 20),
_MONSTER_ID_GENDERED(SPEAROW, 21),
_MONSTER_ID_GENDERED(FEAROW, 22),
_MONSTER_ID_GENDERED(EKANS, 23),
_MONSTER_ID_GENDERED(ARBOK, 24),
_MONSTER_ID_GENDERED(PIKACHU, 25),
_MONSTER_ID_GENDERED(RAICHU, 26),
_MONSTER_ID_GENDERED(SANDSHREW, 27),
_MONSTER_ID_GENDERED(SANDSLASH, 28),
_MONSTER_ID_GENDERED(NIDORAN_F, 29),
_MONSTER_ID_GENDERED(NIDORINA, 30),
_MONSTER_ID_GENDERED(NIDOQUEEN, 31),
_MONSTER_ID_GENDERED(NIDORAN_M, 32),
_MONSTER_ID_GENDERED(NIDORINO, 33),
_MONSTER_ID_GENDERED(NIDOKING, 34),
_MONSTER_ID_GENDERED(CLEFAIRY, 35),
_MONSTER_ID_GENDERED(CLEFABLE, 36),
_MONSTER_ID_GENDERED(VULPIX, 37),
_MONSTER_ID_GENDERED(NINETALES, 38),
_MONSTER_ID_GENDERED(JIGGLYPUFF, 39),
_MONSTER_ID_GENDERED(WIGGLYTUFF, 40),
_MONSTER_ID_GENDERED(ZUBAT, 41),
_MONSTER_ID_GENDERED(GOLBAT, 42),
_MONSTER_ID_GENDERED(ODDISH, 43),
_MONSTER_ID_GENDERED(GLOOM, 44),
_MONSTER_ID_GENDERED(VILEPLUME, 45),
_MONSTER_ID_GENDERED(PARAS, 46),
_MONSTER_ID_GENDERED(PARASECT, 47),
_MONSTER_ID_GENDERED(VENONAT, 48),
_MONSTER_ID_GENDERED(VENOMOTH, 49),
_MONSTER_ID_GENDERED(DIGLETT, 50),
_MONSTER_ID_GENDERED(DUGTRIO, 51),
_MONSTER_ID_GENDERED(MEOWTH, 52),
_MONSTER_ID_GENDERED(PERSIAN, 53),
_MONSTER_ID_GENDERED(PSYDUCK, 54),
_MONSTER_ID_GENDERED(GOLDUCK, 55),
_MONSTER_ID_GENDERED(MANKEY, 56),
_MONSTER_ID_GENDERED(PRIMEAPE, 57),
_MONSTER_ID_GENDERED(GROWLITHE, 58),
_MONSTER_ID_GENDERED(ARCANINE, 59),
_MONSTER_ID_GENDERED(POLIWAG, 60),
_MONSTER_ID_GENDERED(POLIWHIRL, 61),
_MONSTER_ID_GENDERED(POLIWRATH, 62),
_MONSTER_ID_GENDERED(ABRA, 63),
_MONSTER_ID_GENDERED(KADABRA, 64),
_MONSTER_ID_GENDERED(ALAKAZAM, 65),
_MONSTER_ID_GENDERED(MACHOP, 66),
_MONSTER_ID_GENDERED(MACHOKE, 67),
_MONSTER_ID_GENDERED(MACHAMP, 68),
_MONSTER_ID_GENDERED(BELLSPROUT, 69),
_MONSTER_ID_GENDERED(WEEPINBELL, 70),
_MONSTER_ID_GENDERED(VICTREEBEL, 71),
_MONSTER_ID_GENDERED(TENTACOOL, 72),
_MONSTER_ID_GENDERED(TENTACRUEL, 73),
_MONSTER_ID_GENDERED(GEODUDE, 74),
_MONSTER_ID_GENDERED(GRAVELER, 75),
_MONSTER_ID_GENDERED(GOLEM, 76),
_MONSTER_ID_GENDERED(PONYTA, 77),
_MONSTER_ID_GENDERED(RAPIDASH, 78),
_MONSTER_ID_GENDERED(SLOWPOKE, 79),
_MONSTER_ID_GENDERED(SLOWBRO, 80),
_MONSTER_ID_GENDERED(MAGNEMITE, 81),
_MONSTER_ID_GENDERED(MAGNETON, 82),
_MONSTER_ID_GENDERED(FARFETCHD, 83),
_MONSTER_ID_GENDERED(DODUO, 84),
_MONSTER_ID_GENDERED(DODRIO, 85),
_MONSTER_ID_GENDERED(SEEL, 86),
_MONSTER_ID_GENDERED(DEWGONG, 87),
_MONSTER_ID_GENDERED(GRIMER, 88),
_MONSTER_ID_GENDERED(MUK, 89),
_MONSTER_ID_GENDERED(SHELLDER, 90),
_MONSTER_ID_GENDERED(CLOYSTER, 91),
_MONSTER_ID_GENDERED(GASTLY, 92),
_MONSTER_ID_GENDERED(HAUNTER, 93),
_MONSTER_ID_GENDERED(GENGAR, 94),
_MONSTER_ID_GENDERED(ONIX, 95),
_MONSTER_ID_GENDERED(DROWZEE, 96),
_MONSTER_ID_GENDERED(HYPNO, 97),
_MONSTER_ID_GENDERED(KRABBY, 98),
_MONSTER_ID_GENDERED(KINGLER, 99),
_MONSTER_ID_GENDERED(VOLTORB, 100),
_MONSTER_ID_GENDERED(ELECTRODE, 101),
_MONSTER_ID_GENDERED(EXEGGCUTE, 102),
_MONSTER_ID_GENDERED(EXEGGUTOR, 103),
_MONSTER_ID_GENDERED(CUBONE, 104),
_MONSTER_ID_GENDERED(MAROWAK, 105),
_MONSTER_ID_GENDERED(HITMONLEE, 106),
_MONSTER_ID_GENDERED(HITMONCHAN, 107),
_MONSTER_ID_GENDERED(LICKITUNG, 108),
_MONSTER_ID_GENDERED(KOFFING, 109),
_MONSTER_ID_GENDERED(WEEZING, 110),
_MONSTER_ID_GENDERED(RHYHORN, 111),
_MONSTER_ID_GENDERED(RHYDON, 112),
_MONSTER_ID_GENDERED(CHANSEY, 113),
_MONSTER_ID_GENDERED(TANGELA, 114),
_MONSTER_ID_GENDERED(KANGASKHAN, 115),
_MONSTER_ID_GENDERED(HORSEA, 116),
_MONSTER_ID_GENDERED(SEADRA, 117),
_MONSTER_ID_GENDERED(GOLDEEN, 118),
_MONSTER_ID_GENDERED(SEAKING, 119),
_MONSTER_ID_GENDERED(STARYU, 120),
_MONSTER_ID_GENDERED(STARMIE, 121),
_MONSTER_ID_GENDERED(MR_MIME, 122),
_MONSTER_ID_GENDERED(SCYTHER, 123),
_MONSTER_ID_GENDERED(JYNX, 124),
_MONSTER_ID_GENDERED(ELECTABUZZ, 125),
_MONSTER_ID_GENDERED(MAGMAR, 126),
_MONSTER_ID_GENDERED(PINSIR, 127),
_MONSTER_ID_GENDERED(TAUROS, 128),
_MONSTER_ID_GENDERED(MAGIKARP, 129),
_MONSTER_ID_GENDERED(GYARADOS, 130),
_MONSTER_ID_GENDERED(LAPRAS, 131),
_MONSTER_ID_GENDERED(DITTO, 132),
_MONSTER_ID_GENDERED(EEVEE, 133),
_MONSTER_ID_GENDERED(VAPOREON, 134),
_MONSTER_ID_GENDERED(JOLTEON, 135),
_MONSTER_ID_GENDERED(FLAREON, 136),
_MONSTER_ID_GENDERED(PORYGON, 137),
_MONSTER_ID_GENDERED(OMANYTE, 138),
_MONSTER_ID_GENDERED(OMASTAR, 139),
_MONSTER_ID_GENDERED(KABUTO, 140),
_MONSTER_ID_GENDERED(KABUTOPS, 141),
_MONSTER_ID_GENDERED(AERODACTYL, 142),
_MONSTER_ID_GENDERED(SNORLAX, 143),
_MONSTER_ID_GENDERED(ARTICUNO, 144),
_MONSTER_ID_GENDERED(ZAPDOS, 145),
_MONSTER_ID_GENDERED(MOLTRES, 146),
_MONSTER_ID_GENDERED(DRATINI, 147),
_MONSTER_ID_GENDERED(DRAGONAIR, 148),
_MONSTER_ID_GENDERED(DRAGONITE, 149),
_MONSTER_ID_GENDERED(MEWTWO, 150),
_MONSTER_ID_GENDERED(MEW, 151),
_MONSTER_ID_GENDERED(CHIKORITA, 152),
_MONSTER_ID_GENDERED(BAYLEEF, 153),
_MONSTER_ID_GENDERED(MEGANIUM, 154),
_MONSTER_ID_GENDERED(CYNDAQUIL, 155),
_MONSTER_ID_GENDERED(QUILAVA, 156),
_MONSTER_ID_GENDERED(TYPHLOSION, 157),
_MONSTER_ID_GENDERED(TOTODILE, 158),
_MONSTER_ID_GENDERED(CROCONAW, 159),
_MONSTER_ID_GENDERED(FERALIGATR, 160),
_MONSTER_ID_GENDERED(SENTRET, 161),
_MONSTER_ID_GENDERED(FURRET, 162),
_MONSTER_ID_GENDERED(HOOTHOOT, 163),
_MONSTER_ID_GENDERED(NOCTOWL, 164),
_MONSTER_ID_GENDERED(LEDYBA, 165),
_MONSTER_ID_GENDERED(LEDIAN, 166),
_MONSTER_ID_GENDERED(SPINARAK, 167),
_MONSTER_ID_GENDERED(ARIADOS, 168),
_MONSTER_ID_GENDERED(CROBAT, 169),
_MONSTER_ID_GENDERED(CHINCHOU, 170),
_MONSTER_ID_GENDERED(LANTURN, 171),
_MONSTER_ID_GENDERED(PICHU, 172),
_MONSTER_ID_GENDERED(CLEFFA, 173),
_MONSTER_ID_GENDERED(IGGLYBUFF, 174),
_MONSTER_ID_GENDERED(TOGEPI, 175),
_MONSTER_ID_GENDERED(TOGETIC, 176),
_MONSTER_ID_GENDERED(NATU, 177),
_MONSTER_ID_GENDERED(XATU, 178),
_MONSTER_ID_GENDERED(MAREEP, 179),
_MONSTER_ID_GENDERED(FLAAFFY, 180),
_MONSTER_ID_GENDERED(AMPHAROS, 181),
_MONSTER_ID_GENDERED(BELLOSSOM, 182),
_MONSTER_ID_GENDERED(MARILL, 183),
_MONSTER_ID_GENDERED(AZUMARILL, 184),
_MONSTER_ID_GENDERED(SUDOWOODO, 185),
_MONSTER_ID_GENDERED(POLITOED, 186),
_MONSTER_ID_GENDERED(HOPPIP, 187),
_MONSTER_ID_GENDERED(SKIPLOOM, 188),
_MONSTER_ID_GENDERED(JUMPLUFF, 189),
_MONSTER_ID_GENDERED(AIPOM, 190),
_MONSTER_ID_GENDERED(SUNKERN, 191),
_MONSTER_ID_GENDERED(SUNFLORA, 192),
_MONSTER_ID_GENDERED(YANMA, 193),
_MONSTER_ID_GENDERED(WOOPER, 194),
_MONSTER_ID_GENDERED(QUAGSIRE, 195),
_MONSTER_ID_GENDERED(ESPEON, 196),
_MONSTER_ID_GENDERED(UMBREON, 197),
_MONSTER_ID_GENDERED(MURKROW, 198),
_MONSTER_ID_GENDERED(SLOWKING, 199),
_MONSTER_ID_GENDERED(MISDREAVUS, 200),
_MONSTER_ID_GENDERED(UNOWN_A, 201),
_MONSTER_ID_GENDERED(UNOWN_B, 202),
_MONSTER_ID_GENDERED(UNOWN_C, 203),
_MONSTER_ID_GENDERED(UNOWN_D, 204),
_MONSTER_ID_GENDERED(UNOWN_E, 205),
_MONSTER_ID_GENDERED(UNOWN_F, 206),
_MONSTER_ID_GENDERED(UNOWN_G, 207),
_MONSTER_ID_GENDERED(UNOWN_H, 208),
_MONSTER_ID_GENDERED(UNOWN_I, 209),
_MONSTER_ID_GENDERED(UNOWN_J, 210),
_MONSTER_ID_GENDERED(UNOWN_K, 211),
_MONSTER_ID_GENDERED(UNOWN_L, 212),
_MONSTER_ID_GENDERED(UNOWN_M, 213),
_MONSTER_ID_GENDERED(UNOWN_N, 214),
_MONSTER_ID_GENDERED(UNOWN_O, 215),
_MONSTER_ID_GENDERED(UNOWN_P, 216),
_MONSTER_ID_GENDERED(UNOWN_Q, 217),
_MONSTER_ID_GENDERED(UNOWN_R, 218),
_MONSTER_ID_GENDERED(UNOWN_S, 219),
_MONSTER_ID_GENDERED(UNOWN_T, 220),
_MONSTER_ID_GENDERED(UNOWN_U, 221),
_MONSTER_ID_GENDERED(UNOWN_V, 222),
_MONSTER_ID_GENDERED(UNOWN_W, 223),
_MONSTER_ID_GENDERED(UNOWN_X, 224),
_MONSTER_ID_GENDERED(UNOWN_Y, 225),
_MONSTER_ID_GENDERED(UNOWN_Z, 226),
_MONSTER_ID_GENDERED(UNOWN_EXCLAMATION, 227),
_MONSTER_ID_GENDERED(UNOWN_QUESTION, 228),
_MONSTER_ID_GENDERED(WOBBUFFET, 229),
_MONSTER_ID_GENDERED(GIRAFARIG, 230),
_MONSTER_ID_GENDERED(PINECO, 231),
_MONSTER_ID_GENDERED(FORRETRESS, 232),
_MONSTER_ID_GENDERED(DUNSPARCE, 233),
_MONSTER_ID_GENDERED(GLIGAR, 234),
_MONSTER_ID_GENDERED(STEELIX, 235),
_MONSTER_ID_GENDERED(SNUBBULL, 236),
_MONSTER_ID_GENDERED(GRANBULL, 237),
_MONSTER_ID_GENDERED(QWILFISH, 238),
_MONSTER_ID_GENDERED(SCIZOR, 239),
_MONSTER_ID_GENDERED(SHUCKLE, 240),
_MONSTER_ID_GENDERED(HERACROSS, 241),
_MONSTER_ID_GENDERED(SNEASEL, 242),
_MONSTER_ID_GENDERED(TEDDIURSA, 243),
_MONSTER_ID_GENDERED(URSARING, 244),
_MONSTER_ID_GENDERED(SLUGMA, 245),
_MONSTER_ID_GENDERED(MAGCARGO, 246),
_MONSTER_ID_GENDERED(SWINUB, 247),
_MONSTER_ID_GENDERED(PILOSWINE, 248),
_MONSTER_ID_GENDERED(CORSOLA, 249),
_MONSTER_ID_GENDERED(REMORAID, 250),
_MONSTER_ID_GENDERED(OCTILLERY, 251),
_MONSTER_ID_GENDERED(DELIBIRD, 252),
_MONSTER_ID_GENDERED(MANTINE, 253),
_MONSTER_ID_GENDERED(SKARMORY, 254),
_MONSTER_ID_GENDERED(HOUNDOUR, 255),
_MONSTER_ID_GENDERED(HOUNDOOM, 256),
_MONSTER_ID_GENDERED(KINGDRA, 257),
_MONSTER_ID_GENDERED(PHANPY, 258),
_MONSTER_ID_GENDERED(DONPHAN, 259),
_MONSTER_ID_GENDERED(PORYGON2, 260),
_MONSTER_ID_GENDERED(STANTLER, 261),
_MONSTER_ID_GENDERED(SMEARGLE, 262),
_MONSTER_ID_GENDERED(TYROGUE, 263),
_MONSTER_ID_GENDERED(HITMONTOP, 264),
_MONSTER_ID_GENDERED(SMOOCHUM, 265),
_MONSTER_ID_GENDERED(ELEKID, 266),
_MONSTER_ID_GENDERED(MAGBY, 267),
_MONSTER_ID_GENDERED(MILTANK, 268),
_MONSTER_ID_GENDERED(BLISSEY, 269),
_MONSTER_ID_GENDERED(RAIKOU, 270),
_MONSTER_ID_GENDERED(ENTEI, 271),
_MONSTER_ID_GENDERED(SUICUNE, 272),
_MONSTER_ID_GENDERED(LARVITAR, 273),
_MONSTER_ID_GENDERED(PUPITAR, 274),
_MONSTER_ID_GENDERED(TYRANITAR, 275),
_MONSTER_ID_GENDERED(LUGIA, 276),
_MONSTER_ID_GENDERED(HO_OH, 277),
_MONSTER_ID_GENDERED(CELEBI, 278),
_MONSTER_ID_GENDERED(SHINY_CELEBI, 279),
_MONSTER_ID_GENDERED(TREECKO, 280),
_MONSTER_ID_GENDERED(GROVYLE, 281),
_MONSTER_ID_GENDERED(SCEPTILE, 282),
_MONSTER_ID_GENDERED(TORCHIC, 283),
_MONSTER_ID_GENDERED(COMBUSKEN, 284),
_MONSTER_ID_GENDERED(BLAZIKEN, 285),
_MONSTER_ID_GENDERED(MUDKIP, 286),
_MONSTER_ID_GENDERED(MARSHTOMP, 287),
_MONSTER_ID_GENDERED(SWAMPERT, 288),
_MONSTER_ID_GENDERED(POOCHYENA, 289),
_MONSTER_ID_GENDERED(MIGHTYENA, 290),
_MONSTER_ID_GENDERED(ZIGZAGOON, 291),
_MONSTER_ID_GENDERED(LINOONE, 292),
_MONSTER_ID_GENDERED(WURMPLE, 293),
_MONSTER_ID_GENDERED(SILCOON, 294),
_MONSTER_ID_GENDERED(BEAUTIFLY, 295),
_MONSTER_ID_GENDERED(CASCOON, 296),
_MONSTER_ID_GENDERED(DUSTOX, 297),
_MONSTER_ID_GENDERED(LOTAD, 298),
_MONSTER_ID_GENDERED(LOMBRE, 299),
_MONSTER_ID_GENDERED(LUDICOLO, 300),
_MONSTER_ID_GENDERED(SEEDOT, 301),
_MONSTER_ID_GENDERED(NUZLEAF, 302),
_MONSTER_ID_GENDERED(SHIFTRY, 303),
_MONSTER_ID_GENDERED(TAILLOW, 304),
_MONSTER_ID_GENDERED(SWELLOW, 305),
_MONSTER_ID_GENDERED(WINGULL, 306),
_MONSTER_ID_GENDERED(PELIPPER, 307),
_MONSTER_ID_GENDERED(RALTS, 308),
_MONSTER_ID_GENDERED(KIRLIA, 309),
_MONSTER_ID_GENDERED(GARDEVOIR, 310),
_MONSTER_ID_GENDERED(SURSKIT, 311),
_MONSTER_ID_GENDERED(MASQUERAIN, 312),
_MONSTER_ID_GENDERED(SHROOMISH, 313),
_MONSTER_ID_GENDERED(BRELOOM, 314),
_MONSTER_ID_GENDERED(SLAKOTH, 315),
_MONSTER_ID_GENDERED(VIGOROTH, 316),
_MONSTER_ID_GENDERED(SLAKING, 317),
_MONSTER_ID_GENDERED(NINCADA, 318),
_MONSTER_ID_GENDERED(NINJASK, 319),
_MONSTER_ID_GENDERED(SHEDINJA, 320),
_MONSTER_ID_GENDERED(WHISMUR, 321),
_MONSTER_ID_GENDERED(LOUDRED, 322),
_MONSTER_ID_GENDERED(EXPLOUD, 323),
_MONSTER_ID_GENDERED(MAKUHITA, 324),
_MONSTER_ID_GENDERED(HARIYAMA, 325),
_MONSTER_ID_GENDERED(AZURILL, 326),
_MONSTER_ID_GENDERED(NOSEPASS, 327),
_MONSTER_ID_GENDERED(SKITTY, 328),
_MONSTER_ID_GENDERED(DELCATTY, 329),
_MONSTER_ID_GENDERED(SABLEYE, 330),
_MONSTER_ID_GENDERED(MAWILE, 331),
_MONSTER_ID_GENDERED(ARON, 332),
_MONSTER_ID_GENDERED(LAIRON, 333),
_MONSTER_ID_GENDERED(AGGRON, 334),
_MONSTER_ID_GENDERED(MEDITITE, 335),
_MONSTER_ID_GENDERED(MEDICHAM, 336),
_MONSTER_ID_GENDERED(ELECTRIKE, 337),
_MONSTER_ID_GENDERED(MANECTRIC, 338),
_MONSTER_ID_GENDERED(PLUSLE, 339),
_MONSTER_ID_GENDERED(MINUN, 340),
_MONSTER_ID_GENDERED(VOLBEAT, 341),
_MONSTER_ID_GENDERED(ILLUMISE, 342),
_MONSTER_ID_GENDERED(ROSELIA, 343),
_MONSTER_ID_GENDERED(GULPIN, 344),
_MONSTER_ID_GENDERED(SWALOT, 345),
_MONSTER_ID_GENDERED(CARVANHA, 346),
_MONSTER_ID_GENDERED(SHARPEDO, 347),
_MONSTER_ID_GENDERED(WAILMER, 348),
_MONSTER_ID_GENDERED(WAILORD, 349),
_MONSTER_ID_GENDERED(NUMEL, 350),
_MONSTER_ID_GENDERED(CAMERUPT, 351),
_MONSTER_ID_GENDERED(TORKOAL, 352),
_MONSTER_ID_GENDERED(SPOINK, 353),
_MONSTER_ID_GENDERED(GRUMPIG, 354),
_MONSTER_ID_GENDERED(SPINDA, 355),
_MONSTER_ID_GENDERED(TRAPINCH, 356),
_MONSTER_ID_GENDERED(VIBRAVA, 357),
_MONSTER_ID_GENDERED(FLYGON, 358),
_MONSTER_ID_GENDERED(CACNEA, 359),
_MONSTER_ID_GENDERED(CACTURNE, 360),
_MONSTER_ID_GENDERED(SWABLU, 361),
_MONSTER_ID_GENDERED(ALTARIA, 362),
_MONSTER_ID_GENDERED(ZANGOOSE, 363),
_MONSTER_ID_GENDERED(SEVIPER, 364),
_MONSTER_ID_GENDERED(LUNATONE, 365),
_MONSTER_ID_GENDERED(SOLROCK, 366),
_MONSTER_ID_GENDERED(BARBOACH, 367),
_MONSTER_ID_GENDERED(WHISCASH, 368),
_MONSTER_ID_GENDERED(CORPHISH, 369),
_MONSTER_ID_GENDERED(CRAWDAUNT, 370),
_MONSTER_ID_GENDERED(BALTOY, 371),
_MONSTER_ID_GENDERED(CLAYDOL, 372),
_MONSTER_ID_GENDERED(LILEEP, 373),
_MONSTER_ID_GENDERED(CRADILY, 374),
_MONSTER_ID_GENDERED(ANORITH, 375),
_MONSTER_ID_GENDERED(ARMALDO, 376),
_MONSTER_ID_GENDERED(FEEBAS, 377),
_MONSTER_ID_GENDERED(MILOTIC, 378),
_MONSTER_ID_GENDERED(CASTFORM_NORMAL, 379),
_MONSTER_ID_GENDERED(CASTFORM_SNOWY, 380),
_MONSTER_ID_GENDERED(CASTFORM_SUNNY, 381),
_MONSTER_ID_GENDERED(CASTFORM_RAINY, 382),
_MONSTER_ID_GENDERED(KECLEON, 383),
_MONSTER_ID_GENDERED(PURPLE_KECLEON, 384),
_MONSTER_ID_GENDERED(SHUPPET, 385),
_MONSTER_ID_GENDERED(BANETTE, 386),
_MONSTER_ID_GENDERED(DUSKULL, 387),
_MONSTER_ID_GENDERED(DUSCLOPS, 388),
_MONSTER_ID_GENDERED(TROPIUS, 389),
_MONSTER_ID_GENDERED(CHIMECHO, 390),
_MONSTER_ID_GENDERED(ABSOL, 391),
_MONSTER_ID_GENDERED(WYNAUT, 392),
_MONSTER_ID_GENDERED(SNORUNT, 393),
_MONSTER_ID_GENDERED(GLALIE, 394),
_MONSTER_ID_GENDERED(SPHEAL, 395),
_MONSTER_ID_GENDERED(SEALEO, 396),
_MONSTER_ID_GENDERED(WALREIN, 397),
_MONSTER_ID_GENDERED(CLAMPERL, 398),
_MONSTER_ID_GENDERED(HUNTAIL, 399),
_MONSTER_ID_GENDERED(GOREBYSS, 400),
_MONSTER_ID_GENDERED(RELICANTH, 401),
_MONSTER_ID_GENDERED(LUVDISC, 402),
_MONSTER_ID_GENDERED(BAGON, 403),
_MONSTER_ID_GENDERED(SHELGON, 404),
_MONSTER_ID_GENDERED(SALAMENCE, 405),
_MONSTER_ID_GENDERED(BELDUM, 406),
_MONSTER_ID_GENDERED(METANG, 407),
_MONSTER_ID_GENDERED(METAGROSS, 408),
_MONSTER_ID_GENDERED(REGIROCK, 409),
_MONSTER_ID_GENDERED(REGICE, 410),
_MONSTER_ID_GENDERED(REGISTEEL, 411),
_MONSTER_ID_GENDERED(LATIAS, 412),
_MONSTER_ID_GENDERED(LATIOS, 413),
_MONSTER_ID_GENDERED(KYOGRE, 414),
_MONSTER_ID_GENDERED(GROUDON, 415),
_MONSTER_ID_GENDERED(RAYQUAZA, 416),
_MONSTER_ID_GENDERED(JIRACHI, 417),
_MONSTER_ID_GENDERED(DEOXYS_NORMAL, 418),
_MONSTER_ID_GENDERED(DEOXYS_ATTACK, 419),
_MONSTER_ID_GENDERED(DEOXYS_DEFENSE, 420),
_MONSTER_ID_GENDERED(DEOXYS_SPEED, 421),
_MONSTER_ID_GENDERED(TURTWIG, 422),
_MONSTER_ID_GENDERED(GROTLE, 423),
_MONSTER_ID_GENDERED(TORTERRA, 424),
_MONSTER_ID_GENDERED(CHIMCHAR, 425),
_MONSTER_ID_GENDERED(MONFERNO, 426),
_MONSTER_ID_GENDERED(INFERNAPE, 427),
_MONSTER_ID_GENDERED(PIPLUP, 428),
_MONSTER_ID_GENDERED(PRINPLUP, 429),
_MONSTER_ID_GENDERED(EMPOLEON, 430),
_MONSTER_ID_GENDERED(STARLY, 431),
_MONSTER_ID_GENDERED(STARAVIA, 432),
_MONSTER_ID_GENDERED(STARAPTOR, 433),
_MONSTER_ID_GENDERED(BIDOOF, 434),
_MONSTER_ID_GENDERED(BIBAREL, 435),
_MONSTER_ID_GENDERED(KRICKETOT, 436),
_MONSTER_ID_GENDERED(KRICKETUNE, 437),
_MONSTER_ID_GENDERED(SHINX, 438),
_MONSTER_ID_GENDERED(LUXIO, 439),
_MONSTER_ID_GENDERED(LUXRAY, 440),
_MONSTER_ID_GENDERED(BUDEW, 441),
_MONSTER_ID_GENDERED(ROSERADE, 442),
_MONSTER_ID_GENDERED(CRANIDOS, 443),
_MONSTER_ID_GENDERED(RAMPARDOS, 444),
_MONSTER_ID_GENDERED(SHIELDON, 445),
_MONSTER_ID_GENDERED(BASTIODON, 446),
_MONSTER_ID_GENDERED(BURMY_SANDY, 447),
_MONSTER_ID_GENDERED(BURMY_PLANT, 448),
_MONSTER_ID_GENDERED(BURMY_TRASH, 449),
_MONSTER_ID_GENDERED(WORMADAM_SANDY, 450),
_MONSTER_ID_GENDERED(WORMADAM_PLANT, 451),
_MONSTER_ID_GENDERED(WORMADAM_TRASH, 452),
_MONSTER_ID_GENDERED(MOTHIM, 453),
_MONSTER_ID_GENDERED(COMBEE, 454),
_MONSTER_ID_GENDERED(VESPIQUEN, 455),
_MONSTER_ID_GENDERED(PACHIRISU, 456),
_MONSTER_ID_GENDERED(BUIZEL, 457),
_MONSTER_ID_GENDERED(FLOATZEL, 458),
_MONSTER_ID_GENDERED(CHERUBI, 459),
_MONSTER_ID_GENDERED(CHERRIM_OVERCAST, 460),
_MONSTER_ID_GENDERED(CHERRIM_SUNSHINE, 461),
_MONSTER_ID_GENDERED(SHELLOS_EAST, 462),
_MONSTER_ID_GENDERED(SHELLOS_WEST, 463),
_MONSTER_ID_GENDERED(GASTRODON_EAST, 464),
_MONSTER_ID_GENDERED(GASTRODON_WEST, 465),
_MONSTER_ID_GENDERED(AMBIPOM, 466),
_MONSTER_ID_GENDERED(DRIFLOON, 467),
_MONSTER_ID_GENDERED(DRIFBLIM, 468),
_MONSTER_ID_GENDERED(BUNEARY, 469),
_MONSTER_ID_GENDERED(LOPUNNY, 470),
_MONSTER_ID_GENDERED(MISMAGIUS, 471),
_MONSTER_ID_GENDERED(HONCHKROW, 472),
_MONSTER_ID_GENDERED(GLAMEOW, 473),
_MONSTER_ID_GENDERED(PURUGLY, 474),
_MONSTER_ID_GENDERED(CHINGLING, 475),
_MONSTER_ID_GENDERED(STUNKY, 476),
_MONSTER_ID_GENDERED(SKUNTANK, 477),
_MONSTER_ID_GENDERED(BRONZOR, 478),
_MONSTER_ID_GENDERED(BRONZONG, 479),
_MONSTER_ID_GENDERED(BONSLY, 480),
_MONSTER_ID_GENDERED(MIME_JR, 481),
_MONSTER_ID_GENDERED(HAPPINY, 482),
_MONSTER_ID_GENDERED(CHATOT, 483),
_MONSTER_ID_GENDERED(SPIRITOMB, 484),
_MONSTER_ID_GENDERED(GIBLE, 485),
_MONSTER_ID_GENDERED(GABITE, 486),
_MONSTER_ID_GENDERED(GARCHOMP, 487),
_MONSTER_ID_GENDERED(MUNCHLAX, 488),
_MONSTER_ID_GENDERED(RIOLU, 489),
_MONSTER_ID_GENDERED(LUCARIO, 490),
_MONSTER_ID_GENDERED(HIPPOPOTAS, 491),
_MONSTER_ID_GENDERED(HIPPOWDON, 492),
_MONSTER_ID_GENDERED(SKORUPI, 493),
_MONSTER_ID_GENDERED(DRAPION, 494),
_MONSTER_ID_GENDERED(CROAGUNK, 495),
_MONSTER_ID_GENDERED(TOXICROAK, 496),
_MONSTER_ID_GENDERED(CARNIVINE, 497),
_MONSTER_ID_GENDERED(FINNEON, 498),
_MONSTER_ID_GENDERED(LUMINEON, 499),
_MONSTER_ID_GENDERED(MANTYKE, 500),
_MONSTER_ID_GENDERED(SNOVER, 501),
_MONSTER_ID_GENDERED(ABOMASNOW, 502),
_MONSTER_ID_GENDERED(WEAVILE, 503),
_MONSTER_ID_GENDERED(MAGNEZONE, 504),
_MONSTER_ID_GENDERED(LICKILICKY, 505),
_MONSTER_ID_GENDERED(RHYPERIOR, 506),
_MONSTER_ID_GENDERED(TANGROWTH, 507),
_MONSTER_ID_GENDERED(ELECTIVIRE, 508),
_MONSTER_ID_GENDERED(MAGMORTAR, 509),
_MONSTER_ID_GENDERED(TOGEKISS, 510),
_MONSTER_ID_GENDERED(YANMEGA, 511),
_MONSTER_ID_GENDERED(LEAFEON, 512),
_MONSTER_ID_GENDERED(GLACEON, 513),
_MONSTER_ID_GENDERED(GLISCOR, 514),
_MONSTER_ID_GENDERED(MAMOSWINE, 515),
_MONSTER_ID_GENDERED(PORYGON_Z, 516),
_MONSTER_ID_GENDERED(GALLADE, 517),
_MONSTER_ID_GENDERED(PROBOPASS, 518),
_MONSTER_ID_GENDERED(DUSKNOIR, 519),
_MONSTER_ID_GENDERED(FROSLASS, 520),
_MONSTER_ID_GENDERED(ROTOM, 521),
_MONSTER_ID_GENDERED(UXIE, 522),
_MONSTER_ID_GENDERED(MESPRIT, 523),
_MONSTER_ID_GENDERED(AZELF, 524),
_MONSTER_ID_GENDERED(DIALGA, 525),
_MONSTER_ID_GENDERED(PALKIA, 526),
_MONSTER_ID_GENDERED(HEATRAN, 527),
_MONSTER_ID_GENDERED(REGIGIGAS, 528),
_MONSTER_ID_GENDERED(GIRATINA_ALTERED, 529),
_MONSTER_ID_GENDERED(CRESSELIA, 530),
_MONSTER_ID_GENDERED(PHIONE, 531),
_MONSTER_ID_GENDERED(MANAPHY, 532),
_MONSTER_ID_GENDERED(DARKRAI, 533),
_MONSTER_ID_GENDERED(SHAYMIN_LAND, 534),
_MONSTER_ID_GENDERED(SHAYMIN_SKY, 535),
_MONSTER_ID_GENDERED(GIRATINA_ORIGIN, 536),
_MONSTER_ID_GENDERED(UNNAMED_0x219, 537),
_MONSTER_ID_GENDERED(UNNAMED_0x21A, 538),
_MONSTER_ID_GENDERED(UNNAMED_0x21B, 539),
_MONSTER_ID_GENDERED(UNNAMED_0x21C, 540),
_MONSTER_ID_GENDERED(UNNAMED_0x21D, 541),
_MONSTER_ID_GENDERED(UNNAMED_0x21E, 542),
_MONSTER_ID_GENDERED(UNNAMED_0x21F, 543),
_MONSTER_ID_GENDERED(UNNAMED_0x220, 544),
_MONSTER_ID_GENDERED(UNNAMED_0x221, 545),
_MONSTER_ID_GENDERED(UNNAMED_0x222, 546),
_MONSTER_ID_GENDERED(UNNAMED_0x223, 547),
_MONSTER_ID_GENDERED(UNNAMED_0x224, 548),
_MONSTER_ID_GENDERED(UNNAMED_0x225, 549),
_MONSTER_ID_GENDERED(UNNAMED_0x226, 550),
_MONSTER_ID_GENDERED(UNNAMED_0x227, 551),
_MONSTER_ID_GENDERED(PRIMAL_DIALGA, 552),
_MONSTER_ID_GENDERED(DECOY, 553),
_MONSTER_ID_GENDERED(STATUE, 554),
MONSTER_WIGGLYTUFF_STORY = 555,
MONSTER_REGIGIGAS_STORY = 556,
MONSTER_BRONZONG_STORY = 557,
MONSTER_HITMONLEE_STORY = 558,
MONSTER_CHIMECHO_STORY = 559,
MONSTER_WIGGLYTUFF_STORY_2 = 560,
MONSTER_UXIE_STORY = 561,
MONSTER_AZELF_STORY = 562,
MONSTER_MESPRIT_STORY = 563,
MONSTER_SUNFLORA_STORY = 564,
MONSTER_DIGLETT_STORY = 565,
MONSTER_DUGTRIO_STORY = 566,
MONSTER_CORPHISH_STORY = 567,
MONSTER_LOUDRED_STORY = 568,
MONSTER_BIDOOF_STORY = 569,
MONSTER_CHATOT_STORY = 570,
MONSTER_GROVYLE_STORY = 571,
MONSTER_DUSKNOIR_STORY = 572,
MONSTER_SABLEYE_STORY = 573,
MONSTER_DARKRAI_STORY = 574,
MONSTER_MAMA = 575,
MONSTER_GROVYLE_STORY_2 = 576,
MONSTER_DUSKNOIR_STORY_2 = 577,
MONSTER_DUSKNOIR_STORY_3 = 578,
MONSTER_SENTRET_DITTO = 579,
MONSTER_BELLOSSOM_DITTO = 580,
MONSTER_RESERVE_27 = 581,
MONSTER_RESERVE_28 = 582,
MONSTER_RESERVE_29 = 583,
MONSTER_RESERVE_30 = 584,
MONSTER_RESERVE_31 = 585,
MONSTER_RESERVE_32 = 586,
MONSTER_RESERVE_33 = 587,
MONSTER_RESERVE_34 = 588,
MONSTER_RESERVE_35 = 589,
MONSTER_RESERVE_36 = 590,
MONSTER_RESERVE_37 = 591,
MONSTER_RESERVE_38 = 592,
MONSTER_RESERVE_39 = 593,
MONSTER_RESERVE_40 = 594,
MONSTER_RESERVE_41 = 595,
MONSTER_RESERVE_42 = 596,
MONSTER_RESERVE_43 = 597,
MONSTER_RESERVE_44 = 598,
MONSTER_RESERVE_45 = 599,
};
#undef _MONSTER_ID_GENDERED
// Actions that a monster can take on its turn
enum action {
ACTION_NOTHING = 0, // 0x0
// 0x1: Pass turn. Enemies will print the "is watching carefully" message when performing this
// action
ACTION_PASS_TURN = 1,
ACTION_WALK = 2, // 0x2: Walk
ACTION_UNK_3 = 3,
ACTION_UNK_4 = 4,
ACTION_UNK_5 = 5,
ACTION_NEXT = 6, // 0x6: Switch to next Pokémon when viewing moves
ACTION_PREVIOUS = 7, // 0x7: Switch to previous Pokémon when viewing moves
ACTION_PLACE_ITEM = 8, // 0x8: Place an item on the floor
ACTION_PICK_UP_PLAYER = 9, // 0x9: Pick up an item from the floor (player)
ACTION_UNK_A = 10,
ACTION_THROW_ITEM_PLAYER = 11, // 0xB: Throw an item
ACTION_CHECK_ITEM_DESCRIPTION = 12, // 0xC: Check the description of an item
ACTION_EAT_BERRY_SEED_DRINK = 13, // 0xD: Each a berry or seed, or drink something
ACTION_EAT_GUMMI = 14, // 0xE: Eat a gummi
ACTION_UNK_F = 15,
ACTION_USE_TM = 16, // 0x10: Use a TM
ACTION_UNK_11 = 17,
ACTION_USE_ITEM = 18, // 0x12: Use an item
ACTION_TALK_FIELD = 19, // 0x13: Talk to a teammate by facing them and pressing A
ACTION_USE_MOVE_PLAYER = 20, // 0x14: Use a move (player)
ACTION_USE_MOVE_AI = 21, // 0x15: Use a move (AI)
ACTION_UNK_16 = 22,
ACTION_STRUGGLE = 23, // 0x17: Use Struggle
ACTION_UNK_18 = 24,
ACTION_CHECK_MOVES = 25, // 0x19: Check the list of moves
ACTION_CHANGE_TACTICS = 26, // 0x1A: Change a teammate's tactic
ACTION_CHECK_SUMMARY = 27, // 0x1B: Check a pokémon's summary
ACTION_TALK_MENU = 28, // 0x1C: Talk to a teammate by using the in-menu option
ACTION_UNK_1D = 29,
ACTION_SET_MOVE = 30, // 0x1E: Set a move
ACTION_SWITCH_MOVE = 31, // 0x1F: Switch a move on or off
ACTION_UNK_20 = 32,
ACTION_UNK_21 = 33,
ACTION_UNK_22 = 34,
ACTION_EAT_AI = 35, // 0x23: Eat item (AI)
ACTION_THROW_ITEM_AI = 36, // 0x24: Throw an item (AI)
ACTION_UNK_25 = 37,
ACTION_USE_STAIRS = 38, // 0x26: Use the stairs
ACTION_THROW_STRAIGHT_PLAYER = 39, // 0x27: Throw a straight-line item (player)
ACTION_UNK_28 = 40,
ACTION_UNK_29 = 41,
ACTION_UNK_2A = 42,
ACTION_QUICKSAVE = 43, // 0x2B: Quicksave
ACTION_USE_LINK_BOX = 44, // 0x2C: Use a Link Box
ACTION_UNK_2D = 45,
ACTION_GIVE_UP = 46, // 0x2E: Give up
ACTION_UNK_2F = 47,
ACTION_VIEW_IQ = 48, // 0x30: Open the IQ skills menu
ACTION_USE_ORB = 49, // 0x31: Use an orb
ACTION_REGULAR_ATTACK = 50, // 0x32: Regular Attack
ACTION_UNSET_MOVE = 51, // 0x33: Unset a move
ACTION_SEND_HOME = 52, // 0x34: Send a pokémon home
ACTION_UNK_35 = 53,
ACTION_GIVE_ITEM = 54, // 0X36: Give held item
ACTION_TAKE_ITEM = 55, // 0x37: Take a held item
ACTION_UNK_38 = 56,
// 0x39: <pokémon> had second thoughts! - Used as a failsafe when trying to take an illegal
// action
ACTION_SECOND_THOUGHTS = 57,
ACTION_SWAP_ITEM = 58, // 0x3A: Swapping an item
ACTION_CHANGE_LEADER = 59, // 0x3B: Change the team's leader
ACTION_SET_ITEM = 60, // 0x3C: Set item
ACTION_UNSET_ITEM = 61, // 0x3D: Unset item
ACTION_UNK_3E = 62,
ACTION_PICK_UP_AI = 63, // 0x3F: Pick up an item (AI)
ACTION_UNK_40 = 64,
ACTION_THROW_ARC_PLAYER = 65, // 0x41: Throw a Gravelerock or a similar item (player)
ACTION_PAD = 0xffff, // To force the enum on 16 bits
};
// Behavior type of NPC monsters
enum monster_behavior {
BEHAVIOR_NORMAL_ENEMY_0x0 = 0,
BEHAVIOR_OUTLAW = 1,
BEHAVIOR_HIDDEN_OUTLAW = 2,
BEHAVIOR_FLEEING_OUTLAW = 3,
BEHAVIOR_OUTLAW_TEAM_LEADER = 4,
BEHAVIOR_OUTLAW_TEAM_MINION = 5,
BEHAVIOR_FIXED_ENEMY = 6,
BEHAVIOR_RESCUE_TARGET = 7,
BEHAVIOR_WANDERING_ENEMY_0x8 = 8,
BEHAVIOR_NORMAL_ENEMY_0x9 = 9,
BEHAVIOR_ALLY = 10,
BEHAVIOR_EXPLORER_MAZE_1 = 11,
BEHAVIOR_EXPLORER_MAZE_2 = 12,
BEHAVIOR_EXPLORER_MAZE_3 = 13,
BEHAVIOR_EXPLORER_MAZE_4 = 14,
BEHAVIOR_INVALID = 15,
BEHAVIOR_SECRET_BAZAAR_KIRLIA = 16,
BEHAVIOR_SECRET_BAZAAR_MIME_JR = 17,
BEHAVIOR_SECRET_BAZAAR_SWALOT = 18,
BEHAVIOR_SECRET_BAZAAR_LICKILICKY = 19,
BEHAVIOR_SECRET_BAZAAR_SHEDINJA = 20,
BEHAVIOR_WANDERING_ENEMY_0x15 = 21,
};
// Music/song IDs. Some background SFX are also stored as "songs".
enum music_id {
MUSIC_NONE_0x0 = 0,
MUSIC_POKEMON_EXPLORATION_TEAM_THEME = 1,
MUSIC_TOP_MENU_THEME = 2,
MUSIC_MAROWAK_DOJO = 3,
MUSIC_THE_GATEKEEPERS = 4,
MUSIC_JOB_CLEAR = 5,
MUSIC_WELCOME_TO_THE_WORLD_OF_POKEMON = 6,
MUSIC_WIGGLYTUFFS_GUILD = 7,
MUSIC_WIGGLYTUFFS_GUILD_REMIX = 8,
MUSIC_TREASURE_TOWN = 9,
MUSIC_DO_YOUR_BEST_AS_ALWAYS = 10,
MUSIC_MONSTER_HOUSE = 11,
MUSIC_KECLEONS_SHOP = 12,
MUSIC_OUTLAW = 13,
MUSIC_IN_THE_DEPTHS_OF_THE_PIT = 14,
MUSIC_BOSS_BATTLE = 15,
MUSIC_DIALGAS_FIGHT_TO_THE_FINISH = 16,
MUSIC_BATTLE_AGAINST_DUSKNOIR = 17,
MUSIC_DEFY_THE_LEGENDS = 18,
MUSIC_MISSION_FAILURE = 19,
MUSIC_MISSION_SUCCESS = 20,
MUSIC_BEACH_CAVE = 21,
MUSIC_DRENCHED_BLUFF = 22,
MUSIC_MT_BRISTLE = 23,
MUSIC_WATERFALL_CAVE = 24,
MUSIC_APPLE_WOODS = 25,
MUSIC_CRAGGY_COAST = 26,
MUSIC_CAVE_AND_SIDE_PATH = 27,
MUSIC_MT_HORN = 28,
MUSIC_FOGGY_FOREST = 29,
MUSIC_STEAM_CAVE = 30,
MUSIC_UPPER_STEAM_CAVE = 31,
MUSIC_AMP_PLAINS = 32,
MUSIC_FAR_AMP_PLAINS = 33,
MUSIC_NORTHERN_DESERT = 34,
MUSIC_QUICKSAND_CAVE = 35,
MUSIC_QUICKSAND_PIT = 36,
MUSIC_CRYSTAL_CAVE = 37,
MUSIC_CRYSTAL_CROSSING = 38,
MUSIC_CHASM_CAVE = 39,
MUSIC_DARK_HILL = 40,
MUSIC_SEALED_RUIN = 41,
MUSIC_DEEP_SEALED_RUIN = 42,
MUSIC_DUSK_FOREST = 43,
MUSIC_DEEP_DUSK_FOREST = 44,
MUSIC_RANDOM_DUNGEON_THEME_2 = 45,
MUSIC_BRINE_CAVE = 46,
MUSIC_LOWER_BRINE_CAVE = 47,
MUSIC_HIDDEN_LAND = 48,
MUSIC_HIDDEN_HIGHLAND = 49,
MUSIC_TEMPORAL_TOWER = 50,
MUSIC_TEMPORAL_SPIRE = 51,
MUSIC_MYSTIFYING_FOREST = 52,
MUSIC_BLIZZARD_ISLAND_RESCUE_TEAM_MEDLEY = 53,
MUSIC_SURROUNDED_SEA = 54,
MUSIC_RANDOM_DUNGEON_THEME_1 = 55,
MUSIC_AEGIS_CAVE = 56,
MUSIC_CONCEALED_RUINS = 57,
MUSIC_MT_TRAVAIL = 58,
MUSIC_IN_THE_NIGHTMARE = 59,
MUSIC_MIRACLE_SEA = 60,
MUSIC_TREESHROUD_FOREST = 61,
MUSIC_DARK_CRATER = 62,
MUSIC_DEEP_DARK_CRATER = 63,
MUSIC_INTRO_ALTERNATE_UNUSED = 64,
MUSIC_PERFECT_SENTRY_DUTY = 65,
MUSIC_GOOD_SENTRY_DUTY = 66,
MUSIC_DECENT_SENTRY_DUTY = 67,
MUSIC_FAILED_SENTRY_DUTY = 68,
MUSIC_ON_THE_BEACH_AT_DUSK = 69,
MUSIC_GOODNIGHT = 70,
MUSIC_GOODNIGHT_ALTERNATE_UNUSED = 71,
MUSIC_AT_THE_END_OF_THE_DAY = 72,
MUSIC_GUILDMASTER_WIGGLYTUFF = 73,
MUSIC_GROWING_ANXIETY = 74,
MUSIC_THE_POWER_OF_DARKNESS = 75,
MUSIC_OH_NO = 76,
MUSIC_TIME_GEAR = 77,
MUSIC_TIME_GEAR_REMIX = 78,
MUSIC_I_SAW_SOMETHING_AGAIN = 79,
MUSIC_IN_THE_FUTURE = 80,
MUSIC_PLANETS_PARALYSIS = 81,
MUSIC_THROUGH_THE_SEA_OF_TIME = 82,
MUSIC_IN_THE_HANDS_OF_FATE = 83,
MUSIC_TIME_RESTORED = 84,
MUSIC_DONT_EVER_FORGET = 85,
MUSIC_A_WISH_FOR_PEACE = 86,
MUSIC_ON_THE_BEACH_AT_DUSK_INTRO_ONLY = 87,
MUSIC_MEMORIES_RETURNED = 88,
MUSIC_ENDING_THEME_INTRO = 89,
MUSIC_ENDING_THEME = 90,
MUSIC_EPILOGUE_THEME = 91,
MUSIC_TITLE_THEME_ALTERNATE_1_UNUSED = 92,
MUSIC_TITLE_THEME_ALTERNATE_2_UNUSED = 93,
MUSIC_MURKY_FOREST = 94,
MUSIC_SKY_PEAK_CAVE = 95,
MUSIC_SOUTHERN_JUNGLE = 96,
MUSIC_SKY_PEAK_COAST = 97,
MUSIC_SPRING_CAVE = 98,
MUSIC_LOWER_SPRING_CAVE = 99,
MUSIC_OCEAN_SFX = 100,
MUSIC_THUNDERSTORM_SFX = 101,
MUSIC_THUNDERSTORM_MUFFLED_SFX = 102,
MUSIC_RUMBLING_SFX = 103,
MUSIC_RUMBLING_LOUDER_SFX = 104,
MUSIC_RUMBLING_LOUDEST_SFX = 105,
MUSIC_RUNNING_HOT_WATER_SFX = 106,
MUSIC_TEMPORAL_PINNACLE_SFX = 107,
MUSIC_TEMPORAL_PINNACLE = 108,
MUSIC_NULL_0x6D = 109,
MUSIC_HEAVY_FOOTSTEPS_SFX = 110,
MUSIC_SINGLE_TONE_RINGING_SFX = 111,
MUSIC_ELECTRICITY_SFX_1 = 112,
MUSIC_ELECTRICITY_SFX_2 = 113,
MUSIC_ELECTRICITY_SFX_3 = 114,
MUSIC_FIRE_CRACKLING_SFX_1 = 115,
MUSIC_FIRE_CRACKLING_SFX_2 = 116,
MUSIC_RELIC_FRAGMENT_SFX = 117,
MUSIC_RAINBOW_STONESHIP_SFX = 118,
MUSIC_RAINBOW_STONESHIP_PREPARING_SFX = 119,
MUSIC_HUMMING_SFX = 120,
MUSIC_HAVE_TO_GET_HOME = 121,
MUSIC_FARTHER_AWAY = 122,
MUSIC_PALKIAS_ONSLAUGHT = 123,
MUSIC_NONE_0x7C = 124,
MUSIC_WATERFALL_SFX = 125,
MUSIC_EATING_SFX = 126,
MUSIC_OMINOUS_STRING_NOTE_SFX = 127,
MUSIC_FLOOD_SFX = 128,
MUSIC_PELIPPER_ISLAND = 129,
MUSIC_TITLE_THEME = 130,
MUSIC_HEARTWARMING = 131,
MUSIC_DOWN_A_DARK_PATH = 132,
MUSIC_RISING_FEAR = 133,
MUSIC_TEAM_SKULL = 134,
MUSIC_SYMPATHY = 135,
MUSIC_BEYOND_THE_DREAM = 136,
MUSIC_AIR_OF_UNEASE = 137,
MUSIC_ONE_FOR_ALL = 138,
MUSIC__ALL_FOR_ONE = 139,
MUSIC_BOULDER_QUARRY = 140,
MUSIC_SPRING_CAVE_DEPTHS = 141,
MUSIC_STAR_CAVE = 142,
MUSIC_DEEP_STAR_CAVE = 143,
MUSIC_LIMESTONE_CAVE = 144,
MUSIC_DEEP_LIMESTONE_CAVE = 145,
MUSIC_RANDOM_DUNGEON_THEME_3 = 146,
MUSIC_FORTUNE_RAVINE = 147,
MUSIC_FORTUNE_RAVINE_DEPTHS = 148,
MUSIC_BARREN_VALLEY = 149,
MUSIC_DARK_WASTELAND = 150,
MUSIC_SPACIAL_CLIFFS = 151,
MUSIC_DARK_ICE_MOUNTAIN = 152,
MUSIC_ICICLE_FOREST = 153,
MUSIC_VAST_ICE_MOUNTAIN = 154,
MUSIC_VAST_ICE_MOUNTAIN_PEAK = 155,
MUSIC_SKY_PEAK_FOREST = 156,
MUSIC_SKY_PEAK_PRAIRIE = 157,
MUSIC_SKY_PEAK_SNOWFIELD = 158,
MUSIC_SKY_PEAK_FINAL_PASS = 159,
MUSIC_SPINDAS_CAFE = 160,
MUSIC_LUDICOLO_DANCE = 161,
MUSIC_ILLUSION_STONE_CHAMBER = 162,
MUSIC_IT_CANT_BE = 163,
MUSIC_DEFEND_GLOBE = 164,
MUSIC_DEFEND_GLOBE_ENDING = 165,
MUSIC_TEAM_CHARMS_THEME = 166,
MUSIC_HERE_COMES_TEAM_CHARM = 167,
MUSIC_FOR_A_NEW_LIFE = 168,
MUSIC_LIVING_SPIRIT = 169,
MUSIC_PROUD_ACCOMPLISHMENT = 170,
MUSIC_IN_THE_MORNING_SUN = 171,
MUSIC_A_NEW_WORLD = 172,
MUSIC_THOUGHTS_FOR_FRIENDS = 173,
MUSIC_LIFE_GOES_ON_ENDING = 174,
MUSIC_ITS_NOT_A_MIRACLE = 175,
MUSIC_A_MESSAGE_ON_THE_WIND = 176,
MUSIC_A_FUN_EXPLORATION = 177,
MUSIC_SHAYMIN_VILLAGE = 178,
MUSIC_TEAM_CHARMS_THEME_INTRO_ONLY = 179,
MUSIC_RUMBLING_SFX_4 = 180,
MUSIC_RUMBLING_SFX_5 = 181,
MUSIC_OCEAN_MUFFLED_SFX = 182,
MUSIC_WIND_SFX_1 = 183,
MUSIC_LIMESTONE_CAVERN_DEPTHS_SFX = 184,
MUSIC_FIRE_CRACKLING_SFX_3 = 185,
MUSIC_SKY_PEAK_8TH_STATION_CLEARING_SFX = 186,
MUSIC_WIND_AND_RAIN_SFX = 187,
MUSIC_VAST_ICE_MOUNTAIN_PINNACLE_SFX = 188,
MUSIC_SPRING_CAVE_SFX = 189,
MUSIC_WIND_SFX_2 = 190,
MUSIC_SOUTHERN_JUNGLE_EXIT_SFX = 191,
MUSIC_BOULDER_QUARRY_CLEARING_SFX = 192,
MUSIC_WATERFALL_CAVE_VISION_SFX = 193,
MUSIC_WIND_SFX_3 = 194,
MUSIC_NULL_0xC2 = 195,
MUSIC_NULL_0xC3 = 196,
MUSIC_NULL_0xC4 = 197,
MUSIC_NULL_0xC5 = 198,
MUSIC_NULL_0xC6 = 199,
MUSIC_TEAM_CHARMS_THEME_ALTERNATE_1_UNUSED = 200,
MUSIC_TEAM_CHARM_JINGLE = 201,
MUSIC_TEAM_CHARMS_THEME_ALTERNATE_2_UNUSED = 202,
MUSIC_NONE_0x3E7 = 999,
};
// Status IDs
// While there seems to be a global status order, this enum isn't used exactly that way in
// practice. See the comments for struct status.
enum status_id {
STATUS_NONE = 0, // Called "-" internally
STATUS_SLEEP = 1,
STATUS_SLEEPLESS = 2, // Won't get sleepy
STATUS_NIGHTMARE = 3, // Caught in a nightmare
STATUS_YAWNING = 4,
STATUS_NAPPING = 5,
STATUS_LOW_HP = 6, // Low HP! Situation critical!
STATUS_BURN = 7, // Burned
STATUS_POISONED = 8,
STATUS_BADLY_POISONED = 9,
STATUS_PARALYSIS = 10, // Paralyzed
STATUS_IDENTIFYING = 11,
STATUS_FROZEN = 12,
STATUS_SHADOW_HOLD = 13, // Immobilized
STATUS_WRAP = 14, // Wrapped around foe
STATUS_WRAPPED = 15, // Wrapped by foe
STATUS_INGRAIN = 16, // Using Ingrain
STATUS_PETRIFIED = 17,
STATUS_CONSTRICTION = 18, // Being squeezed
STATUS_FAMISHED = 19, // About to drop from hunger
STATUS_CRINGE = 20, // Cringing
STATUS_CONFUSED = 21,
STATUS_PAUSED = 22, // Pausing
STATUS_COWERING = 23,
STATUS_TAUNTED = 24,
STATUS_ENCORE = 25, // Afflicted with Encore
STATUS_INFATUATED = 26,
STATUS_DOUBLE_SPEED = 27, // Sped up
STATUS_BIDE = 28, // Biding
STATUS_SOLARBEAM = 29, // Charging SolarBeam
STATUS_SKY_ATTACK = 30, // Charging Sky Attack
STATUS_RAZOR_WIND = 31, // Charging Razor Wind
STATUS_FOCUS_PUNCH = 32, // Charging Focus Punch
STATUS_SKULL_BASH = 33, // Charging Skull Bash
STATUS_FLYING = 34, // Flying high up
STATUS_BOUNCING = 35,
STATUS_DIVING = 36, // Hiding underwater
STATUS_DIGGING = 37, // Burrowing underground
STATUS_CHARGING = 38, // Using Charge
STATUS_ENRAGED = 39, // Shaking with rage
STATUS_SHADOW_FORCE = 40, // Hiding among shadows
STATUS_HALF_SPEED = 41, // Slowed down
STATUS_REFLECT = 42, // Protected by Reflect
STATUS_SAFEGUARD = 43, // Protected by Safeguard
STATUS_LIGHT_SCREEN = 44, // Protected by Light Screen
STATUS_COUNTER = 45, // Ready to counter
STATUS_MAGIC_COAT = 46, // Protected by Magic Coat
STATUS_WISH = 47, // Making a wish
STATUS_PROTECT = 48, // Protecting itself
STATUS_MIRROR_COAT = 49, // Protected by Mirror Coat
STATUS_ENDURING = 50, // Set to endure
STATUS_MINI_COUNTER = 51, // Ready to deliver mini counters
STATUS_MIRROR_MOVE = 52, // Using Mirror Move
STATUS_CONVERSION2 = 53, // Alt Using Conversion 2
STATUS_VITAL_THROW = 54, // Ready to use Vital Throw
STATUS_MIST = 55, // Protected by Mist
STATUS_METAL_BURST = 56, // Protected by Metal Burst
STATUS_AQUA_RING = 57, // Cloaked by Aqua Ring
STATUS_LUCKY_CHANT = 58, // Lucky Chant in effect
STATUS_WEAKENED = 59,
STATUS_CURSED = 60,
STATUS_DECOY = 61,
STATUS_SNATCH = 62, // Ready to snatch moves
STATUS_GASTRO_ACID = 63, // Drenched with Gastro Acid
STATUS_HEAL_BLOCK = 64, // Prevented from healing
STATUS_EMBARGO = 65, // Under Embargo
STATUS_HUNGRY_PAL = 66, // Immobilized by hunger
STATUS_LEECH_SEED = 67, // Afflicted with Leech Seed
STATUS_DESTINY_BOND = 68, // Using Destiny Bond
STATUS_POWERED_UP = 69,
STATUS_SURE_SHOT = 70, // Total accuracy for moves
STATUS_WHIFFER = 71, // Afflicted with Smokescreen
STATUS_SET_DAMAGE = 72, // Inflicts set damage
STATUS_FOCUS_ENERGY = 73, // Enhanced critical-hit rate
STATUS_UNNAMED_0x4A = 74, // Called "-" internally
STATUS_LONG_TOSS = 75, // Throws thrown items far
STATUS_PIERCE = 76, // Pierces walls w/ thrown items
STATUS_UNNAMED_0x4D = 77,
STATUS_INVISIBLE = 78,
STATUS_TRANSFORMED = 79, // Transformed Pokemon
STATUS_MOBILE = 80, // Travel anywhere
STATUS_SLIP = 81, // Walk on water
STATUS_UNNAMED_0x52 = 82,
STATUS_BLINKER = 83, // Blinded
STATUS_CROSS_EYED = 84, // Hallucinating
STATUS_EYEDROPS = 85, // Seeing the unseeable
STATUS_DROPEYE = 86, // Poor vision
STATUS_UNNAMED_0x57 = 87,
STATUS_MUZZLED = 88, // Unable to use its mouth
STATUS_UNNAMED_0x59 = 89,
STATUS_MIRACLE_EYE = 90, // Exposed by Miracle Eye
STATUS_UNNAMED_0x5B = 91,
STATUS_MAGNET_RISE = 92, // Levitating with Magnet Rise
STATUS_STOCKPILING = 93,
STATUS_POWER_EARS = 94, // Can locate other Pokemon
STATUS_SCANNING = 95, // Can locate items
STATUS_GRUDGE = 96, // Bearing a grudge
STATUS_EXPOSED = 97, // Exposed to sight
STATUS_TERRIFIED = 98,
STATUS_PERISH_SONG = 99, // Received Perish Song
STATUS_DOUBLED_ATTACK = 100, // Has sped-up attacks
STATUS_STAIR_SPOTTER = 101, // Can locate stairs
};
enum status_sleep_id {
STATUS_SLEEP_NONE = 0,
STATUS_SLEEP_SLEEP = 1,
STATUS_SLEEP_SLEEPLESS = 2,
STATUS_SLEEP_NIGHTMARE = 3,
STATUS_SLEEP_YAWNING = 4,
STATUS_SLEEP_NAPPING = 5,
};
enum status_burn_id {
STATUS_BURN_NONE = 0,
STATUS_BURN_BURN = 1,
STATUS_BURN_POISONED = 2,
STATUS_BURN_BADLY_POISONED = 3,
STATUS_BURN_PARALYSIS = 4,
};
enum status_frozen_id {
STATUS_FROZEN_NONE = 0,
STATUS_FROZEN_FROZEN = 1,
STATUS_FROZEN_SHADOW_HOLD = 2,
STATUS_FROZEN_WRAP = 3,
STATUS_FROZEN_WRAPPED = 4,
STATUS_FROZEN_INGRAIN = 5,
STATUS_FROZEN_PETRIFIED = 6,
STATUS_FROZEN_CONSTRICTION = 7,
};
enum status_cringe_id {
STATUS_CRINGE_NONE = 0,
STATUS_CRINGE_CRINGE = 1,
STATUS_CRINGE_CONFUSED = 2,
STATUS_CRINGE_PAUSED = 3,
STATUS_CRINGE_COWERING = 4,
STATUS_CRINGE_TAUNTED = 5,
STATUS_CRINGE_ENCORE = 6,
STATUS_CRINGE_INFATUATED = 7,
};
enum status_two_turn_id {
STATUS_TWO_TURN_NONE = 0,
STATUS_TWO_TURN_BIDE = 1,
STATUS_TWO_TURN_SOLARBEAM = 2,
STATUS_TWO_TURN_SKY_ATTACK = 3,
STATUS_TWO_TURN_RAZOR_WIND = 4,
STATUS_TWO_TURN_FOCUS_PUNCH = 5,
STATUS_TWO_TURN_SKULL_BASH = 6,
STATUS_TWO_TURN_FLYING = 7,
STATUS_TWO_TURN_BOUNCING = 8,
STATUS_TWO_TURN_DIVING = 9,
STATUS_TWO_TURN_DIGGING = 10,
STATUS_TWO_TURN_CHARGING = 11,
STATUS_TWO_TURN_ENRAGED = 12,
STATUS_TWO_TURN_SHADOW_FORCE = 13,
};
enum status_reflect_id {
STATUS_REFLECT_NONE = 0,
STATUS_REFLECT_REFLECT = 1,
STATUS_REFLECT_SAFEGUARD = 2,
STATUS_REFLECT_LIGHT_SCREEN = 3,
STATUS_REFLECT_COUNTER = 4,
STATUS_REFLECT_MAGIC_COAT = 5,
STATUS_REFLECT_WISH = 6,
STATUS_REFLECT_PROTECT = 7,
STATUS_REFLECT_MIRROR_COAT = 8,
STATUS_REFLECT_ENDURING = 9,
STATUS_REFLECT_MINI_COUNTER = 10,
STATUS_REFLECT_MIRROR_MOVE = 11,
STATUS_REFLECT_CONVERSION2 = 12,
STATUS_REFLECT_VITAL_THROW = 13,
STATUS_REFLECT_MIST = 14,
STATUS_REFLECT_METAL_BURST = 15,
STATUS_REFLECT_AQUA_RING = 16,
STATUS_REFLECT_LUCKY_CHANT = 17,
};
enum status_curse_id {
STATUS_CURSE_NONE = 0,
STATUS_CURSE_CURSED = 1,
STATUS_CURSE_DECOY = 2,
STATUS_CURSE_SNATCH = 3,
STATUS_CURSE_GASTRO_ACID = 4,
STATUS_CURSE_HEAL_BLOCK = 5,
STATUS_CURSE_EMBARGO = 6,
};
enum status_leech_seed_id {
STATUS_LEECH_SEED_NONE = 0,
STATUS_LEECH_SEED_LEECH_SEED = 1,
STATUS_LEECH_SEED_DESTINY_BOND = 2,
};
enum status_sure_shot_id {
STATUS_SURE_SHOT_NONE = 0,
STATUS_SURE_SHOT_SURE_SHOT = 1,
STATUS_SURE_SHOT_WHIFFER = 2,
STATUS_SURE_SHOT_SET_DAMAGE = 3,
STATUS_SURE_SHOT_FOCUS_ENERGY = 4,
};
enum status_blinker_id {
STATUS_BLINKER_NONE = 0,
STATUS_BLINKER_BLINKER = 1,
STATUS_BLINKER_CROSS_EYED = 2,
STATUS_BLINKER_EYEDROPS = 3,
STATUS_BLINKER_DROPEYE = 4,
};
// Mission type on a floor
enum mission_type {
MISSION_RESCUE_CLIENT = 0,
MISSION_RESCUE_TARGET = 1,
MISSION_ESCORT_TO_TARGET = 2,
MISSION_EXPLORE_WITH_CLIENT = 3,
MISSION_PROSPECT_WITH_CLIENT = 4,
MISSION_GUIDE_CLIENT = 5,
MISSION_FIND_ITEM = 6,
MISSION_DELIVER_ITEM = 7,
MISSION_SEARCH_FOR_TARGET = 8,
MISSION_TAKE_ITEM_FROM_OUTLAW = 9,
MISSION_ARREST_OUTLAW = 10,
MISSION_CHALLENGE_REQUEST = 11,
MISSION_TREASURE_MEMO = 12,
MISSION_TYPE_UNK_0xD = 13,
MISSION_SPECIAL_EPISODE = 14,
};
// Fixed room ID. Fixed rooms can be full floor layouts, like most end-of-dungeon boss chambers,
// multi-room layouts in the case of Treasure Memos, or single rooms within a larger floor layout
// like with key chambers.
enum fixed_room_id {
FIXED_NONE = 0,
FIXED_BEACH_CAVE_PIT = 1,
FIXED_MT_BRISTLE_PEAK = 2,
FIXED_STEAM_CAVE_PEAK = 3,
FIXED_AMP_CLEARING = 4,
FIXED_UNDERGROUND_LAKE = 5,
FIXED_CRYSTAL_LAKE = 6,
FIXED_SEALED_RUIN_PIT = 7,
FIXED_BRINE_CAVE_PIT = 8,
FIXED_OLD_RUINS = 9,
FIXED_TEMPORAL_PINNACLE = 10,
FIXED_MYSTIFYING_FOREST_CLEARING = 11,
FIXED_CREVICE_CAVE_PIT = 12,
FIXED_MIRACLE_SEABED = 13,
FIXED_REGICE_CHAMBER = 14,
FIXED_REGIROCK_CHAMBER = 15,
FIXED_REGISTEEL_CHAMBER = 16,
FIXED_REGIGIGAS_CHAMBER = 17,
FIXED_SPACIAL_RIFT_BOTTOM = 18,
FIXED_DARK_CRATER_PIT = 19,
FIXED_GIANT_VOLCANO_PEAK = 20,
FIXED_SHIMMER_DESERT_PIT = 21,
FIXED_MT_AVALANCHE_PEAK = 22,
FIXED_BOTTOMLESS_SEA_DEPTHS = 23,
FIXED_WORLD_ABYSS_PIT = 24,
FIXED_DEEP_MYSTERY_JUNGLE = 25,
FIXED_SKY_STAIRWAY_APEX = 26,
FIXED_EMPTY_OCTAGON = 27,
FIXED_SKY_PEAK_5TH_STATION_CLEARING = 28,
FIXED_SKY_PEAK_SUMMIT = 29,
FIXED_DEEP_STAR_CAVE_SE1 = 30,
FIXED_STAR_CAVE_PIT_SE1 = 31,
FIXED_FORTUNE_RAVINE_PIT = 32,
FIXED_BARREN_VALLEY_CLEARING = 33,
FIXED_BLACK_SWAMP = 34,
FIXED_DARK_ICE_MOUNTAIN_PINNACLE = 35,
FIXED_VAST_ICE_MOUNTAIN_PINNACLE = 36,
FIXED_BOULDER_QUARRY_CLEARING = 37,
FIXED_LIMESTONE_CAVERN_DEPTHS = 38,
FIXED_UPPER_SPRING_CAVE = 39,
FIXED_MIDDLE_SPRING_CAVE = 40,
FIXED_SPRING_CAVE_PIT = 41,
FIXED_DEEP_STAR_CAVE = 42,
FIXED_BARREN_VALLEY_CLEARING_REVISIT = 43,
FIXED_UNUSED_0x2C = 44,
FIXED_UNUSED_0x2D = 45,
FIXED_UNUSED_0x2E = 46,
FIXED_UNUSED_0x2F = 47,
FIXED_UNUSED_0x30 = 48,
FIXED_UNUSED_0x31 = 49,
FIXED_UNUSED_0x32 = 50,
FIXED_UNUSED_0x33 = 51,
FIXED_UNUSED_0x34 = 52,
FIXED_UNUSED_0x35 = 53,
FIXED_UNUSED_0x36 = 54,
FIXED_UNUSED_0x37 = 55,
FIXED_UNUSED_0x38 = 56,
FIXED_UNUSED_0x39 = 57,
FIXED_UNUSED_0x3A = 58,
FIXED_UNUSED_0x3B = 59,
FIXED_UNUSED_0x3C = 60,
FIXED_UNUSED_0x3D = 61,
FIXED_UNUSED_0x3E = 62,
FIXED_TEST = 63,
FIXED_EMPTY_RECTANGLE = 64,
FIXED_BEACH_CAVE_PIT_REVISIT = 65,
FIXED_MT_BRISTLE_PEAK_REVISIT = 66,
FIXED_STEAM_CAVE_PEAK_REVISIT = 67,
FIXED_AMP_CLEARING_REVISIT = 68,
FIXED_UNDERGROUND_LAKE_REVISIT = 69,
FIXED_CRYSTAL_LAKE_REVISIT = 70,
FIXED_SEALED_RUIN_PIT_REVISIT = 71,
FIXED_BRINE_CAVE_PIT_REVISIT = 72,
FIXED_OLD_RUINS_REVISIT = 73,
FIXED_TEMPORAL_PINNACLE_REVISIT = 74,
FIXED_REGIGIGAS_CHAMBER_REVISIT = 75,
FIXED_SPACIAL_RIFT_BOTTOM_REVISIT = 76,
FIXED_DARK_CRATER_PIT_REVISIT = 77,
FIXED_UNUSED_0x4E = 78,
FIXED_UNUSED_0x4F = 79,
FIXED_LABYRINTH_CAVE = 80,
FIXED_ZERO_ISLE_NORTH = 81,
FIXED_ZERO_ISLE_EAST = 82,
FIXED_ZERO_ISLE_WEST = 83,
FIXED_ZERO_ISLE_SOUTH = 84,
FIXED_ORAN_FOREST = 85,
FIXED_MARINE_RESORT = 86,
FIXED_SERENITY_RIVER = 87,
FIXED_LANDSLIDE_CAVE = 88,
FIXED_LUSH_PRAIRIE = 89,
FIXED_TINY_MEADOW = 90,
FIXED_SURROUNDED_SEA = 91,
FIXED_CONCEALED_RUINS = 92,
FIXED_LAKE_AFAR = 93,
FIXED_HAPPY_OUTLOOK = 94,
FIXED_MT_MISTRAL = 95,
FIXED_SHIMMER_HILL = 96,
FIXED_LOST_WILDERNESS = 97,
FIXED_MIDNIGHT_FOREST = 98,
FIXED_ZERO_ISLE_CENTER = 99,
FIXED_OBLIVION_FOREST = 100,
FIXED_TREACHEROUS_WATERS = 101,
FIXED_SOUTHEASTERN_ISLANDS = 102,
FIXED_INFERNO_CAVE = 103,
FIXED_MIDNIGHT_FOREST_COPY = 104,
FIXED_UNUSED_0x69 = 105,
FIXED_UNUSED_0x6A = 106,
FIXED_UNUSED_0x6B = 107,
FIXED_UNUSED_0x6C = 108,
FIXED_UNUSED_0x6D = 109,
FIXED_SUBSTITUTE_ROOM = 110,
FIXED_GOLDEN_CHAMBER = 111,
FIXED_SECRET_BAZAAR = 112,
FIXED_SECRET_ROOM = 113,
FIXED_TREASURE_MEMO_0 = 114,
FIXED_TREASURE_MEMO_1 = 115,
FIXED_TREASURE_MEMO_2 = 116,
FIXED_TREASURE_MEMO_3 = 117,
FIXED_TREASURE_MEMO_4 = 118,
FIXED_TREASURE_MEMO_5 = 119,
FIXED_TREASURE_MEMO_6 = 120,
FIXED_TREASURE_MEMO_7 = 121,
FIXED_TREASURE_MEMO_8 = 122,
FIXED_TREASURE_MEMO_9 = 123,
FIXED_TREASURE_MEMO_10 = 124,
FIXED_TREASURE_MEMO_11 = 125,
FIXED_TREASURE_MEMO_12 = 126,
FIXED_TREASURE_MEMO_13 = 127,
FIXED_TREASURE_MEMO_14 = 128,
FIXED_TREASURE_MEMO_15 = 129,
FIXED_TREASURE_MEMO_16 = 130,
FIXED_TREASURE_MEMO_17 = 131,
FIXED_TREASURE_MEMO_18 = 132,
FIXED_TREASURE_MEMO_19 = 133,
FIXED_TREASURE_MEMO_20 = 134,
FIXED_TREASURE_MEMO_21 = 135,
FIXED_TREASURE_MEMO_22 = 136,
FIXED_TREASURE_MEMO_23 = 137,
FIXED_TREASURE_MEMO_24 = 138,
FIXED_TREASURE_MEMO_25 = 139,
FIXED_TREASURE_MEMO_26 = 140,
FIXED_TREASURE_MEMO_27 = 141,
FIXED_TREASURE_MEMO_28 = 142,
FIXED_TREASURE_MEMO_29 = 143,
FIXED_TREASURE_MEMO_30 = 144,
FIXED_MEWTWO_CHALLENGE_FLOOR = 145,
FIXED_ENTEI_CHALLENGE_FLOOR = 146,
FIXED_RAIKOU_CHALLENGE_FLOOR = 147,
FIXED_SUICUNE_CHALLENGE_FLOOR = 148,
FIXED_STAR_CAVE_PIT = 149,
FIXED_CHALLENGE_LETTER_FLOOR_1 = 150,
FIXED_CHALLENGE_LETTER_FLOOR_2 = 151,
FIXED_CHALLENGE_LETTER_FLOOR_3 = 152,
FIXED_CHALLENGE_LETTER_FLOOR_4 = 153,
FIXED_CHALLENGE_LETTER_FLOOR_5 = 154,
FIXED_UNUSED_0x9B = 155,
FIXED_UNUSED_0x9C = 156,
FIXED_UNUSED_0x9D = 157,
FIXED_UNUSED_0x9E = 158,
FIXED_UNUSED_0x9F = 159,
FIXED_OUTLAW_TEAM_FLOOR_1 = 160,
FIXED_OUTLAW_TEAM_FLOOR_2 = 161,
FIXED_OUTLAW_TEAM_FLOOR_3 = 162,
FIXED_OUTLAW_TEAM_FLOOR_4 = 163,
FIXED_OUTLAW_TEAM_FLOOR_5 = 164,
FIXED_SEALED_CHAMBER = 165,
FIXED_UNUSED_0xA6 = 166,
FIXED_UNUSED_0xA7 = 167,
FIXED_UNUSED_0xA8 = 168,
FIXED_UNUSED_0xA9 = 169,
FIXED_CLEAR_SILK_CHAMBER = 170,
FIXED_ORANGE_SILK_CHAMBER = 171,
FIXED_GREEN_SILK_CHAMBER = 172,
FIXED_IRON_SILK_CHAMBER = 173,
FIXED_JOY_SEED_CHAMBER_6X = 174,
FIXED_FRIEND_BOW_CHAMBER = 175,
FIXED_PINK_SILK_CHAMBER = 176,
FIXED_GRAY_SILK_CHAMBER = 177,
FIXED_PURPLE_SILK_CHAMBER = 178,
FIXED_JOY_SEED_CHAMBER_1X = 179,
FIXED_ROYAL_SILK_CHAMBER = 180,
FIXED_MIRACLE_CHEST_CHAMBER = 181,
FIXED_BROWN_SILK_CHAMBER = 182,
FIXED_SKY_SILK_CHAMBER = 183,
FIXED_GOLD_SILK_CHAMBER = 184,
FIXED_BLACK_SILK_CHAMBER = 185,
FIXED_JOY_SEED_CHAMBER_2X = 186,
FIXED_WONDER_GUMMI_CHAMBER = 187,
FIXED_ITEM_CHAMBER_1 = 188,
FIXED_ITEM_CHAMBER_2 = 189,
FIXED_WONDER_CHEST_CHAMBER = 190,
FIXED_RED_SILK_CHAMBER = 191,
FIXED_BLUE_SILK_CHAMBER = 192,
FIXED_GRASS_SILK_CHAMBER = 193,
FIXED_YELLOW_SILK_CHAMBER = 194,
FIXED_REVIVER_SEED_CHAMBER_1 = 195,
FIXED_REVIVER_SEED_CHAMBER_2 = 196,
FIXED_EMPTY_SEALED_CHAMBER = 197,
FIXED_UNUSED_0xC6 = 198,
FIXED_UNUSED_0xC7 = 199,
FIXED_UNUSED_0xC8 = 200,
FIXED_UNUSED_0xC9 = 201,
FIXED_UNUSED_0xCA = 202,
FIXED_UNUSED_0xCB = 203,
FIXED_UNUSED_0xCC = 204,
FIXED_UNUSED_0xCD = 205,
FIXED_UNUSED_0xCE = 206,
FIXED_UNUSED_0xCF = 207,
FIXED_UNUSED_0xD0 = 208,
FIXED_UNUSED_0xD1 = 209,
FIXED_UNUSED_0xD2 = 210,
FIXED_UNUSED_0xD3 = 211,
FIXED_UNUSED_0xD4 = 212,
FIXED_UNUSED_0xD5 = 213,
FIXED_UNUSED_0xD6 = 214,
FIXED_UNUSED_0xD7 = 215,
FIXED_UNUSED_0xD8 = 216,
FIXED_UNUSED_0xD9 = 217,
FIXED_UNUSED_0xDA = 218,
FIXED_UNUSED_0xDB = 219,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_1 = 220,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_2 = 221,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_3 = 222,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_4 = 223,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_5 = 224,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_6 = 225,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_7 = 226,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_8 = 227,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_9 = 228,
FIXED_LEGENDARY_EXCLUSIVE_CHAMBER_10 = 229,
FIXED_UNUSED_0xE6 = 230,
FIXED_UNUSED_0xE7 = 231,
FIXED_UNUSED_0xE8 = 232,
FIXED_UNUSED_0xE9 = 233,
FIXED_UNUSED_0xEA = 234,
FIXED_UNUSED_0xEB = 235,
FIXED_UNUSED_0xEC = 236,
FIXED_UNUSED_0xED = 237,
FIXED_UNUSED_0xEE = 238,
FIXED_UNUSED_0xEF = 239,
FIXED_UNUSED_0xF0 = 240,
FIXED_UNUSED_0xF1 = 241,
FIXED_UNUSED_0xF2 = 242,
FIXED_UNUSED_0xF3 = 243,
FIXED_UNUSED_0xF4 = 244,
FIXED_UNUSED_0xF5 = 245,
FIXED_UNUSED_0xF6 = 246,
FIXED_UNUSED_0xF7 = 247,
FIXED_UNUSED_0xF8 = 248,
FIXED_UNUSED_0xF9 = 249,
FIXED_UNUSED_0xFA = 250,
FIXED_UNUSED_0xFB = 251,
FIXED_UNUSED_0xFC = 252,
FIXED_UNUSED_0xFD = 253,
FIXED_UNUSED_0xFE = 254,
FIXED_UNUSED_0xFF = 255,
};
// The cause of a monster taking damage, not including the move case.
// These codes should all be greater than any move ID.
// Some of the values are used as faint reasons or on the "The Last Outing" screen
// rather than as damage sources.
enum damage_source_non_move {
DAMAGE_SOURCE_TRANSFORM_FRIEND = 563, // "was transformed into a friend"
DAMAGE_SOURCE_NOT_BEFRIENDED = 564, // "left without being befriended"
DAMAGE_SOURCE_DEBUG_ATTACK = 565,
DAMAGE_SOURCE_JUMP_KICK = 566,
DAMAGE_SOURCE_HI_JUMP_KICK = 567,
DAMAGE_SOURCE_DESTINY_BOND = 568,
DAMAGE_SOURCE_SLUDGE = 569,
DAMAGE_SOURCE_POWERFUL_MOVE_1 = 570,
DAMAGE_SOURCE_POWERFUL_MOVE_2 = 571,
DAMAGE_SOURCE_RECOIL = 572,
DAMAGE_SOURCE_SPLASH = 573,
DAMAGE_SOURCE_ENERGY = 574, // "an enemy's pent-up energy"
DAMAGE_SOURCE_POWERFUL_MOVE_3 = 575,
DAMAGE_SOURCE_POWERFUL_MOVE_4 = 576,
DAMAGE_SOURCE_POWERFUL_MOVE_5 = 577,
DAMAGE_SOURCE_POWERFUL_MOVE_6 = 578,
DAMAGE_SOURCE_POWERFUL_MOVE_7 = 579,
DAMAGE_SOURCE_POWERFUL_MOVE_8 = 580,
DAMAGE_SOURCE_SPIKES = 581,
DAMAGE_SOURCE_DEBUG_DAMAGE = 582,
DAMAGE_SOURCE_BURN = 583,
DAMAGE_SOURCE_CONSTRICTION = 584,
DAMAGE_SOURCE_POISON = 585,
DAMAGE_SOURCE_WRAP = 586,
DAMAGE_SOURCE_CURSE = 587,
DAMAGE_SOURCE_LEECH_SEED = 588,
DAMAGE_SOURCE_PERISH_SONG = 589,
DAMAGE_SOURCE_NIGHTMARE = 590,
DAMAGE_SOURCE_THROWN_ROCK = 591,
DAMAGE_SOURCE_HUNGER = 592,
DAMAGE_SOURCE_EXPLODED = 593, // I think this one is only used for the monster that explodes.
// Other monsters that are hit by the explosion use
// DAMAGE_SOURCE_EXPLOSION.
DAMAGE_SOURCE_CHESTNUT_TRAP = 594,
DAMAGE_SOURCE_TRAP = 595,
DAMAGE_SOURCE_PITFALL_TRAP = 596,
DAMAGE_SOURCE_BLAST_SEED = 597,
DAMAGE_SOURCE_THROWN_ITEM = 598,
DAMAGE_SOURCE_TRANSFORM_ITEM = 599,
DAMAGE_SOURCE_KNOCKED_FLYING = 600,
DAMAGE_SOURCE_FLYING_MONSTER = 601,
DAMAGE_SOURCE_GAVE_UP = 602, // "gave up the exploration"
DAMAGE_SOURCE_DELETED = 603, // "was deleted for the sake of an event"
DAMAGE_SOURCE_WENT_AWAY = 604, // "went away"
DAMAGE_SOURCE_UNSEEN_FORCE = 605,
DAMAGE_SOURCE_PARTNER_FAINTED = 606, // "returned with the fallen partner"
DAMAGE_SOURCE_WEATHER = 607,
DAMAGE_SOURCE_POSSESS = 608,
DAMAGE_SOURCE_CLIENT_FAINTED = 609, // "failed to protect the client Pokémon"
DAMAGE_SOURCE_ITEM_ORB = 610,
DAMAGE_SOURCE_ITEM_NON_ORB = 611,
DAMAGE_SOURCE_UNK612 = 612, // "-"
DAMAGE_SOURCE_ESCORT_FAINTED = 613, // "failed to escort the client Pokémon"
DAMAGE_SOURCE_OTHER_MONSTER_FAINTED = 614, // "returned with the fallen [string:2]"
DAMAGE_SOURCE_BIDOOF_FAINTED = 615,
DAMAGE_SOURCE_GROVYLE_FAINTED = 616,
DAMAGE_SOURCE_CELEBI_FAINTED = 617,
DAMAGE_SOURCE_CHATOT_FAINTED = 618,
DAMAGE_SOURCE_CRESSELIA_FAINTED = 619,
DAMAGE_SOURCE_TOXIC_SPIKES = 620,
DAMAGE_SOURCE_STEALTH_ROCK = 621,
DAMAGE_SOURCE_BAD_DREAMS = 622,
DAMAGE_SOURCE_EXPLOSION = 623,
DAMAGE_SOURCE_OREN_BERRY = 624,
DAMAGE_SOURCE_DUMMY_625 = 625,
DAMAGE_SOURCE_DUMMY_626 = 626,
DAMAGE_SOURCE_DUMMY_627 = 627,
DAMAGE_SOURCE_DUMMY_628 = 628,
DAMAGE_SOURCE_DUMMY_629 = 629,
DAMAGE_SOURCE_DUMMY_630 = 630,
DAMAGE_SOURCE_DUMMY_631 = 631,
DAMAGE_SOURCE_DUMMY_632 = 632,
DAMAGE_SOURCE_ESCAPE = 633, // "Escaped in the middle of exploration"
DAMAGE_SOURCE_DUNGEON_CLEAR = 634, // "cleared the dungeon"
DAMAGE_SOURCE_RESCUE_SUCCESS = 635, // "succeeded in the rescue mission"
DAMAGE_SOURCE_MISSION_COMPLETE = 636, // "completed a mission! Impressive!"
DAMAGE_SOURCE_BEFRIEND_MEW = 637, // "befriended [CS:N]Mew[CR]!"
};
union damage_source {
enum move_id move;
enum damage_source_non_move other;
};
// Weather ID
enum weather_id {
WEATHER_CLEAR = 0,
WEATHER_SUNNY = 1,
WEATHER_SANDSTORM = 2,
WEATHER_CLOUDY = 3,
WEATHER_RAIN = 4,
WEATHER_HAIL = 5,
WEATHER_FOG = 6,
WEATHER_SNOW = 7,
WEATHER_RANDOM = 8,
};
// Floor layout type during floor generation
enum floor_layout {
LAYOUT_LARGE = 0,
LAYOUT_SMALL = 1,
LAYOUT_ONE_ROOM_MONSTER_HOUSE = 2,
LAYOUT_OUTER_RING = 3,
LAYOUT_CROSSROADS = 4,
LAYOUT_TWO_ROOMS_WITH_MONSTER_HOUSE = 5,
LAYOUT_LINE = 6,
LAYOUT_CROSS = 7,
LAYOUT_LARGE_0x8 = 8,
LAYOUT_BEETLE = 9,
LAYOUT_OUTER_ROOMS = 10,
LAYOUT_MEDIUM = 11,
LAYOUT_UNUSED_0xC = 12,
LAYOUT_UNUSED_0xD = 13,
LAYOUT_UNUSED_0xE = 14,
LAYOUT_UNUSED_0xF = 15,
};
// Trap ID
enum trap_id {
TRAP_NULL_TRAP = 0,
TRAP_MUD_TRAP = 1,
TRAP_STICKY_TRAP = 2,
TRAP_GRIMY_TRAP = 3,
TRAP_SUMMON_TRAP = 4,
TRAP_PITFALL_TRAP = 5,
TRAP_WARP_TRAP = 6,
TRAP_GUST_TRAP = 7,
TRAP_SPIN_TRAP = 8,
TRAP_SLUMBER_TRAP = 9,
TRAP_SLOW_TRAP = 10,
TRAP_SEAL_TRAP = 11,
TRAP_POISON_TRAP = 12,
TRAP_SELFDESTRUCT_TRAP = 13,
TRAP_EXPLOSION_TRAP = 14,
TRAP_PP_ZERO_TRAP = 15,
TRAP_CHESTNUT_TRAP = 16,
TRAP_WONDER_TILE = 17,
TRAP_POKEMON_TRAP = 18,
TRAP_SPIKED_TILE = 19,
TRAP_STEALTH_ROCK = 20,
TRAP_TOXIC_SPIKES = 21,
TRAP_TRIP_TRAP = 22,
TRAP_RANDOM_TRAP = 23,
TRAP_GRUDGE_TRAP = 24,
// Used in fixed room data to indicate that a trap shouldn't be placed on the current tile
// Also used to indicate a random non-wonder tile trap should be selected instead during play
TRAP_NONE = 25,
TRAP_0x1A = 26,
TRAP_0x1B = 27,
TRAP_0x1C = 28,
TRAP_0x1D = 29,
TRAP_0x1E = 30,
TRAP_0x1F = 31,
// Behaves identically to a normal pitfall trap, but uses the sprite where the grate is
// already broken. TRAP_PITFALL_TRAP becomes this one when something falls through.
TRAP_BROKEN_PITFALL_TRAP = 32,
};
// The type of hidden stairs (i.e. where it leads), if present
enum hidden_stairs_type {
HIDDEN_STAIRS_NONE = 0,
HIDDEN_STAIRS_SECRET_BAZAAR = 1,
HIDDEN_STAIRS_SECRET_ROOM = 2,
HIDDEN_STAIRS_RANDOM_SECRET_BAZAAR_OR_SECRET_ROOM = 255,
HIDDEN_STAIRS_PADDING = 0xffffffff,
};
// Used to determine which version of a dungeon to load.
enum game_id {
GAME_SKY = 0,
GAME_TIME = 1,
GAME_DARKNESS = 2,
GAME_PADDING = 0xffffffff,
};
// Objective while in a dungeon
enum dungeon_objective {
OBJECTIVE_STORY = 0, // This dungeon visit is part of the story
OBJECTIVE_NORMAL = 1,
OBJECTIVE_RESCUE = 2, // Rescuing another player
OBJECTIVE_UNK_GAME_MODE_5 = 3, // $GAME_MODE == 5 when entering the dungeon
};
// Move category
enum move_category {
CATEGORY_PHYSICAL = 0,
CATEGORY_SPECIAL = 1,
CATEGORY_STATUS = 2,
CATEGORY_NONE = 3, // this is a guess
};
enum type_matchup {
MATCHUP_IMMUNE = 0,
MATCHUP_NOT_VERY_EFFECTIVE = 1,
MATCHUP_NEUTRAL = 2,
MATCHUP_SUPER_EFFECTIVE = 3,
};
// List of reasons why you can get forcefully kicked out of a dungeon
enum forced_loss_reason {
FORCED_LOSS_NONE = 0, // You don't have to get kicked out of the dungeon
FORCED_LOSS_PARTNER_FAINTED = 1, // Your partner fainted (before postgame)
FORCED_LOSS_CLIENT_FAINTED = 2, // Your client fainted
FORCED_LOSS_ESCORT_FAINTED = 3, // The client you had to escort fainted
// "Your client [name:0] couldn't join you. Let's return to Treasure Town."
FORCED_LOSS_CLIENT_CANT_JOIN = 4,
FORCED_LOSS_PADDING = 0xffffffff,
};
// IQ skill ID. These are usually encoded as bitvectors.
enum iq_skill_id {
IQ_NONE = 0,
IQ_TYPE_ADVANTAGE_MASTER = 1,
IQ_ITEM_CATCHER = 2,
IQ_COURSE_CHECKER = 3,
IQ_SURE_HIT_ATTACKER = 4,
IQ_QUICK_DODGER = 5,
IQ_PP_CHECKER = 6,
IQ_NONTRAITOR = 7,
IQ_STATUS_CHECKER = 8,
IQ_EXP_GO_GETTER = 9,
IQ_EFFICIENCY_EXPERT = 10,
IQ_WEAK_TYPE_PICKER = 11,
IQ_ALL_TERRAIN_HIKER = 12,
IQ_ABSOLUTE_MOVER = 13,
IQ_TRAP_AVOIDER = 14,
IQ_HOUSE_AVOIDER = 15,
IQ_ENERGY_SAVER = 16,
IQ_NONSLEEPER = 17,
IQ_SELF_CURER = 18,
IQ_TRAP_SEER = 19,
IQ_LAVA_EVADER = 20,
IQ_DEDICATED_TRAVELER = 21,
IQ_ITEM_MASTER = 22,
IQ_EXCLUSIVE_MOVE_USER = 23,
IQ_ESCAPIST = 24,
IQ_LOCK_PICKER = 25,
IQ_STAIR_SENSOR = 26,
IQ_COIN_WATCHER = 27,
IQ_EXP_ELITE = 28,
IQ_SHARPSHOOTER = 29,
IQ_FAST_FRIEND = 30,
IQ_PP_SAVER = 31,
IQ_BODYGUARD = 32,
IQ_CAUTIOUS_CREEPER = 33,
IQ_AGGRESSOR = 34,
IQ_DEFENDER = 35,
IQ_INTIMIDATOR = 36,
IQ_SURVIVALIST = 37,
IQ_TRAP_BUSTER = 38,
IQ_COUNTER_HITTER = 39,
IQ_EXTRA_STRIKER = 40,
IQ_HIT_AND_RUNNER = 41,
IQ_PARRY_EXPERT = 42,
IQ_QUICK_STRIKER = 43,
IQ_NO_CHARGER = 44,
IQ_WARY_FIGHTER = 45,
IQ_GAP_PROBER = 46,
IQ_POWER_PITCHER = 47,
IQ_CONCENTRATOR = 48,
IQ_COUNTER_BASHER = 49,
IQ_CHEERLEADER = 50,
IQ_NATURE_GIFTER = 51,
IQ_WISE_HEALER = 52,
IQ_QUICK_HEALER = 53,
IQ_ACUTE_SNIFFER = 54,
IQ_DEEP_BREATHER = 55,
IQ_BRICK_TOUGH = 56,
IQ_MULTITALENT = 57,
IQ_TIME_TRIPPER = 58,
IQ_ERRATIC_PLAYER = 59,
IQ_PRACTICE_SWINGER = 60,
IQ_NO_DEFEATIST = 61,
IQ_HAGGLER = 62,
IQ_CLUTCH_PERFORMER = 63,
IQ_CRITICAL_DODGER = 64,
IQ_MAP_SURVEYOR = 65,
IQ_PIERCE_HURLER = 66,
IQ_COLLECTOR = 67,
IQ_TRUE_POWERIST = 68,
};
enum movement_flag
{
MOVEMENT_FLAG_SWAPPING_PLACES = 1 << 5,
MOVEMENT_FLAG_WALKING = 1 << 9,
MOVEMENT_FLAG_UNK_14 = 1 << 14,
MOVEMENT_FLAG_SWAPPING_PLACES_PETRIFIED_ALLY = 1 << 15, // Set if the Pokémon is petrified and the leader cures them by swapping places.
};
enum decoy_ai
{
DECOY_AI_NONE = 0,
DECOY_AI_TEAM = 1,
DECOY_AI_WILD = 2,
};
#endif //PMDSKY_ENUMS_H