summaryrefslogtreecommitdiff
path: root/include/constants
diff options
context:
space:
mode:
Diffstat (limited to 'include/constants')
-rw-r--r--include/constants/apprentice.h22
-rw-r--r--include/constants/battle.h12
-rw-r--r--include/constants/battle_anim.h328
-rw-r--r--include/constants/event_objects.h46
-rw-r--r--include/constants/flags.h2
-rwxr-xr-xinclude/constants/metatile_behaviors.h245
6 files changed, 629 insertions, 26 deletions
diff --git a/include/constants/apprentice.h b/include/constants/apprentice.h
new file mode 100644
index 000000000..9db58bb8e
--- /dev/null
+++ b/include/constants/apprentice.h
@@ -0,0 +1,22 @@
+#ifndef GUARD_CONSTANTS_APPRENTICE_H
+#define GUARD_CONSTANTS_APPRENTICE_H
+
+#define APPRENTICE_ASK_WHICH_LEVEL 0
+#define APPRENTICE_ASK_3SPECIES 1
+#define APPRENTICE_ASK_2SPECIES 2
+#define APPRENTICE_ASK_MOVES 3
+#define APPRENTICE_ASK_GIVE 4
+#define APPRENTICE_ASK_YES_NO 6
+
+#define APPRENTICE_BUFF_SPECIES1 0
+#define APPRENTICE_BUFF_SPECIES2 1
+#define APPRENTICE_BUFF_SPECIES3 2
+#define APPRENTICE_BUFF_MOVE1 3
+#define APPRENTICE_BUFF_MOVE2 4
+#define APPRENTICE_BUFF_ITEM 5
+#define APPRENTICE_BUFF_NAME 6
+#define APPRENTICE_BUFF_EASY_CHAT 7
+#define APPRENTICE_BUFF_LEVEL 8
+#define APPRENTICE_BUFF_SPECIES4 9
+
+#endif // GUARD_CONSTANTS_APPRENTICE_H
diff --git a/include/constants/battle.h b/include/constants/battle.h
index 25544ba3d..acb0f6689 100644
--- a/include/constants/battle.h
+++ b/include/constants/battle.h
@@ -281,4 +281,16 @@
#define MOVE_EFFECT_AFFECTS_USER 0x40
#define MOVE_EFFECT_CERTAIN 0x80
+// Battle terrain defines for gBattleTerrain.
+#define BATTLE_TERRAIN_GRASS 0
+#define BATTLE_TERRAIN_LONG_GRASS 1
+#define BATTLE_TERRAIN_SAND 2
+#define BATTLE_TERRAIN_UNDERWATER 3
+#define BATTLE_TERRAIN_WATER 4
+#define BATTLE_TERRAIN_POND 5
+#define BATTLE_TERRAIN_MOUNTAIN 6
+#define BATTLE_TERRAIN_CAVE 7
+#define BATTLE_TERRAIN_BUILDING 8
+#define BATTLE_TERRAIN_PLAIN 9
+
#endif // GUARD_CONSTANTS_BATTLE_H
diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h
index 93ae70f94..ea3087c18 100644
--- a/include/constants/battle_anim.h
+++ b/include/constants/battle_anim.h
@@ -1,6 +1,312 @@
#ifndef GUARD_CONSTANTS_BATTLE_ANIM_H
#define GUARD_CONSTANTS_BATTLE_ANIM_H
+// Sprites start at 10000 and thus must be subtracted of 10000 to account for the true index.
+#define GET_TRUE_SPRITE_INDEX(i) ((i - ANIM_SPRITES_START))
+
+// Particle ids.
+#define ANIM_SPRITES_START 10000
+
+#define ANIM_TAG_BONE (ANIM_SPRITES_START + 0)
+#define ANIM_TAG_SPARK (ANIM_SPRITES_START + 1)
+#define ANIM_TAG_PENCIL (ANIM_SPRITES_START + 2)
+#define ANIM_TAG_AIR_WAVE (ANIM_SPRITES_START + 3)
+#define ANIM_TAG_004 (ANIM_SPRITES_START + 4) // ?
+#define ANIM_TAG_SWORD (ANIM_SPRITES_START + 5)
+#define ANIM_TAG_SEED (ANIM_SPRITES_START + 6)
+#define ANIM_TAG_007 (ANIM_SPRITES_START + 7) // ?
+#define ANIM_TAG_008 (ANIM_SPRITES_START + 8) // ?
+#define ANIM_TAG_GUST (ANIM_SPRITES_START + 9)
+#define ANIM_TAG_ICE_CUBE (ANIM_SPRITES_START + 10)
+#define ANIM_TAG_SPARK_2 (ANIM_SPRITES_START + 11)
+#define ANIM_TAG_012 (ANIM_SPRITES_START + 12) // ?
+#define ANIM_TAG_YELLOW_BALL (ANIM_SPRITES_START + 13)
+#define ANIM_TAG_LOCK_ON (ANIM_SPRITES_START + 14)
+#define ANIM_TAG_TIED_BAG (ANIM_SPRITES_START + 15)
+#define ANIM_TAG_BLACK_SMOKE (ANIM_SPRITES_START + 16)
+#define ANIM_TAG_BLACK_BALL (ANIM_SPRITES_START + 17)
+#define ANIM_TAG_CONVERSION (ANIM_SPRITES_START + 18)
+#define ANIM_TAG_019 (ANIM_SPRITES_START + 19) // ?
+#define ANIM_TAG_HORN_HIT (ANIM_SPRITES_START + 20)
+#define ANIM_TAG_021 (ANIM_SPRITES_START + 21) // ?
+#define ANIM_TAG_022 (ANIM_SPRITES_START + 22) // ?
+#define ANIM_TAG_023 (ANIM_SPRITES_START + 23) // ?
+#define ANIM_TAG_024 (ANIM_SPRITES_START + 24) // ?
+#define ANIM_TAG_025 (ANIM_SPRITES_START + 25) // ?
+#define ANIM_TAG_026 (ANIM_SPRITES_START + 26) // ?
+#define ANIM_TAG_GLARE (ANIM_SPRITES_START + 27)
+#define ANIM_TAG_028 (ANIM_SPRITES_START + 28) // ?
+#define ANIM_TAG_SMALL_EMBER (ANIM_SPRITES_START + 29)
+#define ANIM_TAG_GRAY_SMOKE (ANIM_SPRITES_START + 30)
+#define ANIM_TAG_BLUE_STAR (ANIM_SPRITES_START + 31)
+#define ANIM_TAG_032 (ANIM_SPRITES_START + 32) // ?
+#define ANIM_TAG_FIRE (ANIM_SPRITES_START + 33)
+#define ANIM_TAG_034 (ANIM_SPRITES_START + 34) // ?
+#define ANIM_TAG_035 (ANIM_SPRITES_START + 35) // ?
+#define ANIM_TAG_036 (ANIM_SPRITES_START + 36) // ?
+#define ANIM_TAG_LIGHTNING (ANIM_SPRITES_START + 37)
+#define ANIM_TAG_038 (ANIM_SPRITES_START + 38) // ?
+#define ANIM_TAG_CLAW_SLASH (ANIM_SPRITES_START + 39)
+#define ANIM_TAG_040 (ANIM_SPRITES_START + 40) // ?
+#define ANIM_TAG_041 (ANIM_SPRITES_START + 41) // ?
+#define ANIM_TAG_042 (ANIM_SPRITES_START + 42) // ?
+#define ANIM_TAG_ICE_CHUNK (ANIM_SPRITES_START + 43)
+#define ANIM_TAG_044 (ANIM_SPRITES_START + 44) // ?
+#define ANIM_TAG_PINK_HEART (ANIM_SPRITES_START + 45) // ?
+#define ANIM_TAG_046 (ANIM_SPRITES_START + 46) // ?
+#define ANIM_TAG_047 (ANIM_SPRITES_START + 47) // ?
+#define ANIM_TAG_048 (ANIM_SPRITES_START + 48) // ?
+#define ANIM_TAG_SPARKLE (ANIM_SPRITES_START + 49)
+#define ANIM_TAG_050 (ANIM_SPRITES_START + 50) // ?
+#define ANIM_TAG_051 (ANIM_SPRITES_START + 51)
+#define ANIM_TAG_052 (ANIM_SPRITES_START + 52)
+#define ANIM_TAG_053 (ANIM_SPRITES_START + 53)
+#define ANIM_TAG_054 (ANIM_SPRITES_START + 54)
+#define ANIM_TAG_RED_FIST (ANIM_SPRITES_START + 55)
+#define ANIM_TAG_056 (ANIM_SPRITES_START + 56)
+#define ANIM_TAG_057 (ANIM_SPRITES_START + 57)
+#define ANIM_TAG_058 (ANIM_SPRITES_START + 58)
+#define ANIM_TAG_059 (ANIM_SPRITES_START + 59)
+#define ANIM_TAG_060 (ANIM_SPRITES_START + 60)
+#define ANIM_TAG_061 (ANIM_SPRITES_START + 61)
+#define ANIM_TAG_062 (ANIM_SPRITES_START + 62)
+#define ANIM_TAG_063 (ANIM_SPRITES_START + 63)
+#define ANIM_TAG_064 (ANIM_SPRITES_START + 64)
+#define ANIM_TAG_065 (ANIM_SPRITES_START + 65)
+#define ANIM_TAG_066 (ANIM_SPRITES_START + 66)
+#define ANIM_TAG_067 (ANIM_SPRITES_START + 67)
+#define ANIM_TAG_068 (ANIM_SPRITES_START + 68)
+#define ANIM_TAG_069 (ANIM_SPRITES_START + 69)
+#define ANIM_TAG_070 (ANIM_SPRITES_START + 70)
+#define ANIM_TAG_071 (ANIM_SPRITES_START + 71)
+#define ANIM_TAG_MUSIC_NOTES2 (ANIM_SPRITES_START + 72)
+#define ANIM_TAG_DUCK (ANIM_SPRITES_START + 73)
+#define ANIM_TAG_074 (ANIM_SPRITES_START + 74)
+#define ANIM_TAG_075 (ANIM_SPRITES_START + 75)
+#define ANIM_TAG_076 (ANIM_SPRITES_START + 76)
+#define ANIM_TAG_077 (ANIM_SPRITES_START + 77)
+#define ANIM_TAG_078 (ANIM_SPRITES_START + 78)
+#define ANIM_TAG_079 (ANIM_SPRITES_START + 79)
+#define ANIM_TAG_080 (ANIM_SPRITES_START + 80)
+#define ANIM_TAG_081 (ANIM_SPRITES_START + 81)
+#define ANIM_TAG_082 (ANIM_SPRITES_START + 82)
+#define ANIM_TAG_083 (ANIM_SPRITES_START + 83)
+#define ANIM_TAG_084 (ANIM_SPRITES_START + 84)
+#define ANIM_TAG_085 (ANIM_SPRITES_START + 85)
+#define ANIM_TAG_086 (ANIM_SPRITES_START + 86)
+#define ANIM_TAG_ANGER (ANIM_SPRITES_START + 87)
+#define ANIM_TAG_088 (ANIM_SPRITES_START + 88)
+#define ANIM_TAG_089 (ANIM_SPRITES_START + 89)
+#define ANIM_TAG_090 (ANIM_SPRITES_START + 90)
+#define ANIM_TAG_091 (ANIM_SPRITES_START + 91)
+#define ANIM_TAG_092 (ANIM_SPRITES_START + 92)
+#define ANIM_TAG_093 (ANIM_SPRITES_START + 93)
+#define ANIM_TAG_094 (ANIM_SPRITES_START + 94)
+#define ANIM_TAG_095 (ANIM_SPRITES_START + 95)
+#define ANIM_TAG_096 (ANIM_SPRITES_START + 96)
+#define ANIM_TAG_BENT_SPOON (ANIM_SPRITES_START + 97)
+#define ANIM_TAG_098 (ANIM_SPRITES_START + 98)
+#define ANIM_TAG_MILK_BOTTLE (ANIM_SPRITES_START + 99)
+#define ANIM_TAG_100 (ANIM_SPRITES_START + 100)
+#define ANIM_TAG_101 (ANIM_SPRITES_START + 101)
+#define ANIM_TAG_102 (ANIM_SPRITES_START + 102)
+#define ANIM_TAG_103 (ANIM_SPRITES_START + 103)
+#define ANIM_TAG_104 (ANIM_SPRITES_START + 104)
+#define ANIM_TAG_105 (ANIM_SPRITES_START + 105)
+#define ANIM_TAG_106 (ANIM_SPRITES_START + 106)
+#define ANIM_TAG_107 (ANIM_SPRITES_START + 107)
+#define ANIM_TAG_108 (ANIM_SPRITES_START + 108)
+#define ANIM_TAG_109 (ANIM_SPRITES_START + 109)
+#define ANIM_TAG_110 (ANIM_SPRITES_START + 110)
+#define ANIM_TAG_111 (ANIM_SPRITES_START + 111)
+#define ANIM_TAG_112 (ANIM_SPRITES_START + 112)
+#define ANIM_TAG_113 (ANIM_SPRITES_START + 113)
+#define ANIM_TAG_114 (ANIM_SPRITES_START + 114)
+#define ANIM_TAG_115 (ANIM_SPRITES_START + 115)
+#define ANIM_TAG_116 (ANIM_SPRITES_START + 116)
+#define ANIM_TAG_117 (ANIM_SPRITES_START + 117)
+#define ANIM_TAG_118 (ANIM_SPRITES_START + 118)
+#define ANIM_TAG_119 (ANIM_SPRITES_START + 119)
+#define ANIM_TAG_ITEM_BAG2 (ANIM_SPRITES_START + 120)
+#define ANIM_TAG_121 (ANIM_SPRITES_START + 121)
+#define ANIM_TAG_122 (ANIM_SPRITES_START + 122)
+#define ANIM_TAG_123 (ANIM_SPRITES_START + 123)
+#define ANIM_TAG_124 (ANIM_SPRITES_START + 124)
+#define ANIM_TAG_125 (ANIM_SPRITES_START + 125)
+#define ANIM_TAG_126 (ANIM_SPRITES_START + 126)
+#define ANIM_TAG_127 (ANIM_SPRITES_START + 127)
+#define ANIM_TAG_128 (ANIM_SPRITES_START + 128)
+#define ANIM_TAG_129 (ANIM_SPRITES_START + 129)
+#define ANIM_TAG_130 (ANIM_SPRITES_START + 130)
+#define ANIM_TAG_131 (ANIM_SPRITES_START + 131)
+#define ANIM_TAG_132 (ANIM_SPRITES_START + 132)
+#define ANIM_TAG_133 (ANIM_SPRITES_START + 133)
+#define ANIM_TAG_134 (ANIM_SPRITES_START + 134)
+#define ANIM_TAG_135 (ANIM_SPRITES_START + 135)
+#define ANIM_TAG_136 (ANIM_SPRITES_START + 136)
+#define ANIM_TAG_137 (ANIM_SPRITES_START + 137)
+#define ANIM_TAG_138 (ANIM_SPRITES_START + 138)
+#define ANIM_TAG_139 (ANIM_SPRITES_START + 139)
+#define ANIM_TAG_140 (ANIM_SPRITES_START + 140)
+#define ANIM_TAG_141 (ANIM_SPRITES_START + 141)
+#define ANIM_TAG_142 (ANIM_SPRITES_START + 142)
+#define ANIM_TAG_143 (ANIM_SPRITES_START + 143)
+#define ANIM_TAG_144 (ANIM_SPRITES_START + 144)
+#define ANIM_TAG_145 (ANIM_SPRITES_START + 145)
+#define ANIM_TAG_146 (ANIM_SPRITES_START + 146)
+#define ANIM_TAG_147 (ANIM_SPRITES_START + 147)
+#define ANIM_TAG_148 (ANIM_SPRITES_START + 148)
+#define ANIM_TAG_149 (ANIM_SPRITES_START + 149)
+#define ANIM_TAG_POISON_BUBBLE (ANIM_SPRITES_START + 150)
+#define ANIM_TAG_TOXIC_BUBBLE (ANIM_SPRITES_START + 151)
+#define ANIM_TAG_152 (ANIM_SPRITES_START + 152)
+#define ANIM_TAG_153 (ANIM_SPRITES_START + 153)
+#define ANIM_TAG_154 (ANIM_SPRITES_START + 154)
+#define ANIM_TAG_155 (ANIM_SPRITES_START + 155)
+#define ANIM_TAG_156 (ANIM_SPRITES_START + 156)
+#define ANIM_TAG_157 (ANIM_SPRITES_START + 157)
+#define ANIM_TAG_158 (ANIM_SPRITES_START + 158)
+#define ANIM_TAG_159 (ANIM_SPRITES_START + 159)
+#define ANIM_TAG_160 (ANIM_SPRITES_START + 160)
+#define ANIM_TAG_161 (ANIM_SPRITES_START + 161)
+#define ANIM_TAG_162 (ANIM_SPRITES_START + 162)
+#define ANIM_TAG_163 (ANIM_SPRITES_START + 163)
+#define ANIM_TAG_164 (ANIM_SPRITES_START + 164)
+#define ANIM_TAG_165 (ANIM_SPRITES_START + 165)
+#define ANIM_TAG_166 (ANIM_SPRITES_START + 166)
+#define ANIM_TAG_167 (ANIM_SPRITES_START + 167)
+#define ANIM_TAG_168 (ANIM_SPRITES_START + 168)
+#define ANIM_TAG_169 (ANIM_SPRITES_START + 169)
+#define ANIM_TAG_170 (ANIM_SPRITES_START + 170)
+#define ANIM_TAG_171 (ANIM_SPRITES_START + 171)
+#define ANIM_TAG_172 (ANIM_SPRITES_START + 172)
+#define ANIM_TAG_173 (ANIM_SPRITES_START + 173)
+#define ANIM_TAG_174 (ANIM_SPRITES_START + 174)
+#define ANIM_TAG_175 (ANIM_SPRITES_START + 175)
+#define ANIM_TAG_176 (ANIM_SPRITES_START + 176)
+#define ANIM_TAG_177 (ANIM_SPRITES_START + 177)
+#define ANIM_TAG_178 (ANIM_SPRITES_START + 178)
+#define ANIM_TAG_179 (ANIM_SPRITES_START + 179)
+#define ANIM_TAG_WEB_THREAD (ANIM_SPRITES_START + 180)
+#define ANIM_TAG_SPIDER_WEB (ANIM_SPRITES_START + 181)
+#define ANIM_TAG_182 (ANIM_SPRITES_START + 182)
+#define ANIM_TAG_183 (ANIM_SPRITES_START + 183)
+#define ANIM_TAG_184 (ANIM_SPRITES_START + 184)
+#define ANIM_TAG_185 (ANIM_SPRITES_START + 185)
+#define ANIM_TAG_186 (ANIM_SPRITES_START + 186)
+#define ANIM_TAG_EYE (ANIM_SPRITES_START + 187)
+#define ANIM_TAG_188 (ANIM_SPRITES_START + 188)
+#define ANIM_TAG_189 (ANIM_SPRITES_START + 189)
+#define ANIM_TAG_OPENING_EYE (ANIM_SPRITES_START + 190)
+#define ANIM_TAG_191 (ANIM_SPRITES_START + 191)
+#define ANIM_TAG_192 (ANIM_SPRITES_START + 192)
+#define ANIM_TAG_193 (ANIM_SPRITES_START + 193)
+#define ANIM_TAG_MOON (ANIM_SPRITES_START + 194)
+#define ANIM_TAG_GREEN_SPARKLE (ANIM_SPRITES_START + 195)
+#define ANIM_TAG_196 (ANIM_SPRITES_START + 196)
+#define ANIM_TAG_197 (ANIM_SPRITES_START + 197)
+#define ANIM_TAG_EXPLOSION (ANIM_SPRITES_START + 198)
+#define ANIM_TAG_NAIL (ANIM_SPRITES_START + 199)
+#define ANIM_TAG_200 (ANIM_SPRITES_START + 200)
+#define ANIM_TAG_201 (ANIM_SPRITES_START + 201)
+#define ANIM_TAG_BREAKING_EGG (ANIM_SPRITES_START + 202)
+#define ANIM_TAG_203 (ANIM_SPRITES_START + 203)
+#define ANIM_TAG_204 (ANIM_SPRITES_START + 204)
+#define ANIM_TAG_BELL (ANIM_SPRITES_START + 205)
+#define ANIM_TAG_MUSIC_NOTES (ANIM_SPRITES_START + 206)
+#define ANIM_TAG_207 (ANIM_SPRITES_START + 207)
+#define ANIM_TAG_208 (ANIM_SPRITES_START + 208)
+#define ANIM_TAG_209 (ANIM_SPRITES_START + 209)
+#define ANIM_TAG_PURPLE_HEART (ANIM_SPRITES_START + 210)
+#define ANIM_TAG_211 (ANIM_SPRITES_START + 211)
+#define ANIM_TAG_212 (ANIM_SPRITES_START + 212)
+#define ANIM_TAG_213 (ANIM_SPRITES_START + 213)
+#define ANIM_TAG_214 (ANIM_SPRITES_START + 214)
+#define ANIM_TAG_215 (ANIM_SPRITES_START + 215)
+#define ANIM_TAG_216 (ANIM_SPRITES_START + 216)
+#define ANIM_TAG_217 (ANIM_SPRITES_START + 217)
+#define ANIM_TAG_218 (ANIM_SPRITES_START + 218)
+#define ANIM_TAG_219 (ANIM_SPRITES_START + 219)
+#define ANIM_TAG_ANGEL (ANIM_SPRITES_START + 220)
+#define ANIM_TAG_EVIL_ANGEL (ANIM_SPRITES_START + 221)
+#define ANIM_TAG_222 (ANIM_SPRITES_START + 222)
+#define ANIM_TAG_223 (ANIM_SPRITES_START + 223)
+#define ANIM_TAG_ITEM_BAG (ANIM_SPRITES_START + 224)
+#define ANIM_TAG_225 (ANIM_SPRITES_START + 225)
+#define ANIM_TAG_226 (ANIM_SPRITES_START + 226)
+#define ANIM_TAG_227 (ANIM_SPRITES_START + 227)
+#define ANIM_TAG_LETTER_Z (ANIM_SPRITES_START + 228)
+#define ANIM_TAG_229 (ANIM_SPRITES_START + 229)
+#define ANIM_TAG_TRI_FORCE_TRIANGLE (ANIM_SPRITES_START + 230)
+#define ANIM_TAG_231 (ANIM_SPRITES_START + 231)
+#define ANIM_TAG_232 (ANIM_SPRITES_START + 232)
+#define ANIM_TAG_233 (ANIM_SPRITES_START + 233)
+#define ANIM_TAG_234 (ANIM_SPRITES_START + 234)
+#define ANIM_TAG_235 (ANIM_SPRITES_START + 235)
+#define ANIM_TAG_236 (ANIM_SPRITES_START + 236)
+#define ANIM_TAG_237 (ANIM_SPRITES_START + 237)
+#define ANIM_TAG_238 (ANIM_SPRITES_START + 238)
+#define ANIM_TAG_239 (ANIM_SPRITES_START + 239)
+#define ANIM_TAG_240 (ANIM_SPRITES_START + 240)
+#define ANIM_TAG_GREEN_STAR (ANIM_SPRITES_START + 241)
+#define ANIM_TAG_242 (ANIM_SPRITES_START + 242)
+#define ANIM_TAG_243 (ANIM_SPRITES_START + 243)
+#define ANIM_TAG_244 (ANIM_SPRITES_START + 244)
+#define ANIM_TAG_245 (ANIM_SPRITES_START + 245)
+#define ANIM_TAG_246 (ANIM_SPRITES_START + 246)
+#define ANIM_TAG_HAND (ANIM_SPRITES_START + 247)
+#define ANIM_TAG_248 (ANIM_SPRITES_START + 248)
+#define ANIM_TAG_249 (ANIM_SPRITES_START + 249)
+#define ANIM_TAG_X_SIGN (ANIM_SPRITES_START + 250)
+#define ANIM_TAG_251 (ANIM_SPRITES_START + 251)
+#define ANIM_TAG_252 (ANIM_SPRITES_START + 252)
+#define ANIM_TAG_253 (ANIM_SPRITES_START + 253)
+#define ANIM_TAG_254 (ANIM_SPRITES_START + 254)
+#define ANIM_TAG_255 (ANIM_SPRITES_START + 255)
+#define ANIM_TAG_256 (ANIM_SPRITES_START + 256)
+#define ANIM_TAG_257 (ANIM_SPRITES_START + 257)
+#define ANIM_TAG_MAGNIFYING_GLASS (ANIM_SPRITES_START + 258)
+#define ANIM_TAG_259 (ANIM_SPRITES_START + 259)
+#define ANIM_TAG_260 (ANIM_SPRITES_START + 260)
+#define ANIM_TAG_261 (ANIM_SPRITES_START + 261)
+#define ANIM_TAG_262 (ANIM_SPRITES_START + 262)
+#define ANIM_TAG_263 (ANIM_SPRITES_START + 263)
+#define ANIM_TAG_264 (ANIM_SPRITES_START + 264)
+#define ANIM_TAG_265 (ANIM_SPRITES_START + 265)
+#define ANIM_TAG_266 (ANIM_SPRITES_START + 266)
+#define ANIM_TAG_267 (ANIM_SPRITES_START + 267)
+#define ANIM_TAG_268 (ANIM_SPRITES_START + 268)
+#define ANIM_TAG_269 (ANIM_SPRITES_START + 269)
+#define ANIM_TAG_270 (ANIM_SPRITES_START + 270)
+#define ANIM_TAG_271 (ANIM_SPRITES_START + 271)
+#define ANIM_TAG_272 (ANIM_SPRITES_START + 272)
+#define ANIM_TAG_273 (ANIM_SPRITES_START + 273)
+#define ANIM_TAG_274 (ANIM_SPRITES_START + 274)
+#define ANIM_TAG_275 (ANIM_SPRITES_START + 275)
+#define ANIM_TAG_276 (ANIM_SPRITES_START + 276)
+#define ANIM_TAG_277 (ANIM_SPRITES_START + 277)
+#define ANIM_TAG_RECYCLE (ANIM_SPRITES_START + 278)
+#define ANIM_TAG_279 (ANIM_SPRITES_START + 279)
+#define ANIM_TAG_PROTECT (ANIM_SPRITES_START + 280)
+#define ANIM_TAG_281 (ANIM_SPRITES_START + 281)
+#define ANIM_TAG_282 (ANIM_SPRITES_START + 282)
+#define ANIM_TAG_283 (ANIM_SPRITES_START + 283)
+#define ANIM_TAG_284 (ANIM_SPRITES_START + 284)
+#define ANIM_TAG_285 (ANIM_SPRITES_START + 285)
+#define ANIM_TAG_286 (ANIM_SPRITES_START + 286)
+#define ANIM_TAG_287 (ANIM_SPRITES_START + 287)
+#define ANIM_TAG_288 (ANIM_SPRITES_START + 288)
+#define ANIM_TAG_289 (ANIM_SPRITES_START + 289)
+#define ANIM_TAG_290 (ANIM_SPRITES_START + 290)
+#define ANIM_TAG_291 (ANIM_SPRITES_START + 291)
+#define ANIM_TAG_292 (ANIM_SPRITES_START + 292)
+#define ANIM_TAG_293 (ANIM_SPRITES_START + 293)
+#define ANIM_TAG_294 (ANIM_SPRITES_START + 294)
+#define ANIM_TAG_295 (ANIM_SPRITES_START + 295)
+#define ANIM_TAG_296 (ANIM_SPRITES_START + 296)
+#define ANIM_TAG_297 (ANIM_SPRITES_START + 297)
+#define ANIM_TAG_298 (ANIM_SPRITES_START + 298)
+
// battlers
#define ANIM_ATTACKER 0
#define ANIM_TARGET 1
@@ -55,7 +361,7 @@
#define B_ANIM_STATS_CHANGE 0x1
#define B_ANIM_SUBSTITUTE_FADE 0x2
#define B_ANIM_SUBSTITUTE_APPEAR 0x3
-#define B_ANIM_x4 0x4
+#define B_ANIM_POKEBLOCK_THROW 0x4
#define B_ANIM_ITEM_KNOCKOFF 0x5
#define B_ANIM_TURN_TRAP 0x6
#define B_ANIM_ITEM_EFFECT 0x7
@@ -71,7 +377,7 @@
#define B_ANIM_SNATCH_MOVE 0x11
#define B_ANIM_FUTURE_SIGHT_HIT 0x12
#define B_ANIM_DOOM_DESIRE_HIT 0x13
-#define B_ANIM_x14 0x14
+#define B_ANIM_FOCUS_PUNCH_SETUP 0x14
#define B_ANIM_INGRAIN_HEAL 0x15
#define B_ANIM_WISH_HEAL 0x16
@@ -96,4 +402,22 @@
#define B_ANIM_STATUS_NIGHTMARE 0x8
#define B_ANIM_STATUS_WRAPPED 0x9 // does not actually exist
+// Most tasks return a value to gBattleAnimArgs[7].
+#define ARG_RET_ID 0x7
+
+// Trapping Wrap-like moves end turn animation.
+#define TRAP_ANIM_BIND 0
+#define TRAP_ANIM_WRAP 0
+#define TRAP_ANIM_FIRE_SPIN 1
+#define TRAP_ANIM_WHIRLPOOL 2
+#define TRAP_ANIM_CLAMP 3
+#define TRAP_ANIM_SAND_TOMB 4
+
+// Weather defines for battle animation scripts.
+#define ANIM_WEATHER_NONE 0
+#define ANIM_WEATHER_SUN 1
+#define ANIM_WEATHER_RAIN 2
+#define ANIM_WEATHER_SANDSTORM 3
+#define ANIM_WEATHER_HAIL 4
+
#endif // GUARD_CONSTANTS_BATTLE_ANIM_H
diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h
index d04f0a1f9..4967c814d 100644
--- a/include/constants/event_objects.h
+++ b/include/constants/event_objects.h
@@ -6,36 +6,36 @@
#define EVENT_OBJ_GFX_BRENDAN_SURFING 2
#define EVENT_OBJ_GFX_BRENDAN_FIELD_MOVE 3
#define EVENT_OBJ_GFX_QUINTY_PLUMP 4
-#define EVENT_OBJ_GFX_LITTLE_BOY_1 5
-#define EVENT_OBJ_GFX_LITTLE_GIRL_1 6
+#define EVENT_OBJ_GFX_NINJA_BOY 5
+#define EVENT_OBJ_GFX_TWIN 6
#define EVENT_OBJ_GFX_BOY_1 7
#define EVENT_OBJ_GFX_GIRL_1 8
#define EVENT_OBJ_GFX_BOY_2 9
#define EVENT_OBJ_GFX_GIRL_2 10
-#define EVENT_OBJ_GFX_LITTLE_BOY_2 11
-#define EVENT_OBJ_GFX_LITTLE_GIRL_2 12
+#define EVENT_OBJ_GFX_LITTLE_BOY 11
+#define EVENT_OBJ_GFX_LITTLE_GIRL 12
#define EVENT_OBJ_GFX_BOY_3 13
#define EVENT_OBJ_GFX_GIRL_3 14
-#define EVENT_OBJ_GFX_BOY_4 15
+#define EVENT_OBJ_GFX_RICH_BOY 15
#define EVENT_OBJ_GFX_WOMAN_1 16
#define EVENT_OBJ_GFX_FAT_MAN 17
-#define EVENT_OBJ_GFX_WOMAN_2 18
+#define EVENT_OBJ_GFX_POKEFAN_F 18
#define EVENT_OBJ_GFX_MAN_1 19
-#define EVENT_OBJ_GFX_WOMAN_3 20
-#define EVENT_OBJ_GFX_OLD_MAN_1 21
-#define EVENT_OBJ_GFX_OLD_WOMAN_1 22
+#define EVENT_OBJ_GFX_WOMAN_2 20
+#define EVENT_OBJ_GFX_EXPERT_M 21
+#define EVENT_OBJ_GFX_EXPERT_F 22
#define EVENT_OBJ_GFX_MAN_2 23
-#define EVENT_OBJ_GFX_WOMAN_4 24
-#define EVENT_OBJ_GFX_MAN_3 25
-#define EVENT_OBJ_GFX_WOMAN_5 26
+#define EVENT_OBJ_GFX_WOMAN_3 24
+#define EVENT_OBJ_GFX_POKEFAN_M 25
+#define EVENT_OBJ_GFX_WOMAN_4 26
#define EVENT_OBJ_GFX_COOK 27
-#define EVENT_OBJ_GFX_WOMAN_6 28
-#define EVENT_OBJ_GFX_OLD_MAN_2 29
-#define EVENT_OBJ_GFX_OLD_WOMAN_2 30
+#define EVENT_OBJ_GFX_LINK_RECEPTIONIST 28
+#define EVENT_OBJ_GFX_OLD_MAN 29
+#define EVENT_OBJ_GFX_OLD_WOMAN 30
#define EVENT_OBJ_GFX_CAMPER 31
#define EVENT_OBJ_GFX_PICNICKER 32
-#define EVENT_OBJ_GFX_MAN_4 33
-#define EVENT_OBJ_GFX_WOMAN_7 34
+#define EVENT_OBJ_GFX_MAN_3 33
+#define EVENT_OBJ_GFX_WOMAN_5 34
#define EVENT_OBJ_GFX_YOUNGSTER 35
#define EVENT_OBJ_GFX_BUG_CATCHER 36
#define EVENT_OBJ_GFX_PSYCHIC_M 37
@@ -66,8 +66,8 @@
#define EVENT_OBJ_GFX_BERRY_TREE_LATE_STAGES 62
#define EVENT_OBJ_GFX_BRENDAN_ACRO_BIKE 63
#define EVENT_OBJ_GFX_PROF_BIRCH 64
-#define EVENT_OBJ_GFX_MAN_5 65
-#define EVENT_OBJ_GFX_MAN_6 66
+#define EVENT_OBJ_GFX_MAN_4 65
+#define EVENT_OBJ_GFX_MAN_5 66
#define EVENT_OBJ_GFX_REPORTER_M 67
#define EVENT_OBJ_GFX_REPORTER_F 68
#define EVENT_OBJ_GFX_BARD 69
@@ -96,8 +96,8 @@
#define EVENT_OBJ_GFX_MAY_SURFING 92
#define EVENT_OBJ_GFX_MAY_FIELD_MOVE 93
#define EVENT_OBJ_GFX_TRUCK 94
-#define EVENT_OBJ_GFX_VIGAROTH_CARRYING_BOX 95
-#define EVENT_OBJ_GFX_VIGAROTH_FACING_AWAY 96
+#define EVENT_OBJ_GFX_VIGOROTH_CARRYING_BOX 95
+#define EVENT_OBJ_GFX_VIGOROTH_FACING_AWAY 96
#define EVENT_OBJ_GFX_BIRCHS_BAG 97
#define EVENT_OBJ_GFX_ZIGZAGOON_1 98
#define EVENT_OBJ_GFX_ARTIST 99
@@ -117,7 +117,7 @@
#define EVENT_OBJ_GFX_MOVING_BOX 113
#define EVENT_OBJ_GFX_CABLE_CAR 114
#define EVENT_OBJ_GFX_SCIENTIST_2 115
-#define EVENT_OBJ_GFX_MAN_7 116
+#define EVENT_OBJ_GFX_DEVON_EMPLOYEE 116
#define EVENT_OBJ_GFX_AQUA_MEMBER_M 117
#define EVENT_OBJ_GFX_AQUA_MEMBER_F 118
#define EVENT_OBJ_GFX_MAGMA_MEMBER_M 119
@@ -190,7 +190,7 @@
#define EVENT_OBJ_GFX_BIG_REGISTEEL_DOLL 186
#define EVENT_OBJ_GFX_LATIAS 187
#define EVENT_OBJ_GFX_LATIOS 188
-#define EVENT_OBJ_GFX_BOY_5 189
+#define EVENT_OBJ_GFX_GAMEBOY_KID 189
#define EVENT_OBJ_GFX_CONTEST_JUDGE 190
#define EVENT_OBJ_GFX_BRENDAN_WATERING 191
#define EVENT_OBJ_GFX_MAY_WATERING 192
diff --git a/include/constants/flags.h b/include/constants/flags.h
index a74dffccf..ff403a299 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -501,7 +501,7 @@
#define FLAG_0x1F1 0x1F1
#define FLAG_0x1F2 0x1F2
#define FLAG_0x1F3 0x1F3
-#define FLAG_0x1F4 0x1F4
+#define FLAG_HIDDEN_ITEMS_START 0x1F4
#define FLAG_0x1F5 0x1F5
#define FLAG_0x1F6 0x1F6
#define FLAG_0x1F7 0x1F7
diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h
new file mode 100755
index 000000000..d8d75066c
--- /dev/null
+++ b/include/constants/metatile_behaviors.h
@@ -0,0 +1,245 @@
+#ifndef GUARD_METATILE_BEHAVIORS
+#define GUARD_METATILE_BEHAVIORS
+
+#define MB_NORMAL 0x00
+#define MB_SECRET_BASE_WALL 0x01
+#define MB_TALL_GRASS 0x02
+#define MB_LONG_GRASS 0x03
+#define MB_UNUSED_04 0x04
+#define MB_UNUSED_05 0x05
+#define MB_DEEP_SAND 0x06
+#define MB_SHORT_GRASS 0x07
+#define MB_UNUSED_CAVE 0x08
+#define MB_LONG_GRASS_SOUTH_EDGE 0x09
+#define MB_NO_RUNNING 0x0A
+#define MB_INDOOR_ENCOUNTER 0x0B
+#define MB_MOUNTAIN_TOP 0x0C
+#define MB_BATTLE_PYRAMID_WARP 0x0D
+#define MB_MOSSDEEP_GYM_WARP 0x0E
+#define MB_MT_PYRE_HOLE 0x0F
+#define MB_POND_WATER 0x10
+#define MB_SEMI_DEEP_WATER 0x11
+#define MB_DEEP_WATER 0x12
+#define MB_WATERFALL 0x13
+#define MB_SOOTOPOLIS_DEEP_WATER 0x14
+#define MB_OCEAN_WATER 0x15
+#define MB_PUDDLE 0x16
+#define MB_SHALLOW_WATER 0x17
+#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER 0x18
+#define MB_NO_SURFACING 0x19
+#define MB_UNUSED_SOOTOPOLIS_DEEP_WATER_2 0x1A
+#define MB_STAIRS_OUTSIDE_ABANDONED_SHIP 0x1B
+#define MB_SHOAL_CAVE_ENTRANCE 0x1C
+#define MB_UNUSED_1D 0x1D
+#define MB_UNUSED_1E 0x1E
+#define MB_UNUSED_1F 0x1F
+#define MB_ICE 0x20
+#define MB_SAND 0x21
+#define MB_SEAWEED 0x22
+#define MB_UNUSED_23 0x23
+#define MB_ASHGRASS 0x24
+#define MB_FOOTPRINTS 0x25
+#define MB_THIN_ICE 0x26
+#define MB_CRACKED_ICE 0x27
+#define MB_HOT_SPRINGS 0x28
+#define MB_LAVARIDGE_GYM_B1F_WARP 0x29
+#define MB_SEAWEED_NO_SURFACING 0x2A
+#define MB_REFLECTION_UNDER_BRIDGE 0x2B
+#define MB_UNUSED_2C 0x2C
+#define MB_UNUSED_2D 0x2D
+#define MB_UNUSED_2E 0x2E
+#define MB_UNUSED_2F 0x2F
+#define MB_IMPASSABLE_EAST 0x30
+#define MB_IMPASSABLE_WEST 0x31
+#define MB_IMPASSABLE_NORTH 0x32
+#define MB_IMPASSABLE_SOUTH 0x33
+#define MB_IMPASSABLE_NORTHEAST 0x34
+#define MB_IMPASSABLE_NORTHWEST 0x35
+#define MB_IMPASSABLE_SOUTHEAST 0x36
+#define MB_IMPASSABLE_SOUTHWEST 0x37
+#define MB_JUMP_EAST 0x38
+#define MB_JUMP_WEST 0x39
+#define MB_JUMP_NORTH 0x3A
+#define MB_JUMP_SOUTH 0x3B
+#define MB_JUMP_NORTHEAST 0x3C
+#define MB_JUMP_NORTHWEST 0x3D
+#define MB_JUMP_SOUTHEAST 0x3E
+#define MB_JUMP_SOUTHWEST 0x3F
+#define MB_WALK_EAST 0x40
+#define MB_WALK_WEST 0x41
+#define MB_WALK_NORTH 0x42
+#define MB_WALK_SOUTH 0x43
+#define MB_SLIDE_EAST 0x44
+#define MB_SLIDE_WEST 0x45
+#define MB_SLIDE_NORTH 0x46
+#define MB_SLIDE_SOUTH 0x47
+#define MB_TRICK_HOUSE_PUZZLE_8_FLOOR 0x48
+#define MB_UNUSED_49 0x49
+#define MB_UNUSED_4A 0x4A
+#define MB_UNUSED_4B 0x4B
+#define MB_UNUSED_4C 0x4C
+#define MB_UNUSED_4D 0x4D
+#define MB_UNUSED_4E 0x4E
+#define MB_UNUSED_4F 0x4F
+#define MB_EASTWARD_CURRENT 0x50
+#define MB_WESTWARD_CURRENT 0x51
+#define MB_NORTHWARD_CURRENT 0x52
+#define MB_SOUTHWARD_CURRENT 0x53
+#define MB_UNUSED_54 0x54
+#define MB_UNUSED_55 0x55
+#define MB_UNUSED_56 0x56
+#define MB_UNUSED_57 0x57
+#define MB_UNUSED_58 0x58
+#define MB_UNUSED_59 0x59
+#define MB_UNUSED_5A 0x5A
+#define MB_UNUSED_5B 0x5B
+#define MB_UNUSED_5C 0x5C
+#define MB_UNUSED_5D 0x5D
+#define MB_UNUSED_5E 0x5E
+#define MB_UNUSED_5F 0x5F
+#define MB_NON_ANIMATED_DOOR 0x60
+#define MB_LADDER 0x61
+#define MB_EAST_ARROW_WARP 0x62
+#define MB_WEST_ARROW_WARP 0x63
+#define MB_NORTH_ARROW_WARP 0x64
+#define MB_SOUTH_ARROW_WARP 0x65
+#define MB_CRACKED_FLOOR_HOLE 0x66
+#define MB_AQUA_HIDEOUT_WARP 0x67
+#define MB_LAVARIDGE_GYM_1F_WARP 0x68
+#define MB_ANIMATED_DOOR 0x69
+#define MB_UP_ESCALATOR 0x6A
+#define MB_DOWN_ESCALATOR 0x6B
+#define MB_WATER_DOOR 0x6C
+#define MB_WATER_SOUTH_ARROW_WARP 0x6D
+#define MB_DEEP_SOUTH_WARP 0x6E
+#define MB_UNUSED_6F 0x6F
+#define MB_WARP_OR_BRIDGE 0x70
+#define MB_UNUSED_71 0x71
+#define MB_ROUTE120_NORTH_BRIDGE_1 0x72
+#define MB_ROUTE120_NORTH_BRIDGE_2 0x73
+#define MB_PACIFIDLOG_VERTICAL_LOG_1 0x74
+#define MB_PACIFIDLOG_VERTICAL_LOG_2 0x75
+#define MB_PACIFIDLOG_HORIZONTAL_LOG_1 0x76
+#define MB_PACIFIDLOG_HORIZONTAL_LOG_2 0x77
+#define MB_FORTREE_BRIDGE 0x78
+#define MB_UNUSED_79 0x79
+#define MB_ROUTE120_SOUTH_BRIDGE_1 0x7A
+#define MB_ROUTE120_SOUTH_BRIDGE_2 0x7B
+#define MB_ROUTE120_NORTH_BRIDGE_3 0x7C
+#define MB_ROUTE120_NORTH_BRIDGE_4 0x7D
+#define MB_UNUSED_7E 0x7E
+#define MB_ROUTE110_BRIDGE 0x7F
+#define MB_COUNTER 0x80
+#define MB_UNUSED_81 0x81
+#define MB_UNUSED_82 0x82
+#define MB_PC 0x83
+#define MB_CABLE_BOX_RESULTS_1 0x84
+#define MB_REGION_MAP 0x85
+#define MB_TELEVISION 0x86
+#define MB_POKEBLOCK_FEEDER 0x87
+#define MB_UNUSED_88 0x88
+#define MB_SLOT_MACHINE 0x89
+#define MB_ROULETTE 0x8A
+#define MB_CLOSED_SOOTOPOLIS_DOOR 0x8B
+#define MB_TRICK_HOUSE_PUZZLE_DOOR 0x8C
+#define MB_PETALBURG_GYM_DOOR 0x8D
+#define MB_RUNNING_SHOES_INSTRUCTION 0x8E
+#define MB_QUESTIONNAIRE 0x8F
+#define MB_SECRET_BASE_SPOT_RED_CAVE 0x90
+#define MB_SECRET_BASE_SPOT_RED_CAVE_OPEN 0x91
+#define MB_SECRET_BASE_SPOT_BROWN_CAVE 0x92
+#define MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN 0x93
+#define MB_SECRET_BASE_SPOT_YELLOW_CAVE 0x94
+#define MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN 0x95
+#define MB_SECRET_BASE_SPOT_TREE_LEFT 0x96
+#define MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN 0x97
+#define MB_SECRET_BASE_SPOT_SHRUB 0x98
+#define MB_SECRET_BASE_SPOT_SHRUB_OPEN 0x99
+#define MB_SECRET_BASE_SPOT_BLUE_CAVE 0x9A
+#define MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN 0x9B
+#define MB_SECRET_BASE_SPOT_TREE_RIGHT 0x9C
+#define MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN 0x9D
+#define MB_UNUSED_9E 0x9E
+#define MB_UNUSED_9F 0x9F
+#define MB_BERRY_TREE_SOIL 0xA0
+#define MB_UNUSED_A1 0xA1
+#define MB_UNUSED_A2 0xA2
+#define MB_UNUSED_A3 0xA3
+#define MB_UNUSED_A4 0xA4
+#define MB_UNUSED_A5 0xA5
+#define MB_UNUSED_A6 0xA6
+#define MB_UNUSED_A7 0xA7
+#define MB_UNUSED_A8 0xA8
+#define MB_UNUSED_A9 0xA9
+#define MB_UNUSED_AA 0xAA
+#define MB_UNUSED_AB 0xAB
+#define MB_UNUSED_AC 0xAC
+#define MB_UNUSED_AD 0xAD
+#define MB_UNUSED_AE 0xAE
+#define MB_UNUSED_AF 0xAF
+#define MB_SECRET_BASE_PC 0xB0
+#define MB_SECRET_BASE_REGISTER_PC 0xB1
+#define MB_SECRET_BASE_UNUSED 0xB2
+#define MB_BLOCK_DECORATION 0xB3
+#define MB_SECRET_BASE_DECORATION 0xB4
+#define MB_SECRET_BASE_LARGE_MAT_EDGE 0xB5
+#define MB_UNUSED_B6 0xB6
+#define MB_SECRET_BASE_NORTH_WALL 0xB7
+#define MB_SECRET_BASE_BALLOON 0xB8
+#define MB_SECRET_BASE_IMPASSABLE 0xB9
+#define MB_SECRET_BASE_GLITTER_MAT 0xBA
+#define MB_SECRET_BASE_JUMP_MAT 0xBB
+#define MB_SECRET_BASE_SPIN_MAT 0xBC
+#define MB_SECRET_BASE_SOUND_MAT 0xBD
+#define MB_SECRET_BASE_BREAKABLE_DOOR 0xBE
+#define MB_SECRET_BASE_SAND_ORNAMENT 0xBF
+#define MB_IMPASSABLE_SOUTH_AND_NORTH 0xC0
+#define MB_IMPASSABLE_WEST_AND_EAST 0xC1
+#define MB_SECRET_BASE_HOLE 0xC2
+#define MB_LARGE_MAT_CENTER 0xC3
+#define MB_SECRET_BASE_TV_SHIELD 0xC4
+#define MB_PLAYER_ROOM_PC_ON 0xC5
+#define MB_C6 0xC6
+#define MB_SECRET_BASE_POSTER 0xC7
+#define MB_UNUSED_C8 0xC8
+#define MB_UNUSED_C9 0xC9
+#define MB_UNUSED_CA 0xCA
+#define MB_UNUSED_CB 0xCB
+#define MB_UNUSED_CC 0xCC
+#define MB_UNUSED_CD 0xCD
+#define MB_UNUSED_CE 0xCE
+#define MB_UNUSED_CF 0xCF
+#define MB_MUDDY_SLOPE 0xD0
+#define MB_BUMPY_SLOPE 0xD1
+#define MB_CRACKED_FLOOR 0xD2
+#define MB_ISOLATED_VERTICAL_RAIL 0xD3
+#define MB_ISOLATED_HORIZONTAL_RAIL 0xD4
+#define MB_VERTICAL_RAIL 0xD5
+#define MB_HORIZONTAL_RAIL 0xD6
+#define MB_UNUSED_D7 0xD7
+#define MB_UNUSED_D8 0xD8
+#define MB_UNUSED_D9 0xD9
+#define MB_UNUSED_DA 0xDA
+#define MB_UNUSED_DB 0xDB
+#define MB_UNUSED_DC 0xDC
+#define MB_UNUSED_DD 0xDD
+#define MB_UNUSED_DE 0xDE
+#define MB_UNUSED_DF 0xDF
+#define MB_PICTURE_BOOK_SHELF 0xE0
+#define MB_BOOKSHELF 0xE1
+#define MB_POKEMON_CENTER_BOOKSHELF 0xE2
+#define MB_VASE 0xE3
+#define MB_TRASH_CAN 0xE4
+#define MB_SHOP_SHELF 0xE5
+#define MB_BLUEPRINT 0xE6
+#define MB_CABLE_BOX_RESULTS_2 0xE7
+#define MB_WIRELESS_BOX_RESULTS 0xE8
+#define MB_TRAINER_HILL_TIMER 0xE9
+#define MB_UNKNOWN_CLOSED_DOOR 0xEA
+#define MB_UNUSED_EB 0xEB
+#define MB_UNUSED_EC 0xEC
+#define MB_UNUSED_ED 0xED
+#define MB_UNUSED_EE 0xEE
+#define MB_UNUSED_EF 0xEF
+
+#endif // GUARD_METATILE_BEHAVIORS