summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/constants/ability.h156
-rw-r--r--include/constants/evolve_type.h10
-rw-r--r--include/constants/friend_area.h2
-rw-r--r--include/constants/item.h275
-rw-r--r--include/constants/move.h410
-rw-r--r--include/constants/move_id.h412
-rw-r--r--include/constants/type.h38
-rw-r--r--include/constants/walkable_tile.h9
-rw-r--r--include/dungeon_entity.h4
-rw-r--r--include/item.h283
-rw-r--r--include/pokemon.h16
11 files changed, 813 insertions, 802 deletions
diff --git a/include/constants/ability.h b/include/constants/ability.h
index 27f87fc..34515a4 100644
--- a/include/constants/ability.h
+++ b/include/constants/ability.h
@@ -1,84 +1,82 @@
#ifndef GUARD_CONSTANTS_ABILITY_H
#define GUARD_CONSTANTS_ABILITY_H
-enum Ability
-{
- ABILITY_STENCH = 0x1,
- ABILITY_THICK_FAT = 0x2,
- ABILITY_RAIN_DISH = 0x3,
- ABILITY_DRIZZLE = 0x4,
- ABILITY_ARENA_TRAP = 0x5,
- ABILITY_INTIMIDATE = 0x6,
- ABILITY_ROCK_HEAD = 0x7,
- ABILITY_AIR_LOCK = 0x8,
- ABILITY_HYPER_CUTTER = 0x9,
- ABILITY_SHADOW_TAG = 0xA,
- ABILITY_SPEED_BOOST = 0xB,
- ABILITY_BATTLE_ARMOR = 0xC,
- ABILITY_STURDY = 0xD,
- ABILITY_SUCTION_CUPS = 0xE,
- ABILITY_CLEAR_BODY = 0xF,
- ABILITY_TORRENT = 0x10,
- ABILITY_GUTS = 0x11,
- ABILITY_ROUGH_SKIN = 0x12,
- ABILITY_SHELL_ARMOR = 0x13,
- ABILITY_NATURAL_CURE = 0x14,
- ABILITY_DAMP = 0x15,
- ABILITY_LIMBER = 0x16,
- ABILITY_MAGNET_PULL = 0x17,
- ABILITY_WHITE_SMOKE = 0x18,
- ABILITY_SYNCHRONIZE = 0x19,
- ABILITY_OVERGROW = 0x1A,
- ABILITY_SWIFT_SWIM = 0x1B,
- ABILITY_SAND_STREAM = 0x1C,
- ABILITY_SAND_VEIL = 0x1D,
- ABILITY_KEEN_EYE = 0x1E,
- ABILITY_INNER_FOCUS = 0x1F,
- ABILITY_STATIC = 0x20,
- ABILITY_SHED_SKIN = 0x21,
- ABILITY_HUGE_POWER = 0x22,
- ABILITY_VOLT_ABSORB = 0x23,
- ABILITY_WATER_ABSORB = 0x24,
- ABILITY_FORECAST = 0x25,
- ABILITY_SERENE_GRACE = 0x26,
- ABILITY_POISON_POINT = 0x27,
- ABILITY_TRACE = 0x28,
- ABILITY_OBLIVIOUS = 0x29,
- ABILITY_TRUANT = 0x2A,
- ABILITY_RUN_AWAY = 0x2B,
- ABILITY_STICKY_HOLD = 0x2C,
- ABILITY_CLOUD_NINE = 0x2D,
- ABILITY_ILLUMINATE = 0x2E,
- ABILITY_EARLY_BIRD = 0x2F,
- ABILITY_HUSTLE = 0x30,
- ABILITY_DROUGHT = 0x31,
- ABILITY_LIGHTNINGROD = 0x32,
- ABILITY_COMPOUNDEYES = 0x33,
- ABILITY_MARVEL_SCALE = 0x34,
- ABILITY_WONDER_GUARD = 0x35,
- ABILITY_INSOMNIA = 0x36,
- ABILITY_LEVITATE = 0x37,
- ABILITY_PLUS = 0x38,
- ABILITY_PRESSURE = 0x39,
- ABILITY_LIQUID_OOZE = 0x3A,
- ABILITY_COLOR_CHANGE = 0x3B,
- ABILITY_SOUNDPROOF = 0x3C,
- ABILITY_EFFECT_SPORE = 0x3D,
- ABILITY_FLAME_BODY = 0x3E,
- ABILITY_MINUS = 0x3F,
- ABILITY_OWN_TEMPO = 0x40,
- ABILITY_MAGMA_ARMOR = 0x41,
- ABILITY_WATER_VEIL = 0x42,
- ABILITY_SWARM = 0x43,
- ABILITY_CUTE_CHARM = 0x44,
- ABILITY_IMMUNITY = 0x45,
- ABILITY_BLAZE = 0x46,
- ABILITY_PICKUP = 0x47,
- ABILITY_FLASH_FIRE = 0x48,
- ABILITY_VITAL_SPIRIT = 0x49,
- ABILITY_CHLOROPHYLL = 0x4A,
- ABILITY_PURE_POWER = 0x4B,
- ABILITY_SHIELD_DUST = 0x4C
-};
+#define ABILITY_NONE 0x0
+#define ABILITY_STENCH 0x1
+#define ABILITY_THICK_FAT 0x2
+#define ABILITY_RAIN_DISH 0x3
+#define ABILITY_DRIZZLE 0x4
+#define ABILITY_ARENA_TRAP 0x5
+#define ABILITY_INTIMIDATE 0x6
+#define ABILITY_ROCK_HEAD 0x7
+#define ABILITY_AIR_LOCK 0x8
+#define ABILITY_HYPER_CUTTER 0x9
+#define ABILITY_SHADOW_TAG 0xA
+#define ABILITY_SPEED_BOOST 0xB
+#define ABILITY_BATTLE_ARMOR 0xC
+#define ABILITY_STURDY 0xD
+#define ABILITY_SUCTION_CUPS 0xE
+#define ABILITY_CLEAR_BODY 0xF
+#define ABILITY_TORRENT 0x10
+#define ABILITY_GUTS 0x11
+#define ABILITY_ROUGH_SKIN 0x12
+#define ABILITY_SHELL_ARMOR 0x13
+#define ABILITY_NATURAL_CURE 0x14
+#define ABILITY_DAMP 0x15
+#define ABILITY_LIMBER 0x16
+#define ABILITY_MAGNET_PULL 0x17
+#define ABILITY_WHITE_SMOKE 0x18
+#define ABILITY_SYNCHRONIZE 0x19
+#define ABILITY_OVERGROW 0x1A
+#define ABILITY_SWIFT_SWIM 0x1B
+#define ABILITY_SAND_STREAM 0x1C
+#define ABILITY_SAND_VEIL 0x1D
+#define ABILITY_KEEN_EYE 0x1E
+#define ABILITY_INNER_FOCUS 0x1F
+#define ABILITY_STATIC 0x20
+#define ABILITY_SHED_SKIN 0x21
+#define ABILITY_HUGE_POWER 0x22
+#define ABILITY_VOLT_ABSORB 0x23
+#define ABILITY_WATER_ABSORB 0x24
+#define ABILITY_FORECAST 0x25
+#define ABILITY_SERENE_GRACE 0x26
+#define ABILITY_POISON_POINT 0x27
+#define ABILITY_TRACE 0x28
+#define ABILITY_OBLIVIOUS 0x29
+#define ABILITY_TRUANT 0x2A
+#define ABILITY_RUN_AWAY 0x2B
+#define ABILITY_STICKY_HOLD 0x2C
+#define ABILITY_CLOUD_NINE 0x2D
+#define ABILITY_ILLUMINATE 0x2E
+#define ABILITY_EARLY_BIRD 0x2F
+#define ABILITY_HUSTLE 0x30
+#define ABILITY_DROUGHT 0x31
+#define ABILITY_LIGHTNINGROD 0x32
+#define ABILITY_COMPOUNDEYES 0x33
+#define ABILITY_MARVEL_SCALE 0x34
+#define ABILITY_WONDER_GUARD 0x35
+#define ABILITY_INSOMNIA 0x36
+#define ABILITY_LEVITATE 0x37
+#define ABILITY_PLUS 0x38
+#define ABILITY_PRESSURE 0x39
+#define ABILITY_LIQUID_OOZE 0x3A
+#define ABILITY_COLOR_CHANGE 0x3B
+#define ABILITY_SOUNDPROOF 0x3C
+#define ABILITY_EFFECT_SPORE 0x3D
+#define ABILITY_FLAME_BODY 0x3E
+#define ABILITY_MINUS 0x3F
+#define ABILITY_OWN_TEMPO 0x40
+#define ABILITY_MAGMA_ARMOR 0x41
+#define ABILITY_WATER_VEIL 0x42
+#define ABILITY_SWARM 0x43
+#define ABILITY_CUTE_CHARM 0x44
+#define ABILITY_IMMUNITY 0x45
+#define ABILITY_BLAZE 0x46
+#define ABILITY_PICKUP 0x47
+#define ABILITY_FLASH_FIRE 0x48
+#define ABILITY_VITAL_SPIRIT 0x49
+#define ABILITY_CHLOROPHYLL 0x4A
+#define ABILITY_PURE_POWER 0x4B
+#define ABILITY_SHIELD_DUST 0x4C
#endif
diff --git a/include/constants/evolve_type.h b/include/constants/evolve_type.h
new file mode 100644
index 0000000..588484a
--- /dev/null
+++ b/include/constants/evolve_type.h
@@ -0,0 +1,10 @@
+#ifndef GUARD_CONSTANTS_EVOLVE_TYPE_H
+#define GUARD_CONSTANTS_EVOLVE_TYPE_H
+
+#define EVOLVE_TYPE_NONE 0
+#define EVOLVE_TYPE_LEVEL 1
+#define EVOLVE_TYPE_IQ 2
+#define EVOLVE_TYPE_ITEM 3
+#define EVOLVE_TYPE_LINK_CABLE 13
+
+#endif
diff --git a/include/constants/friend_area.h b/include/constants/friend_area.h
index 4692f89..c94e2e7 100644
--- a/include/constants/friend_area.h
+++ b/include/constants/friend_area.h
@@ -48,7 +48,7 @@
#define DRAGON_CAVE 35
#define BOULDER_CAVE 36
#define JUNGLE 37
-#define DECRPEPIT_LAB 38
+#define DECREPIT_LAB 38
#define MT_DISCIPLINE 39
#define THUNDER_MEADOW 40
#define POWER_PLANT 41
diff --git a/include/constants/item.h b/include/constants/item.h
new file mode 100644
index 0000000..1268bd8
--- /dev/null
+++ b/include/constants/item.h
@@ -0,0 +1,275 @@
+#ifndef GUARD_CONSTANTS_ITEM_H
+#define GUARD_CONSTANTS_ITEM_H
+
+#define NUMBER_OF_ITEM_IDS 0xF0
+
+#define ITEM_TYPE_THROWABLE 0
+#define ITEM_TYPE_ROCK 1
+#define ITEM_TYPE_BERRY_SEED 2
+#define ITEM_TYPE_APPLE_GUMMI 3
+#define ITEM_TYPE_HOLD_ITEM 4
+#define ITEM_TYPE_TM 5
+#define ITEM_TYPE_MONEY 6
+#define ITEM_TYPE_MISC 8
+#define ITEM_TYPE_ORB 9
+#define ITEM_TYPE_LINK_BOX 10
+#define ITEM_TYPE_USED_TM 11
+
+#define ITEM_CATEGORY_NOTHING 0
+#define ITEM_CATEGORY_THROWABLE 1
+#define ITEM_CATEGORY_ROCKS 2
+#define ITEM_CATEGORY_RIBBONS 3
+#define ITEM_CATEGORY_FOOD 4
+#define ITEM_CATEGORY_HEALING 5
+#define ITEM_CATEGORY_CHESTNUT 6
+#define ITEM_CATEGORY_MONEY_WISH_STONE 7
+#define ITEM_CATEGORY_MISC 8
+#define ITEM_CATEGORY_TM 9
+#define ITEM_CATEGORY_LINK_BOX 10
+#define ITEM_CATEGORY_SPECS 11
+#define ITEM_CATEGORY_SCARFS 12
+#define ITEM_CATEGORY_ORBS 13
+
+// see https://bulbapedia.bulbagarden.net/wiki/List_of_items_by_index_number_(Rescue_Team)
+#define ITEM_ID_NOTHING 0x0
+#define ITEM_ID_STICK 0x1
+#define ITEM_ID_IRON_THORN 0x2
+#define ITEM_ID_SILVER_SPIKE 0x3
+#define ITEM_ID_GOLD_FANG 0x4
+#define ITEM_ID_CACNEA_SPIKE 0x5
+#define ITEM_ID_CORSOLA_TWIG 0x6
+#define ITEM_ID_GRAVELEROCK 0x7
+#define ITEM_ID_GEO_PEBBLE 0x8
+#define ITEM_ID_MOBILE_SCARF 0x9
+#define ITEM_ID_HEAL_RIBBON 0xA
+#define ITEM_ID_TWIST_BAND 0xB
+#define ITEM_ID_SCOPE_LENS 0xC
+#define ITEM_ID_PATSY_BAND 0xD
+#define ITEM_ID_NOSTICK_CAP 0xE
+#define ITEM_ID_PIERCE_BAND 0xF
+#define ITEM_ID_JOY_RIBBON 0x10
+#define ITEM_ID_X_RAY_SPECS 0x11
+#define ITEM_ID_PERSIM_BAND 0x12
+#define ITEM_ID_POWER_BAND 0x13
+#define ITEM_ID_PECHA_SCARF 0x14
+#define ITEM_ID_INSOMNISCOPE 0x15
+#define ITEM_ID_WARP_SCARF 0x16
+#define ITEM_ID_TIGHT_BELT 0x17
+#define ITEM_ID_SNEAK_SCARF 0x18
+#define ITEM_ID_GOLD_RIBBON 0x19
+#define ITEM_ID_GOGGLE_SPECS 0x1A
+#define ITEM_ID_DIET_RIBBON 0x1B
+#define ITEM_ID_TRAP_SCARF 0x1C
+#define ITEM_ID_RACKET_BAND 0x1D
+#define ITEM_ID_DEF_SCARF 0x1E
+#define ITEM_ID_STAMINA_BAND 0x1F
+#define ITEM_ID_PLAIN_RIBBON 0x20
+#define ITEM_ID_SPECIAL_BAND 0x21
+#define ITEM_ID_ZINC_BAND 0x22
+#define ITEM_ID_DETECT_BAND 0x23
+#define ITEM_ID_ALERT_SPECS 0x24
+#define ITEM_ID_DODGE_SCARF 0x25
+#define ITEM_ID_BOUNCE_BAND 0x26
+#define ITEM_ID_CURVE_BAND 0x27
+#define ITEM_ID_WHIFF_SPECS 0x28
+#define ITEM_ID_NO_AIM_SCOPE 0x29
+#define ITEM_ID_LOCKON_SPECS 0x2A
+#define ITEM_ID_MUNCH_BELT 0x2B
+#define ITEM_ID_PASS_SCARF 0x2C
+#define ITEM_ID_WEATHER_BAND 0x2D
+#define ITEM_ID_FRIEND_BOW 0x2E
+#define ITEM_ID_BEAUTY_SCARF 0x2F
+#define ITEM_ID_SUN_RIBBON 0x30
+#define ITEM_ID_LUNAR_RIBBON 0x31
+#define ITEM_ID_RING_D 0x32
+#define ITEM_ID_RING_E 0x33
+#define ITEM_ID_RING_F 0x34
+#define ITEM_ID_HEAL_SEED 0x35
+#define ITEM_ID_WISH_STONE 0x36
+#define ITEM_ID_ORAN_BERRY 0x37
+#define ITEM_ID_SITRUS_BERRY 0x38
+#define ITEM_ID_EYEDROP_SEED 0x39
+#define ITEM_ID_REVIVER_SEED 0x3A
+#define ITEM_ID_BLINKER_SEED 0x3B
+#define ITEM_ID_DOOM_SEED 0x3C
+#define ITEM_ID_ALLURE_SEED 0x3D
+#define ITEM_ID_LIFE_SEED 0x3E
+#define ITEM_ID_RAWST_BERRY 0x3F
+#define ITEM_ID_HUNGER_SEED 0x40
+#define ITEM_ID_QUICK_SEED 0x41
+#define ITEM_ID_PECHA_BERRY 0x42
+#define ITEM_ID_CHERI_BERRY 0x43
+#define ITEM_ID_TOTTER_SEED 0x44
+#define ITEM_ID_SLEEP_SEED 0x45
+#define ITEM_ID_PLAIN_SEED 0x46
+#define ITEM_ID_WARP_SEED 0x47
+#define ITEM_ID_BLAST_SEED 0x48
+#define ITEM_ID_GINSENG 0x49
+#define ITEM_ID_JOY_SEED 0x4A
+#define ITEM_ID_CHESTO_BERRY 0x4B
+#define ITEM_ID_STUN_SEED 0x4C
+#define ITEM_ID_MAX_ELIXIR 0x4D
+#define ITEM_ID_PROTEIN 0x4E
+#define ITEM_ID_CALCIUM 0x4F
+#define ITEM_ID_IRON 0x50
+#define ITEM_ID_ZINC 0x51
+#define ITEM_ID_APPLE 0x52
+#define ITEM_ID_BIG_APPLE 0x53
+#define ITEM_ID_GRIMY_FOOD 0x54
+#define ITEM_ID_HUGE_APPLE 0x55
+#define ITEM_ID_WHITE_GUMMI 0x56
+#define ITEM_ID_RED_GUMMI 0x57
+#define ITEM_ID_BLUE_GUMMI 0x58
+#define ITEM_ID_GRASS_GUMMI 0x59
+#define ITEM_ID_YELLOW_GUMMI 0x5A
+#define ITEM_ID_CLEAR_GUMMI 0x5B
+#define ITEM_ID_ORANGE_GUMMI 0x5C
+#define ITEM_ID_PINK_GUMMI 0x5D
+#define ITEM_ID_BROWN_GUMMI 0x5E
+#define ITEM_ID_SKY_GUMMI 0x5F
+#define ITEM_ID_GOLD_GUMMI 0x60
+#define ITEM_ID_GREEN_GUMMI 0x61
+#define ITEM_ID_GRAY_GUMMI 0x62
+#define ITEM_ID_PURPLE_GUMMI 0x63
+#define ITEM_ID_ROYAL_GUMMI 0x64
+#define ITEM_ID_BLACK_GUMMI 0x65
+#define ITEM_ID_SILVER_GUMMI 0x66
+#define ITEM_ID_BANANA 0x67
+#define ITEM_ID_CHESTNUT 0x68
+#define ITEM_ID_POKE 0x69 // 105 (0x69)
+#define ITEM_ID_UPGRADE 0x6A
+#define ITEM_ID_KINGS_ROCK 0x6B
+#define ITEM_ID_THUNDERSTONE 0x6C
+#define ITEM_ID_DEEPSEASCALE 0x6D
+#define ITEM_ID_DEEPSEATOOTH 0x6E
+#define ITEM_ID_SUN_STONE 0x6F
+#define ITEM_ID_MOON_STONE 0x70
+#define ITEM_ID_FIRE_STONE 0x71
+#define ITEM_ID_WATER_STONE 0x72
+#define ITEM_ID_METAL_COAT 0x73
+#define ITEM_ID_LEAF_STONE 0x74
+#define ITEM_ID_DRAGON_SCALE 0x75
+#define ITEM_ID_LINK_CABLE 0x76
+#define ITEM_ID_ICE_PART 0x77
+#define ITEM_ID_STEEL_PART 0x78
+#define ITEM_ID_ROCK_PART 0x79
+#define ITEM_ID_MUSIC_BOX 0x7A
+#define ITEM_ID_KEY 0x7B
+#define ITEM_ID_USED_TM 0x7C
+#define ITEM_ID_FOCUS_PUNCH 0x7D
+#define ITEM_ID_DRAGON_CLAW 0x7E
+#define ITEM_ID_WATER_PULSE 0x7F
+#define ITEM_ID_CALM_MIND 0x80
+#define ITEM_ID_ROAR 0x81
+#define ITEM_ID_TOXIC 0x82
+#define ITEM_ID_HAIL_ORB 0x83
+#define ITEM_ID_BULK_UP 0x84
+#define ITEM_ID_BULLET_SEED 0x85
+#define ITEM_ID_HIDDEN_POWER 0x86
+#define ITEM_ID_SUNNY_ORB 0x87
+#define ITEM_ID_TAUNT 0x88
+#define ITEM_ID_ICE_BEAM 0x89
+#define ITEM_ID_BLIZZARD 0x8A
+#define ITEM_ID_HYPER_BEAM 0x8B
+#define ITEM_ID_LIGHT_SCREEN 0x8C
+#define ITEM_ID_PROTECT 0x8D
+#define ITEM_ID_RAINY_ORB 0x8E
+#define ITEM_ID_GIGA_DRAIN 0x8F
+#define ITEM_ID_SAFEGUARD 0x90
+#define ITEM_ID_FRUSTRATION 0x91
+#define ITEM_ID_SOLARBEAM 0x92
+#define ITEM_ID_IRON_TAIL 0x93
+#define ITEM_ID_THUNDERBOLT 0x94
+#define ITEM_ID_THUNDER 0x95
+#define ITEM_ID_EARTHQUAKE 0x96
+#define ITEM_ID_RETURN 0x97
+#define ITEM_ID_DIG 0x98
+#define ITEM_ID_PSYCHIC 0x99
+#define ITEM_ID_SHADOW_BALL 0x9A
+#define ITEM_ID_BRICK_BREAK 0x9B
+#define ITEM_ID_EVASION_ORB 0x9C
+#define ITEM_ID_REFLECT 0x9D
+#define ITEM_ID_SHOCK_WAVE 0x9E
+#define ITEM_ID_FLAMETHROWER 0x9F
+#define ITEM_ID_SLUDGE_BOMB 0xA0
+#define ITEM_ID_SANDY_ORB 0xA1
+#define ITEM_ID_FIRE_BLAST 0xA2
+#define ITEM_ID_ROCKY_ORB 0xA3
+#define ITEM_ID_AERIAL_ACE 0xA4
+#define ITEM_ID_TORMENT 0xA5
+#define ITEM_ID_FACADE 0xA6
+#define ITEM_ID_SECRET_POWER 0xA7
+#define ITEM_ID_REST 0xA8
+#define ITEM_ID_ATTRACT 0xA9
+#define ITEM_ID_THIEF 0xAA
+#define ITEM_ID_STEEL_WING 0xAB
+#define ITEM_ID_SKILL_SWAP 0xAC
+#define ITEM_ID_SNATCH_ORB 0xAD
+#define ITEM_ID_OVERHEAT 0xAE
+#define ITEM_ID_WIDE_SLASH 0xAF
+#define ITEM_ID_EXCAVATE 0xB0
+#define ITEM_ID_SPIN_SLASH 0xB1
+#define ITEM_ID_SEE_TRAP_ORB 0xB2
+#define ITEM_ID_MUG_ORB 0xB3
+#define ITEM_ID_REBOUND_ORB 0xB4
+#define ITEM_ID_LOB_ORB 0xB5
+#define ITEM_ID_SWITCHER_ORB 0xB6
+#define ITEM_ID_BLOWBACK_ORB 0xB7
+#define ITEM_ID_WARP_ORB 0xB8
+#define ITEM_ID_TRANSFER_ORB 0xB9
+#define ITEM_ID_SLOW_ORB 0xBA
+#define ITEM_ID_QUICK_ORB 0xBB
+#define ITEM_ID_LUMINOUS_ORB 0xBC
+#define ITEM_ID_PETRIFY_ORB 0xBD
+#define ITEM_ID_STAYAWAY_ORB 0xBE
+#define ITEM_ID_POUNCE_ORB 0xBF
+#define ITEM_ID_TRAWL_ORB 0xC0
+#define ITEM_ID_CLEANSE_ORB 0xC1
+#define ITEM_ID_OBSERVER_ORB 0xC2
+#define ITEM_ID_DECOY_ORB 0xC3
+#define ITEM_ID_SLUMBER_ORB 0xC4
+#define ITEM_ID_TOTTER_ORB 0xC5
+#define ITEM_ID_TWO_EDGE_ORB 0xC6
+#define ITEM_ID_SILENCE_ORB 0xC7
+#define ITEM_ID_ESCAPE_ORB 0xC8
+#define ITEM_ID_SCANNER_ORB 0xC9
+#define ITEM_ID_RADAR_ORB 0xCA
+#define ITEM_ID_DROUGHT_ORB 0xCB
+#define ITEM_ID_TRAPBUST_ORB 0xCC
+#define ITEM_ID_ROLLCALL_ORB 0xCD
+#define ITEM_ID_INVISIFY_ORB 0xCE
+#define ITEM_ID_ONE_SHOT_ORB 0xCF
+#define ITEM_ID_IDENTIFY_ORB 0xD0
+#define ITEM_ID_VACUUM_CUT 0xD1
+#define ITEM_ID_REVIVER_ORB 0xD2
+#define ITEM_ID_SHOCKER_ORB 0xD3
+#define ITEM_ID_SIZEBUST_ORB 0xD4
+#define ITEM_ID_ONE_ROOM_ORB 0xD5
+#define ITEM_ID_FILL_IN_ORB 0xD6
+#define ITEM_ID_TRAPPER_ORB 0xD7
+#define ITEM_ID_POSSESS_ORB 0xD8
+#define ITEM_ID_ITEMIZER_ORB 0xD9
+#define ITEM_ID_HURL_ORB 0xDA
+#define ITEM_ID_MOBILE_ORB 0xDB
+#define ITEM_ID_TOSS_ORB 0xDC
+#define ITEM_ID_STAIRS_ORB 0xDD
+#define ITEM_ID_LONGTOSS_ORB 0xDE
+#define ITEM_ID_PIERCE_ORB 0xDF
+#define ITEM_ID_CUT 0xE0
+#define ITEM_ID_FLY 0xE1
+#define ITEM_ID_SURF 0xE2
+#define ITEM_ID_STRENGTH 0xE3
+#define ITEM_ID_FLASH 0xE4
+#define ITEM_ID_ROCK_SMASH 0xE5
+#define ITEM_ID_WATERFALL 0xE6
+#define ITEM_ID_DIVE 0xE7
+#define ITEM_ID_LINK_BOX 0xE8
+#define ITEM_ID_SWITCH_BOX 0xE9
+#define ITEM_ID_WEAVILE_FIG 0xEA
+#define ITEM_ID_MIME_JR_FIG 0xEB
+#define ITEM_ID_BEATUP_ORB 0xEC
+#define ITEM_ID_G_MACHINE_6 0xED
+#define ITEM_ID_G_MACHINE_7 0xEE
+#define ITEM_ID_G_MACHINE_8 0xEF
+
+#endif
diff --git a/include/constants/move.h b/include/constants/move.h
index 6f1ea70..09e3276 100644
--- a/include/constants/move.h
+++ b/include/constants/move.h
@@ -61,414 +61,4 @@ enum TargetingFlag
TARGETING_FLAG_EXPOSE = 0x600,
};
-enum MoveID
-{
- MOVE_IRON_TAIL = 0x1,
- MOVE_ICE_BALL = 0x2,
- MOVE_YAWN = 0x3,
- MOVE_LOVELY_KISS = 0x4,
- MOVE_NIGHTMARE = 0x5,
- MOVE_MORNING_SUN = 0x6,
- MOVE_VITAL_THROW = 0x7,
- MOVE_DIG = 0x8,
- MOVE_THRASH = 0x9,
- MOVE_SWEET_SCENT = 0xA,
- MOVE_CHARM = 0xB,
- MOVE_RAIN_DANCE = 0xC,
- MOVE_CONFUSE_RAY = 0xD,
- MOVE_HAIL = 0xE,
- MOVE_AROMATHERAPY = 0xF,
- MOVE_BUBBLE = 0x10,
- MOVE_ENCORE = 0x11,
- MOVE_CUT = 0x12,
- MOVE_RAGE = 0x13,
- MOVE_SUPER_FANG = 0x14,
- MOVE_PAIN_SPLIT = 0x15,
- MOVE_TORMENT = 0x16,
- MOVE_STRING_SHOT = 0x17,
- MOVE_SWAGGER = 0x18,
- MOVE_SNORE = 0x19,
- MOVE_HEAL_BELL = 0x1A,
- MOVE_SCREECH = 0x1B,
- MOVE_ROCK_THROW = 0x1C,
- MOVE_ROCK_SMASH = 0x1D,
- MOVE_ROCK_SLIDE = 0x1E,
- MOVE_WEATHER_BALL = 0x1F,
- MOVE_WHIRLPOOL = 0x20,
- MOVE_FAKE_TEARS = 0x21,
- MOVE_SING = 0x22,
- MOVE_SPITE = 0x23,
- MOVE_AIR_CUTTER = 0x24,
- MOVE_SMOKESCREEN = 0x25,
- MOVE_PURSUIT = 0x26,
- MOVE_DOUBLESLAP = 0x27,
- MOVE_MIRROR_MOVE = 0x28,
- MOVE_OVERHEAT = 0x29,
- MOVE_AURORA_BEAM = 0x2A,
- MOVE_MEMENTO = 0x2B,
- MOVE_OCTAZOOKA = 0x2C,
- MOVE_FLATTER = 0x2D,
- MOVE_ASTONISH = 0x2E,
- MOVE_WILL_O_WISP = 0x2F,
- MOVE_RETURN = 0x30,
- MOVE_GRUDGE = 0x31,
- MOVE_STRENGTH = 0x32,
- MOVE_COUNTER = 0x33,
- MOVE_FLAME_WHEEL = 0x34,
- MOVE_FLAMETHROWER = 0x35,
- MOVE_ODOR_SLEUTH = 0x36,
- MOVE_SHARPEN = 0x37,
- MOVE_DOUBLE_TEAM = 0x38,
- MOVE_GUST = 0x39,
- MOVE_HARDEN = 0x3A,
- MOVE_DISABLE = 0x3B,
- MOVE_RAZOR_WIND = 0x3C,
- MOVE_BIDE = 0x3D,
- MOVE_CRUNCH = 0x3E,
- MOVE_BITE = 0x3F,
- MOVE_THUNDER = 0x40,
- MOVE_THUNDERPUNCH = 0x41,
- MOVE_ENDEAVOR = 0x42,
- MOVE_FACADE = 0x43,
- MOVE_KARATE_CHOP = 0x44,
- MOVE_CLAMP = 0x45,
- MOVE_WITHDRAW = 0x46,
- MOVE_CONSTRICT = 0x47,
- MOVE_BRICK_BREAK = 0x48,
- MOVE_ROCK_TOMB = 0x49,
- MOVE_FOCUS_ENERGY = 0x4A,
- MOVE_FOCUS_PUNCH = 0x4B,
- MOVE_GIGA_DRAIN = 0x4C,
- MOVE_REVERSAL = 0x4D,
- MOVE_SMELLINGSALT = 0x4E,
- MOVE_SPORE = 0x4F,
- MOVE_LEECH_LIFE = 0x50,
- MOVE_SLASH = 0x51,
- MOVE_SILVER_WIND = 0x52,
- MOVE_METAL_SOUND = 0x53,
- MOVE_GRASSWHISTLE = 0x54,
- MOVE_TICKLE = 0x55,
- MOVE_SPIDER_WEB = 0x56,
- MOVE_CRABHAMMER = 0x57,
- MOVE_HAZE = 0x58,
- MOVE_MEAN_LOOK = 0x59,
- MOVE_CROSS_CHOP = 0x5A,
- MOVE_OUTRAGE = 0x5B,
- MOVE_LOW_KICK = 0x5C,
- MOVE_ANCIENTPOWER = 0x5D,
- MOVE_SYNTHESIS = 0x5E,
- MOVE_AGILITY = 0x5F,
- MOVE_RAPID_SPIN = 0x60,
- MOVE_ICY_WIND = 0x61,
- MOVE_MIND_READER = 0x62,
- MOVE_COSMIC_POWER = 0x63,
- MOVE_SKY_ATTACK = 0x64,
- MOVE_POWDER_SNOW = 0x65,
- MOVE_FOLLOW_ME = 0x66,
- MOVE_METEOR_MASH = 0x67,
- MOVE_ENDURE = 0x68,
- MOVE_ROLLOUT = 0x69,
- MOVE_SCARY_FACE = 0x6A,
- MOVE_PSYBEAM = 0x6B,
- MOVE_PSYWAVE = 0x6C,
- MOVE_PSYCHIC = 0x6D,
- MOVE_PSYCHO_BOOST = 0x6E,
- MOVE_HYPNOSIS = 0x6F,
- MOVE_UPROAR = 0x70,
- MOVE_WATER_SPOUT = 0x71,
- MOVE_SIGNAL_BEAM = 0x72,
- MOVE_PSYCH_UP = 0x73,
- MOVE_SUBMISSION = 0x74,
- MOVE_RECOVER = 0x75,
- MOVE_EARTHQUAKE = 0x76,
- MOVE_NATURE_POWER = 0x77,
- MOVE_LICK = 0x78,
- MOVE_FLAIL = 0x79,
- MOVE_TAIL_WHIP = 0x7A,
- MOVE_SELFDESTRUCT = 0x7B,
- MOVE_STUN_SPORE = 0x7C,
- MOVE_BIND = 0x7D,
- MOVE_SHADOW_PUNCH = 0x7E,
- MOVE_SHADOW_BALL = 0x7F,
- MOVE_CHARGE = 0x80,
- MOVE_THUNDERBOLT = 0x81,
- MOVE_MIST = 0x82,
- MOVE_FISSURE = 0x83,
- MOVE_EXTREMESPEED = 0x84,
- MOVE_EXTRASENSORY = 0x85,
- MOVE_SAFEGUARD = 0x86,
- MOVE_ABSORB = 0x87,
- MOVE_SKY_UPPERCUT = 0x88,
- MOVE_SKILL_SWAP = 0x89,
- MOVE_SKETCH = 0x8A,
- MOVE_HEADBUTT = 0x8B,
- MOVE_DOUBLE_EDGE = 0x8C,
- MOVE_SANDSTORM = 0x8D,
- MOVE_SAND_ATTACK = 0x8E,
- MOVE_SAND_TOMB = 0x8F,
- MOVE_SPARK = 0x90,
- MOVE_SWIFT = 0x91,
- MOVE_KINESIS = 0x92,
- MOVE_SMOG = 0x93,
- MOVE_GROWTH = 0x94,
- MOVE_SACRED_FIRE = 0x95,
- MOVE_SHEER_COLD = 0x96,
- MOVE_SOLARBEAM = 0x97,
- MOVE_SONICBOOM = 0x98,
- MOVE_FLY = 0x99,
- MOVE_TACKLE = 0x9A,
- MOVE_EXPLOSION = 0x9B,
- MOVE_DIVE = 0x9C,
- MOVE_FIRE_BLAST = 0x9D,
- MOVE_WATERFALL = 0x9E,
- MOVE_MUDDY_WATER = 0x9F,
- MOVE_STOCKPILE = 0xA0,
- MOVE_SLAM = 0xA1,
- MOVE_TWISTER = 0xA2,
- MOVE_BULLET_SEED = 0xA3,
- MOVE_TWINEEDLE = 0xA4,
- MOVE_SOFTBOILED = 0xA5,
- MOVE_EGG_BOMB = 0xA6,
- MOVE_FAINT_ATTACK = 0xA7,
- MOVE_BARRAGE = 0xA8,
- MOVE_MINIMIZE = 0xA9,
- MOVE_SEISMIC_TOSS = 0xAA,
- MOVE_SUPERSONIC = 0xAB,
- MOVE_TAUNT = 0xAC,
- MOVE_MOONLIGHT = 0xAD,
- MOVE_PECK = 0xAE,
- MOVE_ARM_THRUST = 0xAF,
- MOVE_HORN_ATTACK = 0xB0,
- MOVE_HORN_DRILL = 0xB1,
- MOVE_WING_ATTACK = 0xB2,
- MOVE_AERIAL_ACE = 0xB3,
- MOVE_ICICLE_SPEAR = 0xB4,
- MOVE_SWORDS_DANCE = 0xB5,
- MOVE_VINE_WHIP = 0xB6,
- MOVE_CONVERSION = 0xB7,
- MOVE_CONVERSION_2 = 0xB8,
- MOVE_HELPING_HAND = 0xB9,
- MOVE_IRON_DEFENSE = 0xBA,
- MOVE_TELEPORT = 0xBB,
- MOVE_THUNDERSHOCK = 0xBC,
- MOVE_SHOCK_WAVE = 0xBD,
- MOVE_QUICK_ATTACK = 0xBE,
- MOVE_SWEET_KISS = 0xBF,
- MOVE_THUNDER_WAVE = 0xC0,
- MOVE_ZAP_CANNON = 0xC1,
- MOVE_BLOCK = 0xC2,
- MOVE_HOWL = 0xC3,
- MOVE_POISON_GAS = 0xC4,
- MOVE_TOXIC = 0xC5,
- MOVE_POISON_FANG = 0xC6,
- MOVE_POISONPOWDER = 0xC7,
- MOVE_POISON_STING = 0xC8,
- MOVE_SPIKE_CANNON = 0xC9,
- MOVE_ACID_ARMOR = 0xCA,
- MOVE_TAKE_DOWN = 0xCB,
- MOVE_JUMP_KICK = 0xCC,
- MOVE_BOUNCE = 0xCD,
- MOVE_HI_JUMP_KICK = 0xCE,
- MOVE_TRI_ATTACK = 0xCF,
- MOVE_DRAGON_CLAW = 0xD0,
- MOVE_TRICK = 0xD1,
- MOVE_TRIPLE_KICK = 0xD2,
- MOVE_DRILL_PECK = 0xD3,
- MOVE_MUD_SPORT = 0xD4,
- MOVE_MUD_SLAP = 0xD5,
- MOVE_THIEF = 0xD6,
- MOVE_AMNESIA = 0xD7,
- MOVE_NIGHT_SHADE = 0xD8,
- MOVE_GROWL = 0xD9,
- MOVE_SLACK_OFF = 0xDA,
- MOVE_SURF = 0xDB,
- MOVE_ROLE_PLAY = 0xDC,
- MOVE_NEEDLE_ARM = 0xDD,
- MOVE_DOUBLE_KICK = 0xDE,
- MOVE_SUNNY_DAY = 0xDF,
- MOVE_LEER = 0xE0,
- MOVE_WISH = 0xE1,
- MOVE_FAKE_OUT = 0xE2,
- MOVE_SLEEP_TALK = 0xE3,
- MOVE_PAY_DAY = 0xE4,
- MOVE_ASSIST = 0xE5,
- MOVE_HEAT_WAVE = 0xE6,
- MOVE_SLEEP_POWDER = 0xE7,
- MOVE_REST = 0xE8,
- MOVE_INGRAIN = 0xE9,
- MOVE_CONFUSION = 0xEA,
- MOVE_BODY_SLAM = 0xEB,
- MOVE_SWALLOW = 0xEC,
- MOVE_CURSE = 0xED,
- MOVE_FRENZY_PLANT = 0xEE,
- MOVE_HYDRO_CANNON = 0xEF,
- MOVE_HYDRO_PUMP = 0xF0,
- MOVE_HYPER_VOICE = 0xF1,
- MOVE_HYPER_BEAM = 0xF2,
- MOVE_SUPERPOWER = 0xF3,
- MOVE_STEEL_WING = 0xF4,
- MOVE_SPIT_UP = 0xF5,
- MOVE_DYNAMICPUNCH = 0xF6,
- MOVE_GUILLOTINE = 0xF7,
- MOVE_VICEGRIP = 0xF8,
- MOVE_KNOCK_OFF = 0xF9,
- MOVE_POUND = 0xFA,
- MOVE_RAZOR_LEAF = 0xFB,
- MOVE_BATON_PASS = 0xFC,
- MOVE_PETAL_DANCE = 0xFD,
- MOVE_SPLASH = 0xFE,
- MOVE_BUBBLEBEAM = 0xFF,
- MOVE_DOOM_DESIRE = 0x100,
- MOVE_BELLY_DRUM = 0x101,
- MOVE_BARRIER = 0x102,
- MOVE_LIGHT_SCREEN = 0x103,
- MOVE_SCRATCH = 0x104,
- MOVE_HYPER_FANG = 0x105,
- MOVE_EMBER = 0x106,
- MOVE_SECRET_POWER = 0x107,
- MOVE_DIZZY_PUNCH = 0x108,
- MOVE_BULK_UP = 0x109,
- MOVE_IMPRISON = 0x10A,
- MOVE_FEATHERDANCE = 0x10B,
- MOVE_WHIRLWIND = 0x10C,
- MOVE_BEAT_UP = 0x10D,
- MOVE_BLIZZARD = 0x10E,
- MOVE_STOMP = 0x10F,
- MOVE_BLAST_BURN = 0x110,
- MOVE_FLASH = 0x111,
- MOVE_TEETER_DANCE = 0x112,
- MOVE_CRUSH_CLAW = 0x113,
- MOVE_BLAZE_KICK = 0x114,
- MOVE_PRESENT = 0x115,
- MOVE_ERUPTION = 0x116,
- MOVE_SLUDGE = 0x117,
- MOVE_SLUDGE_BOMB = 0x118,
- MOVE_GLARE = 0x119,
- MOVE_TRANSFORM = 0x11A,
- MOVE_POISON_TAIL = 0x11B,
- MOVE_ROAR = 0x11C,
- MOVE_BONE_RUSH = 0x11D,
- MOVE_CAMOUFLAGE = 0x11E,
- MOVE_COVET = 0x11F,
- MOVE_TAIL_GLOW = 0x120,
- MOVE_BONE_CLUB = 0x121,
- MOVE_BONEMERANG = 0x122,
- MOVE_FIRE_SPIN = 0x123,
- MOVE_FIRE_PUNCH = 0x124,
- MOVE_PERISH_SONG = 0x125,
- MOVE_WRAP = 0x126,
- MOVE_SPIKES = 0x127,
- MOVE_MAGNITUDE = 0x128,
- MOVE_MAGICAL_LEAF = 0x129,
- MOVE_MAGIC_COAT = 0x12A,
- MOVE_MUD_SHOT = 0x12B,
- MOVE_MACH_PUNCH = 0x12C,
- MOVE_PROTECT = 0x12D,
- MOVE_DEFENSE_CURL = 0x12E,
- MOVE_ROLLING_KICK = 0x12F,
- MOVE_SUBSTITUTE = 0x130,
- MOVE_DETECT = 0x131,
- MOVE_PIN_MISSILE = 0x132,
- MOVE_WATER_SPORT = 0x133,
- MOVE_WATER_GUN = 0x134,
- MOVE_MIST_BALL = 0x135,
- MOVE_WATER_PULSE = 0x136,
- MOVE_FURY_ATTACK = 0x137,
- MOVE_FURY_SWIPES = 0x138,
- MOVE_DESTINY_BOND = 0x139,
- MOVE_FALSE_SWIPE = 0x13A,
- MOVE_FORESIGHT = 0x13B,
- MOVE_MIRROR_COAT = 0x13C,
- MOVE_FUTURE_SIGHT = 0x13D,
- MOVE_MILK_DRINK = 0x13E,
- MOVE_CALM_MIND = 0x13F,
- MOVE_MEGA_DRAIN = 0x140,
- MOVE_MEGA_KICK = 0x141,
- MOVE_MEGA_PUNCH = 0x142,
- MOVE_MEGAHORN = 0x143,
- MOVE_HIDDEN_POWER = 0x144,
- MOVE_METAL_CLAW = 0x145,
- MOVE_ATTRACT = 0x146,
- MOVE_MIMIC = 0x147,
- MOVE_FRUSTRATION = 0x148,
- MOVE_LEECH_SEED = 0x149,
- MOVE_METRONOME = 0x14A,
- MOVE_DREAM_EATER = 0x14B,
- MOVE_ACID = 0x14C,
- MOVE_MEDITATE = 0x14D,
- MOVE_SNATCH = 0x14E,
- MOVE_LUSTER_PURGE = 0x14F,
- MOVE_LEAF_BLADE = 0x150,
- MOVE_RECYCLE = 0x151,
- MOVE_REFLECT = 0x152,
- MOVE_REFRESH = 0x153,
- MOVE_REVENGE = 0x154,
- MOVE_DRAGON_RAGE = 0x155,
- MOVE_DRAGONBREATH = 0x156,
- MOVE_DRAGON_DANCE = 0x157,
- MOVE_ICE_PUNCH = 0x158,
- MOVE_ICE_BEAM = 0x159,
- MOVE_FURY_CUTTER = 0x15A,
- MOVE_COMET_PUNCH = 0x15B,
- MOVE_SKULL_BASH = 0x15C,
- MOVE_LOCK_ON = 0x15D,
- MOVE_ROCK_BLAST = 0x15E,
- MOVE_COTTON_SPORE = 0x15F,
- MOVE_STRUGGLE = 0x160,
- MOVE_AEROBLAST = 0x161,
- MOVE_VOLT_TACKLE = 0x162,
- MOVE_REGULAR_ATTACK = 0x163,
- MOVE_WIDE_SLASH = 0x168,
- MOVE_EXCAVATE = 0x169, // Unused
- MOVE_SPIN_SLASH = 0x16A, // Unused
- // Orb effects
- MOVE_SEE_TRAP = 0x16B,
- MOVE_TAKEAWAY = 0x16C,
- MOVE_REBOUND = 0x16D,
- MOVE_BLOOP_SLASH = 0x16E,
- MOVE_SWITCHER = 0x16F,
- MOVE_BLOWBACK = 0x170,
- MOVE_WARP = 0x171,
- MOVE_TRANSFER = 0x172,
- MOVE_SLOW_DOWN = 0x173,
- MOVE_SPEED_BOOST = 0x174,
- MOVE_SEARCHLIGHT = 0x175,
- MOVE_PETRIFY = 0x176,
- MOVE_STAY_AWAY = 0x177,
- MOVE_POUNCE = 0x178,
- MOVE_TRAWL = 0x179,
- MOVE_CLEANSE = 0x17A,
- MOVE_OBSERVER = 0x17B,
- MOVE_DECOY_MAKER = 0x17C,
- MOVE_SIESTA = 0x17D,
- MOVE_TOTTER = 0x17E,
- MOVE_TWO_EDGE = 0x17F,
- MOVE_NO_MOVE = 0x180,
- MOVE_ESCAPE = 0x181,
- MOVE_SCAN = 0x182,
- MOVE_POWER_EARS = 0x183,
- MOVE_DROUGHT = 0x184,
- MOVE_TRAP_BUSTER = 0x185,
- MOVE_WILD_CALL = 0x186,
- MOVE_INVISIFY = 0x187,
- MOVE_ONE_SHOT = 0x188,
- MOVE_HP_GAUGE = 0x189,
- MOVE_VACUUM_CUT = 0x18A,
- MOVE_REVIVER = 0x18B,
- MOVE_SHOCKER = 0x18C,
- MOVE_ECHO = 0x18D,
- MOVE_FAMISH = 0x18E,
- MOVE_ONE_ROOM = 0x18F,
- MOVE_FILL_IN = 0x190,
- MOVE_TRAPPER = 0x191,
- MOVE_POSSESS = 0x192,
- MOVE_ITEMIZE = 0x193,
- MOVE_HURL = 0x196,
- MOVE_MOBILE = 0x197,
- MOVE_ITEM_TOSS = 0x198,
- MOVE_SEE_STAIRS = 0x199,
- MOVE_LONG_TOSS = 0x19A,
- MOVE_PIERCE = 0x19B
-};
-
#endif
diff --git a/include/constants/move_id.h b/include/constants/move_id.h
new file mode 100644
index 0000000..b0d97b7
--- /dev/null
+++ b/include/constants/move_id.h
@@ -0,0 +1,412 @@
+#ifndef GUARD_CONSTANTS_MOVE_ID_H
+#define GUARD_CONSTANTS_MOVE_ID_H
+
+#define MOVE_NONE 0x0
+#define MOVE_IRON_TAIL 0x1
+#define MOVE_ICE_BALL 0x2
+#define MOVE_YAWN 0x3
+#define MOVE_LOVELY_KISS 0x4
+#define MOVE_NIGHTMARE 0x5
+#define MOVE_MORNING_SUN 0x6
+#define MOVE_VITAL_THROW 0x7
+#define MOVE_DIG 0x8
+#define MOVE_THRASH 0x9
+#define MOVE_SWEET_SCENT 0xA
+#define MOVE_CHARM 0xB
+#define MOVE_RAIN_DANCE 0xC
+#define MOVE_CONFUSE_RAY 0xD
+#define MOVE_HAIL 0xE
+#define MOVE_AROMATHERAPY 0xF
+#define MOVE_BUBBLE 0x10
+#define MOVE_ENCORE 0x11
+#define MOVE_CUT 0x12
+#define MOVE_RAGE 0x13
+#define MOVE_SUPER_FANG 0x14
+#define MOVE_PAIN_SPLIT 0x15
+#define MOVE_TORMENT 0x16
+#define MOVE_STRING_SHOT 0x17
+#define MOVE_SWAGGER 0x18
+#define MOVE_SNORE 0x19
+#define MOVE_HEAL_BELL 0x1A
+#define MOVE_SCREECH 0x1B
+#define MOVE_ROCK_THROW 0x1C
+#define MOVE_ROCK_SMASH 0x1D
+#define MOVE_ROCK_SLIDE 0x1E
+#define MOVE_WEATHER_BALL 0x1F
+#define MOVE_WHIRLPOOL 0x20
+#define MOVE_FAKE_TEARS 0x21
+#define MOVE_SING 0x22
+#define MOVE_SPITE 0x23
+#define MOVE_AIR_CUTTER 0x24
+#define MOVE_SMOKESCREEN 0x25
+#define MOVE_PURSUIT 0x26
+#define MOVE_DOUBLESLAP 0x27
+#define MOVE_MIRROR_MOVE 0x28
+#define MOVE_OVERHEAT 0x29
+#define MOVE_AURORA_BEAM 0x2A
+#define MOVE_MEMENTO 0x2B
+#define MOVE_OCTAZOOKA 0x2C
+#define MOVE_FLATTER 0x2D
+#define MOVE_ASTONISH 0x2E
+#define MOVE_WILL_O_WISP 0x2F
+#define MOVE_RETURN 0x30
+#define MOVE_GRUDGE 0x31
+#define MOVE_STRENGTH 0x32
+#define MOVE_COUNTER 0x33
+#define MOVE_FLAME_WHEEL 0x34
+#define MOVE_FLAMETHROWER 0x35
+#define MOVE_ODOR_SLEUTH 0x36
+#define MOVE_SHARPEN 0x37
+#define MOVE_DOUBLE_TEAM 0x38
+#define MOVE_GUST 0x39
+#define MOVE_HARDEN 0x3A
+#define MOVE_DISABLE 0x3B
+#define MOVE_RAZOR_WIND 0x3C
+#define MOVE_BIDE 0x3D
+#define MOVE_CRUNCH 0x3E
+#define MOVE_BITE 0x3F
+#define MOVE_THUNDER 0x40
+#define MOVE_THUNDERPUNCH 0x41
+#define MOVE_ENDEAVOR 0x42
+#define MOVE_FACADE 0x43
+#define MOVE_KARATE_CHOP 0x44
+#define MOVE_CLAMP 0x45
+#define MOVE_WITHDRAW 0x46
+#define MOVE_CONSTRICT 0x47
+#define MOVE_BRICK_BREAK 0x48
+#define MOVE_ROCK_TOMB 0x49
+#define MOVE_FOCUS_ENERGY 0x4A
+#define MOVE_FOCUS_PUNCH 0x4B
+#define MOVE_GIGA_DRAIN 0x4C
+#define MOVE_REVERSAL 0x4D
+#define MOVE_SMELLINGSALT 0x4E
+#define MOVE_SPORE 0x4F
+#define MOVE_LEECH_LIFE 0x50
+#define MOVE_SLASH 0x51
+#define MOVE_SILVER_WIND 0x52
+#define MOVE_METAL_SOUND 0x53
+#define MOVE_GRASSWHISTLE 0x54
+#define MOVE_TICKLE 0x55
+#define MOVE_SPIDER_WEB 0x56
+#define MOVE_CRABHAMMER 0x57
+#define MOVE_HAZE 0x58
+#define MOVE_MEAN_LOOK 0x59
+#define MOVE_CROSS_CHOP 0x5A
+#define MOVE_OUTRAGE 0x5B
+#define MOVE_LOW_KICK 0x5C
+#define MOVE_ANCIENTPOWER 0x5D
+#define MOVE_SYNTHESIS 0x5E
+#define MOVE_AGILITY 0x5F
+#define MOVE_RAPID_SPIN 0x60
+#define MOVE_ICY_WIND 0x61
+#define MOVE_MIND_READER 0x62
+#define MOVE_COSMIC_POWER 0x63
+#define MOVE_SKY_ATTACK 0x64
+#define MOVE_POWDER_SNOW 0x65
+#define MOVE_FOLLOW_ME 0x66
+#define MOVE_METEOR_MASH 0x67
+#define MOVE_ENDURE 0x68
+#define MOVE_ROLLOUT 0x69
+#define MOVE_SCARY_FACE 0x6A
+#define MOVE_PSYBEAM 0x6B
+#define MOVE_PSYWAVE 0x6C
+#define MOVE_PSYCHIC 0x6D
+#define MOVE_PSYCHO_BOOST 0x6E
+#define MOVE_HYPNOSIS 0x6F
+#define MOVE_UPROAR 0x70
+#define MOVE_WATER_SPOUT 0x71
+#define MOVE_SIGNAL_BEAM 0x72
+#define MOVE_PSYCH_UP 0x73
+#define MOVE_SUBMISSION 0x74
+#define MOVE_RECOVER 0x75
+#define MOVE_EARTHQUAKE 0x76
+#define MOVE_NATURE_POWER 0x77
+#define MOVE_LICK 0x78
+#define MOVE_FLAIL 0x79
+#define MOVE_TAIL_WHIP 0x7A
+#define MOVE_SELFDESTRUCT 0x7B
+#define MOVE_STUN_SPORE 0x7C
+#define MOVE_BIND 0x7D
+#define MOVE_SHADOW_PUNCH 0x7E
+#define MOVE_SHADOW_BALL 0x7F
+#define MOVE_CHARGE 0x80
+#define MOVE_THUNDERBOLT 0x81
+#define MOVE_MIST 0x82
+#define MOVE_FISSURE 0x83
+#define MOVE_EXTREMESPEED 0x84
+#define MOVE_EXTRASENSORY 0x85
+#define MOVE_SAFEGUARD 0x86
+#define MOVE_ABSORB 0x87
+#define MOVE_SKY_UPPERCUT 0x88
+#define MOVE_SKILL_SWAP 0x89
+#define MOVE_SKETCH 0x8A
+#define MOVE_HEADBUTT 0x8B
+#define MOVE_DOUBLE_EDGE 0x8C
+#define MOVE_SANDSTORM 0x8D
+#define MOVE_SAND_ATTACK 0x8E
+#define MOVE_SAND_TOMB 0x8F
+#define MOVE_SPARK 0x90
+#define MOVE_SWIFT 0x91
+#define MOVE_KINESIS 0x92
+#define MOVE_SMOG 0x93
+#define MOVE_GROWTH 0x94
+#define MOVE_SACRED_FIRE 0x95
+#define MOVE_SHEER_COLD 0x96
+#define MOVE_SOLARBEAM 0x97
+#define MOVE_SONICBOOM 0x98
+#define MOVE_FLY 0x99
+#define MOVE_TACKLE 0x9A
+#define MOVE_EXPLOSION 0x9B
+#define MOVE_DIVE 0x9C
+#define MOVE_FIRE_BLAST 0x9D
+#define MOVE_WATERFALL 0x9E
+#define MOVE_MUDDY_WATER 0x9F
+#define MOVE_STOCKPILE 0xA0
+#define MOVE_SLAM 0xA1
+#define MOVE_TWISTER 0xA2
+#define MOVE_BULLET_SEED 0xA3
+#define MOVE_TWINEEDLE 0xA4
+#define MOVE_SOFTBOILED 0xA5
+#define MOVE_EGG_BOMB 0xA6
+#define MOVE_FAINT_ATTACK 0xA7
+#define MOVE_BARRAGE 0xA8
+#define MOVE_MINIMIZE 0xA9
+#define MOVE_SEISMIC_TOSS 0xAA
+#define MOVE_SUPERSONIC 0xAB
+#define MOVE_TAUNT 0xAC
+#define MOVE_MOONLIGHT 0xAD
+#define MOVE_PECK 0xAE
+#define MOVE_ARM_THRUST 0xAF
+#define MOVE_HORN_ATTACK 0xB0
+#define MOVE_HORN_DRILL 0xB1
+#define MOVE_WING_ATTACK 0xB2
+#define MOVE_AERIAL_ACE 0xB3
+#define MOVE_ICICLE_SPEAR 0xB4
+#define MOVE_SWORDS_DANCE 0xB5
+#define MOVE_VINE_WHIP 0xB6
+#define MOVE_CONVERSION 0xB7
+#define MOVE_CONVERSION_2 0xB8
+#define MOVE_HELPING_HAND 0xB9
+#define MOVE_IRON_DEFENSE 0xBA
+#define MOVE_TELEPORT 0xBB
+#define MOVE_THUNDERSHOCK 0xBC
+#define MOVE_SHOCK_WAVE 0xBD
+#define MOVE_QUICK_ATTACK 0xBE
+#define MOVE_SWEET_KISS 0xBF
+#define MOVE_THUNDER_WAVE 0xC0
+#define MOVE_ZAP_CANNON 0xC1
+#define MOVE_BLOCK 0xC2
+#define MOVE_HOWL 0xC3
+#define MOVE_POISON_GAS 0xC4
+#define MOVE_TOXIC 0xC5
+#define MOVE_POISON_FANG 0xC6
+#define MOVE_POISONPOWDER 0xC7
+#define MOVE_POISON_STING 0xC8
+#define MOVE_SPIKE_CANNON 0xC9
+#define MOVE_ACID_ARMOR 0xCA
+#define MOVE_TAKE_DOWN 0xCB
+#define MOVE_JUMP_KICK 0xCC
+#define MOVE_BOUNCE 0xCD
+#define MOVE_HI_JUMP_KICK 0xCE
+#define MOVE_TRI_ATTACK 0xCF
+#define MOVE_DRAGON_CLAW 0xD0
+#define MOVE_TRICK 0xD1
+#define MOVE_TRIPLE_KICK 0xD2
+#define MOVE_DRILL_PECK 0xD3
+#define MOVE_MUD_SPORT 0xD4
+#define MOVE_MUD_SLAP 0xD5
+#define MOVE_THIEF 0xD6
+#define MOVE_AMNESIA 0xD7
+#define MOVE_NIGHT_SHADE 0xD8
+#define MOVE_GROWL 0xD9
+#define MOVE_SLACK_OFF 0xDA
+#define MOVE_SURF 0xDB
+#define MOVE_ROLE_PLAY 0xDC
+#define MOVE_NEEDLE_ARM 0xDD
+#define MOVE_DOUBLE_KICK 0xDE
+#define MOVE_SUNNY_DAY 0xDF
+#define MOVE_LEER 0xE0
+#define MOVE_WISH 0xE1
+#define MOVE_FAKE_OUT 0xE2
+#define MOVE_SLEEP_TALK 0xE3
+#define MOVE_PAY_DAY 0xE4
+#define MOVE_ASSIST 0xE5
+#define MOVE_HEAT_WAVE 0xE6
+#define MOVE_SLEEP_POWDER 0xE7
+#define MOVE_REST 0xE8
+#define MOVE_INGRAIN 0xE9
+#define MOVE_CONFUSION 0xEA
+#define MOVE_BODY_SLAM 0xEB
+#define MOVE_SWALLOW 0xEC
+#define MOVE_CURSE 0xED
+#define MOVE_FRENZY_PLANT 0xEE
+#define MOVE_HYDRO_CANNON 0xEF
+#define MOVE_HYDRO_PUMP 0xF0
+#define MOVE_HYPER_VOICE 0xF1
+#define MOVE_HYPER_BEAM 0xF2
+#define MOVE_SUPERPOWER 0xF3
+#define MOVE_STEEL_WING 0xF4
+#define MOVE_SPIT_UP 0xF5
+#define MOVE_DYNAMICPUNCH 0xF6
+#define MOVE_GUILLOTINE 0xF7
+#define MOVE_VICEGRIP 0xF8
+#define MOVE_KNOCK_OFF 0xF9
+#define MOVE_POUND 0xFA
+#define MOVE_RAZOR_LEAF 0xFB
+#define MOVE_BATON_PASS 0xFC
+#define MOVE_PETAL_DANCE 0xFD
+#define MOVE_SPLASH 0xFE
+#define MOVE_BUBBLEBEAM 0xFF
+#define MOVE_DOOM_DESIRE 0x100
+#define MOVE_BELLY_DRUM 0x101
+#define MOVE_BARRIER 0x102
+#define MOVE_LIGHT_SCREEN 0x103
+#define MOVE_SCRATCH 0x104
+#define MOVE_HYPER_FANG 0x105
+#define MOVE_EMBER 0x106
+#define MOVE_SECRET_POWER 0x107
+#define MOVE_DIZZY_PUNCH 0x108
+#define MOVE_BULK_UP 0x109
+#define MOVE_IMPRISON 0x10A
+#define MOVE_FEATHERDANCE 0x10B
+#define MOVE_WHIRLWIND 0x10C
+#define MOVE_BEAT_UP 0x10D
+#define MOVE_BLIZZARD 0x10E
+#define MOVE_STOMP 0x10F
+#define MOVE_BLAST_BURN 0x110
+#define MOVE_FLASH 0x111
+#define MOVE_TEETER_DANCE 0x112
+#define MOVE_CRUSH_CLAW 0x113
+#define MOVE_BLAZE_KICK 0x114
+#define MOVE_PRESENT 0x115
+#define MOVE_ERUPTION 0x116
+#define MOVE_SLUDGE 0x117
+#define MOVE_SLUDGE_BOMB 0x118
+#define MOVE_GLARE 0x119
+#define MOVE_TRANSFORM 0x11A
+#define MOVE_POISON_TAIL 0x11B
+#define MOVE_ROAR 0x11C
+#define MOVE_BONE_RUSH 0x11D
+#define MOVE_CAMOUFLAGE 0x11E
+#define MOVE_COVET 0x11F
+#define MOVE_TAIL_GLOW 0x120
+#define MOVE_BONE_CLUB 0x121
+#define MOVE_BONEMERANG 0x122
+#define MOVE_FIRE_SPIN 0x123
+#define MOVE_FIRE_PUNCH 0x124
+#define MOVE_PERISH_SONG 0x125
+#define MOVE_WRAP 0x126
+#define MOVE_SPIKES 0x127
+#define MOVE_MAGNITUDE 0x128
+#define MOVE_MAGICAL_LEAF 0x129
+#define MOVE_MAGIC_COAT 0x12A
+#define MOVE_MUD_SHOT 0x12B
+#define MOVE_MACH_PUNCH 0x12C
+#define MOVE_PROTECT 0x12D
+#define MOVE_DEFENSE_CURL 0x12E
+#define MOVE_ROLLING_KICK 0x12F
+#define MOVE_SUBSTITUTE 0x130
+#define MOVE_DETECT 0x131
+#define MOVE_PIN_MISSILE 0x132
+#define MOVE_WATER_SPORT 0x133
+#define MOVE_WATER_GUN 0x134
+#define MOVE_MIST_BALL 0x135
+#define MOVE_WATER_PULSE 0x136
+#define MOVE_FURY_ATTACK 0x137
+#define MOVE_FURY_SWIPES 0x138
+#define MOVE_DESTINY_BOND 0x139
+#define MOVE_FALSE_SWIPE 0x13A
+#define MOVE_FORESIGHT 0x13B
+#define MOVE_MIRROR_COAT 0x13C
+#define MOVE_FUTURE_SIGHT 0x13D
+#define MOVE_MILK_DRINK 0x13E
+#define MOVE_CALM_MIND 0x13F
+#define MOVE_MEGA_DRAIN 0x140
+#define MOVE_MEGA_KICK 0x141
+#define MOVE_MEGA_PUNCH 0x142
+#define MOVE_MEGAHORN 0x143
+#define MOVE_HIDDEN_POWER 0x144
+#define MOVE_METAL_CLAW 0x145
+#define MOVE_ATTRACT 0x146
+#define MOVE_MIMIC 0x147
+#define MOVE_FRUSTRATION 0x148
+#define MOVE_LEECH_SEED 0x149
+#define MOVE_METRONOME 0x14A
+#define MOVE_DREAM_EATER 0x14B
+#define MOVE_ACID 0x14C
+#define MOVE_MEDITATE 0x14D
+#define MOVE_SNATCH 0x14E
+#define MOVE_LUSTER_PURGE 0x14F
+#define MOVE_LEAF_BLADE 0x150
+#define MOVE_RECYCLE 0x151
+#define MOVE_REFLECT 0x152
+#define MOVE_REFRESH 0x153
+#define MOVE_REVENGE 0x154
+#define MOVE_DRAGON_RAGE 0x155
+#define MOVE_DRAGONBREATH 0x156
+#define MOVE_DRAGON_DANCE 0x157
+#define MOVE_ICE_PUNCH 0x158
+#define MOVE_ICE_BEAM 0x159
+#define MOVE_FURY_CUTTER 0x15A
+#define MOVE_COMET_PUNCH 0x15B
+#define MOVE_SKULL_BASH 0x15C
+#define MOVE_LOCK_ON 0x15D
+#define MOVE_ROCK_BLAST 0x15E
+#define MOVE_COTTON_SPORE 0x15F
+#define MOVE_STRUGGLE 0x160
+#define MOVE_AEROBLAST 0x161
+#define MOVE_VOLT_TACKLE 0x162
+#define MOVE_REGULAR_ATTACK 0x163
+#define MOVE_WIDE_SLASH 0x168
+#define MOVE_EXCAVATE 0x169 // Unused
+#define MOVE_SPIN_SLASH 0x16A // Unused
+// Orb effects
+#define MOVE_SEE_TRAP 0x16B
+#define MOVE_TAKEAWAY 0x16C
+#define MOVE_REBOUND 0x16D
+#define MOVE_BLOOP_SLASH 0x16E
+#define MOVE_SWITCHER 0x16F
+#define MOVE_BLOWBACK 0x170
+#define MOVE_WARP 0x171
+#define MOVE_TRANSFER 0x172
+#define MOVE_SLOW_DOWN 0x173
+#define MOVE_SPEED_BOOST 0x174
+#define MOVE_SEARCHLIGHT 0x175
+#define MOVE_PETRIFY 0x176
+#define MOVE_STAY_AWAY 0x177
+#define MOVE_POUNCE 0x178
+#define MOVE_TRAWL 0x179
+#define MOVE_CLEANSE 0x17A
+#define MOVE_OBSERVER 0x17B
+#define MOVE_DECOY_MAKER 0x17C
+#define MOVE_SIESTA 0x17D
+#define MOVE_TOTTER 0x17E
+#define MOVE_TWO_EDGE 0x17F
+#define MOVE_NO_MOVE 0x180
+#define MOVE_ESCAPE 0x181
+#define MOVE_SCAN 0x182
+#define MOVE_POWER_EARS 0x183
+#define MOVE_DROUGHT 0x184
+#define MOVE_TRAP_BUSTER 0x185
+#define MOVE_WILD_CALL 0x186
+#define MOVE_INVISIFY 0x187
+#define MOVE_ONE_SHOT 0x188
+#define MOVE_HP_GAUGE 0x189
+#define MOVE_VACUUM_CUT 0x18A
+#define MOVE_REVIVER 0x18B
+#define MOVE_SHOCKER 0x18C
+#define MOVE_ECHO 0x18D
+#define MOVE_FAMISH 0x18E
+#define MOVE_ONE_ROOM 0x18F
+#define MOVE_FILL_IN 0x190
+#define MOVE_TRAPPER 0x191
+#define MOVE_POSSESS 0x192
+#define MOVE_ITEMIZE 0x193
+#define MOVE_HURL 0x196
+#define MOVE_MOBILE 0x197
+#define MOVE_ITEM_TOSS 0x198
+#define MOVE_SEE_STAIRS 0x199
+#define MOVE_LONG_TOSS 0x19A
+#define MOVE_PIERCE 0x19C
+
+#endif
diff --git a/include/constants/type.h b/include/constants/type.h
index 8c982fd..6ca9177 100644
--- a/include/constants/type.h
+++ b/include/constants/type.h
@@ -1,25 +1,23 @@
#ifndef GUARD_CONSTANTS_TYPE_H
#define GUARD_CONSTANTS_TYPE_H
-enum Type
-{
- TYPE_NORMAL = 0x1,
- TYPE_FIRE = 0x2,
- TYPE_WATER = 0x3,
- TYPE_GRASS = 0x4,
- TYPE_ELECTRIC = 0x5,
- TYPE_ICE = 0x6,
- TYPE_FIGHTING = 0x7,
- TYPE_POISON = 0x8,
- TYPE_GROUND = 0x9,
- TYPE_FLYING = 0xA,
- TYPE_PSYCHIC = 0xB,
- TYPE_BUG = 0xC,
- TYPE_ROCK = 0xD,
- TYPE_GHOST = 0xE,
- TYPE_DRAGON = 0xF,
- TYPE_DARK = 0x10,
- TYPE_STEEL = 0x11
-};
+#define TYPE_NONE 0x0
+#define TYPE_NORMAL 0x1
+#define TYPE_FIRE 0x2
+#define TYPE_WATER 0x3
+#define TYPE_GRASS 0x4
+#define TYPE_ELECTRIC 0x5
+#define TYPE_ICE 0x6
+#define TYPE_FIGHTING 0x7
+#define TYPE_POISON 0x8
+#define TYPE_GROUND 0x9
+#define TYPE_FLYING 0xA
+#define TYPE_PSYCHIC 0xB
+#define TYPE_BUG 0xC
+#define TYPE_ROCK 0xD
+#define TYPE_GHOST 0xE
+#define TYPE_DRAGON 0xF
+#define TYPE_DARK 0x10
+#define TYPE_STEEL 0x11
#endif
diff --git a/include/constants/walkable_tile.h b/include/constants/walkable_tile.h
new file mode 100644
index 0000000..d558466
--- /dev/null
+++ b/include/constants/walkable_tile.h
@@ -0,0 +1,9 @@
+#ifndef GUARD_CONSTANTS_WALKABLE_TILE_H
+#define GUARD_CONSTANTS_WALKABLE_TILE_H
+
+#define WALKABLE_TILE_CHASM 2
+#define WALKABLE_TILE_WALL 3
+#define WALKABLE_TILE_LAVA 4
+#define WALKABLE_TILE_WATER 5
+
+#endif
diff --git a/include/dungeon_entity.h b/include/dungeon_entity.h
index e7d0fc1..6b11b8a 100644
--- a/include/dungeon_entity.h
+++ b/include/dungeon_entity.h
@@ -160,7 +160,9 @@ struct DungeonEntityData
u8 fillF8[0xFA - 0xF8];
/* 0xFA */ u8 terrifiedTurnsLeft; // Doubles as a bool for whether the Pokémon is terrified.
u8 unkFB;
- /* 0xFC */ bool8 forceUseItem; // If true, an AI Pokémon is forced to try using their held item next turn. Unknown when this is set in regular gameplay.
+ // Set to true if the player makes a teammate use their held item.
+ // This is done by going to the teammate's held item in the toolbox and selecting "Use".
+ /* 0xFC */ bool8 useHeldItem;
/* 0xFD */ u8 perishSongTimer; // When this reaches 0, the Pokémon faints from Perish Song. Doubles as a bool for whether the Pokémon is afflicted by Perish Song.
u8 fillFE[0x100 - 0xFE];
/* 0x100 */ u8 targetingDecoy; // If the Pokémon is targeting a decoy, this indicates whether the decoy target is a team or wild Pokémon.
diff --git a/include/item.h b/include/item.h
index 6c7b09f..998f1ac 100644
--- a/include/item.h
+++ b/include/item.h
@@ -1,6 +1,7 @@
#ifndef GUARD_ITEMS_H
#define GUARD_ITEMS_H
+#include "constants/item.h"
#include "code_8092334.h"
struct Item
@@ -10,20 +11,17 @@ struct Item
/* 0x8 */ u32 sellPrice;
/* 0xC */ u8 type;
/* 0xD */ u8 icon;
- /* 0xE */ u16 fill;
/* 0x10 */ u8 *descriptionPointer;
// Determines how the AI can use the item.
// Index 0: Item can be used on self.
// Index 1: Item can be thrown at allies.
// Index 2: Item can be thrown at enemies.
/* 0x14 */ bool8 aiFlags[3];
- /* 0x17 */ u8 fill2;
/* 0x18 */ s16 move;
/* 0x1A */ u8 order; // Numbered order they are in storage
/* 0x1B */ u8 unkThrow1B[2];
/* 0x1D */ u8 palette;
/* 0x1E */ u8 category;
- /* 0x1F */ u8 fill3;
};
struct ItemSlot
@@ -53,40 +51,6 @@ struct unkStruct_8090F58
u8 unk8;
};
-enum ItemType
-{
- ITEM_TYPE_THROWABLE,
- ITEM_TYPE_ROCK,
- ITEM_TYPE_BERRY_SEED,
- ITEM_TYPE_APPLE_GUMMI,
- ITEM_TYPE_HOLD_ITEM,
- ITEM_TYPE_TM,
- ITEM_TYPE_MONEY,
- ITEM_TYPE_UNUSED,
- ITEM_TYPE_MISC,
- ITEM_TYPE_ORB,
- ITEM_TYPE_LINK_BOX,
- ITEM_TYPE_USED_TM
-};
-
-enum ItemCategory
-{
- ITEM_CATEGORY_NOTHING,
- ITEM_CATEGORY_THROWABLE,
- ITEM_CATEGORY_ROCKS,
- ITEM_CATEGORY_RIBBONS,
- ITEM_CATEGORY_FOOD,
- ITEM_CATEGORY_HEALING,
- ITEM_CATEGORY_CHESTNUT,
- ITEM_CATEGORY_MONEY_WISH_STONE,
- ITEM_CATEGORY_MISC,
- ITEM_CATEGORY_TM,
- ITEM_CATEGORY_LINK_BOX,
- ITEM_CATEGORY_SPECS,
- ITEM_CATEGORY_SCARFS,
- ITEM_CATEGORY_ORBS
-};
-
enum ItemFlag
{
ITEM_FLAG_EXISTS = 1 << 0,
@@ -95,251 +59,6 @@ enum ItemFlag
ITEM_FLAG_SET = 1 << 4 // This item can be thrown by pressing L+R instead of having to go to the bag menu.
};
-// see https://bulbapedia.bulbagarden.net/wiki/List_of_items_by_index_number_(Rescue_Team)
-enum ItemID {
- ITEM_ID_NOTHING,
- ITEM_ID_STICK,
- ITEM_ID_IRON_THORN,
- ITEM_ID_SILVER_SPIKE,
- ITEM_ID_GOLD_FANG,
- ITEM_ID_CACNEA_SPIKE,
- ITEM_ID_CORSOLA_TWIG,
- ITEM_ID_GRAVELEROCK,
- ITEM_ID_GEO_PEBBLE,
- ITEM_ID_MOBILE_SCARF,
- ITEM_ID_HEAL_RIBBON,
- ITEM_ID_TWIST_BAND,
- ITEM_ID_SCOPE_LENS,
- ITEM_ID_PATSY_BAND,
- ITEM_ID_NOSTICK_CAP,
- ITEM_ID_PIERCE_BAND,
- ITEM_ID_JOY_RIBBON,
- ITEM_ID_X_RAY_SPECS,
- ITEM_ID_PERSIM_BAND,
- ITEM_ID_POWER_BAND,
- ITEM_ID_PECHA_SCARF,
- ITEM_ID_INSOMNISCOPE,
- ITEM_ID_WARP_SCARF,
- ITEM_ID_TIGHT_BELT,
- ITEM_ID_SNEAK_SCARF,
- ITEM_ID_GOLD_RIBBON,
- ITEM_ID_GOGGLE_SPECS,
- ITEM_ID_DIET_RIBBON,
- ITEM_ID_TRAP_SCARF,
- ITEM_ID_RACKET_BAND,
- ITEM_ID_DEF_SCARF,
- ITEM_ID_STAMINA_BAND,
- ITEM_ID_PLAIN_RIBBON,
- ITEM_ID_SPECIAL_BAND,
- ITEM_ID_ZINC_BAND,
- ITEM_ID_DETECT_BAND,
- ITEM_ID_ALERT_SPECS,
- ITEM_ID_DODGE_SCARF,
- ITEM_ID_BOUNCE_BAND,
- ITEM_ID_CURVE_BAND,
- ITEM_ID_WHIFF_SPECS,
- ITEM_ID_NO_AIM_SCOPE,
- ITEM_ID_LOCKON_SPECS,
- ITEM_ID_MUNCH_BELT,
- ITEM_ID_PASS_SCARF,
- ITEM_ID_WEATHER_BAND,
- ITEM_ID_FRIEND_BOW,
- ITEM_ID_BEAUTY_SCARF,
- ITEM_ID_SUN_RIBBON,
- ITEM_ID_LUNAR_RIBBON,
- ITEM_ID_RING_D,
- ITEM_ID_RING_E,
- ITEM_ID_RING_F,
- ITEM_ID_HEAL_SEED,
- ITEM_ID_WISH_STONE,
- ITEM_ID_ORAN_BERRY,
- ITEM_ID_SITRUS_BERRY,
- ITEM_ID_EYEDROP_SEED,
- ITEM_ID_REVIVER_SEED,
- ITEM_ID_BLINKER_SEED,
- ITEM_ID_DOOM_SEED,
- ITEM_ID_ALLURE_SEED,
- ITEM_ID_LIFE_SEED,
- ITEM_ID_RAWST_BERRY,
- ITEM_ID_HUNGER_SEED,
- ITEM_ID_QUICK_SEED,
- ITEM_ID_PECHA_BERRY,
- ITEM_ID_CHERI_BERRY,
- ITEM_ID_TOTTER_SEED,
- ITEM_ID_SLEEP_SEED,
- ITEM_ID_PLAIN_SEED,
- ITEM_ID_WARP_SEED,
- ITEM_ID_BLAST_SEED,
- ITEM_ID_GINSENG,
- ITEM_ID_JOY_SEED,
- ITEM_ID_CHESTO_BERRY,
- ITEM_ID_STUN_SEED,
- ITEM_ID_MAX_ELIXIR,
- ITEM_ID_PROTEIN,
- ITEM_ID_CALCIUM,
- ITEM_ID_IRON,
- ITEM_ID_ZINC,
- ITEM_ID_APPLE,
- ITEM_ID_BIG_APPLE,
- ITEM_ID_GRIMY_FOOD,
- ITEM_ID_HUGE_APPLE,
- ITEM_ID_WHITE_GUMMI,
- ITEM_ID_RED_GUMMI,
- ITEM_ID_BLUE_GUMMI,
- ITEM_ID_GRASS_GUMMI,
- ITEM_ID_YELLOW_GUMMI,
- ITEM_ID_CLEAR_GUMMI,
- ITEM_ID_ORANGE_GUMMI,
- ITEM_ID_PINK_GUMMI,
- ITEM_ID_BROWN_GUMMI,
- ITEM_ID_SKY_GUMMI,
- ITEM_ID_GOLD_GUMMI,
- ITEM_ID_GREEN_GUMMI,
- ITEM_ID_GRAY_GUMMI,
- ITEM_ID_PURPLE_GUMMI,
- ITEM_ID_ROYAL_GUMMI,
- ITEM_ID_BLACK_GUMMI,
- ITEM_ID_SILVER_GUMMI,
- ITEM_ID_BANANA,
- ITEM_ID_CHESTNUT,
- ITEM_ID_POKE, // 105 (0x69)
- ITEM_ID_UPGRADE,
- ITEM_ID_KINGS_ROCK,
- ITEM_ID_THUNDERSTONE,
- ITEM_ID_DEEPSEASCALE,
- ITEM_ID_DEEPSEATOOTH,
- ITEM_ID_SUN_STONE,
- ITEM_ID_MOON_STONE,
- ITEM_ID_FIRE_STONE,
- ITEM_ID_WATER_STONE,
- ITEM_ID_METAL_COAT,
- ITEM_ID_LEAF_STONE,
- ITEM_ID_DRAGON_SCALE,
- ITEM_ID_LINK_CABLE,
- ITEM_ID_ICE_PART,
- ITEM_ID_STEEL_PART,
- ITEM_ID_ROCK_PART,
- ITEM_ID_MUSIC_BOX,
- ITEM_ID_KEY,
- ITEM_ID_USED_TM,
- ITEM_ID_FOCUS_PUNCH,
- ITEM_ID_DRAGON_CLAW,
- ITEM_ID_WATER_PULSE,
- ITEM_ID_CALM_MIND,
- ITEM_ID_ROAR,
- ITEM_ID_TOXIC,
- ITEM_ID_HAIL_ORB,
- ITEM_ID_BULK_UP,
- ITEM_ID_BULLET_SEED,
- ITEM_ID_HIDDEN_POWER,
- ITEM_ID_SUNNY_ORB,
- ITEM_ID_TAUNT,
- ITEM_ID_ICE_BEAM,
- ITEM_ID_BLIZZARD,
- ITEM_ID_HYPER_BEAM,
- ITEM_ID_LIGHT_SCREEN,
- ITEM_ID_PROTECT,
- ITEM_ID_RAINY_ORB,
- ITEM_ID_GIGA_DRAIN,
- ITEM_ID_SAFEGUARD,
- ITEM_ID_FRUSTRATION,
- ITEM_ID_SOLARBEAM,
- ITEM_ID_IRON_TAIL,
- ITEM_ID_THUNDERBOLT,
- ITEM_ID_THUNDER,
- ITEM_ID_EARTHQUAKE,
- ITEM_ID_RETURN,
- ITEM_ID_DIG,
- ITEM_ID_PSYCHIC,
- ITEM_ID_SHADOW_BALL,
- ITEM_ID_BRICK_BREAK,
- ITEM_ID_EVASION_ORB,
- ITEM_ID_REFLECT,
- ITEM_ID_SHOCK_WAVE,
- ITEM_ID_FLAMETHROWER,
- ITEM_ID_SLUDGE_BOMB,
- ITEM_ID_SANDY_ORB,
- ITEM_ID_FIRE_BLAST,
- ITEM_ID_ROCKY_ORB,
- ITEM_ID_AERIAL_ACE,
- ITEM_ID_TORMENT,
- ITEM_ID_FACADE,
- ITEM_ID_SECRET_POWER,
- ITEM_ID_REST,
- ITEM_ID_ATTRACT,
- ITEM_ID_THIEF,
- ITEM_ID_STEEL_WING,
- ITEM_ID_SKILL_SWAP,
- ITEM_ID_SNATCH_ORB,
- ITEM_ID_OVERHEAT,
- ITEM_ID_WIDE_SLASH,
- ITEM_ID_EXCAVATE,
- ITEM_ID_SPIN_SLASH,
- ITEM_ID_SEE_TRAP_ORB,
- ITEM_ID_MUG_ORB,
- ITEM_ID_REBOUND_ORB,
- ITEM_ID_LOB_ORB,
- ITEM_ID_SWITCHER_ORB,
- ITEM_ID_BLOWBACK_ORB,
- ITEM_ID_WARP_ORB,
- ITEM_ID_TRANSFER_ORB,
- ITEM_ID_SLOW_ORB,
- ITEM_ID_QUICK_ORB,
- ITEM_ID_LUMINOUS_ORB,
- ITEM_ID_PETRIFY_ORB,
- ITEM_ID_STAYAWAY_ORB,
- ITEM_ID_POUNCE_ORB,
- ITEM_ID_TRAWL_ORB,
- ITEM_ID_CLEANSE_ORB,
- ITEM_ID_OBSERVER_ORB,
- ITEM_ID_DECOY_ORB,
- ITEM_ID_SLUMBER_ORB,
- ITEM_ID_TOTTER_ORB,
- ITEM_ID_TWO_EDGE_ORB,
- ITEM_ID_SILENCE_ORB,
- ITEM_ID_ESCAPE_ORB,
- ITEM_ID_SCANNER_ORB,
- ITEM_ID_RADAR_ORB,
- ITEM_ID_DROUGHT_ORB,
- ITEM_ID_TRAPBUST_ORB,
- ITEM_ID_ROLLCALL_ORB,
- ITEM_ID_INVISIFY_ORB,
- ITEM_ID_ONE_SHOT_ORB,
- ITEM_ID_IDENTIFY_ORB,
- ITEM_ID_VACUUM_CUT,
- ITEM_ID_REVIVER_ORB,
- ITEM_ID_SHOCKER_ORB,
- ITEM_ID_SIZEBUST_ORB,
- ITEM_ID_ONE_ROOM_ORB,
- ITEM_ID_FILL_IN_ORB,
- ITEM_ID_TRAPPER_ORB,
- ITEM_ID_POSSESS_ORB,
- ITEM_ID_ITEMIZER_ORB,
- ITEM_ID_HURL_ORB,
- ITEM_ID_MOBILE_ORB,
- ITEM_ID_TOSS_ORB,
- ITEM_ID_STAIRS_ORB,
- ITEM_ID_LONGTOSS_ORB,
- ITEM_ID_PIERCE_ORB,
- ITEM_ID_CUT,
- ITEM_ID_FLY,
- ITEM_ID_SURF,
- ITEM_ID_STRENGTH,
- ITEM_ID_FLASH,
- ITEM_ID_ROCK_SMASH,
- ITEM_ID_WATERFALL,
- ITEM_ID_DIVE,
- ITEM_ID_LINK_BOX,
- ITEM_ID_SWITCH_BOX,
- ITEM_ID_WEAVILE_FIG,
- ITEM_ID_MIME_JR_FIG,
- ITEM_ID_BEATUP_ORB,
- ITEM_ID_G_MACHINE_6,
- ITEM_ID_G_MACHINE_7,
- ITEM_ID_G_MACHINE_8,
- NUMBER_OF_ITEM_IDS
-};
-
#define NUMBER_OF_GUMMIS 18
#define INVENTORY_SIZE 20
#define STORAGE_SIZE NUMBER_OF_ITEM_IDS
diff --git a/include/pokemon.h b/include/pokemon.h
index 3df33b6..fc3b4bb 100644
--- a/include/pokemon.h
+++ b/include/pokemon.h
@@ -132,18 +132,16 @@ struct gPokemon
/* 0x4 */ u8* category;
/* 0x8 */ u8 overworld_palette;
/* 0x9 */ u8 size;
- /* 0xA */ u8 unkA;
- /* 0xB */ u8 unkB;
/* 0xC */ s32 move_speed;
/* 0x10 */ u16 dialogue_sprites;
- /* 0x12 */ u8 unk12;
+ /* 0x12 */ bool8 unk12;
/* 0x13 */ u8 types[2];
- /* 0x15 */ u8 walkable_tiles; // Uses the CrossableTerrain enum in map.h.
+ /* 0x15 */ u8 walkable_tiles;
/* 0x16 */ u8 friend_area;
/* 0x17 */ u8 abilities[2];
/* 0x19 */ u8 shadow_size;
- /* 0x1A */ u8 unk1A;
- /* 0x1B */ u8 unk1B;
+ /* 0x1A */ u8 fill1A; // 0 for all Pokémon.
+ /* 0x1B */ u8 unk1B; // 100 for all Pokémon.
/* 0x1C */ bool8 isMoving; // Set to false for Pokémon who don't move unless they're the leader, like Kakuna.
/* 0x1D */ u8 unk1D;
/* 0x1E */ u16 base_hp;
@@ -152,9 +150,9 @@ struct gPokemon
/* 0x28 */ u16 base_def_spdef[2];
/* 0x2C */ u16 lowkick_dmg;
/* 0x2E */ u16 sizeorb_dmg;
- /* 0x30 */ u8 unk30;
- /* 0x31 */ u8 unk31;
- /* 0x32 */ u8 unk32;
+ /* 0x30 */ u8 unk30; // 10 for all Pokémon.
+ /* 0x31 */ u8 unk31; // 10 for all Pokémon.
+ /* 0x32 */ u8 unk32; // 24 for all Pokémon.
/* 0x33 */ bool8 toolboxEnabled; // If false, the AI can't use items. Doesn't seem to be used, as it's true for all Pokémon.
/* 0x34 */ struct EvolveStruct1 pre;
/* 0x38 */ struct EvolveNeeds need;