diff options
author | Slawter666 <38655737+Slawter666@users.noreply.github.com> | 2018-10-21 00:20:09 +0100 |
---|---|---|
committer | Slawter666 <38655737+Slawter666@users.noreply.github.com> | 2018-10-21 00:20:09 +0100 |
commit | 3d8874d9190f8904e5fc45439aa54fdf325fad48 (patch) | |
tree | caa1f1f0a2f86094cbaa36b77a69a1547bd4b105 /include | |
parent | 7a072d4527387cf21a019142caf67ce516be861d (diff) | |
parent | 2a3ba78831f2dca1ff0d3fe3f03844a993597b28 (diff) |
Merge branch 'master' of https://github.com/pret/pokeemerald into synchronise
Diffstat (limited to 'include')
30 files changed, 886 insertions, 831 deletions
diff --git a/include/battle_anim.h b/include/battle_anim.h index 200b9fdb1..3483f6836 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -31,9 +31,6 @@ struct BattleAnimBackground #define ANIM_ARGS_COUNT 8 -#define PAN_SIDE_PLAYER -64 -#define PAN_SIDE_OPPONENT 63 - extern void (*gAnimScriptCallback)(void); extern bool8 gAnimScriptActive; extern u8 gAnimVisualTaskCount; diff --git a/include/battle_frontier_1.h b/include/battle_frontier_1.h new file mode 100644 index 000000000..bc777914a --- /dev/null +++ b/include/battle_frontier_1.h @@ -0,0 +1,6 @@ +#ifndef GUARD_BATTLE_FRONTIER_1_H +#define GUARD_BATTLE_FRONTIER_1_H + +bool32 sub_8196034(void); + +#endif // GUARD_BATTLE_FRONTIER_1_H diff --git a/include/blit.h b/include/blit.h index e7f384cc8..2fe99d7bd 100644 --- a/include/blit.h +++ b/include/blit.h @@ -1,6 +1,13 @@ #ifndef GUARD_BLIT_H #define GUARD_BLIT_H +struct Bitmap +{ + u8* pixels; + u32 width:16; + u32 height:16; +}; + void BlitBitmapRect4BitWithoutColorKey(struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height); void BlitBitmapRect4Bit(struct Bitmap *src, struct Bitmap *dst, u16 srcX, u16 srcY, u16 dstX, u16 dstY, u16 width, u16 height, u8 colorKey); void FillBitmapRect4Bit(struct Bitmap *surface, u16 x, u16 y, u16 width, u16 height, u8 fillValue); diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h index 2b21aad9e..ea3087c18 100644 --- a/include/constants/battle_anim.h +++ b/include/constants/battle_anim.h @@ -313,6 +313,20 @@ #define ANIM_ATK_PARTNER 2 #define ANIM_DEF_PARTNER 3 +// stereo panning constants [0-255] +// +// 0 +// . . +// . . +// 192 . . 63 +// . . +// . . +// . . +// 127 +// +#define SOUND_PAN_ATTACKER -64 +#define SOUND_PAN_TARGET 63 + // move background ids #define BG_DARK_ 0 // the same as BG_DARK but is unused #define BG_DARK 1 diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h index 80e4213fd..4967c814d 100644 --- a/include/constants/event_objects.h +++ b/include/constants/event_objects.h @@ -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 diff --git a/include/constants/flags.h b/include/constants/flags.h index a74dffccf..c21affd61 100644 --- a/include/constants/flags.h +++ b/include/constants/flags.h @@ -1,38 +1,43 @@ #ifndef GUARD_CONSTANTS_FLAGS_H #define GUARD_CONSTANTS_FLAGS_H -#define FLAG_0x001 0x1 -#define FLAG_0x002 0x2 -#define FLAG_0x003 0x3 -#define FLAG_0x004 0x4 -#define FLAG_0x005 0x5 -#define FLAG_0x006 0x6 -#define FLAG_0x007 0x7 -#define FLAG_0x008 0x8 -#define FLAG_0x009 0x9 -#define FLAG_0x00A 0xA -#define FLAG_0x00B 0xB -#define FLAG_0x00C 0xC -#define FLAG_0x00D 0xD -#define FLAG_0x00E 0xE -#define FLAG_0x00F 0xF -#define FLAG_0x010 0x10 -#define FLAG_0x011 0x11 -#define FLAG_0x012 0x12 -#define FLAG_0x013 0x13 -#define FLAG_0x014 0x14 -#define FLAG_0x015 0x15 -#define FLAG_0x016 0x16 -#define FLAG_0x017 0x17 -#define FLAG_0x018 0x18 -#define FLAG_0x019 0x19 -#define FLAG_0x01A 0x1A -#define FLAG_0x01B 0x1B -#define FLAG_0x01C 0x1C -#define FLAG_0x01D 0x1D -#define FLAG_0x01E 0x1E -#define FLAG_0x01F 0x1F -#define FLAG_0x020 0x20 +// temporary flags +// These temporary flags are are cleared every time a map is loaded. They are used +// for things like shortening an NPCs introduction text if the player already spoke +// to them once. +#define FLAG_TEMP_1 0x1 +#define FLAG_TEMP_2 0x2 +#define FLAG_TEMP_3 0x3 +#define FLAG_TEMP_4 0x4 +#define FLAG_TEMP_5 0x5 +#define FLAG_TEMP_6 0x6 +#define FLAG_TEMP_7 0x7 +#define FLAG_TEMP_8 0x8 +#define FLAG_TEMP_9 0x9 +#define FLAG_TEMP_A 0xA +#define FLAG_TEMP_B 0xB +#define FLAG_TEMP_C 0xC +#define FLAG_TEMP_D 0xD +#define FLAG_TEMP_E 0xE +#define FLAG_TEMP_F 0xF +#define FLAG_TEMP_10 0x10 +#define FLAG_TEMP_11 0x11 +#define FLAG_TEMP_12 0x12 +#define FLAG_TEMP_13 0x13 +#define FLAG_TEMP_14 0x14 +#define FLAG_TEMP_15 0x15 +#define FLAG_TEMP_16 0x16 +#define FLAG_TEMP_17 0x17 +#define FLAG_TEMP_18 0x18 +#define FLAG_TEMP_19 0x19 +#define FLAG_TEMP_1A 0x1A +#define FLAG_TEMP_1B 0x1B +#define FLAG_TEMP_1C 0x1C +#define FLAG_TEMP_1D 0x1D +#define FLAG_TEMP_1E 0x1E +#define FLAG_TEMP_1F 0x1F +#define FLAG_TEMP_20 0x20 + #define FLAG_0x021 0x21 #define FLAG_0x022 0x22 #define FLAG_0x023 0x23 @@ -80,13 +85,13 @@ #define FLAG_0x04D 0x4D #define FLAG_0x04E 0x4E #define FLAG_0x04F 0x4F -#define FLAG_0x050 0x50 +#define FLAG_RAYQUAZA_ON_SKY_TOWER_SUMMIT 0x50 #define FLAG_0x051 0x51 #define FLAG_0x052 0x52 #define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53 #define FLAG_0x054 0x54 #define FLAG_0x055 0x55 -#define FLAG_0x056 0x56 +#define FLAG_LINK_CONTEST_POKE_BALL 0x56 #define FLAG_0x057 0x57 #define FLAG_0x058 0x58 #define FLAG_0x059 0x59 @@ -173,21 +178,24 @@ #define FLAG_0x0AA 0xAA #define FLAG_0x0AB 0xAB #define FLAG_0x0AC 0xAC -#define FLAG_0x0AD 0xAD -#define FLAG_0x0AE 0xAE -#define FLAG_0x0AF 0xAF -#define FLAG_0x0B0 0xB0 -#define FLAG_0x0B1 0xB1 -#define FLAG_0x0B2 0xB2 -#define FLAG_0x0B3 0xB3 -#define FLAG_0x0B4 0xB4 -#define FLAG_0x0B5 0xB5 -#define FLAG_0x0B6 0xB6 -#define FLAG_0x0B7 0xB7 -#define FLAG_0x0B8 0xB8 -#define FLAG_0x0B9 0xB9 -#define FLAG_0x0BA 0xBA -#define FLAG_0x0BB 0xBB + +#define FLAG_DECORATION_0 0xAD +#define FLAG_DECORATION_1 0xAE +#define FLAG_DECORATION_2 0xAF +#define FLAG_DECORATION_3 0xB0 +#define FLAG_DECORATION_4 0xB1 +#define FLAG_DECORATION_5 0xB2 +#define FLAG_DECORATION_6 0xB3 +#define FLAG_DECORATION_7 0xB4 +#define FLAG_DECORATION_8 0xB5 +#define FLAG_DECORATION_9 0xB6 +#define FLAG_DECORATION_10 0xB7 +#define FLAG_DECORATION_11 0xB8 +#define FLAG_DECORATION_12 0xB9 +#define FLAG_DECORATION_13 0xBA +#define FLAG_DECORATION_14 0xBB + +// scripts #define FLAG_0x0BC 0xBC #define FLAG_0x0BD 0xBD #define FLAG_0x0BE 0xBE @@ -230,7 +238,7 @@ #define FLAG_0x0E3 0xE3 #define FLAG_0x0E4 0xE4 #define FLAG_0x0E5 0xE5 -#define FLAG_0x0E6 0xE6 +#define FLAG_RECEIVED_TM_36 0xE6 #define FLAG_0x0E7 0xE7 #define FLAG_0x0E8 0xE8 #define FLAG_0x0E9 0xE9 @@ -292,9 +300,11 @@ #define FLAG_0x121 0x121 #define FLAG_0x122 0x122 #define FLAG_0x123 0x123 + +// upper flags? #define FLAG_0x124 0x124 #define FLAG_0x125 0x125 -#define FLAG_0x126 0x126 +#define FLAG_TRADED_SCANNER_TO_STERN 0x126 #define FLAG_0x127 0x127 #define FLAG_0x128 0x128 #define FLAG_0x129 0x129 @@ -335,8 +345,8 @@ #define FLAG_0x14C 0x14C #define FLAG_0x14D 0x14D #define FLAG_0x14E 0x14E -#define FLAG_0x14F 0x14F -#define FLAG_0x150 0x150 +#define FLAG_0x14F 0x14F// PLAYER CHOSE CLAW FOSSIL +#define FLAG_0x150 0x150// PLAYER CHOSE ROOT FOSSIL #define FLAG_0x151 0x151 #define FLAG_0x152 0x152 #define FLAG_0x153 0x153 @@ -501,677 +511,599 @@ #define FLAG_0x1F1 0x1F1 #define FLAG_0x1F2 0x1F2 #define FLAG_0x1F3 0x1F3 -#define FLAG_0x1F4 0x1F4 -#define FLAG_0x1F5 0x1F5 -#define FLAG_0x1F6 0x1F6 -#define FLAG_0x1F7 0x1F7 -#define FLAG_0x1F8 0x1F8 -#define FLAG_0x1F9 0x1F9 -#define FLAG_0x1FA 0x1FA -#define FLAG_0x1FB 0x1FB -#define FLAG_0x1FC 0x1FC -#define FLAG_0x1FD 0x1FD -#define FLAG_0x1FE 0x1FE -#define FLAG_0x1FF 0x1FF -#define FLAG_0x200 0x200 -#define FLAG_0x201 0x201 -#define FLAG_0x202 0x202 -#define FLAG_0x203 0x203 -#define FLAG_0x204 0x204 -#define FLAG_0x205 0x205 -#define FLAG_0x206 0x206 -#define FLAG_0x207 0x207 -#define FLAG_0x208 0x208 -#define FLAG_0x209 0x209 -#define FLAG_0x20A 0x20A -#define FLAG_0x20B 0x20B -#define FLAG_0x20C 0x20C -#define FLAG_0x20D 0x20D -#define FLAG_0x20E 0x20E -#define FLAG_0x20F 0x20F -#define FLAG_0x210 0x210 -#define FLAG_0x211 0x211 -#define FLAG_0x212 0x212 -#define FLAG_HIDDEN_ITEM_1F 0x213 -#define FLAG_HIDDEN_ITEM_20 0x214 -#define FLAG_HIDDEN_ITEM_21 0x215 -#define FLAG_HIDDEN_ITEM_22 0x216 -#define FLAG_0x217 0x217 -#define FLAG_0x218 0x218 -#define FLAG_0x219 0x219 -#define FLAG_0x21A 0x21A -#define FLAG_0x21B 0x21B -#define FLAG_0x21C 0x21C -#define FLAG_0x21D 0x21D -#define FLAG_0x21E 0x21E -#define FLAG_0x21F 0x21F -#define FLAG_0x220 0x220 -#define FLAG_0x221 0x221 -#define FLAG_0x222 0x222 -#define FLAG_0x223 0x223 -#define FLAG_0x224 0x224 -#define FLAG_0x225 0x225 -#define FLAG_0x226 0x226 -#define FLAG_0x227 0x227 -#define FLAG_0x228 0x228 -#define FLAG_0x229 0x229 -#define FLAG_0x22A 0x22A -#define FLAG_0x22B 0x22B -#define FLAG_0x22C 0x22C -#define FLAG_0x22D 0x22D -#define FLAG_0x22E 0x22E -#define FLAG_0x22F 0x22F -#define FLAG_0x230 0x230 -#define FLAG_0x231 0x231 -#define FLAG_0x232 0x232 -#define FLAG_0x233 0x233 -#define FLAG_0x234 0x234 -#define FLAG_0x235 0x235 -#define FLAG_0x236 0x236 -#define FLAG_0x237 0x237 -#define FLAG_0x238 0x238 -#define FLAG_0x239 0x239 -#define FLAG_0x23A 0x23A -#define FLAG_0x23B 0x23B -#define FLAG_0x23C 0x23C -#define FLAG_0x23D 0x23D -#define FLAG_0x23E 0x23E -#define FLAG_0x23F 0x23F -#define FLAG_0x240 0x240 -#define FLAG_0x241 0x241 -#define FLAG_0x242 0x242 -#define FLAG_0x243 0x243 -#define FLAG_0x244 0x244 -#define FLAG_0x245 0x245 -#define FLAG_0x246 0x246 -#define FLAG_0x247 0x247 -#define FLAG_0x248 0x248 -#define FLAG_0x249 0x249 -#define FLAG_0x24A 0x24A -#define FLAG_0x24B 0x24B -#define FLAG_0x24C 0x24C -#define FLAG_0x24D 0x24D -#define FLAG_0x24E 0x24E -#define FLAG_0x24F 0x24F -#define FLAG_0x250 0x250 -#define FLAG_0x251 0x251 -#define FLAG_0x252 0x252 -#define FLAG_0x253 0x253 -#define FLAG_HIDDEN_ITEM_BLACK_GLASSES 0x254 -#define FLAG_0x255 0x255 -#define FLAG_0x256 0x256 -#define FLAG_0x257 0x257 -#define FLAG_0x258 0x258 -#define FLAG_0x259 0x259 -#define FLAG_0x25A 0x25A -#define FLAG_0x25B 0x25B -#define FLAG_0x25C 0x25C -#define FLAG_0x25D 0x25D -#define FLAG_0x25E 0x25E -#define FLAG_0x25F 0x25F -#define FLAG_0x260 0x260 -#define FLAG_0x261 0x261 -#define FLAG_0x262 0x262 -#define FLAG_0x263 0x263 -#define FLAG_0x264 0x264 -#define FLAG_0x265 0x265 -#define FLAG_0x266 0x266 -#define FLAG_0x267 0x267 -#define FLAG_0x268 0x268 -#define FLAG_0x269 0x269 -#define FLAG_0x26A 0x26A -#define FLAG_0x26B 0x26B -#define FLAG_0x26C 0x26C -#define FLAG_0x26D 0x26D -#define FLAG_0x26E 0x26E -#define FLAG_0x26F 0x26F -#define FLAG_0x270 0x270 -#define FLAG_0x271 0x271 -#define FLAG_0x272 0x272 -#define FLAG_0x273 0x273 -#define FLAG_0x274 0x274 -#define FLAG_0x275 0x275 -#define FLAG_0x276 0x276 -#define FLAG_0x277 0x277 -#define FLAG_0x278 0x278 -#define FLAG_0x279 0x279 -#define FLAG_0x27A 0x27A -#define FLAG_0x27B 0x27B -#define FLAG_0x27C 0x27C -#define FLAG_0x27D 0x27D -#define FLAG_0x27E 0x27E -#define FLAG_0x27F 0x27F -#define FLAG_0x280 0x280 -#define FLAG_0x281 0x281 -#define FLAG_0x282 0x282 -#define FLAG_0x283 0x283 -#define FLAG_0x284 0x284 -#define FLAG_0x285 0x285 -#define FLAG_0x286 0x286 -#define FLAG_0x287 0x287 -#define FLAG_0x288 0x288 -#define FLAG_0x289 0x289 -#define FLAG_0x28A 0x28A -#define FLAG_0x28B 0x28B -#define FLAG_0x28C 0x28C -#define FLAG_0x28D 0x28D -#define FLAG_0x28E 0x28E -#define FLAG_0x28F 0x28F -#define FLAG_0x290 0x290 -#define FLAG_0x291 0x291 -#define FLAG_0x292 0x292 -#define FLAG_0x293 0x293 -#define FLAG_0x294 0x294 -#define FLAG_0x295 0x295 -#define FLAG_0x296 0x296 -#define FLAG_0x297 0x297 -#define FLAG_0x298 0x298 -#define FLAG_0x299 0x299 -#define FLAG_0x29A 0x29A -#define FLAG_0x29B 0x29B -#define FLAG_0x29C 0x29C -#define FLAG_0x29D 0x29D -#define FLAG_0x29E 0x29E -#define FLAG_0x29F 0x29F -#define FLAG_0x2A0 0x2A0 -#define FLAG_0x2A1 0x2A1 -#define FLAG_0x2A2 0x2A2 -#define FLAG_0x2A3 0x2A3 -#define FLAG_0x2A4 0x2A4 -#define FLAG_0x2A5 0x2A5 -#define FLAG_0x2A6 0x2A6 -#define FLAG_0x2A7 0x2A7 -#define FLAG_0x2A8 0x2A8 -#define FLAG_0x2A9 0x2A9 -#define FLAG_0x2AA 0x2AA -#define FLAG_0x2AB 0x2AB -#define FLAG_0x2AC 0x2AC -#define FLAG_0x2AD 0x2AD -#define FLAG_0x2AE 0x2AE -#define FLAG_0x2AF 0x2AF -#define FLAG_0x2B0 0x2B0 -#define FLAG_0x2B1 0x2B1 -#define FLAG_0x2B2 0x2B2 -#define FLAG_0x2B3 0x2B3 -#define FLAG_0x2B4 0x2B4 -#define FLAG_0x2B5 0x2B5 -#define FLAG_0x2B6 0x2B6 -#define FLAG_0x2B7 0x2B7 -#define FLAG_0x2B8 0x2B8 -#define FLAG_0x2B9 0x2B9 -#define FLAG_0x2BA 0x2BA -#define FLAG_0x2BB 0x2BB -#define FLAG_0x2BC 0x2BC -#define FLAG_0x2BD 0x2BD -#define FLAG_0x2BE 0x2BE -#define FLAG_0x2BF 0x2BF -#define FLAG_0x2C0 0x2C0 -#define FLAG_0x2C1 0x2C1 -#define FLAG_0x2C2 0x2C2 -#define FLAG_0x2C3 0x2C3 -#define FLAG_0x2C4 0x2C4 -#define FLAG_0x2C5 0x2C5 -#define FLAG_0x2C6 0x2C6 -#define FLAG_0x2C7 0x2C7 -#define FLAG_0x2C8 0x2C8 -#define FLAG_0x2C9 0x2C9 -#define FLAG_0x2CA 0x2CA -#define FLAG_0x2CB 0x2CB -#define FLAG_0x2CC 0x2CC -#define FLAG_0x2CD 0x2CD -#define FLAG_0x2CE 0x2CE -#define FLAG_0x2CF 0x2CF -#define FLAG_0x2D0 0x2D0 -#define FLAG_0x2D1 0x2D1 -#define FLAG_0x2D2 0x2D2 -#define FLAG_0x2D3 0x2D3 -#define FLAG_0x2D4 0x2D4 -#define FLAG_0x2D5 0x2D5 -#define FLAG_0x2D6 0x2D6 -#define FLAG_0x2D7 0x2D7 -#define FLAG_0x2D8 0x2D8 -#define FLAG_0x2D9 0x2D9 -#define FLAG_0x2DA 0x2DA -#define FLAG_0x2DB 0x2DB -#define FLAG_0x2DC 0x2DC -#define FLAG_0x2DD 0x2DD -#define FLAG_0x2DE 0x2DE -#define FLAG_0x2DF 0x2DF -#define FLAG_0x2E0 0x2E0 -#define FLAG_0x2E1 0x2E1 -#define FLAG_0x2E2 0x2E2 -#define FLAG_0x2E3 0x2E3 -#define FLAG_0x2E4 0x2E4 -#define FLAG_0x2E5 0x2E5 -#define FLAG_0x2E6 0x2E6 -#define FLAG_0x2E7 0x2E7 -#define FLAG_0x2E8 0x2E8 -#define FLAG_0x2E9 0x2E9 -#define FLAG_0x2EA 0x2EA -#define FLAG_0x2EB 0x2EB -#define FLAG_0x2EC 0x2EC -#define FLAG_0x2ED 0x2ED -#define FLAG_0x2EE 0x2EE -#define FLAG_0x2EF 0x2EF -#define FLAG_0x2F0 0x2F0 -#define FLAG_0x2F1 0x2F1 -#define FLAG_0x2F2 0x2F2 -#define FLAG_0x2F3 0x2F3 -#define FLAG_0x2F4 0x2F4 -#define FLAG_0x2F5 0x2F5 -#define FLAG_0x2F6 0x2F6 -#define FLAG_0x2F7 0x2F7 -#define FLAG_0x2F8 0x2F8 -#define FLAG_0x2F9 0x2F9 -#define FLAG_0x2FA 0x2FA -#define FLAG_0x2FB 0x2FB -#define FLAG_0x2FC 0x2FC -#define FLAG_0x2FD 0x2FD -#define FLAG_0x2FE 0x2FE -#define FLAG_0x2FF 0x2FF -#define FLAG_0x300 0x300 -#define FLAG_0x301 0x301 -#define FLAG_0x302 0x302 -#define FLAG_0x303 0x303 -#define FLAG_0x304 0x304 -#define FLAG_0x305 0x305 -#define FLAG_0x306 0x306 -#define FLAG_0x307 0x307 -#define FLAG_0x308 0x308 -#define FLAG_0x309 0x309 -#define FLAG_0x30A 0x30A -#define FLAG_0x30B 0x30B -#define FLAG_0x30C 0x30C -#define FLAG_0x30D 0x30D -#define FLAG_0x30E 0x30E -#define FLAG_0x30F 0x30F -#define FLAG_0x310 0x310 -#define FLAG_0x311 0x311 -#define FLAG_0x312 0x312 -#define FLAG_0x313 0x313 -#define FLAG_0x314 0x314 -#define FLAG_HIDE_FANCLUB_OLD_LADY 0x315 -#define FLAG_HIDE_FANCLUB_BOY 0x316 -#define FLAG_HIDE_FANCLUB_LITTLE_BOY 0x317 -#define FLAG_HIDE_FANCLUB_LADY 0x318 -#define FLAG_0x319 0x319 -#define FLAG_0x31A 0x31A -#define FLAG_0x31B 0x31B -#define FLAG_0x31C 0x31C -#define FLAG_0x31D 0x31D -#define FLAG_0x31E 0x31E -#define FLAG_0x31F 0x31F -#define FLAG_0x320 0x320 -#define FLAG_0x321 0x321 -#define FLAG_0x322 0x322 -#define FLAG_0x323 0x323 -#define FLAG_0x324 0x324 -#define FLAG_0x325 0x325 -#define FLAG_0x326 0x326 -#define FLAG_0x327 0x327 -#define FLAG_0x328 0x328 -#define FLAG_0x329 0x329 -#define FLAG_0x32A 0x32A -#define FLAG_0x32B 0x32B -#define FLAG_0x32C 0x32C -#define FLAG_0x32D 0x32D -#define FLAG_0x32E 0x32E -#define FLAG_0x32F 0x32F -#define FLAG_0x330 0x330 -#define FLAG_0x331 0x331 -#define FLAG_0x332 0x332 -#define FLAG_0x333 0x333 -#define FLAG_0x334 0x334 -#define FLAG_0x335 0x335 -#define FLAG_0x336 0x336 -#define FLAG_0x337 0x337 -#define FLAG_0x338 0x338 -#define FLAG_0x339 0x339 -#define FLAG_0x33A 0x33A -#define FLAG_0x33B 0x33B -#define FLAG_0x33C 0x33C -#define FLAG_0x33D 0x33D -#define FLAG_0x33E 0x33E -#define FLAG_0x33F 0x33F -#define FLAG_0x340 0x340 -#define FLAG_0x341 0x341 -#define FLAG_0x342 0x342 -#define FLAG_0x343 0x343 -#define FLAG_0x344 0x344 -#define FLAG_0x345 0x345 -#define FLAG_0x346 0x346 -#define FLAG_0x347 0x347 -#define FLAG_0x348 0x348 -#define FLAG_0x349 0x349 -#define FLAG_0x34A 0x34A -#define FLAG_0x34B 0x34B -#define FLAG_0x34C 0x34C -#define FLAG_0x34D 0x34D -#define FLAG_0x34E 0x34E -#define FLAG_0x34F 0x34F -#define FLAG_0x350 0x350 -#define FLAG_0x351 0x351 -#define FLAG_0x352 0x352 -#define FLAG_0x353 0x353 -#define FLAG_0x354 0x354 -#define FLAG_0x355 0x355 -#define FLAG_0x356 0x356 -#define FLAG_0x357 0x357 -#define FLAG_0x358 0x358 -#define FLAG_0x359 0x359 -#define FLAG_0x35A 0x35A -#define FLAG_0x35B 0x35B -#define FLAG_0x35C 0x35C -#define FLAG_0x35D 0x35D -#define FLAG_0x35E 0x35E -#define FLAG_0x35F 0x35F -#define FLAG_0x360 0x360 -#define FLAG_0x361 0x361 -#define FLAG_0x362 0x362 -#define FLAG_0x363 0x363 -#define FLAG_0x364 0x364 -#define FLAG_0x365 0x365 -#define FLAG_0x366 0x366 -#define FLAG_0x367 0x367 -#define FLAG_0x368 0x368 -#define FLAG_0x369 0x369 -#define FLAG_0x36A 0x36A -#define FLAG_0x36B 0x36B -#define FLAG_0x36C 0x36C -#define FLAG_0x36D 0x36D -#define FLAG_0x36E 0x36E -#define FLAG_0x36F 0x36F -#define FLAG_0x370 0x370 -#define FLAG_0x371 0x371 -#define FLAG_0x372 0x372 -#define FLAG_0x373 0x373 -#define FLAG_0x374 0x374 -#define FLAG_0x375 0x375 -#define FLAG_0x376 0x376 -#define FLAG_0x377 0x377 -#define FLAG_0x378 0x378 -#define FLAG_0x379 0x379 -#define FLAG_0x37A 0x37A -#define FLAG_0x37B 0x37B -#define FLAG_0x37C 0x37C -#define FLAG_0x37D 0x37D -#define FLAG_0x37E 0x37E -#define FLAG_0x37F 0x37F -#define FLAG_0x380 0x380 -#define FLAG_0x381 0x381 -#define FLAG_0x382 0x382 -#define FLAG_0x383 0x383 -#define FLAG_0x384 0x384 -#define FLAG_0x385 0x385 -#define FLAG_0x386 0x386 -#define FLAG_0x387 0x387 -#define FLAG_0x388 0x388 -#define FLAG_0x389 0x389 -#define FLAG_0x38A 0x38A -#define FLAG_0x38B 0x38B -#define FLAG_0x38C 0x38C -#define FLAG_0x38D 0x38D -#define FLAG_0x38E 0x38E -#define FLAG_0x38F 0x38F -#define FLAG_SPRITEVIS_MAUVILLE_CITY_WATTSON 0x390 -#define FLAG_SPRITEVIS_MAUVILLE_GYM_WATTSON 0x391 -#define FLAG_0x392 0x392 -#define FLAG_0x393 0x393 -#define FLAG_0x394 0x394 -#define FLAG_0x395 0x395 -#define FLAG_0x396 0x396 -#define FLAG_0x397 0x397 -#define FLAG_0x398 0x398 -#define FLAG_0x399 0x399 -#define FLAG_0x39A 0x39A -#define FLAG_0x39B 0x39B -#define FLAG_0x39C 0x39C -#define FLAG_0x39D 0x39D -#define FLAG_0x39E 0x39E -#define FLAG_0x39F 0x39F -#define FLAG_0x3A0 0x3A0 -#define FLAG_0x3A1 0x3A1 -#define FLAG_0x3A2 0x3A2 -#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1 0x3A3 -#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_2 0x3A4 -#define FLAG_0x3A5 0x3A5 -#define FLAG_0x3A6 0x3A6 -#define FLAG_0x3A7 0x3A7 -#define FLAG_0x3A8 0x3A8 -#define FLAG_0x3A9 0x3A9 -#define FLAG_0x3AA 0x3AA -#define FLAG_0x3AB 0x3AB -#define FLAG_0x3AC 0x3AC -#define FLAG_0x3AD 0x3AD -#define FLAG_0x3AE 0x3AE -#define FLAG_0x3AF 0x3AF -#define FLAG_0x3B0 0x3B0 -#define FLAG_0x3B1 0x3B1 -#define FLAG_0x3B2 0x3B2 -#define FLAG_0x3B3 0x3B3 -#define FLAG_0x3B4 0x3B4 -#define FLAG_0x3B5 0x3B5 -#define FLAG_0x3B6 0x3B6 -#define FLAG_0x3B7 0x3B7 -#define FLAG_0x3B8 0x3B8 -#define FLAG_0x3B9 0x3B9 -#define FLAG_0x3BA 0x3BA -#define FLAG_0x3BB 0x3BB -#define FLAG_0x3BC 0x3BC -#define FLAG_0x3BD 0x3BD -#define FLAG_0x3BE 0x3BE -#define FLAG_0x3BF 0x3BF -#define FLAG_0x3C0 0x3C0 -#define FLAG_SPRITEVIS_SLATEPORT_MUSEUM_POPULATION 0x3C1 -#define FLAG_0x3C2 0x3C2 -#define FLAG_0x3C3 0x3C3 -#define FLAG_0x3C4 0x3C4 -#define FLAG_0x3C5 0x3C5 -#define FLAG_0x3C6 0x3C6 -#define FLAG_0x3C7 0x3C7 -#define FLAG_0x3C8 0x3C8 -#define FLAG_0x3C9 0x3C9 -#define FLAG_0x3CA 0x3CA -#define FLAG_0x3CB 0x3CB -#define FLAG_0x3CC 0x3CC -#define FLAG_0x3CD 0x3CD -#define FLAG_0x3CE 0x3CE -#define FLAG_0x3CF 0x3CF -#define FLAG_0x3D0 0x3D0 -#define FLAG_0x3D1 0x3D1 -#define FLAG_0x3D2 0x3D2 -#define FLAG_0x3D3 0x3D3 -#define FLAG_0x3D4 0x3D4 -#define FLAG_0x3D5 0x3D5 -#define FLAG_0x3D6 0x3D6 -#define FLAG_0x3D7 0x3D7 -#define FLAG_0x3D8 0x3D8 -#define FLAG_0x3D9 0x3D9 -#define FLAG_0x3DA 0x3DA -#define FLAG_0x3DB 0x3DB -#define FLAG_0x3DC 0x3DC -#define FLAG_0x3DD 0x3DD -#define FLAG_0x3DE 0x3DE -#define FLAG_0x3DF 0x3DF -#define FLAG_0x3E0 0x3E0 -#define FLAG_0x3E1 0x3E1 -#define FLAG_0x3E2 0x3E2 -#define FLAG_0x3E3 0x3E3 -#define FLAG_0x3E4 0x3E4 -#define FLAG_0x3E5 0x3E5 -#define FLAG_0x3E6 0x3E6 -#define FLAG_0x3E7 0x3E7 -#define FLAG_0x3E8 0x3E8 -#define FLAG_0x3E9 0x3E9 -#define FLAG_0x3EA 0x3EA -#define FLAG_0x3EB 0x3EB -#define FLAG_0x3EC 0x3EC -#define FLAG_0x3ED 0x3ED -#define FLAG_0x3EE 0x3EE -#define FLAG_0x3EF 0x3EF -#define FLAG_0x3F0 0x3F0 -#define FLAG_0x3F1 0x3F1 -#define FLAG_0x3F2 0x3F2 -#define FLAG_0x3F3 0x3F3 -#define FLAG_0x3F4 0x3F4 -#define FLAG_0x3F5 0x3F5 -#define FLAG_0x3F6 0x3F6 -#define FLAG_0x3F7 0x3F7 -#define FLAG_0x3F8 0x3F8 -#define FLAG_0x3F9 0x3F9 -#define FLAG_0x3FA 0x3FA -#define FLAG_0x3FB 0x3FB -#define FLAG_0x3FC 0x3FC -#define FLAG_0x3FD 0x3FD -#define FLAG_0x3FE 0x3FE -#define FLAG_0x3FF 0x3FF -#define FLAG_0x400 0x400 -#define FLAG_0x401 0x401 -#define FLAG_0x402 0x402 -#define FLAG_0x403 0x403 -#define FLAG_0x404 0x404 -#define FLAG_0x405 0x405 -#define FLAG_0x406 0x406 -#define FLAG_0x407 0x407 -#define FLAG_0x408 0x408 -#define FLAG_0x409 0x409 -#define FLAG_0x40A 0x40A -#define FLAG_0x40B 0x40B -#define FLAG_0x40C 0x40C -#define FLAG_0x40D 0x40D -#define FLAG_0x40E 0x40E -#define FLAG_0x40F 0x40F -#define FLAG_0x410 0x410 -#define FLAG_0x411 0x411 -#define FLAG_0x412 0x412 -#define FLAG_0x413 0x413 -#define FLAG_0x414 0x414 -#define FLAG_0x415 0x415 -#define FLAG_0x416 0x416 -#define FLAG_0x417 0x417 -#define FLAG_0x418 0x418 -#define FLAG_0x419 0x419 -#define FLAG_0x41A 0x41A -#define FLAG_0x41B 0x41B -#define FLAG_0x41C 0x41C -#define FLAG_0x41D 0x41D -#define FLAG_0x41E 0x41E -#define FLAG_0x41F 0x41F -#define FLAG_0x420 0x420 -#define FLAG_0x421 0x421 -#define FLAG_0x422 0x422 -#define FLAG_0x423 0x423 -#define FLAG_0x424 0x424 -#define FLAG_0x425 0x425 -#define FLAG_0x426 0x426 -#define FLAG_0x427 0x427 -#define FLAG_0x428 0x428 -#define FLAG_0x429 0x429 -#define FLAG_0x42A 0x42A -#define FLAG_0x42B 0x42B -#define FLAG_0x42C 0x42C -#define FLAG_0x42D 0x42D -#define FLAG_0x42E 0x42E -#define FLAG_0x42F 0x42F -#define FLAG_0x430 0x430 -#define FLAG_0x431 0x431 -#define FLAG_0x432 0x432 -#define FLAG_0x433 0x433 -#define FLAG_0x434 0x434 -#define FLAG_0x435 0x435 -#define FLAG_0x436 0x436 -#define FLAG_0x437 0x437 -#define FLAG_0x438 0x438 -#define FLAG_0x439 0x439 -#define FLAG_0x43A 0x43A -#define FLAG_0x43B 0x43B -#define FLAG_0x43C 0x43C -#define FLAG_0x43D 0x43D -#define FLAG_0x43E 0x43E -#define FLAG_0x43F 0x43F -#define FLAG_0x440 0x440 -#define FLAG_0x441 0x441 -#define FLAG_0x442 0x442 -#define FLAG_0x443 0x443 -#define FLAG_0x444 0x444 -#define FLAG_0x445 0x445 -#define FLAG_0x446 0x446 -#define FLAG_0x447 0x447 -#define FLAG_0x448 0x448 -#define FLAG_0x449 0x449 -#define FLAG_0x44A 0x44A -#define FLAG_0x44B 0x44B -#define FLAG_0x44C 0x44C -#define FLAG_0x44D 0x44D -#define FLAG_0x44E 0x44E -#define FLAG_0x44F 0x44F -#define FLAG_0x450 0x450 -#define FLAG_0x451 0x451 -#define FLAG_0x452 0x452 -#define FLAG_0x453 0x453 -#define FLAG_0x454 0x454 -#define FLAG_0x455 0x455 -#define FLAG_0x456 0x456 -#define FLAG_0x457 0x457 -#define FLAG_0x458 0x458 -#define FLAG_0x459 0x459 -#define FLAG_0x45A 0x45A -#define FLAG_0x45B 0x45B -#define FLAG_0x45C 0x45C -#define FLAG_0x45D 0x45D -#define FLAG_0x45E 0x45E -#define FLAG_0x45F 0x45F -#define FLAG_0x460 0x460 -#define FLAG_0x461 0x461 -#define FLAG_0x462 0x462 -#define FLAG_0x463 0x463 -#define FLAG_0x464 0x464 -#define FLAG_0x465 0x465 -#define FLAG_0x466 0x466 -#define FLAG_0x467 0x467 -#define FLAG_0x468 0x468 -#define FLAG_0x469 0x469 -#define FLAG_0x46A 0x46A -#define FLAG_0x46B 0x46B -#define FLAG_0x46C 0x46C -#define FLAG_0x46D 0x46D -#define FLAG_0x46E 0x46E -#define FLAG_0x46F 0x46F -#define FLAG_0x470 0x470 -#define FLAG_0x471 0x471 -#define FLAG_0x472 0x472 -#define FLAG_0x473 0x473 -#define FLAG_0x474 0x474 -#define FLAG_0x475 0x475 -#define FLAG_0x476 0x476 -#define FLAG_0x477 0x477 -#define FLAG_0x478 0x478 -#define FLAG_0x479 0x479 -#define FLAG_0x47A 0x47A -#define FLAG_0x47B 0x47B -#define FLAG_0x47C 0x47C -#define FLAG_0x47D 0x47D -#define FLAG_0x47E 0x47E -#define FLAG_0x47F 0x47F -#define FLAG_0x480 0x480 -#define FLAG_0x481 0x481 -#define FLAG_0x482 0x482 -#define FLAG_0x483 0x483 -#define FLAG_0x484 0x484 -#define FLAG_0x485 0x485 -#define FLAG_0x486 0x486 -#define FLAG_0x487 0x487 -#define FLAG_0x488 0x488 -#define FLAG_0x489 0x489 -#define FLAG_0x48A 0x48A -#define FLAG_0x48B 0x48B -#define FLAG_0x48C 0x48C -#define FLAG_0x48D 0x48D -#define FLAG_0x48E 0x48E -#define FLAG_0x48F 0x48F -#define FLAG_0x490 0x490 -#define FLAG_0x491 0x491 -#define FLAG_0x492 0x492 +#define FLAG_0x1F5 0x1F5 // trick house end room? + +// Hidden Items -- sorted by location +#define FLAG_HIDDEN_ITEMS_START 0x1F4 +#define FLAG_HIDDEN_ITEM_TRICK_HOUSE_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x01) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x08) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_GREEN_SHARD (FLAG_HIDDEN_ITEMS_START + 0x09) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0A) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x0B) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x0D) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x24) +#define FLAG_HIDDEN_ITEM_UNDERWATER_1_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x26) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x0E) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x0F) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x10) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_PEARL (FLAG_HIDDEN_ITEMS_START + 0x11) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_IRON (FLAG_HIDDEN_ITEMS_START + 0x13) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_YELLOW_SHARD (FLAG_HIDDEN_ITEMS_START + 0x12) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x14) +#define FLAG_HIDDEN_ITEM_UNDERWATER_2_BLUE_SHARD (FLAG_HIDDEN_ITEMS_START + 0x0C) +#define FLAG_HIDDEN_ITEM_UNDERWATER_3_STAR_PIECE (FLAG_HIDDEN_ITEMS_START + 0x15) +#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x16) +#define FLAG_HIDDEN_ITEM_UNDERWATER_3_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x17) +#define FLAG_HIDDEN_ITEM_UNDERWATER_3_RED_SHARD (FLAG_HIDDEN_ITEMS_START + 0x18) +#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x19) +#define FLAG_HIDDEN_ITEM_UNDERWATER_4_PEARL (FLAG_HIDDEN_ITEMS_START + 0x1A) +#define FLAG_HIDDEN_ITEM_FALLARBOR_TOWN_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x1C) +#define FLAG_HIDDEN_ITEM_LAVARIDGE_TOWN_ICE_HEAL (FLAG_HIDDEN_ITEMS_START + 0x00) +#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_1_KEY (FLAG_HIDDEN_ITEMS_START + 0x1F) +#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_2_KEY (FLAG_HIDDEN_ITEMS_START + 0x20) +#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_4_KEY (FLAG_HIDDEN_ITEMS_START + 0x21) +#define FLAG_HIDDEN_ITEM_ABANDONED_SHIP_RM_6_KEY (FLAG_HIDDEN_ITEMS_START + 0x22) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x65) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_ZINC (FLAG_HIDDEN_ITEMS_START + 0x66) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x67) +#define FLAG_HIDDEN_ITEM_ARTISAN_CAVE_B1F_IRON (FLAG_HIDDEN_ITEMS_START + 0x68) +#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_1 (FLAG_HIDDEN_ITEMS_START + 0x30) +#define FLAG_HIDDEN_ITEM_GRANITE_CAVE_B2F_EVERSTONE_2 (FLAG_HIDDEN_ITEMS_START + 0x31) +#define FLAG_HIDDEN_ITEM_JAGGED_PASS_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x4C) +#define FLAG_HIDDEN_ITEM_JAGGED_PASS_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x4D) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x1B) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x2B) +#define FLAG_HIDDEN_ITEM_LILYCOVE_CITY_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x4B) +#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x1D) +#define FLAG_HIDDEN_ITEM_MT_PYRE_EXTERIOR_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x4E) +#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_ZINC (FLAG_HIDDEN_ITEMS_START + 0x4F) +#define FLAG_HIDDEN_ITEM_MT_PYRE_SUMMIT_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x50) +#define FLAG_HIDDEN_ITEM_NAVEL_ROCK_TOP_SACRED_ASH (FLAG_HIDDEN_ITEMS_START + 0x6D) +#define FLAG_HIDDEN_ITEM_PETALBURG_CITY_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x5F) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POTION (FLAG_HIDDEN_ITEMS_START + 0x3A) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_1 (FLAG_HIDDEN_ITEMS_START + 0x3B) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_TINY_MUSHROOM_2 (FLAG_HIDDEN_ITEMS_START + 0x3C) +#define FLAG_HIDDEN_ITEM_PETALBURG_WOODS_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3D) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_ELIXIR (FLAG_HIDDEN_ITEMS_START + 0x52) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_B2F_MAX_REPEL (FLAG_HIDDEN_ITEMS_START + 0x53) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6A) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_NORTH_EAST_ZINC (FLAG_HIDDEN_ITEMS_START + 0x6B) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x6C) +#define FLAG_HIDDEN_ITEM_SAFARI_ZONE_SOUTH_EAST_FULL_RESTORE (FLAG_HIDDEN_ITEMS_START + 0x69) +#define FLAG_HIDDEN_ITEM_SS_TIDAL_LOWER_DECK_LEFTOVERS (FLAG_HIDDEN_ITEMS_START + 0x23) +#define FLAG_HIDDEN_ITEM_VICTORY_ROAD_1F_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x51) +#define FLAG_HIDDEN_ITEM_ROUTE_104_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2C) +#define FLAG_HIDDEN_ITEM_ROUTE_104_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3E) +#define FLAG_HIDDEN_ITEM_ROUTE_104_POTION (FLAG_HIDDEN_ITEMS_START + 0x25) +#define FLAG_HIDDEN_ITEM_ROUTE_104_ANTIDOTE (FLAG_HIDDEN_ITEMS_START + 0x55) +#define FLAG_HIDDEN_ITEM_ROUTE_104_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x58) +#define FLAG_HIDDEN_ITEM_ROUTE_105_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x59) +#define FLAG_HIDDEN_ITEM_ROUTE_105_BIG_PEARL (FLAG_HIDDEN_ITEMS_START + 0x6F) +#define FLAG_HIDDEN_ITEM_ROUTE_106_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x3F) +#define FLAG_HIDDEN_ITEM_ROUTE_106_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x2E) +#define FLAG_HIDDEN_ITEM_ROUTE_106_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x2F) +#define FLAG_HIDDEN_ITEM_ROUTE_108_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x56) +#define FLAG_HIDDEN_ITEM_ROUTE_109_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x32) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x34) +#define FLAG_HIDDEN_ITEM_ROUTE_109_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x33) +#define FLAG_HIDDEN_ITEM_ROUTE_109_ETHER (FLAG_HIDDEN_ITEMS_START + 0x40) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5A) +#define FLAG_HIDDEN_ITEM_ROUTE_109_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5B) +#define FLAG_HIDDEN_ITEM_ROUTE_110_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x36) +#define FLAG_HIDDEN_ITEM_ROUTE_110_GREAT_BALL (FLAG_HIDDEN_ITEMS_START + 0x35) +#define FLAG_HIDDEN_ITEM_ROUTE_110_POKE_BALL (FLAG_HIDDEN_ITEMS_START + 0x41) +#define FLAG_HIDDEN_ITEM_ROUTE_110_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x37) +#define FLAG_HIDDEN_ITEM_ROUTE_111_STARDUST (FLAG_HIDDEN_ITEMS_START + 0x02) +#define FLAG_HIDDEN_ITEM_ROUTE_111_PROTEIN (FLAG_HIDDEN_ITEMS_START + 0x38) +#define FLAG_HIDDEN_ITEM_ROUTE_111_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x39) +#define FLAG_HIDDEN_ITEM_ROUTE_113_ETHER (FLAG_HIDDEN_ITEMS_START + 0x03) +#define FLAG_HIDDEN_ITEM_ROUTE_113_TM_32 (FLAG_HIDDEN_ITEMS_START + 0x1E) +#define FLAG_HIDDEN_ITEM_ROUTE_113_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x62) +#define FLAG_HIDDEN_ITEM_ROUTE_114_CARBOS (FLAG_HIDDEN_ITEMS_START + 0x04) +#define FLAG_HIDDEN_ITEM_ROUTE_113_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x2A) +#define FLAG_HIDDEN_ITEM_ROUTE_115_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x61) +#define FLAG_HIDDEN_ITEM_ROUTE_116_SUPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x2D) +#define FLAG_HIDDEN_ITEM_ROUTE_116_BLACK_GLASSES (FLAG_HIDDEN_ITEMS_START + 0x60) +#define FLAG_HIDDEN_ITEM_ROUTE_117_REPEL (FLAG_HIDDEN_ITEMS_START + 0x48) +#define FLAG_HIDDEN_ITEM_ROUTE_118_HEART_SCALE (FLAG_HIDDEN_ITEMS_START + 0x42) +#define FLAG_HIDDEN_ITEM_ROUTE_118_IRON (FLAG_HIDDEN_ITEMS_START + 0x43) +#define FLAG_HIDDEN_ITEM_ROUTE_119_CALCIUM (FLAG_HIDDEN_ITEMS_START + 0x05) +#define FLAG_HIDDEN_ITEM_ROUTE_119_ULTRA_BALL (FLAG_HIDDEN_ITEMS_START + 0x06) +#define FLAG_HIDDEN_ITEM_ROUTE_119_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x44) +#define FLAG_HIDDEN_ITEM_ROUTE_119_MAX_ETHER (FLAG_HIDDEN_ITEMS_START + 0x57) +#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_1 (FLAG_HIDDEN_ITEMS_START + 0x47) +#define FLAG_HIDDEN_ITEM_ROUTE_120_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x54) +#define FLAG_HIDDEN_ITEM_ROUTE_120_RARE_CANDY_2 (FLAG_HIDDEN_ITEMS_START + 0x45) +#define FLAG_HIDDEN_ITEM_ROUTE_120_ZINC (FLAG_HIDDEN_ITEMS_START + 0x46) +#define FLAG_HIDDEN_ITEM_ROUTE_121_HP_UP (FLAG_HIDDEN_ITEMS_START + 0x27) +#define FLAG_HIDDEN_ITEM_ROUTE_121_NUGGET (FLAG_HIDDEN_ITEMS_START + 0x28) +#define FLAG_HIDDEN_ITEM_ROUTE_121_FULL_HEAL (FLAG_HIDDEN_ITEMS_START + 0x49) +#define FLAG_HIDDEN_ITEM_ROUTE_121_MAX_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x64) +#define FLAG_HIDDEN_ITEM_ROUTE_123_SUPER_REPEL (FLAG_HIDDEN_ITEMS_START + 0x07) +#define FLAG_HIDDEN_ITEM_ROUTE_123_REVIVE (FLAG_HIDDEN_ITEMS_START + 0x29) +#define FLAG_HIDDEN_ITEM_ROUTE_123_HYPER_POTION (FLAG_HIDDEN_ITEMS_START + 0x4A) +#define FLAG_HIDDEN_ITEM_ROUTE_123_PP_UP (FLAG_HIDDEN_ITEMS_START + 0x63) +#define FLAG_HIDDEN_ITEM_ROUTE_123_RARE_CANDY (FLAG_HIDDEN_ITEMS_START + 0x6E) +#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_1 (FLAG_HIDDEN_ITEMS_START + 0x5C) +#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_2 (FLAG_HIDDEN_ITEMS_START + 0x5D) +#define FLAG_HIDDEN_ITEM_ROUTE_128_HEART_SCALE_3 (FLAG_HIDDEN_ITEMS_START + 0x5E) + +// Event Flags +#define FLAG_HIDE_ROUTE_101_BIRCH_STARTERS_BAG 0x2BC +#define FLAG_HIDE_APPRENTICE 0x2BD +#define FLAG_HIDE_POKEMON_CENTER_2F_MYSTERY_GIFT_MAN 0x2BE +#define FLAG_HIDE_UNION_ROOM_PLAYER_1 0x2BF +#define FLAG_HIDE_UNION_ROOM_PLAYER_2 0x2C0 +#define FLAG_HIDE_UNION_ROOM_PLAYER_3 0x2C1 +#define FLAG_HIDE_UNION_ROOM_PLAYER_4 0x2C2 +#define FLAG_HIDE_UNION_ROOM_PLAYER_5 0x2C3 +#define FLAG_HIDE_UNION_ROOM_PLAYER_6 0x2C4 +#define FLAG_HIDE_UNION_ROOM_PLAYER_7 0x2C5 +#define FLAG_HIDE_UNION_ROOM_PLAYER_8 0x2C6 +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_1 0x2C7 +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_2 0x2C8 +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_3 0x2C9 +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_4 0x2CA +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_5 0x2CB +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_6 0x2CC +#define FLAG_HIDE_SAFARI_ZONE_SOUTH_CONSTRUCTION_WORKERS 0x2CD +#define FLAG_HIDE_MEW 0x2CE +#define FLAG_HIDE_ROUTE_104_RIVAL 0x2CF +#define FLAG_HIDE_ROUTE_101_BIRCH_ZIGZAGOON_BATTLE 0x2D0 +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH 0x2D1 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_BEDROOM 0x2D2 +#define FLAG_HIDE_ROUTE_103_RIVAL 0x2D3 +#define FLAG_HIDE_PETALBURG_WOODS_DEVON_EMPLOYEE 0x2D4 +#define FLAG_HIDE_PETALBURG_WOODS_AQUA_GRUNT 0x2D5 +#define FLAG_HIDE_PETALBURG_CITY_WALLY 0x2D6 +#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_INVISIBLE_NINJA_BOY 0x2D7 +#define FLAG_HIDE_PETALBURG_CITY_WALLYS_AUNT 0x2D8 +#define FLAG_UNUSED_0x2D9 0x2D9 +#define FLAG_HIDE_LILYCOVE_FAN_CLUB_INTERVIEWER 0x2DA +#define FLAG_HIDE_RUSTBORO_CITY_AQUA_GRUNT 0x2DB +#define FLAG_HIDE_RUSTBORO_CITY_DEVON_EMPLOYEE_1 0x2DC +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_2 0x2DD +#define FLAG_HIDE_PLAYERS_HOUSE_DAD 0x2DE +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_SIBLING 0x2DF +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_SIBLING 0x2E0 +#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_INVISIBLE_NINJA_BOY 0x2E1 +#define FLAG_HIDE_ROUTE_104_MR_BRINEY 0x2E2 +#define FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY 0x2E3 +#define FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN 0x2E4 +#define FLAG_HIDE_ROUTE_108_MR_BRINEY 0x2E5 +#define FLAG_HIDE_ROUTE_104_MR_BRINEY_BOAT 0x2E6 +#define FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD_TOWN 0x2E7 +#define FLAG_HIDE_ROUTE_109_MR_BRINEY_BOAT 0x2E8 +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_BRENDAN 0x2E9 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_BRENDAN 0x2EA +#define FLAG_HIDE_SAFARI_ZONE_SOUTH_EAST_EXPANSION 0x2EB +#define FLAG_HIDE_LILYCOVE_HARBOR_EON_TICKET_TAKER 0x2EC +#define FLAG_HIDE_SLATEPORT_CITY_SCOTT 0x2ED +#define FLAG_HIDE_ROUTE_101_ZIGZAGOON 0x2EE +#define FLAG_HIDE_VICTORY_ROAD_EXIT_WALLY 0x2EF +#define FLAG_HIDE_LITTLEROOT_TOWN_MOM_OUTSIDE 0x2F0 +#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_STEVEN 0x2F1 +#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_1 0x2F2 +#define FLAG_HIDE_LITTLEROOT_TOWN_PLAYERS_HOUSE_VIGOROTH_2 0x2F3 +#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_1F_TEAM_MAGMA 0x2F4 +#define FLAG_HIDE_LITTLE_ROOT_TOWN_PLAYERS_BEDROOM_MOM 0x2F5 +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_MOM 0x2F6 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_MOM 0x2F7 +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_BEDROOM 0x2F8 +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_TRUCK 0x2F9 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_TRUCK 0x2FA +#define FLAG_HIDE_DEOXYS 0x2FB +#define FLAG_HIDE_BIRTH_ISLAND_DEOXYS_TRIANGLE 0x2FC +#define FLAG_HIDE_MAUVILLE_CITY_SCOTT 0x2FD +#define FLAG_HIDE_VERDANTURF_TOWN_SCOTT 0x2FE +#define FLAG_HIDE_FALLORBOR_TOWN_BATTLE_TENT_SCOTT 0x2FF +#define FLAG_HIDE_ROUTE_111_VICTOR_WINSTRATE 0x300 +#define FLAG_HIDE_ROUTE_111_VICTORIA_WINSTRATE 0x301 +#define FLAG_HIDE_ROUTE_111_VIVI_WINSTRATE 0x302 +#define FLAG_HIDE_ROUTE_111_VICKY_WINSTRATE 0x303 +#define FLAG_HIDE_PETALYBURG_GYM_NORMAN 0x304 +#define FLAG_HIDE_SKY_PILLAR_TOP_RAYQUAZA_2 0x305 +#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_1 0x306 +#define FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR 0x307 +#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_1 0x308 +#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_2 0x309 +#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_3 0x30A +#define FLAG_HIDE_LILYCOVE_MUSEUM_PATRON_4 0x30B +#define FLAG_HIDE_LILYCOVE_MUSEUM_TOURISTS 0x30C +#define FLAG_HIDE_PETALBURG_GYM_GREETER 0x30D +#define FLAG_HIDE_MARINE_CAVE_KYOGRE 0x30E +#define FLAG_HIDE_TERRA_CAVE_GROUDON 0x30F +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_RIVAL_MOM 0x310 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_RIVAL_MOM 0x311 +#define FLAG_HIDE_ROUTE_119_SCOTT 0x312 +#define FLAG_HIDE_LILCOVE_MOTEL_SCOTT 0x313 +#define FLAG_HIDE_MOSSDEEP_CITY_SCOTT 0x314 +#define FLAG_HIDE_FANCLUB_OLD_LADY 0x315 +#define FLAG_HIDE_FANCLUB_BOY 0x316 +#define FLAG_HIDE_FANCLUB_LITTLE_BOY 0x317 +#define FLAG_HIDE_FANCLUB_LADY 0x318 +#define FLAG_HIDE_EVER_GRANDE_POKEMON_CENTER_1F_SCOTT 0x319 +#define FLAG_HIDE_LITTLEROOT_TOWN_RIVAL 0x31A +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCH 0x31B +#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1 0x31C +#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1 0x31D +#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1 0x31E +#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3 0x31F +#define FLAG_HIDE_LUGIA 0x320 +#define FLAG_HIDE_HOOH 0x321 +#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_REPORTER 0x322 +#define FLAG_HIDE_SLATEPORT_CITY_CONTEST_REPORTER 0x323 +#define FLAG_HIDE_MAUVILLE_CITY_WALLY 0x324 +#define FLAG_HIDE_MAUVILLE_CITY_WALLYS_UNCLE 0x325 +#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLY 0x326 +#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_MAN 0x327 +#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_MAN 0x328 +#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_WALLYS_UNCLE 0x329 +#define FLAG_HIDE_SS_TIDAL_CORRIDOR_SCOTT 0x32A +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CYNDAQUIL 0x32B +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_TOTODILE 0x32C +#define FLAG_HIDE_ROUTE_116_DROPPED_GLASSES_MAN 0x32D +#define FLAG_HIDE_RUSBORO_CITY_RIVAL 0x32E +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_SWABLU_DOLL 0x32F +#define FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE 0x330 +#define FLAG_HIDE_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F_POKE_BALL 0x331 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_POKE_BALL 0x332 +#define FLAG_HIDE_ROUTE_112_TEAM_MAGMA 0x333 +#define FLAG_HIDE_CAVE_OF_ORIGIN_B1F_WALLACE 0x334 +#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_1_BLOCKING_ENTRANCE 0x335 +#define FLAG_HIDE_AQUA_HIDEOUT_1F_GRUNT_2_BLOCKING_ENTRANCE 0x336 +#define FLAG_HIDE_MOSSDEEP_CITY_TEAM_MAGMA 0x337 +#define FLAG_HIDE_PETALBURG_GYM_WALLYS_UNCLE 0x338 +#define FLAG_UNUSED_0x339 0x339 +#define FLAG_HIDE_SOOTOPOLIS_CITY_ARCHIE 0x33A +#define FLAG_HIDE_SOOTOPOLIS_CITY_MAXIE 0x33B +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_ARCHIE 0x33C +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAXIE 0x33D +#define FLAG_HIDE_PETALBURG_CITY_WALLYS_UNCLE 0x33E +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_MAGMA_GRUNTS 0x33F +#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_BLEND_MASTER_ONLOOKERS 0x340 +#define FLAG_HIDE_GRANITE_CAVE_STEVEN 0x341 +#define FLAG_HIDE_ROUTE_128_STEVEN 0x342 +#define FLAG_HIDE_SLATEPORT_CITY_GABBY_AND_TY 0x343 +#define FLAG_HIDE_BATTLE_FRONTIER_RECEPTION_GATE_SCOTT 0x344 +#define FLAG_HIDE_ROUTE_110_BIRCH 0x345 +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_POKEBALL_CHIKORITA 0x346 +#define FLAG_HIDE_SOOTOPOLIS_CITY_MAN_1 0x347 +#define FLAG_HIDE_SLATEPORT_CITY_CAPTAIN_STERN 0x348 +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_CAPTAIN_STERN 0x349 +#define FLAG_HIDE_BATTLE_FRONTIER_SUDOWOODO 0x34A +#define FLAG_HIDE_ROUTE_111_ROCK_SMASH_TIP_GUY 0x34B +#define FLAG_HIDE_RUSTBORO_CITY_SCIENTIST 0x34C +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_AQUA_GRUNT 0x34D +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_ARCHIE 0x34E +#define FLAG_HIDE_JAGGED_PASS_MAGMA_GUARD 0x34F +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SUBMARINE_SHADOW 0x350 +#define FLAG_HIDE_LITTLEROOT_TOWN_MAYS_HOUSE_2F_PICHU_DOLL 0x351 +#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_2 0x352 +#define FLAG_HIDE_ROUTE_119_RIVAL 0x353 +#define FLAG_HIDE_LILYCOVE_CITY_AQUA_GRUNTS 0x354 +#define FLAG_HIDE_MAGMA_HIDEOUT_4F_GROUDON_1 0x355 +#define FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS 0x356 +#define FLAG_HIDE_SKY_PILLAR_WALLACE 0x357 +#define FLAG_HIDE_MT_PYRE_SUMMIT_MAXIE 0x358 +#define FLAG_HIDE_MAGMA_HIDEOUT_GRUNTS 0x359 +#define FLAG_HIDE_VICTORY_ROAD_ENTRANCE_WALLY 0x35A +#define FLAG_HIDE_SEAFLOOR_CAVERN_ROOM_9_KYOGRE_1 0x35B +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_SS_TIDAL 0x35C +#define FLAG_HIDE_LILYCOVE_HARBOR_SSTIDAL 0x35D +#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_TEAM_MAGMA 0x35E +#define FLAG_HIDE_MOSSDEEP_CITY_SPACE_CENTER_2F_STEVEN 0x35F +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_1 0x360 +#define FLAG_HIDE_BATTLE_TOWER_MULTI_BATTLE_PARTNER_ALT_2 0x361 +#define FLAG_HIDE_PETALBURG_GYM_WALLY 0x362 +#define FLAG_UNKNOWN_0x363 0x363 +#define FLAG_HIDE_LITTLEROOT_TOWN_FAT_MAN 0x364 +#define FLAG_HIDE_SLATEPORT_CITY_STERNS_SHIPYARD_MR_BRINEY 0x365 +#define FLAG_HIDE_LANETTES_HOUSE_LANETTE 0x366 +#define FLAG_HIDE_FALLORBOR_POKEMON_CENTER_LANETTE 0x367 +#define FLAG_HIDE_TRICK_HOUSE_ENTRANCE_MAN 0x368 +#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_POKEBLOCK_EXPERT 0x369 +#define FLAG_HIDE_DESERT_UNDERPASS_FOSSIL 0x36A +#define FLAG_HIDE_ROUTE_111_DESERT_RIVAL 0x36B +#define FLAG_HIDE_ROUTE_111_DESERT_FOSSIL 0x36C +#define FLAG_HIDE_MT_CHIMNEY_TRAINERS 0x36D +#define FLAG_HIDE_RUSTURF_TUNNEL_AQUA_GRUNT 0x36E +#define FLAG_HIDE_RUSTURF_TUNNEL_OLD_MAN 0x36F +#define FLAG_HIDE_RUSTURF_TUNNEL_PEEKO 0x370 +#define FLAG_HIDE_BRINEYS_HOUSE_PEEKO 0x371 +#define FLAG_HIDE_SLATEPORT_CITY_TEAM_AQUA 0x372 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_AQUA_GRUNTS 0x373 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_1 0x374 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_AQUA_GRUNT_2 0x375 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_ARCHIE 0x376 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_2F_CAPTAIN_STERN 0x377 +#define FLAG_HIDE_BATTLE_TOWER_OPPONENT 0x378 +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_RIVAL 0x379 +#define FLAG_HIDE_ROUTE_119_TEAM_AQUA 0x37A +#define FLAG_HIDE_ROUTE_116_MR_BRINEY 0x37B +#define FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS 0x37C +#define FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS 0x37D +#define FLAG_HIDE_ROUTE_116_TUNNELER 0x37E +#define FLAG_HIDE_LILYCOVE_CONTEST_HALL_CONTEST_ATTENDANT_2 0x37F +#define FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_UNKNOWN_0x380 0x380 +#define FLAG_HIDE_ROUTE_101_BIRCH 0x381 +#define FLAG_HIDE_ROUTE_103_BIRCH 0x382 +#define FLAG_HIDE_TRICK_HOUSE_END_MAN 0x383 +#define FLAG_HIDE_ROUTE_110_TEAM_AQUA 0x384 +#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2 0x385 +#define FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2 0x386 +#define FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2 0x387 +#define FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3 0x388 +#define FLAG_HIDE_SLATEPORT_CITY_HARBOR_PATRONS 0x389 +#define FLAG_HIDE_ROUTE_104_WHITE_HERB_FLORIST 0x38A +#define FLAG_HIDE_FALLARBOR_AZURILL 0x38B +#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_ATTENDANT 0x38C +#define FLAG_HIDE_LILYCOVE_HARBOR_FERRY_SAILOR 0x38D +#define FLAG_HIDE_SOUTHERN_ISLAND_EON_STONE 0x38E +#define FLAG_HIDE_SOUTHERN_ISLAND_UNCHOSEN_EON_DUO_MON 0x38F +#define FLAG_HIDE_MAUVILLE_CITY_WATTSON 0x390 +#define FLAG_HIDE_MAUVILLE_GYM_WATTSON 0x391 +#define FLAG_0x392 0x392 +#define FLAG_0x393 0x393 +#define FLAG_HIDE_MT_PYRE_SUMMIT_ARCHIE 0x394 +#define FLAG_HIDE_MT_PYRE_SUMMIT_TEAM_AQUA 0x395 +#define FLAG_HIDE_BATTLE_TOWER_REPORTER 0x396 +#define FLAG_HIDE_ROUTE_110_RIVAL_1 0x397 +#define FLAG_HIDE_CHAMPIONS_ROOM_RIVAL 0x398 +#define FLAG_HIDE_CHAMPIONS_ROOM_BIRCH 0x399 +#define FLAG_HIDE_ROUTE_110_RIVAL_2 0x39A +#define FLAG_HIDE_ROUTE_119_RIVAL_ON_BIKE 0x39B +#define FLAG_HIDE_AQUA_HIDEOUT_GRUNTS 0x39C +#define FLAG_HIDE_LILCOVE_MOTEL_GAME_DESIGNERS 0x39D +#define FLAG_HIDE_MT_CHIMNEY_TEAM_AQUA 0x39E +#define FLAG_HIDE_MT_CHIMNEY_TEAM_MAGMA 0x39F +#define FLAG_HIDE_FALLARBOR_HOUSE_1_PROF_COZMO 0x3A0 +#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_1 0x3A1 +#define FLAG_HIDE_LAVARIDGE_TOWN_RIVAL_2 0x3A2 +#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_1 0x3A3 +#define FLAG_HIDE_RUSTURF_TUNNEL_ROCK_2 0x3A4 +#define FLAG_HIDE_FORTREE_CITY_HOUSE_4_WINGULL 0x3A5 +#define FLAG_HIDE_MOSSDEEP_CITY_HOUSE_2_WINGULL 0x3A6 +#define FLAG_HIDE_REGIROCK 0x3A7 +#define FLAG_HIDE_REGICE 0x3A8 +#define FLAG_HIDE_REGISTEEL 0x3A9 +#define FLAG_HIDE_METEOR_FALLS_TEAM_AQUA 0x3AA +#define FLAG_HIDE_METEOR_FALLS_TEAM_MAGMA 0x3AB +#define FLAG_HIDE_DEWFORD_HALL_SLUDGE_BOMB_MAN 0x3AC +#define FLAG_HIDE_SEAFLOOR_CAVERN_ENTRANCE_AQUA_GRUNT 0x3AD +#define FLAG_HIDE_METEOR_FALLS_1F_1R_COZMO 0x3AE +#define FLAG_HIDE_AQUA_HIDEOUT_B2F_SUBMARINE_SHADOW 0x3AF +#define FLAG_HIDE_ROUTE_128_ARCHIE 0x3B0 +#define FLAG_HIDE_ROUTE_128_MAXIE 0x3B1 +#define FLAG_HIDE_SEAFLOOR_CAVERN_AQUA_GRUNTS 0x3B2 +#define FLAG_HIDE_ROUTE_116_DEVON_EMPLOYEE 0x3B3 +#define FLAG_HIDE_SLATEPORT_CITY_TM_SALESMAN 0x3B4 +#define FLAG_HIDE_RUSTBORO_CITY_DEVON_CORP_3F_EMPLOYEE 0x3B5 +#define FLAG_HIDE_SS_TIDAL_CORRIDOR_MR_BRINEY 0x3B6 +#define FLAG_HIDE_SS_TIDAL_ROOMS_SNATCH_GIVER 0x3B7 +#define FLAG_0x3B8 0x3B8 +#define FLAG_0x3B9 0x3B9 +#define FLAG_0x3BA 0x3BA +#define FLAG_0x3BB 0x3BB +#define FLAG_0x3BC 0x3BC +#define FLAG_0x3BD 0x3BD +#define FLAG_0x3BE 0x3BE +#define FLAG_0x3BF 0x3BF +#define FLAG_HIDE_ROUTE_111_SECRET_POWER_MAN 0x3C0 +#define FLAG_HIDE_SLATEPORT_MUSEUM_POPULATION 0x3C1 +#define FLAG_HIDE_LILYCOVE_DEPARTMENT_STORE_ROOFTOP_SALE_WOMAN 0x3C2 +#define FLAG_HIDE_MIRAGE_TOWER_ROOT_FOSSIL 0x3C3 +#define FLAG_HIDE_MIRAGE_TOWER_CLAW_FOSSIL 0x3C4 +#define FLAG_HIDE_SLATEPORT_CITY_OCEANIC_MUSEUM_FAMILIAR_AQUA_GRUNT 0x3C5 +#define FLAG_HIDE_ROUTE_118_STEVEN 0x3C6 +#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_STEVEN 0x3C7 +#define FLAG_HIDE_MOSSDEEP_CITY_STEVENS_HOUSE_BELDUM_POKEBALL 0x3C8 +#define FLAG_HIDE_FORTREE_CITY_KECLEON 0x3C9 +#define FLAG_HIDE_ROUTE_120_KECLEON_1 0x3CA +#define FLAG_HIDE_LILYCOVE_CITY_RIVAL 0x3CB +#define FLAG_0x3CC 0x3CC +#define FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN 0x3CD +#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_1 0x3CE +#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_2 0x3CF +#define FLAG_HIDE_NEW_MAUVILLE_VOLTORB_3 0x3D0 +#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_1 0x3D1 +#define FLAG_HIDE_AQUA_HIDEOUT_B1F_ELECTRODE_2 0x3D2 +#define FLAG_HIDE_OLDALE_TOWN_RIVAL 0x3D3 +#define FLAG_HIDE_UNDERWATER_SEA_FLOOR_CAVERN_STOLEN_SUBMARINE 0x3D4 +#define FLAG_HIDE_ROUTE_120_KECLEON_BRIDGE 0x3D5 +#define FLAG_HIDE_ROUTE_120_KECLEON_2 0x3D6 +#define FLAG_HIDE_RUSTURF_TUNNEL_LOVER_WOMAN 0x3D7 +#define FLAG_HIDE_VERDANTURF_TOWN_WANDAS_HOUSE_LOVER_WOMAN 0x3D8 +#define FLAG_HIDE_ROUTE_120_KECLEON_3 0x3D9 +#define FLAG_HIDE_ROUTE_120_KECLEON_4 0x3DA +#define FLAG_HIDE_ROUTE_120_KECLEON_5 0x3DB +#define FLAG_HIDE_ROUTE_120_KECLEON_6 0x3DC +#define FLAG_HIDE_ROUTE_119_KECLEON_1 0x3DD +#define FLAG_HIDE_ROUTE_119_KECLEON_2 0x3DE +#define FLAG_HIDE_ROUTE_101_BOY 0x3DF +#define FLAG_HIDE_WEATHER_INSTITUTE_2F_AQUA_GRUNT_M 0x3E0 +#define FLAG_HIDE_LILYCOVE_POKEMON_CENTER_LADY 0x3E1 +#define FLAG_HIDE_MT_CHIMNEY_LAVA_COOKIE_LADY 0x3E2 +#define FLAG_HIDE_PETALBURG_CITY_SCOTT 0x3E3 +#define FLAG_HIDE_SOOTOPOLIS_CITY_RAYQUAZA 0x3E4 +#define FLAG_HIDE_SOOTOPOLIS_CITY_KYOGRE 0x3E5 +#define FLAG_HIDE_SOOTOPOLIS_CITY_GROUDON 0x3E6 +#define FLAG_HIDE_RUSTBORO_CITY_POKEMON_SCHOOL_SCOTT 0x3E7 + +// Item Ball Flags +#define FLAG_ITEM_ROUTE_102_POTION 0x3E8 +#define FLAG_ITEM_ROUTE_116_X_SPECIAL 0x3E9 +#define FLAG_ITEM_ROUTE_104_PP_UP 0x3EA +#define FLAG_ITEM_ROUTE_105_IRON 0x3EB +#define FLAG_ITEM_ROUTE_106_PROTEIN 0x3EC +#define FLAG_ITEM_ROUTE_109_PP_UP 0x3ED +#define FLAG_ITEM_ROUTE_109_RARE_CANDY 0x3EE +#define FLAG_ITEM_ROUTE_110_DIRE_HIT 0x3EF +#define FLAG_ITEM_ROUTE_111_TM_37 0x3F0 +#define FLAG_ITEM_ROUTE_111_STARDUST 0x3F1 +#define FLAG_ITEM_ROUTE_111_HP_UP 0x3F2 +#define FLAG_ITEM_ROUTE_112_NUGGET 0x3F3 +#define FLAG_ITEM_ROUTE_113_MAX_ETHER 0x3F4 +#define FLAG_ITEM_ROUTE_113_SUPER_REPEL 0x3F5 +#define FLAG_ITEM_ROUTE_114_RARE_CANDY 0x3F6 +#define FLAG_ITEM_ROUTE_114_PROTEIN 0x3F7 +#define FLAG_ITEM_ROUTE_115_SUPER_POTION 0x3F8 +#define FLAG_ITEM_ROUTE_115_TM_01 0x3F9 +#define FLAG_ITEM_ROUTE_115_IRON 0x3FA +#define FLAG_ITEM_ROUTE_116_ETHER 0x3FB +#define FLAG_ITEM_ROUTE_116_REPEL 0x3FC +#define FLAG_ITEM_ROUTE_116_HP_UP 0x3FD +#define FLAG_ITEM_ROUTE_117_GREAT_BALL 0x3FE +#define FLAG_ITEM_ROUTE_117_REVIVE 0x3FF +#define FLAG_ITEM_ROUTE_119_SUPER_REPEL 0x400 +#define FLAG_ITEM_ROUTE_119_ZINC 0x401 +#define FLAG_ITEM_ROUTE_119_ELIXIR_1 0x402 +#define FLAG_ITEM_ROUTE_119_LEAF_STONE 0x403 +#define FLAG_ITEM_ROUTE_119_RARE_CANDY 0x404 +#define FLAG_ITEM_ROUTE_119_HYPER_POTION_1 0x405 +#define FLAG_ITEM_ROUTE_120_NUGGET 0x406 +#define FLAG_ITEM_ROUTE_120_FULL_HEAL 0x407 +#define FLAG_ITEM_ROUTE_123_CALCIUM 0x408 +#define FLAG_UNUSED_0x409 0x409 +#define FLAG_ITEM_ROUTE_127_ZINC 0x40A +#define FLAG_ITEM_ROUTE_127_CARBOS 0x40B +#define FLAG_ITEM_ROUTE_132_RARE_CANDY 0x40C +#define FLAG_ITEM_ROUTE_133_BIG_PEARL 0x40D +#define FLAG_ITEM_ROUTE_133_STAR_PIECE 0x40E +#define FLAG_ITEM_PETALBURG_CITY_MAX_REVIVE 0x40F +#define FLAG_ITEM_PETALBURG_CITY_ETHER 0x410 +#define FLAG_ITEM_RUSTBORO_CITY_X_DEFEND 0x411 +#define FLAG_ITEM_LILYCOVE_CITY_MAX_REPEL 0x412 +#define FLAG_ITEM_MOSSDEEP_CITY_NET_BALL 0x413 +#define FLAG_ITEM_METEOR_FALLS_1F_1R_TM_23 0x414 +#define FLAG_ITEM_METEOR_FALLS_1F_1R_FULL_HEAL 0x415 +#define FLAG_ITEM_METEOR_FALLS_1F_1R_MOON_STONE 0x416 +#define FLAG_ITEM_METEOR_FALLS_1F_1R_PP_UP 0x417 +#define FLAG_ITEM_RUSTURF_TUNNEL_POKE_BALL 0x418 +#define FLAG_ITEM_RUSTURF_TUNNEL_MAX_ETHER 0x419 +#define FLAG_ITEM_GRANITE_CAVE_1F_ESCAPE_ROPE 0x41A +#define FLAG_ITEM_GRANITE_CAVE_B1F_POKE_BALL 0x41B +#define FLAG_ITEM_MT_PYRE_5F_LAX_INCENSE 0x41C +#define FLAG_ITEM_GRANITE_CAVE_B2F_REPEL 0x41D +#define FLAG_ITEM_GRANITE_CAVE_B2F_RARE_CANDY 0x41E +#define FLAG_ITEM_PETALBURG_WOODS_X_ATTACK 0x41F +#define FLAG_ITEM_PETALBURG_WOODS_GREAT_BALL 0x420 +#define FLAG_ITEM_ROUTE_104_POKE_BALL 0x421 +#define FLAG_ITEM_PETALBURG_WOODS_ETHER 0x422 +#define FLAG_ITEM_MAGMA_HIDEOUT_3F_3R_ECAPE_ROPE 0x423 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_1_ORANGE_MAIL 0x424 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_HARBOR_MAIL 0x425 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_2_WAVE_MAIL 0x426 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_SHADOW_MAIL 0x427 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_3_WOOD_MAIL 0x428 +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_4_MECH_MAIL 0x429 +#define FLAG_ITEM_ROUTE_124_YELLOW_SHARD 0x42A +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_6_GLITTER_MAIL 0x42B +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_7_TROPIC_MAIL 0x42C +#define FLAG_ITEM_TRICK_HOUSE_PUZZLE_8_BEAD_MAIL 0x42D +#define FLAG_ITEM_JAGGED_PASS_BURN_HEAL 0x42E +#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MAX_ELIXIR 0x42F +#define FLAG_ITEM_AQUA_HIDEOUT_B2F_NEST_BALL 0x430 +#define FLAG_ITEM_MT_PYRE_EXTERIOR_MAX_POTION 0x431 +#define FLAG_ITEM_MT_PYRE_EXTERIOR_TM_48 0x432 +#define FLAG_ITEM_NEW_MAUVILLE_ULTRA_BALL 0x433 +#define FLAG_ITEM_NEW_MAUVILLE_ESCAPE_ROPE 0x434 +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_6_LUXURY_BALL 0x435 +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_4_SCANNER 0x436 +#define FLAG_ITEM_SCORCHED_SLAB_TM_11 0x437 +#define FLAG_ITEM_METEOR_FALLS_B1F_2R_TM_02 0x438 +#define FLAG_ITEM_SHOAL_CAVE_ENTRANCE_BIG_PEARL 0x439 +#define FLAG_ITEM_SHOAL_CAVE_INNER_ROOM_RARE_CANDY 0x43A +#define FLAG_ITEM_SHOAL_CAVE_STAIRS_ROOM_ICE_HEAL 0x43B +#define FLAG_ITEM_VICTORY_ROAD_1F_MAX_ELIXIR 0x43C +#define FLAG_ITEM_VICTORY_ROAD_1F_PP_UP 0x43D +#define FLAG_ITEM_VICTORY_ROAD_B1F_TM_29 0x43E +#define FLAG_ITEM_VICTORY_ROAD_B1F_FULL_RESTORE 0x43F +#define FLAG_ITEM_VICTORY_ROAD_B2F_FULL_HEAL 0x440 +#define FLAG_ITEM_MT_PYRE_6F_TM_30 0x441 +#define FLAG_ITEM_SEAFLOOR_CAVERN_ROOM_9_TM_26 0x442 +#define FLAG_ITEM_FIERY_PATH_TM06 0x443 +#define FLAG_ITEM_ROUTE_124_RED_SHARD 0x444 +#define FLAG_ITEM_ROUTE_124_BLUE_SHARD 0x445 +#define FLAG_ITEM_SAFARI_ZONE_NORTH_WEST_TM_22 0x446 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_1F_HARBOR_MAIL 0x447 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_ESCAPE_ROPE 0x448 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_B1F_DIVE_BALL 0x449 +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_B1F_TM_13 0x44A +#define FLAG_ITEM_ABANDONED_SHIP_ROOMS_2_1F_REVIVE 0x44B +#define FLAG_ITEM_ABANDONED_SHIP_CAPTAINS_OFFICE_STORAGE_KEY 0x44C +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_3_WATER_STONE 0x44D +#define FLAG_ITEM_ABANDONED_SHIP_HIDDEN_FLOOR_ROOM_1_TM_18 0x44E +#define FLAG_ITEM_ROUTE_121_CARBOS 0x44F +#define FLAG_ITEM_ROUTE_123_ULTRA_BALL 0x450 +#define FLAG_ITEM_ROUTE_126_GREEN_SHARD 0x451 +#define FLAG_ITEM_ROUTE_119_HYPER_POTION_2 0x452 +#define FLAG_ITEM_ROUTE_120_HYPER_POTION 0x453 +#define FLAG_ITEM_ROUTE_120_NEST_BALL 0x454 +#define FLAG_ITEM_ROUTE_123_ELIXIR 0x455 +#define FLAG_ITEM_NEW_MAUVILLE_THUNDER_STONE 0x456 +#define FLAG_ITEM_FIERY_PATH_FIRE_STONE 0x457 +#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_TM_07 0x458 +#define FLAG_ITEM_SHOAL_CAVE_ICE_ROOM_NEVER_MELT_ICE 0x459 +#define FLAG_ITEM_ROUTE_103_GUARD_SPEC 0x45A +#define FLAG_ITEM_ROUTE_104_X_ACCURACY 0x45B +#define FLAG_ITEM_MAUVILLE_CITY_X_SPEED 0x45C +#define FLAG_ITEM_PETALBURD_WOODS_PARALYZE_HEAL 0x45D +#define FLAG_ITEM_ROUTE_115_GREAT_BALL 0x45E +#define FLAG_ITEM_SAFARI_ZONE_NORTH_CALCIUM 0x45F +#define FLAG_ITEM_MT_PYRE_3F_SUPER_REPEL 0x460 +#define FLAG_ITEM_ROUTE_118_HYPER_POTION 0x461 +#define FLAG_ITEM_NEW_MAUVILLE_FULL_HEAL 0x462 +#define FLAG_ITEM_NEW_MAUVILLE_PARALYZE_HEAL 0x463 +#define FLAG_ITEM_AQUA_HIDEOUT_B1F_MASTER_BALL 0x464 +#define FLAG_UNUSED_0x465 0x465 +#define FLAG_UNUSED_0x466 0x466 +#define FLAG_UNUSED_0x467 0x467 +#define FLAG_UNUSED_0x468 0x468 +#define FLAG_ITEM_MT_PYRE_2F_ULTRA_BALL 0x469 +#define FLAG_ITEM_MT_PYRE_4F_SEA_INCENSE 0x46A +#define FLAG_ITEM_SAFARI_ZONE_SOUTH_WEST_MAX_REVIVE 0x46B +#define FLAG_ITEM_AQUA_HIDEOUT_B1F_NUGGET 0x46C +#define FLAG_UNUSED_0x46D 0x46D +#define FLAG_ITEM_ROUTE_119_NUGGET 0x46E +#define FLAG_ITEM_ROUTE_104_POTION 0x46F +#define FLAG_UNUSED_0x470 0x470 +#define FLAG_ITEM_ROUTE_103_PP_UP 0x471 +#define FLAG_UNUSED_0x472 0x472 +#define FLAG_ITEM_ROUTE_108_STAR_PIECE 0x473 +#define FLAG_0x474 0x474 +#define FLAG_ITEM_ROUTE_110_ELIXIR 0x475 +#define FLAG_ITEM_ROUTE_111_ELIXIR 0x476 +#define FLAG_ITEM_ROUTE_113_HYPER_POTION 0x477 +#define FLAG_ITEM_ROUTE_115_HEAL_POWDER 0x478 +#define FLAG_UNUSED_0x479 0x479 +#define FLAG_ITEM_ROUTE_116_POTION 0x47A +#define FLAG_ITEM_ROUTE_119_ELIXIR_2 0x47B +#define FLAG_ITEM_ROUTE_120_REVIVE 0x47C +#define FLAG_ITEM_ROUTE_121_REVIVE 0x47D +#define FLAG_ITEM_ROUTE_121_ZINC 0x47E +#define FLAG_ITEM_MAGMA_HIDEOUT_1F_RARE_CANDY 0x47F +#define FLAG_ITEM_ROUTE_123_PP_UP 0x480 +#define FLAG_ITEM_ROUTE_123_REVIVAL_HERB 0x481 +#define FLAG_ITEM_ROUTE_125_BIG_PEARL 0x482 +#define FLAG_ITEM_ROUTE_127_RARE_CANDY 0x483 +#define FLAG_ITEM_ROUTE_132_PROTEIN 0x484 +#define FLAG_ITEM_ROUTE_133_MAX_REVIVE 0x485 +#define FLAG_ITEM_ROUTE_134_CARBOS 0x486 +#define FLAG_ITEM_ROUTE_134_STAR_PIECE 0x487 +#define FLAG_ITEM_ROUTE_114_ENERGY_POWDER 0x488 +#define FLAG_ITEM_ROUTE_115_PP_UP 0x489 +#define FLAG_ITEM_ARTISAN_CAVE_B1F_HP_UP 0x48A +#define FLAG_ITEM_ARTISAN_CAVE_1F_CARBOS 0x48B +#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_MAX_ELIXIR 0x48C +#define FLAG_ITEM_MAGMA_HIDEOUT_2F_2R_FULL_RESTORE 0x48D +#define FLAG_ITEM_MAGMA_HIDEOUT_3F_1R_NUGGET 0x48E +#define FLAG_ITEM_MAGMA_HIDEOUT_3F_2R_PP_MAX 0x48F +#define FLAG_ITEM_MAGMA_HIDEOUT_4F_MAX_REVIVE 0x490 +#define FLAG_ITEM_SAFARI_ZONE_NORTH_EAST_NUGGET 0x491 +#define FLAG_ITEM_SAFARI_ZONE_SOUTH_EAST_BIG_PEARL 0x492 + + #define FLAG_0x493 0x493 #define FLAG_0x494 0x494 #define FLAG_0x495 0x495 diff --git a/include/daycare.h b/include/daycare.h index 7db44e024..ecd875865 100644 --- a/include/daycare.h +++ b/include/daycare.h @@ -15,7 +15,7 @@ void TriggerPendingDaycareEgg(void); void RejectEggFromDayCare(void); void CreateEgg(struct Pokemon *mon, u16 species, bool8 setHotSpringsLocation); void GiveEggFromDaycare(void); -bool8 DoEggActions_CheckHatch(void); +bool8 ShouldEggHatch(void); u16 GetSelectedMonNickAndSpecies(void); void GetDaycareMonNicknames(void); u8 GetDaycareState(void); diff --git a/include/event_object_movement.h b/include/event_object_movement.h index 0fabcf95a..6515791c3 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -143,9 +143,27 @@ u8 GetCollisionFlagsAtCoords(struct EventObject *eventObject, s16 x, s16 y, u8 d u8 GetFaceDirectionMovementAction(u32); u8 GetWalkNormalMovementAction(u32); u8 GetWalkFastMovementAction(u32); +u8 GetRideWaterCurrentMovementAction(u32); u8 GetWalkFastestMovementAction(u32); +u8 GetPlayerRunMovementAction(u32); u8 GetJumpInPlaceMovementAction(u32); +u8 GetAcroWheelieFaceDirectionMovementAction(u32); +u8 GetAcroPopWheelieFaceDirectionMovementAction(u32); +u8 GetAcroEndWheelieFaceDirectionMovementAction(u32); +u8 GetAcroWheelieHopFaceDirectionMovementAction(u32); +u8 GetAcroWheelieHopDirectionMovementAction(u32); +u8 GetAcroWheelieJumpDirectionMovementAction(u32); +u8 GetJumpInPlaceTurnAroundMovementAction(u32); +u8 GetAcroWheelieInPlaceDirectionMovementAction(u32); +u8 GetAcroPopWheelieMoveDirectionMovementAction(u32); +u8 GetAcroWheelieMoveDirectionMovementAction(u32); +u8 GetAcroEndWheelieMoveDirectionMovementAction(u32); +u8 GetFishingDirectionAnimNum(u8 direction); +u8 GetAcroWheelieDirectionAnimNum(u8 direction); +u8 GetFishingBiteDirectionAnimNum(u8 direction); +u8 GetFishingNoCatchDirectionAnimNum(u8 direction); bool8 EventObjectSetHeldMovement(struct EventObject *eventObject, u8 specialAnimId); +void EventObjectForceSetHeldMovement(struct EventObject *eventObject, u8 movementActionId); bool8 EventObjectIsMovementOverridden(struct EventObject *eventObject); u8 EventObjectCheckHeldMovementStatus(struct EventObject *eventObject); u8 EventObjectGetHeldMovementActionId(struct EventObject *eventObject); @@ -192,6 +210,7 @@ u16 GetObjectPaletteTag(u8 palSlot); void UpdateEventObjectSpriteVisibility(struct Sprite *sprite, bool8 invisible); s16 sub_809773C(s16 a1); s16 sub_8097728(s16 a1); +void CameraObjectReset2(void); void MovementType_None(struct Sprite *); void MovementType_LookAround(struct Sprite *); diff --git a/include/event_scripts.h b/include/event_scripts.h index 4f85156aa..5b8b74d8b 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -19,8 +19,8 @@ extern const u8 EventScript_TryDoDoubleTrainerBattle[]; extern const u8 EventScript_271362[]; extern const u8 EventScript_TryDoDoubleRematchBattle[]; extern const u8 EventScript_2713D1[]; -extern const u8 EventScript_2766A2[]; -extern const u8 EventScript_2766A6[]; +extern const u8 EventScript_SecretPower1[]; +extern const u8 EventScript_SecretPower2[]; extern const u8 gTVBravoTrainerText00[]; diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h index 14245a8a2..24adbe4b3 100644 --- a/include/field_control_avatar.h +++ b/include/field_control_avatar.h @@ -3,22 +3,22 @@ struct FieldInput { - u8 pressedAButton:1; - u8 input_field_0_1:1; - u8 pressedStartButton:1; - u8 pressedSelectButton:1; - u8 input_field_0_4:1; - u8 input_field_0_5:1; - u8 input_field_0_6:1; - u8 pressedBButton:1; - u8 input_field_1_0:1; - u8 input_field_1_1:1; - u8 input_field_1_2:1; - u8 input_field_1_3:1; - u8 input_field_1_4:1; - u8 input_field_1_5:1; - u8 input_field_1_6:1; - u8 input_field_1_7:1; + bool8 pressedAButton:1; + bool8 checkStandardWildEncounter:1; + bool8 pressedStartButton:1; + bool8 pressedSelectButton:1; + bool8 input_field_0_4:1; + bool8 input_field_0_5:1; + bool8 tookStep:1; + bool8 pressedBButton:1; + bool8 input_field_1_0:1; + bool8 input_field_1_1:1; + bool8 input_field_1_2:1; + bool8 input_field_1_3:1; + bool8 input_field_1_4:1; + bool8 input_field_1_5:1; + bool8 input_field_1_6:1; + bool8 input_field_1_7:1; u8 dpadDirection; u8 input_field_3; }; @@ -28,15 +28,15 @@ void FieldGetPlayerInput(struct FieldInput *pStruct, u16 keys, u16 heldKeys); int ProcessPlayerFieldInput(struct FieldInput *pStruct); u8 *sub_80682A8(struct MapPosition *, u8, u8); void overworld_poison_timer_set(void); -void prev_quest_postbuffer_cursor_backup_reset(void); +void RestartWildEncounterImmunitySteps(void); u8 *sub_8068E24(struct MapPosition *); -u8 *GetEventObjectScriptPointerPlayerFacing(void); -bool8 mapheader_trigger_activate_at__run_now(struct MapPosition *); +const u8 *GetEventObjectScriptPointerPlayerFacing(void); bool8 sub_8068870(u16 a); bool8 sub_8068894(void); bool8 sub_8068A64(struct MapPosition *, u16); u8 sub_8068F18(void); bool8 dive_warp(struct MapPosition *position, u16 b); -void sub_809D2BC(void); +int SetCableClubWarp(void); +u8 TrySetDiveWarp(void); #endif // GUARD_FIELDCONTROLAVATAR_H diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index 105dcd610..6022467e4 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -7,9 +7,10 @@ // Exported ROM declarations u8 CreateWarpArrowSprite(void); +u8 sub_8155800(u8 oldSpriteId); +void sub_81555AC(u8, u8); bool8 sub_8155DA0(struct EventObject *); void sub_8155D78(struct EventObject *); -void sub_81555AC(u8, u8); void StartAshFieldEffect(s16, s16, u16, s16); void SetUpReflection(struct EventObject*, struct Sprite*, u8); u32 StartFieldEffectForEventObject(u8, struct EventObject*); @@ -30,5 +31,8 @@ void UpdateShortGrassFieldEffect(struct Sprite*); void UpdateHotSpringsWaterFieldEffect(struct Sprite*); void UpdateBubblesFieldEffect(struct Sprite*); void UpdateSparkleFieldEffect(struct Sprite*); +void SetSpriteInvisible(u8 spriteId); +void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y); +void sub_8155604(u8 spriteId, u8 value, s16 data1); #endif //GUARD_FIELD_EFFECT_HELPERS_H diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index b11b5e21a..adb51f889 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -1,6 +1,17 @@ #ifndef GUARD_FIELD_PLAYER_AVATAR_H #define GUARD_FIELD_PLAYER_AVATAR_H +enum { + PLAYER_AVATAR_STATE_NORMAL, + PLAYER_AVATAR_STATE_MACH_BIKE, + PLAYER_AVATAR_STATE_ACRO_BIKE, + PLAYER_AVATAR_STATE_SURFING, + PLAYER_AVATAR_STATE_UNDERWATER, + PLAYER_AVATAR_STATE_FIELD_MOVE, + PLAYER_AVATAR_STATE_FISHING, + PLAYER_AVATAR_STATE_WATERING, +}; + void player_step(u8 a, u16 b, u16 c); void ClearPlayerAvatarInfo(void); void SetPlayerAvatarExtraStateTransition(u8, u8); @@ -13,7 +24,7 @@ u8 GetPlayerMovementDirection(void); u8 PlayerGetCopyableMovement(void); void PlayerGoSpeed1(u8); void PlayerGoSpeed2(u8); -void PlayerGoSpeed3(u8); +void PlayerRideWaterCurrent(u8); void PlayerGoSpeed4(u8); void PlayerOnBikeCollide(u8); void PlayerFaceDirection(u8 a); @@ -44,23 +55,8 @@ u8 GetPlayerAvatarGraphicsIdByCurrentState(void); void SetPlayerAvatarStateMask(u8 a); u8 GetPlayerAvatarGraphicsIdByStateId(u8 a); u8 GetJumpSpecialMovementAction(u32); - -bool8 ForcedMovement_None(void); -bool8 ForcedMovement_Slip(void); -bool8 ForcedMovement_WalkSouth(void); -bool8 ForcedMovement_WalkNorth(void); -bool8 ForcedMovement_WalkWest(void); -bool8 ForcedMovement_WalkEast(void); -bool8 ForcedMovement_PushedSouthByCurrent(void); -bool8 ForcedMovement_PushedNorthByCurrent(void); -bool8 ForcedMovement_PushedWestByCurrent(void); -bool8 ForcedMovement_PushedEastByCurrent(void); -bool8 ForcedMovement_SlideSouth(void); -bool8 ForcedMovement_SlideNorth(void); -bool8 ForcedMovement_SlideWest(void); -bool8 ForcedMovement_SlideEast(void); -bool8 ForcedMovement_0xBB(void); -bool8 ForcedMovement_0xBC(void); -bool8 ForcedMovement_MuddySlope(void); +bool8 PartyHasMonWithSurf(void); +bool8 IsPlayerFacingSurfableFishableWater(void); +bool8 IsPlayerSurfingNorth(void); #endif // GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/field_poison.h b/include/field_poison.h index 90d017ac7..a23a93ca5 100644 --- a/include/field_poison.h +++ b/include/field_poison.h @@ -14,6 +14,6 @@ enum { }; void ExecuteWhiteOut(void); -u32 DoPoisonFieldEffect(void); +s32 DoPoisonFieldEffect(void); #endif //GUARD_FIELD_POISON_H diff --git a/include/field_screen.h b/include/field_screen.h index bf1502405..021d2b9e9 100644 --- a/include/field_screen.h +++ b/include/field_screen.h @@ -16,5 +16,9 @@ void sub_80AC3E4(void); void PreservePaletteInWeather(u8); void sub_80AF128(void); void sub_80AB104(u8); +void sub_80AF80C(u8); +void sub_80AF828(void); +void sub_80AF838(void); +void sub_80B0268(void); #endif //GUARD_FIELD_SCREEN_H diff --git a/include/field_specials.h b/include/field_specials.h index 4709f9551..0e2daf9c3 100644 --- a/include/field_specials.h +++ b/include/field_specials.h @@ -6,5 +6,14 @@ u8 sub_813B260(void); u16 get_unknown_box_id(void); bool8 InMultiBattleRoom(void); void sub_813BF10(void); +void increment_var_x4026_on_birth_island_modulo_100(void); +bool8 sub_813B3B0(void); +bool8 ShouldDoBrailleRegicePuzzle(void); +bool32 is_tile_that_overrides_player_control(void); +bool32 sub_8138120(void); +bool32 sub_8138168(void); +bool32 sub_81381B0(void); +bool32 sub_81381F8(void); +bool32 CountSSTidalStep(u16 delta); #endif // GUARD_FIELD_SPECIALS_H diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h index 67e0de85f..027bb4273 100644 --- a/include/fldeff_80F9BCC.h +++ b/include/fldeff_80F9BCC.h @@ -12,6 +12,8 @@ void sub_80FA794(s16 x, s16 y); void CreateRecordMixingSprite(void); void DestroyRecordMixingSprite(void); void FldeffPoison_Start(void); +void sub_80FA970(s16); +void sub_80FA9D0(void); bool8 sub_80FADE4(u16, u8); #endif //GUARD_FLDEFF_80F9BCC_H diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 055f29f40..f6273e80d 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -61,17 +61,16 @@ struct EventObjectTemplate struct WarpEvent { s16 x, y; - s8 warpId; - u8 mapGroup; + u8 elevation; + u8 warpId; u8 mapNum; - u8 unk7; + u8 mapGroup; }; struct CoordEvent { s16 x, y; - u8 unk4; - u8 filler_5; + u8 elevation; u16 trigger; u16 index; u8 filler_A[0x2]; @@ -81,16 +80,15 @@ struct CoordEvent struct BgEvent { u16 x, y; - u8 unk4; + u8 elevation; u8 kind; - // 0x2 padding for the union beginning. union { // carried over from diego's FR/LG work, seems to be the same struct // in gen 3, "kind" (0x3 in BgEvent struct) determines the method to read the union. u8 *script; - // hidden item type probably + // hidden item type struct { - u8 filler6[0x2]; + u16 item; u16 hiddenItemId; // flag offset to determine flag lookup } hiddenItem; diff --git a/include/global.h b/include/global.h index f77b3159e..7de5b24fd 100644 --- a/include/global.h +++ b/include/global.h @@ -976,13 +976,4 @@ struct UnkStruct_8054FF8 u16 field_C; }; -struct Bitmap // TODO: Find a better spot for this -{ - u8* pixels; - u32 width:16; - u32 height:16; -}; - -extern u8 gReservedSpritePaletteCount; - #endif // GUARD_GLOBAL_H diff --git a/include/graphics.h b/include/graphics.h index 4cbee1c34..07900977d 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -4029,4 +4029,8 @@ extern const u8 gUnknown_08D97CF4[]; extern const u8 gStatusGfx_Icons[]; extern const u8 gStatusPal_Icons[]; +extern const u8 gBuyMenuFrame_Gfx[]; +extern const u16 gBuyMenuFrame_Tilemap[]; +extern const u16 gMenuMoneyPal[]; + #endif //GUARD_GRAPHICS_H diff --git a/include/item_menu.h b/include/item_menu.h index 59316e948..649eb934c 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -58,5 +58,7 @@ void sub_81AAC28(void); void bag_menu_mail_related(void); void CB2_BagMenuFromStartMenu(void); u8 sub_81ABB2C(u8 pocketId); +bool8 UseRegisteredKeyItemOnField(void); +void CB2_GoToSellMenu(void); #endif //GUARD_item_menu_H diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index 82617268a..e18639faf 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -50,7 +50,7 @@ bool8 MetatileBehavior_IsSecretBaseCave(u8); bool8 MetatileBehavior_IsSecretBaseTree(u8); bool8 MetatileBehavior_IsSecretBaseShrub(u8); bool8 MetatileBehavior_IsSecretBasePC(u8); -bool8 MetatileBehavior_IsSecretBaseRegisterPC(u8); +bool8 MetatileBehavior_IsRecordMixingSecretBasePC(u8); bool8 MetatileBehavior_IsMB_B2(u8); bool8 MetatileBehavior_IsBlockDecoration(u8); bool8 MetatileBehavior_IsSecretBaseImpassable(u8); @@ -67,7 +67,7 @@ bool8 MetatileBehavior_IsSecretBaseBreakableDoor(u8); bool8 MetatileBehavior_IsSecretBaseSoundMat(u8); bool8 MetatileBehavior_IsSecretBaseGlitterMat(u8); bool8 MetatileBehavior_IsSecretBaseSandOrnament(u8); -bool8 MetatileBehavior_IsSecretBaseTvOrShield(u8); +bool8 MetatileBehavior_IsSecretBaseShieldOrToyTV(u8); bool8 MetatileBehavior_IsPlayerRoomPCOn(u8); bool8 MetatileBehavior_HasRipples(u8); bool8 MetatileBehavior_IsPuddle(u8); @@ -106,14 +106,14 @@ bool8 MetatileBehavior_IsPacifilogHorizontalLog2(u8); bool8 MetatileBehavior_IsPacifidlogLog(u8); bool8 MetatileBehavior_IsTrickHousePuzzleDoor(u8); bool8 MetatileBehavior_IsRegionMap(u8); -bool8 MetatileBehavior_IsClosedSootopolisGymDoor(u8); +bool8 MetatileBehavior_IsClosedSootopolisDoor(u8); bool8 MetatileBehavior_IsUnknownClosedDoor(u8); bool8 MetatileBehavior_IsRoulette(u8); bool8 MetatileBehavior_IsPokeblockFeeder(u8); bool8 MetatileBehavior_IsSecretBaseJumpMat(u8); bool8 MetatileBehavior_IsSecretBaseSpinMat(u8); bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8); -bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8); +bool8 MetatileBehavior_IsLavaridge1FWarp(u8); bool8 MetatileBehavior_IsAquaHideoutWarp(u8); bool8 MetatileBehavior_IsWarpOrBridge(u8); bool8 MetatileBehavior_IsMossdeepGymWarp(u8); @@ -130,7 +130,7 @@ bool8 MetatileBehavior_IsHorizontalRail(u8); bool8 MetatileBehavior_IsSeaweed(u8); bool8 MetatileBehavior_IsRunningDisallowed(u8); bool8 MetatileBehavior_IsCuttableGrass(u8); -bool8 MetatileBehavior_IsRunningShoesInstruction(u8); +bool8 MetatileBehavior_IsRunningShoesManual(u8); bool8 MetatileBehavior_IsPictureBookShelf(u8); bool8 MetatileBehavior_IsBookShelf(u8); bool8 MetatileBehavior_IsPokeCenterBookShelf(u8); diff --git a/include/party_menu.h b/include/party_menu.h index 170fcafc1..cb82eb82c 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -70,6 +70,5 @@ extern void sub_81B67C8(u8, u16, TaskFunc); extern void sub_81B79E8(u8, u16, TaskFunc); extern void sub_81B6DC4(u8, u16, TaskFunc); extern void sub_81B7C74(u8, u16, TaskFunc); -extern u16 ItemIdToBattleMoveId(u16); #endif // GUARD_PARTY_MENU_H diff --git a/include/pokemon.h b/include/pokemon.h index d261fba85..8259e7d34 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -94,6 +94,8 @@ #define MON_DATA_SPATK2 87 #define MON_DATA_SPDEF2 88 +#define MAX_LEVEL 100 + #define OT_ID_RANDOM_NO_SHINY 2 #define OT_ID_PRESET 1 #define OT_ID_PLAYER_ID 0 @@ -110,10 +112,47 @@ #define MON_FEMALE 0xFE #define MON_GENDERLESS 0xFF +#define TYPE_NORMAL 0x00 +#define TYPE_FIGHTING 0x01 +#define TYPE_FLYING 0x02 +#define TYPE_POISON 0x03 +#define TYPE_GROUND 0x04 +#define TYPE_ROCK 0x05 +#define TYPE_BUG 0x06 +#define TYPE_GHOST 0x07 +#define TYPE_STEEL 0x08 +#define TYPE_MYSTERY 0x09 +#define TYPE_FIRE 0x0a +#define TYPE_WATER 0x0b +#define TYPE_GRASS 0x0c +#define TYPE_ELECTRIC 0x0d +#define TYPE_PSYCHIC 0x0e +#define TYPE_ICE 0x0f +#define TYPE_DRAGON 0x10 +#define TYPE_DARK 0x11 + +#define FRIENDSHIP_EVENT_GROW_LEVEL 0x0 +#define FRIENDSHIP_EVENT_VITAMIN 0x1 // unused +#define FRIENDSHIP_EVENT_BATTLE_ITEM 0x2 // unused +#define FRIENDSHIP_EVENT_LEAGUE_BATTLE 0x3 +#define FRIENDSHIP_EVENT_LEARN_TMHM 0x4 +#define FRIENDSHIP_EVENT_WALKING 0x5 +#define FRIENDSHIP_EVENT_FAINT_SMALL 0x6 +#define FRIENDSHIP_EVENT_FAINT_OUTSIDE_BATTLE 0x7 +#define FRIENDSHIP_EVENT_FAINT_LARGE 0x8 + +#define STATUS_PRIMARY_NONE 0x0 +#define STATUS_PRIMARY_POISON 0x1 +#define STATUS_PRIMARY_PARALYSIS 0x2 +#define STATUS_PRIMARY_SLEEP 0x3 +#define STATUS_PRIMARY_FREEZE 0x4 +#define STATUS_PRIMARY_BURN 0x5 +#define STATUS_PRIMARY_POKERUS 0x6 +#define STATUS_PRIMARY_FAINTED 0x7 + #define MAX_TOTAL_EVS 510 #define NUM_STATS 6 #define UNOWN_FORM_COUNT 28 -#define MAX_MON_LEVEL 100 struct PokemonSubstruct0 { @@ -421,7 +460,7 @@ extern const u8 gFacilityClassToTrainerClass[]; extern const struct BaseStats gBaseStats[]; extern const u8 *const gItemEffectTable[]; extern const struct Evolution gEvolutionTable[][EVOS_PER_MON]; -extern const u32 gExperienceTables[][MAX_MON_LEVEL + 1]; +extern const u32 gExperienceTables[][MAX_LEVEL + 1]; extern const u16 *const gLevelUpLearnsets[]; extern const u8 gUnknown_08329D22[]; extern const u8 gUnknown_08329D26[]; diff --git a/include/pokenav.h b/include/pokenav.h index b595e2be9..1fde8aa44 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -28,5 +28,13 @@ u16 sub_81D2C3C(void); void sub_81D2C50(void); u8 sub_81D28C8(const struct ListMenuItem *items, u16 numChoices); void sub_81D2824(u16); +bool32 InTrainerHill(void); +bool8 EventObjectIsFarawayIslandMew(struct EventObject *); +u32 sub_81D427C(void); +void sub_81D4998(void); +u8 GetCurrentTrainerHillMapId(void); +u8 sub_81D6490(void); +const struct WarpEvent *sub_81D6120(void); +const struct WarpEvent *sub_81D6134(u8); #endif //GUARD_POKENAV_H diff --git a/include/rom_81BE66C.h b/include/rom_81BE66C.h deleted file mode 100644 index 900daf4e7..000000000 --- a/include/rom_81BE66C.h +++ /dev/null @@ -1,12 +0,0 @@ -// -// Created by Scott Norton on 9/6/17. -// - -#ifndef GUARD_ROM_81BE66C_H -#define GUARD_ROM_81BE66C_H - -bool32 InTrainerHill(void); -bool8 EventObjectIsFarawayIslandMew(struct EventObject *); -u32 sub_81D427C(void); - -#endif //GUARD_ROM_81BE66C_H diff --git a/include/script.h b/include/script.h index 2b5f8c2ce..755ff19a3 100644 --- a/include/script.h +++ b/include/script.h @@ -55,8 +55,8 @@ bool8 mapheader_run_first_tag2_script_list_match(void); void mapheader_run_first_tag4_script_list_match(void); u32 CalculateRamScriptChecksum(void); void ClearRamScript(void); -bool8 InitRamScript(u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId); -u8 *GetRamScript(u8 objectId, u8 *script); +bool8 InitRamScript(const u8 *script, u16 scriptSize, u8 mapGroup, u8 mapNum, u8 objectId); +const u8 *GetRamScript(u8 objectId, const u8 *script); bool32 sub_80991F8(void); u8 *sub_8099244(void); void sub_80992A0(u8 *script, u16 scriptSize); diff --git a/include/secret_base.h b/include/secret_base.h index c20533698..4fa0d0c4a 100644 --- a/include/secret_base.h +++ b/include/secret_base.h @@ -16,5 +16,11 @@ void sub_80E8EE0(struct MapEvents const *events); void sub_80E9238(u8 flagIn); bool8 CurrentMapIsSecretBase(void); void sub_80EA3E4(u8 taskId); +bool8 sub_80E9680(void); +void sub_80EB498(void); +void sub_80EB56C(void); +void sub_80EB9E0(void); +void sub_80EBB28(void); +void sub_80E9668(const struct MapPosition *position, const struct MapEvents *events); #endif //GUARD_SECRET_BASE_H diff --git a/include/shop.h b/include/shop.h index 067b8fee4..7f2d877dc 100644 --- a/include/shop.h +++ b/include/shop.h @@ -1,7 +1,7 @@ #ifndef GUARD_SHOP_H #define GUARD_SHOP_H -extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3]; +extern EWRAM_DATA struct ItemSlot gMartPurchaseHistory[3]; enum { @@ -10,9 +10,19 @@ enum MART_TYPE_2, }; +// shop view window NPC info enum +enum +{ + EVENT_OBJ_ID, + X_COORD, + Y_COORD, + ANIM_NUM, + LAYER_TYPE +}; + struct MartInfo { - /*0x0*/ void (* callback) (void); + /*0x0*/ void (*callback)(void); /*0x4*/ const struct MenuAction *menuActions; /*0x8*/ const u16 *itemList; /*0xC*/ u16 itemCount; @@ -20,23 +30,18 @@ struct MartInfo /*0xF*/ u8 martType; }; -struct BuyMenuLabel -{ - u8 label[16]; -}; - struct ShopData { - /*0x0000*/ u8 tilemapBuffers[4][0x800]; - /*0x2000*/ u8 filler2000[0x4]; - /*0x2004*/ u16 unk2004; - /*0x2006*/ u8 filler2006[0x2]; - /*0x2008*/ u16 unk2008; - /*0x200A*/ u8 filler200A; + /*0x0000*/ u16 tilemapBuffers[4][0x400]; + /*0x2000*/ u32 totalCost; + /*0x2004*/ u16 itemsShowed; + /*0x2006*/ u16 selectedRow; + /*0x2008*/ u16 scrollOffset; + /*0x200A*/ u8 maxQuantity; /*0x200B*/ u8 scrollIndicatorsTaskId; - /*0x200C*/ u8 unk200C; - /*0x200D*/ u8 unk200D[2]; - /*0x200F*/ u8 filler200F[0xA1]; + /*0x200C*/ u8 iconSlot; + /*0x200D*/ u8 itemSpriteIds[2]; + /*0x2010*/ s16 viewportObjects[16][5]; }; void CreatePokemartMenu(const u16 *); diff --git a/include/sprite.h b/include/sprite.h index 8fc45d501..4ffcd2884 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -235,11 +235,15 @@ extern const struct OamData gDummyOamData; extern const union AnimCmd *const gDummySpriteAnimTable[]; extern const union AffineAnimCmd *const gDummySpriteAffineAnimTable[]; extern const struct SpriteTemplate gDummySpriteTemplate; -extern s16 gSpriteCoordOffsetX; -extern s16 gSpriteCoordOffsetY; +extern u8 gReservedSpritePaletteCount; extern struct Sprite gSprites[]; +extern u8 gOamLimit; +extern u16 gReservedSpriteTileCount; +extern s16 gSpriteCoordOffsetX; +extern s16 gSpriteCoordOffsetY; extern struct OamMatrix gOamMatrices[]; +extern bool8 gAffineAnimsDisabled; void ResetSpriteData(void); void AnimateSprites(void); diff --git a/include/strings.h b/include/strings.h index 4ea33635b..c563353ec 100644 --- a/include/strings.h +++ b/include/strings.h @@ -855,5 +855,26 @@ extern const u8 gText_CanIHelpWithAnythingElse[]; extern const u8 gText_AnythingElseICanHelp[]; extern const u8 gText_QuitShopping[]; extern const u8 gText_PokedollarVar1[]; +extern const u8 gText_YouDontHaveMoney[]; +extern const u8 gText_Var1CertainlyHowMany2[]; +extern const u8 gText_Var1CertainlyHowMany[]; +extern const u8 gText_Var1IsItThatllBeVar2[]; +extern const u8 gText_YouWantedVar1ThatllBeVar2[]; +extern const u8 gText_InBagVar1[]; +extern const u8 gText_Var1AndYouWantedVar2[]; +extern const u8 gText_HereYouGoThankYou[]; +extern const u8 gText_NoMoreRoomForThis[]; +extern const u8 gText_ThankYouIllSendItHome[]; +extern const u8 gText_ThanksIllSendItHome[]; +extern const u8 gText_SpaceForVar1Full[]; +extern const u8 gText_ThrowInPremierBall[]; +extern const u8 gText_ShopBuy[]; +extern const u8 gText_ShopSell[]; +extern const u8 gText_ShopQuit[]; + +extern const u8 gText_OhABite[]; +extern const u8 gText_PokemonOnHook[]; +extern const u8 gText_NotEvenANibble[]; +extern const u8 gText_ItGotAway[]; #endif //GUARD_STRINGS_H |