diff --git a/.gitignore b/.gitignore index e94c6a25c..c5872bb89 100644 --- a/.gitignore +++ b/.gitignore @@ -22,7 +22,6 @@ *.id1 *.id2 *.latfont -*.ld *.lz *.map *.nam diff --git a/INSTALL.md b/INSTALL.md index 25e4deda0..ede0b4183 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -125,12 +125,12 @@ Otherwise, ask for help on Discord or IRC (see [README.md](README.md)), or conti Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. -1. Open msys2 at C:\devkitPro\msys2\mingw64.exe or run `C:\devkitPro\msys2\msys2_shell.bat -mingw64`. +1. Open msys2 at C:\devkitPro\msys2\msys2_shell.bat. 2. Certain packages are required to build pokefirered. Install these by running the following command: ```bash - pacman -S make zlib-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-libpng + pacman -S make gcc zlib-devel git ```
Note... @@ -138,6 +138,39 @@ Note that in msys2, Copy is Ctrl+Insert and Paste is Shift+Insert. > This command will ask for confirmation, just enter the yes action when prompted.
+3. Download [libpng](https://sourceforge.net/projects/libpng/files/libpng16/1.6.37/libpng-1.6.37.tar.xz/download). + +4. Change directory to where libpng was downloaded. By default, msys2 will start in the current user's profile folder, located at **C:\Users\\⁠_\_**, where *\* is your Windows username. In most cases, libpng should be saved within a subfolder of the profile folder. For example, if libpng was saved to **C:\Users\\_\_\Downloads** (the Downloads location for most users), enter this command: + + ```bash + cd Downloads + ``` + +
+ Notes... + + > Note 1: While not shown, msys uses forward slashes `/` instead of backwards slashes `\` as the directory separator. + > Note 2: If the path has spaces, then the path must be wrapped with quotations, e.g. `cd "Downloads/My Downloads"`. + > Note 3: Windows path names are case-insensitive so adhering to capitalization isn’t needed. + > Note 4: If libpng was saved elsewhere, you will need to specify the full path to where libpng was downloaded, e.g. `cd c:/devkitpro/msys2` if it was saved there. +
+ +5. Run the following commands to uncompress and install libpng. + + ```bash + tar xf libpng-1.6.37.tar.xz + cd libpng-1.6.37 + ./configure --prefix=/usr + make check + make install + ``` + +6. Then finally, run the following command to change back to the user profile folder. + + ```bash + cd + ``` + ### Choosing where to store pokefirered (msys2) At this point, you can choose a folder to store pokefirered into. If you're okay with storing pokefirered in the user profile folder, then proceed to [Installation](#installation). Otherwise, you'll need to account for where pokefirered is stored when changing directory to the pokefirered folder. diff --git a/Makefile b/Makefile index adb08dfb7..259e19113 100644 --- a/Makefile +++ b/Makefile @@ -327,19 +327,15 @@ $(OBJ_DIR)/sym_ewram.ld: sym_ewram.txt $(RAMSCRGEN) ewram_data $< ENGLISH > $@ ifeq ($(MODERN),0) -LD_SCRIPT := ld_script.txt +LD_SCRIPT := ld_script.ld LD_SCRIPT_DEPS := $(OBJ_DIR)/sym_bss.ld $(OBJ_DIR)/sym_common.ld $(OBJ_DIR)/sym_ewram.ld else -LD_SCRIPT := ld_script_modern.txt +LD_SCRIPT := ld_script_modern.ld LD_SCRIPT_DEPS := endif -$(OBJ_DIR)/ld_script.ld: $(LD_SCRIPT) $(LD_SCRIPT_DEPS) - cd $(OBJ_DIR) && sed -f ../../ld_script.sed ../../$< | sed "s#tools/#../../tools/#g" > ld_script.ld - -$(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS) - @echo "cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ " - @cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ld_script.ld -o ../../$@ $(OBJS_REL) $(LIB) +$(ELF): $(LD_SCRIPT) $(LD_SCRIPT_DEPS) $(OBJS) + @cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -T ../../$< -o ../../$@ $(OBJS_REL) $(LIB) $(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(GAME_REVISION) --silent $(ROM): $(ELF) diff --git a/charmap.txt b/charmap.txt index 78305c303..b9d0ed9de 100644 --- a/charmap.txt +++ b/charmap.txt @@ -78,10 +78,12 @@ SUPER_RE = A0 '?' = AC '.' = AD '-' = AE +'·' = AF '…' = B0 '“' = B1 '”' = B2 '‘' = B3 +'’' = B4 '\'' = B4 '♂' = B5 '♀' = B6 @@ -323,13 +325,8 @@ TALL_PLUS = FC 0C FB '?' = AC '。' = AD 'ー' = AE -'·' = AF '‥' = B0 -DYNAMIC = F7 -KEYGFX = F8 -EXTRA = F9 - STRING = FD @ string placeholders @@ -414,7 +411,7 @@ B_BUFF3 = FD 30 NAME_END = FC 00 @ special 0xF7 character -SPECIAL_F7 = F7 +DYNAMIC = F7 @ more text functions @@ -424,20 +421,20 @@ SHADOW = FC 03 @ same as fc 01 COLOR_HIGHLIGHT_SHADOW = FC 04 @ takes 3 bytes PALETTE = FC 05 @ used in credits FONT = FC 06 @ Given a font id, or use font constants below instead -RESET_SIZE = FC 07 +RESET_FONT = FC 07 PAUSE = FC 08 @ manually print the wait byte after this, havent mapped them PAUSE_UNTIL_PRESS = FC 09 WAIT_SE = FC 0A PLAY_BGM = FC 0B ESCAPE = FC 0C -SHIFT_TEXT = FC 0D @ shift rightward by 1-byte arg -SHIFT_DOWN = FC 0E @ shift downward by 1-byte arg +SHIFT_RIGHT = FC 0D +SHIFT_DOWN = FC 0E FILL_WINDOW = FC 0F PLAY_SE = FC 10 CLEAR = FC 11 SKIP = FC 12 CLEAR_TO = FC 13 -SPACING = FC 14 +MIN_LETTER_SPACING = FC 14 JPN = FC 15 ENG = FC 16 PAUSE_MUSIC = FC 17 diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index 6cb2bed8f..c5d112d9e 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -138,7 +138,7 @@ gScriptCmdTable:: .4byte ScrCmd_pokemart @ 0x86 .4byte ScrCmd_pokemartdecoration @ 0x87 .4byte ScrCmd_pokemartdecoration2 @ 0x88 - .4byte ScrCmd_playslotmachine @ 0x8 + .4byte ScrCmd_playslotmachine @ 0x89 .4byte ScrCmd_setberrytree @ 0x8a .4byte ScrCmd_choosecontestmon @ 0x8b .4byte ScrCmd_startcontest @ 0x8c diff --git a/graphics/battle_interface/healthbox_elements.png b/graphics/battle_interface/healthbox_elements.png index aadcc8554..5e22fb75e 100644 Binary files a/graphics/battle_interface/healthbox_elements.png and b/graphics/battle_interface/healthbox_elements.png differ diff --git a/graphics/field_effects/flash_black.pal b/graphics/cave_transition/black.pal similarity index 100% rename from graphics/field_effects/flash_black.pal rename to graphics/cave_transition/black.pal diff --git a/graphics/cave_transition/enter.pal b/graphics/cave_transition/enter.pal new file mode 100644 index 000000000..fea15a176 --- /dev/null +++ b/graphics/cave_transition/enter.pal @@ -0,0 +1,11 @@ +JASC-PAL +0100 +8 +148 197 172 +16 16 16 +32 32 32 +49 49 49 +65 65 65 +82 82 82 +98 98 98 +115 115 115 diff --git a/graphics/field_effects/flash_gradient.pal b/graphics/cave_transition/exit.pal similarity index 57% rename from graphics/field_effects/flash_gradient.pal rename to graphics/cave_transition/exit.pal index ec7a2b50e..09eb37624 100644 --- a/graphics/field_effects/flash_gradient.pal +++ b/graphics/cave_transition/exit.pal @@ -1,14 +1,6 @@ JASC-PAL 0100 -16 -148 197 172 -16 16 16 -32 32 32 -49 49 49 -65 65 65 -82 82 82 -98 98 98 -115 115 115 +8 131 131 131 148 148 148 164 164 164 diff --git a/graphics/field_effects/flash_effect_map.bin b/graphics/cave_transition/tilemap.bin similarity index 100% rename from graphics/field_effects/flash_effect_map.bin rename to graphics/cave_transition/tilemap.bin diff --git a/graphics/field_effects/flash_effect_tiles.png b/graphics/cave_transition/tiles.png similarity index 100% rename from graphics/field_effects/flash_effect_tiles.png rename to graphics/cave_transition/tiles.png diff --git a/graphics/field_effects/flash_white.pal b/graphics/cave_transition/white.pal similarity index 100% rename from graphics/field_effects/flash_white.pal rename to graphics/cave_transition/white.pal diff --git a/graphics/interface/dex_caught_pokeball_and_pokemon_types.png b/graphics/interface/dex_caught_pokeball_and_pokemon_types.png deleted file mode 100644 index 4a9e67954..000000000 Binary files a/graphics/interface/dex_caught_pokeball_and_pokemon_types.png and /dev/null differ diff --git a/graphics/interface/menu_info.png b/graphics/interface/menu_info.png new file mode 100644 index 000000000..a6a7efed3 Binary files /dev/null and b/graphics/interface/menu_info.png differ diff --git a/graphics/item_menu/bag_pal1.pal b/graphics/item_menu/bag_pal1.pal deleted file mode 100644 index e94c83852..000000000 --- a/graphics/item_menu/bag_pal1.pal +++ /dev/null @@ -1,51 +0,0 @@ -JASC-PAL -0100 -48 -0 65 90 -255 0 255 -41 57 82 -65 180 164 -255 0 255 -255 0 255 -106 205 197 -246 205 115 -238 230 172 -255 255 205 -222 139 74 -148 148 148 -238 230 172 -106 106 106 -213 180 82 -205 65 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -189 213 213 -238 255 255 -222 246 255 -255 255 255 -164 222 255 -16 172 222 -0 82 115 -0 115 139 -0 123 197 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -189 213 213 -238 255 255 -222 246 255 -255 255 255 -164 222 255 -24 82 180 -0 90 131 -24 82 180 -24 82 180 diff --git a/graphics/item_menu/bagmap_0.bin b/graphics/item_menu/bagmap_0.bin deleted file mode 100644 index 94c0af766..000000000 Binary files a/graphics/item_menu/bagmap_0.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_1.bin b/graphics/item_menu/bagmap_1.bin deleted file mode 100644 index ff1b44740..000000000 Binary files a/graphics/item_menu/bagmap_1.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_2.bin b/graphics/item_menu/bagmap_2.bin deleted file mode 100644 index 167c246f8..000000000 Binary files a/graphics/item_menu/bagmap_2.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_3.bin b/graphics/item_menu/bagmap_3.bin deleted file mode 100644 index ff1b44740..000000000 Binary files a/graphics/item_menu/bagmap_3.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_4.bin b/graphics/item_menu/bagmap_4.bin deleted file mode 100644 index 167c246f8..000000000 Binary files a/graphics/item_menu/bagmap_4.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_5.bin b/graphics/item_menu/bagmap_5.bin deleted file mode 100644 index ff1b44740..000000000 Binary files a/graphics/item_menu/bagmap_5.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_6.bin b/graphics/item_menu/bagmap_6.bin deleted file mode 100644 index 167c246f8..000000000 Binary files a/graphics/item_menu/bagmap_6.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_7.bin b/graphics/item_menu/bagmap_7.bin deleted file mode 100644 index ff1b44740..000000000 Binary files a/graphics/item_menu/bagmap_7.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_8.bin b/graphics/item_menu/bagmap_8.bin deleted file mode 100644 index 167c246f8..000000000 Binary files a/graphics/item_menu/bagmap_8.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_9.bin b/graphics/item_menu/bagmap_9.bin deleted file mode 100644 index ff1b44740..000000000 Binary files a/graphics/item_menu/bagmap_9.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_A.bin b/graphics/item_menu/bagmap_A.bin deleted file mode 100644 index 167c246f8..000000000 Binary files a/graphics/item_menu/bagmap_A.bin and /dev/null differ diff --git a/graphics/item_menu/bagmap_B.bin b/graphics/item_menu/bagmap_B.bin deleted file mode 100644 index 4da8f8ff5..000000000 Binary files a/graphics/item_menu/bagmap_B.bin and /dev/null differ diff --git a/graphics/item_menu/bg.png b/graphics/item_menu/bg.png index a9a96948f..e0921d83a 100644 Binary files a/graphics/item_menu/bg.png and b/graphics/item_menu/bg.png differ diff --git a/graphics/item_menu/bag_pal2.pal b/graphics/item_menu/bg_female.pal similarity index 100% rename from graphics/item_menu/bag_pal2.pal rename to graphics/item_menu/bg_female.pal diff --git a/graphics/item_menu/list.bin b/graphics/item_menu/list.bin new file mode 100644 index 000000000..4ef10fcc3 Binary files /dev/null and b/graphics/item_menu/list.bin differ diff --git a/graphics/item_pc/bg.pal b/graphics/item_pc/bg.pal deleted file mode 100644 index b873bd0f6..000000000 --- a/graphics/item_pc/bg.pal +++ /dev/null @@ -1,51 +0,0 @@ -JASC-PAL -0100 -48 -0 0 0 -148 189 246 -106 172 230 -238 246 246 -222 230 230 -255 189 74 -230 131 41 -172 74 8 -156 164 172 -115 123 139 -164 255 139 -139 238 106 -115 222 82 -98 205 57 -230 230 238 -255 255 255 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -189 213 213 -238 255 255 -222 246 255 -255 255 255 -164 222 255 -16 172 222 -0 82 115 -0 115 139 -0 123 197 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -189 213 213 -238 255 255 -222 246 255 -255 255 255 -164 222 255 -24 82 180 -0 90 131 -24 82 180 -24 82 180 diff --git a/graphics/item_pc/bg.png b/graphics/item_pc/bg.png index 4db6a6bcb..a028e7907 100644 Binary files a/graphics/item_pc/bg.png and b/graphics/item_pc/bg.png differ diff --git a/graphics/items/icon_palettes/magma_emblem.pal b/graphics/items/icon_palettes/magma_emblem.pal deleted file mode 100644 index 55ac014d6..000000000 --- a/graphics/items/icon_palettes/magma_emblem.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -180 180 180 -49 49 49 -74 82 82 -123 123 131 -164 164 197 -222 205 246 -255 255 255 -164 8 57 -222 82 82 -230 115 82 -238 148 82 -246 180 82 -255 213 82 -255 238 106 -255 255 180 -0 0 0 diff --git a/graphics/items/icon_palettes/old_sea_map.pal b/graphics/items/icon_palettes/old_sea_map.pal deleted file mode 100644 index e654202c7..000000000 --- a/graphics/items/icon_palettes/old_sea_map.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -98 197 98 -49 49 49 -213 180 139 -222 205 164 -197 172 123 -148 131 106 -180 148 106 -197 123 115 -180 90 82 -115 90 57 -0 0 0 -0 0 0 -65 49 24 -0 0 0 -0 0 0 -0 0 0 diff --git a/graphics/items/icons/hm.png b/graphics/items/icons/hm.png deleted file mode 100644 index 46e0f51c2..000000000 Binary files a/graphics/items/icons/hm.png and /dev/null differ diff --git a/graphics/items/icons/magma_emblem.png b/graphics/items/icons/magma_emblem.png deleted file mode 100644 index 5404efcf8..000000000 Binary files a/graphics/items/icons/magma_emblem.png and /dev/null differ diff --git a/graphics/items/icons/old_sea_map.png b/graphics/items/icons/old_sea_map.png deleted file mode 100644 index 2c17bfeaa..000000000 Binary files a/graphics/items/icons/old_sea_map.png and /dev/null differ diff --git a/graphics/items/icons/tm.png b/graphics/items/icons/tm_hm.png similarity index 100% rename from graphics/items/icons/tm.png rename to graphics/items/icons/tm_hm.png diff --git a/graphics/pokemon_storage/menu.png b/graphics/pokemon_storage/menu.png index b4f097133..77fdf9f1f 100644 Binary files a/graphics/pokemon_storage/menu.png and b/graphics/pokemon_storage/menu.png differ diff --git a/graphics/summary_screen/bg.pal b/graphics/summary_screen/bg.pal deleted file mode 100644 index a574f8c50..000000000 --- a/graphics/summary_screen/bg.pal +++ /dev/null @@ -1,115 +0,0 @@ -JASC-PAL -0100 -112 -255 0 255 -0 123 197 -230 222 156 -230 205 255 -0 74 148 -123 156 156 -197 189 115 -106 197 205 -205 172 238 -180 139 213 -205 172 238 -180 139 213 -255 180 0 -123 131 148 -255 255 255 -98 106 123 -255 0 255 -255 255 255 -230 230 238 -205 172 238 -98 106 123 -180 139 213 -230 205 255 -205 172 238 -255 0 255 -255 0 255 -255 255 255 -213 213 213 -222 222 222 -230 230 230 -238 238 238 -246 246 246 -255 0 255 -255 172 148 -255 213 172 -255 238 213 -230 139 106 -255 246 238 -255 246 238 -238 238 197 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -123 131 148 -255 255 255 -98 106 123 -255 0 255 -255 213 90 -255 238 123 -255 246 197 -246 189 82 -255 255 222 -255 255 222 -246 238 180 -255 255 164 -123 131 148 -98 106 123 -255 213 82 -255 180 65 -123 131 148 -255 255 255 -98 106 123 -255 0 255 -156 238 213 -172 246 222 -230 255 255 -106 197 156 -246 255 255 -246 255 255 -205 238 238 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -123 131 148 -255 255 255 -98 106 123 -255 0 255 -255 255 255 -230 230 238 -106 230 230 -98 106 123 -90 213 213 -230 205 255 -205 172 238 -255 0 255 -255 0 255 -255 255 255 -213 213 213 -222 222 222 -230 230 230 -246 246 246 -246 246 246 -255 0 255 -0 123 197 -230 222 156 -230 205 255 -0 74 148 -123 156 156 -197 189 115 -106 197 205 -106 230 230 -90 213 213 -205 172 238 -180 139 213 -255 180 0 -123 131 148 -255 255 255 -98 106 123 diff --git a/graphics/summary_screen/bg.png b/graphics/summary_screen/bg.png index df2f6c98f..c7285d2bd 100644 Binary files a/graphics/summary_screen/bg.png and b/graphics/summary_screen/bg.png differ diff --git a/graphics/tm_case/hm.png b/graphics/tm_case/hm.png index 426e404fe..48390d03d 100644 Binary files a/graphics/tm_case/hm.png and b/graphics/tm_case/hm.png differ diff --git a/graphics/trainer_card/back.bin b/graphics/trainer_card/back.bin index dd54ba1c7..14840e5e4 100644 Binary files a/graphics/trainer_card/back.bin and b/graphics/trainer_card/back.bin differ diff --git a/graphics/trainer_card/back_hoenn.bin b/graphics/trainer_card/back_hoenn.bin deleted file mode 100644 index eda105eb2..000000000 Binary files a/graphics/trainer_card/back_hoenn.bin and /dev/null differ diff --git a/graphics/trainer_card/bg.bin b/graphics/trainer_card/bg.bin index c1c452262..c0914427d 100644 Binary files a/graphics/trainer_card/bg.bin and b/graphics/trainer_card/bg.bin differ diff --git a/graphics/trainer_card/bg_hoenn.bin b/graphics/trainer_card/bg_hoenn.bin deleted file mode 100644 index b3994f663..000000000 Binary files a/graphics/trainer_card/bg_hoenn.bin and /dev/null differ diff --git a/graphics/trainer_card/0star.pal b/graphics/trainer_card/blue.pal similarity index 100% rename from graphics/trainer_card/0star.pal rename to graphics/trainer_card/blue.pal diff --git a/graphics/trainer_card/fr_2stars_pals.pal b/graphics/trainer_card/bronze.pal similarity index 100% rename from graphics/trainer_card/fr_2stars_pals.pal rename to graphics/trainer_card/bronze.pal diff --git a/graphics/trainer_card/card.png b/graphics/trainer_card/card.png deleted file mode 100644 index 2fea60d09..000000000 Binary files a/graphics/trainer_card/card.png and /dev/null differ diff --git a/graphics/trainer_card/card_em.png b/graphics/trainer_card/card_em.png deleted file mode 100644 index bd8be5162..000000000 Binary files a/graphics/trainer_card/card_em.png and /dev/null differ diff --git a/graphics/trainer_card/em_badges.pal b/graphics/trainer_card/em_badges.pal deleted file mode 100644 index dd9246d9d..000000000 --- a/graphics/trainer_card/em_badges.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -139 98 115 -255 255 255 -213 213 213 -180 180 180 -123 123 123 -255 139 57 -222 57 8 -106 189 255 -65 139 197 -255 213 98 -238 180 57 -197 123 197 -148 74 156 -106 189 255 -205 205 205 -0 0 0 diff --git a/graphics/trainer_card/fr_female_bg.pal b/graphics/trainer_card/female_bg.pal similarity index 100% rename from graphics/trainer_card/fr_female_bg.pal rename to graphics/trainer_card/female_bg.pal diff --git a/graphics/trainer_card/fr_4stars_pals.pal b/graphics/trainer_card/fr_4stars_pals.pal deleted file mode 100644 index 79027f0d8..000000000 --- a/graphics/trainer_card/fr_4stars_pals.pal +++ /dev/null @@ -1,51 +0,0 @@ -JASC-PAL -0100 -48 -139 98 115 -255 246 230 -246 238 213 -246 246 197 -246 238 180 -246 222 106 -164 164 164 -98 98 115 -255 255 148 -246 222 49 -246 205 8 -238 189 0 -189 148 57 -255 255 197 -255 255 255 -246 230 82 -139 98 115 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -255 0 255 -189 148 16 -255 213 82 -82 205 180 -65 172 164 -197 197 197 -90 90 90 -0 0 0 -32 65 123 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 diff --git a/graphics/trainer_card/fr_badges.pal b/graphics/trainer_card/fr_badges.pal deleted file mode 100644 index dd9246d9d..000000000 --- a/graphics/trainer_card/fr_badges.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -139 98 115 -255 255 255 -213 213 213 -180 180 180 -123 123 123 -255 139 57 -222 57 8 -106 189 255 -65 139 197 -255 213 98 -238 180 57 -197 123 197 -148 74 156 -106 189 255 -205 205 205 -0 0 0 diff --git a/graphics/trainer_card/front.bin b/graphics/trainer_card/front.bin index b83c43942..c83a6e494 100644 Binary files a/graphics/trainer_card/front.bin and b/graphics/trainer_card/front.bin differ diff --git a/graphics/trainer_card/front_hoenn.bin b/graphics/trainer_card/front_hoenn.bin deleted file mode 100644 index 0f45caec6..000000000 Binary files a/graphics/trainer_card/front_hoenn.bin and /dev/null differ diff --git a/graphics/trainer_card/front_hoenn_link.bin b/graphics/trainer_card/front_hoenn_link.bin deleted file mode 100644 index 46e00f670..000000000 Binary files a/graphics/trainer_card/front_hoenn_link.bin and /dev/null differ diff --git a/graphics/trainer_card/front_link.bin b/graphics/trainer_card/front_link.bin index ef8e65b27..3169533c0 100644 Binary files a/graphics/trainer_card/front_link.bin and b/graphics/trainer_card/front_link.bin differ diff --git a/graphics/trainer_card/gold.pal b/graphics/trainer_card/gold.pal index ebd175e97..79027f0d8 100644 --- a/graphics/trainer_card/gold.pal +++ b/graphics/trainer_card/gold.pal @@ -1,19 +1,51 @@ JASC-PAL 0100 -16 +48 139 98 115 -246 197 0 -205 164 0 -246 197 0 -246 197 0 -246 197 0 -246 197 0 -246 197 0 -0 0 0 -0 0 0 +255 246 230 +246 238 213 +246 246 197 +246 238 180 +246 222 106 +164 164 164 +98 98 115 +255 255 148 +246 222 49 +246 205 8 +238 189 0 +189 148 57 +255 255 197 +255 255 255 +246 230 82 +139 98 115 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 +255 0 255 189 148 16 255 213 82 +82 205 180 +65 172 164 +197 197 197 +90 90 90 +0 0 0 +32 65 123 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 0 0 0 0 0 0 -189 148 16 -246 197 0 diff --git a/graphics/trainer_card/fr_1stars_pals.pal b/graphics/trainer_card/green.pal similarity index 100% rename from graphics/trainer_card/fr_1stars_pals.pal rename to graphics/trainer_card/green.pal diff --git a/graphics/trainer_card/rse/back.bin b/graphics/trainer_card/rse/back.bin new file mode 100644 index 000000000..3ef599ce5 Binary files /dev/null and b/graphics/trainer_card/rse/back.bin differ diff --git a/graphics/trainer_card/em_badges.png b/graphics/trainer_card/rse/badges.png similarity index 100% rename from graphics/trainer_card/em_badges.png rename to graphics/trainer_card/rse/badges.png diff --git a/graphics/trainer_card/rse/bg.bin b/graphics/trainer_card/rse/bg.bin new file mode 100644 index 000000000..4e58fafc6 --- /dev/null +++ b/graphics/trainer_card/rse/bg.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/graphics/trainer_card/em_1stars_pals.pal b/graphics/trainer_card/rse/bronze.pal similarity index 100% rename from graphics/trainer_card/em_1stars_pals.pal rename to graphics/trainer_card/rse/bronze.pal diff --git a/graphics/trainer_card/em_2stars_pals.pal b/graphics/trainer_card/rse/copper.pal similarity index 100% rename from graphics/trainer_card/em_2stars_pals.pal rename to graphics/trainer_card/rse/copper.pal diff --git a/graphics/trainer_card/em_female_bg.pal b/graphics/trainer_card/rse/female_bg.pal similarity index 100% rename from graphics/trainer_card/em_female_bg.pal rename to graphics/trainer_card/rse/female_bg.pal diff --git a/graphics/trainer_card/rse/front.bin b/graphics/trainer_card/rse/front.bin new file mode 100644 index 000000000..e955b0ed9 Binary files /dev/null and b/graphics/trainer_card/rse/front.bin differ diff --git a/graphics/trainer_card/rse/front_link.bin b/graphics/trainer_card/rse/front_link.bin new file mode 100644 index 000000000..af5e6259e Binary files /dev/null and b/graphics/trainer_card/rse/front_link.bin differ diff --git a/graphics/trainer_card/em_4stars_pals.pal b/graphics/trainer_card/rse/gold.pal similarity index 100% rename from graphics/trainer_card/em_4stars_pals.pal rename to graphics/trainer_card/rse/gold.pal diff --git a/graphics/trainer_card/0star_em.pal b/graphics/trainer_card/rse/green.pal similarity index 100% rename from graphics/trainer_card/0star_em.pal rename to graphics/trainer_card/rse/green.pal diff --git a/graphics/trainer_card/em_3stars_pals.pal b/graphics/trainer_card/rse/silver.pal similarity index 100% rename from graphics/trainer_card/em_3stars_pals.pal rename to graphics/trainer_card/rse/silver.pal diff --git a/graphics/trainer_card/rse/tiles.png b/graphics/trainer_card/rse/tiles.png new file mode 100644 index 000000000..b19e0d0ed Binary files /dev/null and b/graphics/trainer_card/rse/tiles.png differ diff --git a/graphics/trainer_card/fr_3stars_pals.pal b/graphics/trainer_card/silver.pal similarity index 100% rename from graphics/trainer_card/fr_3stars_pals.pal rename to graphics/trainer_card/silver.pal diff --git a/graphics/trainer_card/star.pal b/graphics/trainer_card/star.pal new file mode 100644 index 000000000..ebd175e97 --- /dev/null +++ b/graphics/trainer_card/star.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +139 98 115 +246 197 0 +205 164 0 +246 197 0 +246 197 0 +246 197 0 +246 197 0 +246 197 0 +0 0 0 +0 0 0 +189 148 16 +255 213 82 +0 0 0 +0 0 0 +189 148 16 +246 197 0 diff --git a/graphics/trainer_card/sticker1.pal b/graphics/trainer_card/stickers1.pal similarity index 100% rename from graphics/trainer_card/sticker1.pal rename to graphics/trainer_card/stickers1.pal diff --git a/graphics/trainer_card/sticker2.pal b/graphics/trainer_card/stickers2.pal similarity index 100% rename from graphics/trainer_card/sticker2.pal rename to graphics/trainer_card/stickers2.pal diff --git a/graphics/trainer_card/sticker3.pal b/graphics/trainer_card/stickers3.pal similarity index 100% rename from graphics/trainer_card/sticker3.pal rename to graphics/trainer_card/stickers3.pal diff --git a/graphics/trainer_card/sticker4.pal b/graphics/trainer_card/stickers4.pal similarity index 100% rename from graphics/trainer_card/sticker4.pal rename to graphics/trainer_card/stickers4.pal diff --git a/graphics/trainer_card/tiles.png b/graphics/trainer_card/tiles.png new file mode 100644 index 000000000..5d2b11467 Binary files /dev/null and b/graphics/trainer_card/tiles.png differ diff --git a/graphics/trainer_card/unused.pal b/graphics/trainer_card/unused.pal new file mode 100644 index 000000000..25a3ac1d2 --- /dev/null +++ b/graphics/trainer_card/unused.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +255 255 255 +255 255 255 +98 98 98 +213 213 205 +230 8 8 +255 189 115 +32 156 8 +148 246 148 +49 82 205 +164 197 246 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/include/battle.h b/include/battle.h index 55871b70c..3771ef33a 100644 --- a/include/battle.h +++ b/include/battle.h @@ -493,6 +493,8 @@ extern struct BattleStruct *gBattleStruct; #define SET_STATCHANGER(statId, stage, goesDown)(gBattleScripting.statChanger = (statId) + (stage << 4) + (goesDown << 7)) +// NOTE: The members of this struct have hard-coded offsets +// in include/constants/battle_script_commands.h struct BattleScripting { s32 painSplitHp; diff --git a/include/bike.h b/include/bike.h index d6021f5e4..cd079477e 100644 --- a/include/bike.h +++ b/include/bike.h @@ -6,11 +6,11 @@ // Player speeds enum { - SPEED_STANDING, - SPEED_NORMAL, - SPEED_FAST, - SPEED_FASTER, - SPEED_FASTEST, + PLAYER_SPEED_STANDING, + PLAYER_SPEED_NORMAL, + PLAYER_SPEED_FAST, + PLAYER_SPEED_FASTER, + PLAYER_SPEED_FASTEST, }; enum { diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index e08a9e400..3dac1f74e 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -1,34 +1,31 @@ #ifndef GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H #define GUARD_CONSTANTS_BATTLE_SCRIPT_COMMANDS_H -// Battle Scripting and BattleCommunication addresses -#define sPAINSPLIT_HP gBattleScripting -#define sBIDE_DMG gBattleScripting + 4 -#define sMULTIHIT_STRING gBattleScripting + 8 -#define sDMG_MULTIPLIER gBattleScripting + 0xE -#define sTWOTURN_STRINGID gBattleScripting + 0xF -#define sB_ANIM_ARG1 gBattleScripting + 0x10 -#define sB_ANIM_ARG2 gBattleScripting + 0x11 -#define sTRIPLE_KICK_POWER gBattleScripting + 0x12 -#define sMOVEEND_STATE gBattleScripting + 0x14 -#define sBATTLER_WITH_ABILITY gBattleScripting + 0x15 -#define sMULTIHIT_EFFECT gBattleScripting + 0x16 -#define sBATTLER gBattleScripting + 0x17 -#define sB_ANIM_TURN gBattleScripting + 0x18 -#define sB_ANIM_TARGETS_HIT gBattleScripting + 0x19 -#define sSTATCHANGER gBattleScripting + 0x1A -#define sSTAT_ANIM_PLAYED gBattleScripting + 0x1B -#define sGIVEEXP_STATE gBattleScripting + 0x1C -#define sBATTLE_STYLE gBattleScripting + 0x1D -#define sLVLBOX_STATE gBattleScripting + 0x1E -#define sLEARNMOVE_STATE gBattleScripting + 0x1F -#define sFIELD_20 gBattleScripting + 0x20 -#define sRESHOW_MAIN_STATE gBattleScripting + 0x21 -#define sRESHOW_HELPER_STATE gBattleScripting + 0x22 -#define sFIELD_23 gBattleScripting + 0x23 -#define sWINDOWS_TYPE gBattleScripting + 0x24 -#define sMULTIPLAYER_ID gBattleScripting + 0x25 -#define sSPECIAL_TRAINER_BATTLE_TYPE gBattleScripting + 0x26 +// The following correspond to the struct members of BattleScripting by adding their offset +#define sPAINSPLIT_HP gBattleScripting + 0x00 // painSplitHp +#define sBIDE_DMG gBattleScripting + 0x04 // bideDmg +#define sMULTIHIT_STRING gBattleScripting + 0x08 // multihitString +#define sDMG_MULTIPLIER gBattleScripting + 0x0E // dmgMultiplier +#define sTWOTURN_STRINGID gBattleScripting + 0x0F // twoTurnsMoveStringId +#define sB_ANIM_ARG1 gBattleScripting + 0x10 // animArg1 +#define sB_ANIM_ARG2 gBattleScripting + 0x11 // animArg2 +#define sTRIPLE_KICK_POWER gBattleScripting + 0x12 // tripleKickPower +#define sMOVEEND_STATE gBattleScripting + 0x14 // moveendState +#define sBATTLER_WITH_ABILITY gBattleScripting + 0x15 // battlerWithAbility +#define sMULTIHIT_EFFECT gBattleScripting + 0x16 // multihitMoveEffect +#define sBATTLER gBattleScripting + 0x17 // battler +#define sB_ANIM_TURN gBattleScripting + 0x18 // animTurn +#define sB_ANIM_TARGETS_HIT gBattleScripting + 0x19 // animTargetsHit +#define sSTATCHANGER gBattleScripting + 0x1A // statChanger +#define sSTAT_ANIM_PLAYED gBattleScripting + 0x1B // statAnimPlayed +#define sGIVEEXP_STATE gBattleScripting + 0x1C // getexpState +#define sBATTLE_STYLE gBattleScripting + 0x1D // battleStyle +#define sLVLBOX_STATE gBattleScripting + 0x1E // drawlvlupboxState +#define sLEARNMOVE_STATE gBattleScripting + 0x1F // learnMoveState +#define sPURSUIT_DOUBLES_ATTACKER gBattleScripting + 0x20 // pursuitDoublesAttacker +#define sRESHOW_MAIN_STATE gBattleScripting + 0x21 // reshowMainState +#define sRESHOW_HELPER_STATE gBattleScripting + 0x22 // reshowHelperState +#define sLVLUP_HP gBattleScripting + 0x23 // levelUpHP // Array entries for battle communication #define MULTIUSE_STATE 0 diff --git a/include/constants/items.h b/include/constants/items.h index a3242c13e..cfc42256c 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -177,9 +177,16 @@ #define ITEM_LANSAT_BERRY 173 #define ITEM_STARF_BERRY 174 #define ITEM_ENIGMA_BERRY 175 -#define ITEM_0B0 176 -#define ITEM_0B1 177 -#define ITEM_0B2 178 + +#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY +#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY + +#define ITEM_UNUSED_BERRY_1 176 +#define ITEM_UNUSED_BERRY_2 177 +#define ITEM_UNUSED_BERRY_3 178 + +#define MAX_BERRY_INDEX ITEM_UNUSED_BERRY_3 + #define ITEM_BRIGHT_POWDER 179 #define ITEM_WHITE_HERB 180 #define ITEM_MACHO_BRACE 181 @@ -440,8 +447,6 @@ #define ITEMS_COUNT 375 -#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY -#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY #define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1)) #define MAIL_NONE 0xFF @@ -454,6 +459,6 @@ #define SUPER_ROD 2 // Check if the item is one that can be used on a Pokemon. -#define IS_POKEMON_ITEM(item) ((item) >= ITEM_POTION && (item) <= ITEM_0B2) +#define IS_POKEMON_ITEM(item) ((item) >= ITEM_POTION && (item) <= MAX_BERRY_INDEX) #endif // GUARD_CONSTANTS_ITEMS_H diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index 86873cbf4..53de3a62c 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -35,6 +35,10 @@ // gTileset_DepartmentStore #define METATILE_DepartmentStore_ElevatorDoor 0x28D +// gTileset_Fallarbor +#define METATILE_Fallarbor_AshGrass 0x20A +#define METATILE_Fallarbor_NormalGrass 0x212 + // gTileset_FuchsiaCity #define METATILE_FuchsiaCity_Door 0x2BF #define METATILE_FuchsiaCity_SafariZoneDoor 0x2D2 @@ -74,6 +78,9 @@ #define METATILE_GenericBuilding1_PlayersPCOff 0x28F #define METATILE_GenericBuilding1_PlayersPCOn 0x28A +// gTileset_Lavaridge +#define METATILE_Lavaridge_NormalGrass 0x206 + // gTileset_LavenderTown #define METATILE_LavenderTown_Door 0x2A2 @@ -84,6 +91,9 @@ // gTileset_MtEmber #define METATILE_MtEmber_CaveEntrance 0x346 +// gTileset_Pacifidlog +#define METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole 0x237 + // gTileset_PalletTown #define METATILE_PalletTown_Door 0x2A3 #define METATILE_PalletTown_OaksLabDoor 0x2AC @@ -165,6 +175,10 @@ #define METATILE_PokemonMansion_Wall_EndPost_Bottom 0x2AD #define METATILE_PokemonMansion_Wall_EndPost_Mid 0x2A5 +// gTileset_RSCave +#define METATILE_RSCave_CrackedFloor 0x22F +#define METATILE_RSCave_CrackedFloor_Hole 0x206 + // gTileset_SSAnne #define METATILE_SSAnne_Door 0x281 diff --git a/include/easy_chat.h b/include/easy_chat.h index ec5488bca..b59f4ecf9 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -71,7 +71,6 @@ u8 GetECSelectGroupRowsAbove(void); void GetECSelectWordCursorCoords(s8 *arg0, s8 *arg1); u8 GetECSelectWordRowsAbove(void); u8 GetECSelectWordNumRows(void); -u8 unref_sub_80FFE60(void); bool32 ShouldDrawECUpArrow(void); bool32 ShouldDrawECDownArrow(void); diff --git a/include/event_scripts.h b/include/event_scripts.h index a9603119c..4a386d5a9 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -7,15 +7,6 @@ #include "global.h" -extern const u8 gUnknown_0823B4E8[]; -extern const u8 gUnknown_0823B5E9[]; -extern const u8 EventScript_275BB7[]; -extern const u8 EventScript_275D0C[]; -extern const u8 EventScript_275D1F[]; -extern const u8 EventScript_275D2E[]; -extern const u8 EventScript_2766A2[]; -extern const u8 EventScript_2766A6[]; - extern const u8 gTVBravoTrainerText00[]; extern const u8 gTVBravoTrainerText01[]; extern const u8 gTVBravoTrainerText02[]; @@ -364,16 +355,6 @@ extern const u8 gPokeNewsTextLilycove_Ending[]; extern const u8 gPokeNewsTextBlendMaster_Upcoming[]; extern const u8 gPokeNewsTextBlendMaster_Ongoing[]; extern const u8 gPokeNewsTextBlendMaster_Ending[]; -extern const u8 SecretBase_RedCave1_Text_274966[]; -extern const u8 SecretBase_RedCave1_Text_274D13[]; -extern const u8 SecretBase_RedCave1_Text_274FFE[]; -extern const u8 SecretBase_RedCave1_Text_275367[]; -extern const u8 SecretBase_RedCave1_Text_2756C7[]; -extern const u8 SecretBase_RedCave1_Text_274B24[]; -extern const u8 SecretBase_RedCave1_Text_274E75[]; -extern const u8 SecretBase_RedCave1_Text_2751E1[]; -extern const u8 SecretBase_RedCave1_Text_2754F6[]; -extern const u8 SecretBase_RedCave1_Text_2758CC[]; extern const u8 gText_LtSurge[]; extern const u8 gText_Koga[]; @@ -780,7 +761,6 @@ extern const u8 Help_Text_AboutThisGame[]; extern const u8 Help_Text_TypeMatchupList[]; extern const u8 Help_Text_Exit[]; extern const u8 Help_Text_Cancel[]; -extern const u8 gUnknown_81B2E76[]; extern const u8 Help_Text_DescWhatShouldIDo[]; extern const u8 Help_Text_DescHowDoIDoThis[]; extern const u8 Help_Text_DescWhatDoesThisTermMean[]; diff --git a/include/gba/defines.h b/include/gba/defines.h index 860ae5f08..f7566278b 100644 --- a/include/gba/defines.h +++ b/include/gba/defines.h @@ -31,14 +31,12 @@ #define IWRAM_START 0x03000000 #define IWRAM_END (IWRAM_START + 0x8000) -#define PLTT 0x5000000 -#define PLTT_SIZE 0x400 - -#define BG_PLTT PLTT -#define BG_PLTT_SIZE 0x200 - -#define OBJ_PLTT (PLTT + 0x200) +#define PLTT 0x5000000 +#define BG_PLTT PLTT +#define BG_PLTT_SIZE 0x200 +#define OBJ_PLTT (PLTT + BG_PLTT_SIZE) #define OBJ_PLTT_SIZE 0x200 +#define PLTT_SIZE (BG_PLTT_SIZE + OBJ_PLTT_SIZE) #define VRAM 0x6000000 #define VRAM_SIZE 0x18000 @@ -79,6 +77,12 @@ #define TOTAL_OBJ_TILE_COUNT 1024 +#define PLTT_SIZEOF(n) ((n) * sizeof(u16)) +#define PLTT_SIZE_4BPP PLTT_SIZEOF(16) +#define PLTT_SIZE_8BPP PLTT_SIZEOF(256) + +#define PLTT_OFFSET_4BPP(n) ((n) * PLTT_SIZE_4BPP) + // Some functions are strictly inline asm #define NAKED __attribute__((naked)) #define UNUSED __attribute__((unused)) diff --git a/include/graphics.h b/include/graphics.h index eceb39598..4a4d86250 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2745,15 +2745,15 @@ extern const u32 gTrainerPalette_RuinManiac[]; extern const u32 gTrainerPalette_Lady[]; extern const u32 gTrainerPalette_Painter[]; -extern const u8 gFireRedMenuElements_Gfx[]; -extern const u16 gFireRedMenuElements1_Pal[]; -extern const u16 gFireRedMenuElements2_Pal[]; +extern const u8 gMenuInfoElements_Gfx[]; +extern const u16 gMenuInfoElements1_Pal[]; +extern const u16 gMenuInfoElements2_Pal[]; -extern const u8 gItemIcon_QuestionMark[]; -extern const u8 gItemIconPalette_QuestionMark[]; +extern const u32 gItemIcon_QuestionMark[]; +extern const u32 gItemIconPalette_QuestionMark[]; // fame_checker -extern const u16 gFameCheckerBgPals[0x30]; +extern const u16 gFameCheckerBgPals[][16]; extern const u16 gFameCheckerBgTiles[0xa50]; extern const u16 gFameCheckerBg3Tilemap[0x400]; extern const u16 gFameCheckerBg2Tilemap[0x400]; @@ -2812,756 +2812,476 @@ extern const u32 gBagFemale_Gfx[]; extern const u32 gBag_Pal[]; extern const u32 gSwapLine_Gfx[]; extern const u32 gSwapLine_Pal[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_master_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_master_ball_palette[]; -extern const u8 gFile_graphics_items_icons_ultra_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ultra_ball_palette[]; -extern const u8 gFile_graphics_items_icons_great_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_great_ball_palette[]; -extern const u8 gFile_graphics_items_icons_poke_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poke_ball_palette[]; -extern const u8 gFile_graphics_items_icons_safari_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_safari_ball_palette[]; -extern const u8 gFile_graphics_items_icons_net_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_net_ball_palette[]; -extern const u8 gFile_graphics_items_icons_dive_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dive_ball_palette[]; -extern const u8 gFile_graphics_items_icons_nest_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_nest_ball_palette[]; -extern const u8 gFile_graphics_items_icons_repeat_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_repeat_ball_palette[]; -extern const u8 gFile_graphics_items_icons_timer_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_repeat_ball_palette[]; -extern const u8 gFile_graphics_items_icons_luxury_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_luxury_ball_palette[]; -extern const u8 gFile_graphics_items_icons_premier_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_luxury_ball_palette[]; -extern const u8 gFile_graphics_items_icons_potion_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_potion_palette[]; -extern const u8 gFile_graphics_items_icons_antidote_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_antidote_palette[]; -extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_burn_heal_palette[]; -extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ice_heal_palette[]; -extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_awakening_palette[]; -extern const u8 gFile_graphics_items_icons_status_heal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_paralyze_heal_palette[]; -extern const u8 gFile_graphics_items_icons_large_potion_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_full_restore_palette[]; -extern const u8 gFile_graphics_items_icons_large_potion_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_max_potion_palette[]; -extern const u8 gFile_graphics_items_icons_potion_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hyper_potion_palette[]; -extern const u8 gFile_graphics_items_icons_potion_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_super_potion_palette[]; -extern const u8 gFile_graphics_items_icons_full_heal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_full_heal_palette[]; -extern const u8 gFile_graphics_items_icons_revive_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_revive_palette[]; -extern const u8 gFile_graphics_items_icons_max_revive_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_revive_palette[]; -extern const u8 gFile_graphics_items_icons_fresh_water_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fresh_water_palette[]; -extern const u8 gFile_graphics_items_icons_soda_pop_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_soda_pop_palette[]; -extern const u8 gFile_graphics_items_icons_lemonade_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lemonade_palette[]; -extern const u8 gFile_graphics_items_icons_moomoo_milk_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_moomoo_milk_palette[]; -extern const u8 gFile_graphics_items_icon_palettes_energy_powder_palette[]; -extern const u8 gFile_graphics_items_icons_energy_root_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_energy_root_palette[]; -extern const u8 gFile_graphics_items_icon_palettes_heal_powder_palette[]; -extern const u8 gFile_graphics_items_icons_revival_herb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_revival_herb_palette[]; -extern const u8 gFile_graphics_items_icons_ether_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ether_palette[]; -extern const u8 gFile_graphics_items_icons_ether_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_max_ether_palette[]; -extern const u8 gFile_graphics_items_icons_ether_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_elixir_palette[]; -extern const u8 gFile_graphics_items_icons_ether_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_max_elixir_palette[]; -extern const u8 gFile_graphics_items_icons_lava_cookie_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette[]; -extern const u8 gFile_graphics_items_icons_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_blue_flute_palette[]; -extern const u8 gFile_graphics_items_icons_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_yellow_flute_palette[]; -extern const u8 gFile_graphics_items_icons_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_red_flute_palette[]; -extern const u8 gFile_graphics_items_icons_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_black_flute_palette[]; -extern const u8 gFile_graphics_items_icons_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_white_flute_palette[]; -extern const u8 gFile_graphics_items_icons_berry_juice_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_berry_juice_palette[]; -extern const u8 gFile_graphics_items_icons_sacred_ash_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sacred_ash_palette[]; -extern const u32 gFile_graphics_items_icons_powder_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_shoal_salt_palette[]; -extern const u8 gFile_graphics_items_icons_shoal_shell_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_shell_palette[]; -extern const u8 gFile_graphics_items_icons_shard_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_red_shard_palette[]; -extern const u8 gFile_graphics_items_icons_shard_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_blue_shard_palette[]; -extern const u8 gFile_graphics_items_icons_shard_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_yellow_shard_palette[]; -extern const u8 gFile_graphics_items_icons_shard_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_green_shard_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_hp_up_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hp_up_palette[]; -extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_protein_palette[]; -extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_iron_palette[]; -extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_carbos_palette[]; -extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_calcium_palette[]; -extern const u8 gFile_graphics_items_icons_rare_candy_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rare_candy_palette[]; -extern const u8 gFile_graphics_items_icons_pp_up_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pp_up_palette[]; -extern const u8 gFile_graphics_items_icons_vitamin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_zinc_palette[]; -extern const u8 gFile_graphics_items_icons_pp_max_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pp_max_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_guard_spec_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dire_hit_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_x_attack_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_x_defend_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_x_speed_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_x_accuracy_palette[]; -extern const u8 gFile_graphics_items_icons_battle_stat_item_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_x_special_palette[]; -extern const u8 gFile_graphics_items_icons_poke_doll_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poke_doll_palette[]; -extern const u8 gFile_graphics_items_icons_fluffy_tail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fluffy_tail_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_repel_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_super_repel_palette[]; -extern const u8 gFile_graphics_items_icons_repel_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_max_repel_palette[]; -extern const u8 gFile_graphics_items_icons_escape_rope_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_escape_rope_palette[]; -extern const u8 gFile_graphics_items_icons_repel_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_repel_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_sun_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sun_stone_palette[]; -extern const u8 gFile_graphics_items_icons_moon_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_moon_stone_palette[]; -extern const u8 gFile_graphics_items_icons_fire_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fire_stone_palette[]; -extern const u8 gFile_graphics_items_icons_thunder_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_thunder_stone_palette[]; -extern const u8 gFile_graphics_items_icons_water_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_stone_palette[]; -extern const u8 gFile_graphics_items_icons_leaf_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_leaf_stone_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_tiny_mushroom_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mushroom_palette[]; -extern const u8 gFile_graphics_items_icons_big_mushroom_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mushroom_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_pearl_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pearl_palette[]; -extern const u8 gFile_graphics_items_icons_big_pearl_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pearl_palette[]; -extern const u8 gFile_graphics_items_icons_stardust_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_star_palette[]; -extern const u8 gFile_graphics_items_icons_star_piece_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_star_palette[]; -extern const u8 gFile_graphics_items_icons_nugget_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_nugget_palette[]; -extern const u8 gFile_graphics_items_icons_heart_scale_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_heart_scale_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_orange_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_orange_mail_palette[]; -extern const u8 gFile_graphics_items_icons_harbor_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_harbor_mail_palette[]; -extern const u8 gFile_graphics_items_icons_glitter_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_glitter_mail_palette[]; -extern const u8 gFile_graphics_items_icons_mech_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mech_mail_palette[]; -extern const u8 gFile_graphics_items_icons_wood_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_wood_mail_palette[]; -extern const u8 gFile_graphics_items_icons_wave_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_wave_mail_palette[]; -extern const u8 gFile_graphics_items_icons_bead_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_bead_mail_palette[]; -extern const u8 gFile_graphics_items_icons_shadow_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_shadow_mail_palette[]; -extern const u8 gFile_graphics_items_icons_tropic_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_tropic_mail_palette[]; -extern const u8 gFile_graphics_items_icons_dream_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dream_mail_palette[]; -extern const u8 gFile_graphics_items_icons_fab_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fab_mail_palette[]; -extern const u8 gFile_graphics_items_icons_retro_mail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_retro_mail_palette[]; -extern const u8 gFile_graphics_items_icons_cheri_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_cheri_berry_palette[]; -extern const u8 gFile_graphics_items_icons_chesto_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_chesto_berry_palette[]; -extern const u8 gFile_graphics_items_icons_pecha_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pecha_berry_palette[]; -extern const u8 gFile_graphics_items_icons_rawst_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rawst_berry_palette[]; -extern const u8 gFile_graphics_items_icons_aspear_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_aspear_berry_palette[]; -extern const u8 gFile_graphics_items_icons_leppa_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_leppa_berry_palette[]; -extern const u8 gFile_graphics_items_icons_oran_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_oran_berry_palette[]; -extern const u8 gFile_graphics_items_icons_persim_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_persim_berry_palette[]; -extern const u8 gFile_graphics_items_icons_lum_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lum_berry_palette[]; -extern const u8 gFile_graphics_items_icons_sitrus_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sitrus_berry_palette[]; -extern const u8 gFile_graphics_items_icons_figy_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_figy_berry_palette[]; -extern const u8 gFile_graphics_items_icons_wiki_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_wiki_berry_palette[]; -extern const u8 gFile_graphics_items_icons_mago_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mago_berry_palette[]; -extern const u8 gFile_graphics_items_icons_aguav_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_aguav_berry_palette[]; -extern const u8 gFile_graphics_items_icons_iapapa_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_iapapa_berry_palette[]; -extern const u8 gFile_graphics_items_icons_razz_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_razz_berry_palette[]; -extern const u8 gFile_graphics_items_icons_bluk_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_bluk_berry_palette[]; -extern const u8 gFile_graphics_items_icons_nanab_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_nanab_berry_palette[]; -extern const u8 gFile_graphics_items_icons_wepear_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_wepear_berry_palette[]; -extern const u8 gFile_graphics_items_icons_pinap_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pinap_berry_palette[]; -extern const u8 gFile_graphics_items_icons_pomeg_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pomeg_berry_palette[]; -extern const u8 gFile_graphics_items_icons_kelpsy_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_kelpsy_berry_palette[]; -extern const u8 gFile_graphics_items_icons_qualot_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_qualot_berry_palette[]; -extern const u8 gFile_graphics_items_icons_hondew_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hondew_berry_palette[]; -extern const u8 gFile_graphics_items_icons_grepa_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_grepa_berry_palette[]; -extern const u8 gFile_graphics_items_icons_tamato_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_tamato_berry_palette[]; -extern const u8 gFile_graphics_items_icons_cornn_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_cornn_berry_palette[]; -extern const u8 gFile_graphics_items_icons_magost_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_magost_berry_palette[]; -extern const u8 gFile_graphics_items_icons_rabuta_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rabuta_berry_palette[]; -extern const u8 gFile_graphics_items_icons_nomel_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_nomel_berry_palette[]; -extern const u8 gFile_graphics_items_icons_spelon_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_spelon_berry_palette[]; -extern const u8 gFile_graphics_items_icons_pamtre_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pamtre_berry_palette[]; -extern const u8 gFile_graphics_items_icons_watmel_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_watmel_berry_palette[]; -extern const u8 gFile_graphics_items_icons_durin_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_durin_berry_palette[]; -extern const u8 gFile_graphics_items_icons_belue_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_belue_berry_palette[]; -extern const u8 gFile_graphics_items_icons_liechi_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_liechi_berry_palette[]; -extern const u8 gFile_graphics_items_icons_ganlon_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ganlon_berry_palette[]; -extern const u8 gFile_graphics_items_icons_salac_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_salac_berry_palette[]; -extern const u8 gFile_graphics_items_icons_petaya_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_petaya_berry_palette[]; -extern const u8 gFile_graphics_items_icons_apicot_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_apicot_berry_palette[]; -extern const u8 gFile_graphics_items_icons_lansat_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lansat_berry_palette[]; -extern const u8 gFile_graphics_items_icons_starf_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_starf_berry_palette[]; -extern const u8 gFile_graphics_items_icons_enigma_berry_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_enigma_berry_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_bright_powder_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_bright_powder_palette[]; -extern const u8 gFile_graphics_items_icons_in_battle_herb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_white_herb_palette[]; -extern const u8 gFile_graphics_items_icons_macho_brace_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_macho_brace_palette[]; -extern const u8 gFile_graphics_items_icons_exp_share_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_exp_share_palette[]; -extern const u8 gFile_graphics_items_icons_quick_claw_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_quick_claw_palette[]; -extern const u8 gFile_graphics_items_icons_soothe_bell_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_soothe_bell_palette[]; -extern const u8 gFile_graphics_items_icons_in_battle_herb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mental_herb_palette[]; -extern const u8 gFile_graphics_items_icons_choice_band_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_choice_band_palette[]; -extern const u8 gFile_graphics_items_icons_kings_rock_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_kings_rock_palette[]; -extern const u8 gFile_graphics_items_icons_silver_powder_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_silver_powder_palette[]; -extern const u8 gFile_graphics_items_icons_amulet_coin_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_amulet_coin_palette[]; -extern const u8 gFile_graphics_items_icons_cleanse_tag_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_cleanse_tag_palette[]; -extern const u8 gFile_graphics_items_icons_soul_dew_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_soul_dew_palette[]; -extern const u8 gFile_graphics_items_icons_deep_sea_tooth_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_deep_sea_tooth_palette[]; -extern const u8 gFile_graphics_items_icons_deep_sea_scale_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_deep_sea_scale_palette[]; -extern const u8 gFile_graphics_items_icons_smoke_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_smoke_ball_palette[]; -extern const u8 gFile_graphics_items_icons_everstone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_everstone_palette[]; -extern const u8 gFile_graphics_items_icons_focus_band_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_focus_band_palette[]; -extern const u8 gFile_graphics_items_icons_lucky_egg_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lucky_egg_palette[]; -extern const u8 gFile_graphics_items_icons_scope_lens_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_scope_lens_palette[]; -extern const u8 gFile_graphics_items_icons_metal_coat_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_metal_coat_palette[]; -extern const u8 gFile_graphics_items_icons_leftovers_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_leftovers_palette[]; -extern const u8 gFile_graphics_items_icons_dragon_scale_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dragon_scale_palette[]; -extern const u8 gFile_graphics_items_icons_light_ball_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_light_ball_palette[]; -extern const u8 gFile_graphics_items_icons_soft_sand_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_soft_sand_palette[]; -extern const u8 gFile_graphics_items_icons_hard_stone_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hard_stone_palette[]; -extern const u8 gFile_graphics_items_icons_miracle_seed_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_miracle_seed_palette[]; -extern const u8 gFile_graphics_items_icons_black_glasses_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette[]; -extern const u8 gFile_graphics_items_icons_black_belt_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette[]; -extern const u8 gFile_graphics_items_icons_magnet_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_magnet_palette[]; -extern const u8 gFile_graphics_items_icons_mystic_water_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mystic_water_palette[]; -extern const u8 gFile_graphics_items_icons_sharp_beak_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sharp_beak_palette[]; -extern const u8 gFile_graphics_items_icons_poison_barb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poison_barb_palette[]; -extern const u8 gFile_graphics_items_icons_never_melt_ice_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_never_melt_ice_palette[]; -extern const u8 gFile_graphics_items_icons_spell_tag_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_spell_tag_palette[]; -extern const u8 gFile_graphics_items_icons_twisted_spoon_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_twisted_spoon_palette[]; -extern const u8 gFile_graphics_items_icons_charcoal_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_charcoal_palette[]; -extern const u8 gFile_graphics_items_icons_dragon_fang_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dragon_fang_palette[]; -extern const u8 gFile_graphics_items_icons_silk_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_silk_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_up_grade_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_up_grade_palette[]; -extern const u8 gFile_graphics_items_icons_shell_bell_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_shell_palette[]; -extern const u8 gFile_graphics_items_icons_sea_incense_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sea_incense_palette[]; -extern const u8 gFile_graphics_items_icons_lax_incense_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lax_incense_palette[]; -extern const u8 gFile_graphics_items_icons_lucky_punch_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lucky_punch_palette[]; -extern const u8 gFile_graphics_items_icons_metal_powder_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_metal_powder_palette[]; -extern const u8 gFile_graphics_items_icons_thick_club_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_thick_club_palette[]; -extern const u8 gFile_graphics_items_icons_stick_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_stick_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_red_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_blue_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pink_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_green_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_scarf_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_yellow_scarf_palette[]; -extern const u8 gFile_graphics_items_icons_mach_bike_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mach_bike_palette[]; -extern const u8 gFile_graphics_items_icons_coin_case_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_coin_case_palette[]; -extern const u8 gFile_graphics_items_icons_itemfinder_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_itemfinder_palette[]; -extern const u8 gFile_graphics_items_icons_old_rod_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_old_rod_palette[]; -extern const u8 gFile_graphics_items_icons_good_rod_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_good_rod_palette[]; -extern const u8 gFile_graphics_items_icons_super_rod_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_super_rod_palette[]; -extern const u8 gFile_graphics_items_icons_ss_ticket_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ss_ticket_palette[]; -extern const u8 gFile_graphics_items_icons_contest_pass_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_contest_pass_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_wailmer_pail_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_wailmer_pail_palette[]; -extern const u8 gFile_graphics_items_icons_devon_goods_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_devon_goods_palette[]; -extern const u8 gFile_graphics_items_icons_soot_sack_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_soot_sack_palette[]; -extern const u8 gFile_graphics_items_icons_basement_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_old_key_palette[]; -extern const u8 gFile_graphics_items_icons_acro_bike_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_acro_bike_palette[]; -extern const u8 gFile_graphics_items_icons_pokeblock_case_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_pokeblock_case_palette[]; -extern const u8 gFile_graphics_items_icons_letter_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette[]; -extern const u8 gFile_graphics_items_icons_eon_ticket_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_eon_ticket_palette[]; -extern const u8 gFile_graphics_items_icons_orb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_red_orb_palette[]; -extern const u8 gFile_graphics_items_icons_orb_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_blue_orb_palette[]; -extern const u8 gFile_graphics_items_icons_scanner_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_scanner_palette[]; -extern const u8 gFile_graphics_items_icons_go_goggles_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_go_goggles_palette[]; -extern const u8 gFile_graphics_items_icons_meteorite_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_meteorite_palette[]; -extern const u8 gFile_graphics_items_icons_room1_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; -extern const u8 gFile_graphics_items_icons_room2_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; -extern const u8 gFile_graphics_items_icons_room4_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; -extern const u8 gFile_graphics_items_icons_room6_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; -extern const u8 gFile_graphics_items_icons_storage_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_old_key_palette[]; -extern const u8 gFile_graphics_items_icons_root_fossil_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hoenn_fossil_palette[]; -extern const u8 gFile_graphics_items_icons_claw_fossil_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_hoenn_fossil_palette[]; -extern const u8 gFile_graphics_items_icons_devon_scope_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_devon_scope_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dragon_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poison_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_steel_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ground_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ground_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ghost_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poison_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rock_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rock_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_flying_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_steel_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_flying_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_tm_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_water_tm_hm_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_question_mark_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_question_mark_palette[]; -extern const u8 gFile_graphics_items_icons_oaks_parcel_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_oaks_parcel_palette[]; -extern const u8 gFile_graphics_items_icons_poke_flute_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_poke_flute_palette[]; -extern const u8 gFile_graphics_items_icons_secret_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_secret_key_palette[]; -extern const u8 gFile_graphics_items_icons_bike_voucher_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_bike_voucher_palette[]; -extern const u8 gFile_graphics_items_icons_gold_teeth_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_gold_teeth_palette[]; -extern const u8 gFile_graphics_items_icons_old_amber_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_old_amber_palette[]; -extern const u8 gFile_graphics_items_icons_card_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_card_key_palette[]; -extern const u8 gFile_graphics_items_icons_lift_key_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_key_palette[]; -extern const u8 gFile_graphics_items_icons_helix_fossil_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_kanto_fossil_palette[]; -extern const u8 gFile_graphics_items_icons_dome_fossil_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_kanto_fossil_palette[]; -extern const u8 gFile_graphics_items_icons_silph_scope_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_silph_scope_palette[]; -extern const u8 gFile_graphics_items_icons_bicycle_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_bicycle_palette[]; -extern const u8 gFile_graphics_items_icons_town_map_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_town_map_palette[]; -extern const u8 gFile_graphics_items_icons_vs_seeker_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_vs_seeker_palette[]; -extern const u8 gFile_graphics_items_icons_fame_checker_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_fame_checker_palette[]; -extern const u8 gFile_graphics_items_icons_tm_case_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_tm_case_palette[]; -extern const u8 gFile_graphics_items_icons_berry_pouch_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_berry_pouch_palette[]; -extern const u8 gFile_graphics_items_icons_teachy_tv_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_teachy_tv_palette[]; -extern const u8 gFile_graphics_items_icons_tri_pass_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_tri_pass_palette[]; -extern const u8 gFile_graphics_items_icons_rainbow_pass_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_rainbow_pass_palette[]; -extern const u8 gFile_graphics_items_icons_tea_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_tea_palette[]; -extern const u8 gFile_graphics_items_icons_mystic_ticket_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_mystic_ticket_palette[]; -extern const u8 gFile_graphics_items_icons_aurora_ticket_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_aurora_ticket_palette[]; -extern const u8 gFile_graphics_items_icons_powder_jar_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_powder_jar_palette[]; -extern const u8 gFile_graphics_items_icons_gem_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_ruby_palette[]; -extern const u8 gFile_graphics_items_icons_gem_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_sapphire_palette[]; -extern const u8 gFile_graphics_items_icons_return_to_field_arrow_sheet[]; -extern const u8 gFile_graphics_items_icon_palettes_return_to_field_arrow_palette[]; +extern const u32 gItemIcon_MasterBall[]; +extern const u32 gItemIconPalette_MasterBall[]; +extern const u32 gItemIcon_UltraBall[]; +extern const u32 gItemIconPalette_UltraBall[]; +extern const u32 gItemIcon_GreatBall[]; +extern const u32 gItemIconPalette_GreatBall[]; +extern const u32 gItemIcon_PokeBall[]; +extern const u32 gItemIconPalette_PokeBall[]; +extern const u32 gItemIcon_SafariBall[]; +extern const u32 gItemIconPalette_SafariBall[]; +extern const u32 gItemIcon_NetBall[]; +extern const u32 gItemIconPalette_NetBall[]; +extern const u32 gItemIcon_DiveBall[]; +extern const u32 gItemIconPalette_DiveBall[]; +extern const u32 gItemIcon_NestBall[]; +extern const u32 gItemIconPalette_NestBall[]; +extern const u32 gItemIcon_RepeatBall[]; +extern const u32 gItemIconPalette_RepeatBall[]; +extern const u32 gItemIcon_TimerBall[]; +extern const u32 gItemIcon_LuxuryBall[]; +extern const u32 gItemIconPalette_LuxuryBall[]; +extern const u32 gItemIcon_PremierBall[]; +extern const u32 gItemIcon_Potion[]; +extern const u32 gItemIconPalette_Potion[]; +extern const u32 gItemIcon_Antidote[]; +extern const u32 gItemIconPalette_Antidote[]; +extern const u32 gItemIcon_StatusHeal[]; +extern const u32 gItemIconPalette_BurnHeal[]; +extern const u32 gItemIconPalette_IceHeal[]; +extern const u32 gItemIconPalette_Awakening[]; +extern const u32 gItemIconPalette_ParalyzeHeal[]; +extern const u32 gItemIcon_LargePotion[]; +extern const u32 gItemIconPalette_FullRestore[]; +extern const u32 gItemIconPalette_MaxPotion[]; +extern const u32 gItemIconPalette_HyperPotion[]; +extern const u32 gItemIconPalette_SuperPotion[]; +extern const u32 gItemIcon_FullHeal[]; +extern const u32 gItemIconPalette_FullHeal[]; +extern const u32 gItemIcon_Revive[]; +extern const u32 gItemIconPalette_Revive[]; +extern const u32 gItemIcon_MaxRevive[]; +extern const u32 gItemIcon_FreshWater[]; +extern const u32 gItemIconPalette_FreshWater[]; +extern const u32 gItemIcon_SodaPop[]; +extern const u32 gItemIconPalette_SodaPop[]; +extern const u32 gItemIcon_Lemonade[]; +extern const u32 gItemIconPalette_Lemonade[]; +extern const u32 gItemIcon_MoomooMilk[]; +extern const u32 gItemIconPalette_MoomooMilk[]; +extern const u32 gItemIcon_Powder[]; +extern const u32 gItemIconPalette_EnergyPowder[]; +extern const u32 gItemIcon_EnergyRoot[]; +extern const u32 gItemIconPalette_EnergyRoot[]; +extern const u32 gItemIconPalette_HealPowder[]; +extern const u32 gItemIcon_RevivalHerb[]; +extern const u32 gItemIconPalette_RevivalHerb[]; +extern const u32 gItemIcon_Ether[]; +extern const u32 gItemIconPalette_Ether[]; +extern const u32 gItemIconPalette_MaxEther[]; +extern const u32 gItemIconPalette_Elixir[]; +extern const u32 gItemIconPalette_MaxElixir[]; +extern const u32 gItemIcon_LavaCookie[]; +extern const u32 gItemIconPalette_LavaCookieAndLetter[]; +extern const u32 gItemIcon_Flute[]; +extern const u32 gItemIconPalette_BlueFlute[]; +extern const u32 gItemIconPalette_YellowFlute[]; +extern const u32 gItemIconPalette_RedFlute[]; +extern const u32 gItemIconPalette_BlackFlute[]; +extern const u32 gItemIconPalette_WhiteFlute[]; +extern const u32 gItemIcon_BerryJuice[]; +extern const u32 gItemIconPalette_BerryJuice[]; +extern const u32 gItemIcon_SacredAsh[]; +extern const u32 gItemIconPalette_SacredAsh[]; +extern const u32 gItemIconPalette_ShoalSalt[]; +extern const u32 gItemIcon_ShoalShell[]; +extern const u32 gItemIconPalette_Shell[]; +extern const u32 gItemIcon_Shard[]; +extern const u32 gItemIconPalette_RedShard[]; +extern const u32 gItemIconPalette_BlueShard[]; +extern const u32 gItemIconPalette_YellowShard[]; +extern const u32 gItemIconPalette_GreenShard[]; +extern const u32 gItemIcon_HPUp[]; +extern const u32 gItemIconPalette_HPUp[]; +extern const u32 gItemIcon_Vitamin[]; +extern const u32 gItemIconPalette_Protein[]; +extern const u32 gItemIconPalette_Iron[]; +extern const u32 gItemIconPalette_Carbos[]; +extern const u32 gItemIconPalette_Calcium[]; +extern const u32 gItemIcon_RareCandy[]; +extern const u32 gItemIconPalette_RareCandy[]; +extern const u32 gItemIcon_PPUp[]; +extern const u32 gItemIconPalette_PPUp[]; +extern const u32 gItemIconPalette_Zinc[]; +extern const u32 gItemIcon_PPMax[]; +extern const u32 gItemIconPalette_PPMax[]; +extern const u32 gItemIcon_BattleStatItem[]; +extern const u32 gItemIconPalette_GuardSpec[]; +extern const u32 gItemIconPalette_DireHit[]; +extern const u32 gItemIconPalette_XAttack[]; +extern const u32 gItemIconPalette_XDefend[]; +extern const u32 gItemIconPalette_XSpeed[]; +extern const u32 gItemIconPalette_XAccuracy[]; +extern const u32 gItemIconPalette_XSpecial[]; +extern const u32 gItemIcon_PokeDoll[]; +extern const u32 gItemIconPalette_PokeDoll[]; +extern const u32 gItemIcon_FluffyTail[]; +extern const u32 gItemIconPalette_FluffyTail[]; +extern const u32 gItemIcon_Repel[]; +extern const u32 gItemIconPalette_SuperRepel[]; +extern const u32 gItemIconPalette_MaxRepel[]; +extern const u32 gItemIcon_EscapeRope[]; +extern const u32 gItemIconPalette_EscapeRope[]; +extern const u32 gItemIcon_Repel[]; +extern const u32 gItemIconPalette_Repel[]; +extern const u32 gItemIcon_SunStone[]; +extern const u32 gItemIconPalette_SunStone[]; +extern const u32 gItemIcon_MoonStone[]; +extern const u32 gItemIconPalette_MoonStone[]; +extern const u32 gItemIcon_FireStone[]; +extern const u32 gItemIconPalette_FireStone[]; +extern const u32 gItemIcon_ThunderStone[]; +extern const u32 gItemIconPalette_ThunderStone[]; +extern const u32 gItemIcon_WaterStone[]; +extern const u32 gItemIconPalette_WaterStone[]; +extern const u32 gItemIcon_LeafStone[]; +extern const u32 gItemIconPalette_LeafStone[]; +extern const u32 gItemIcon_TinyMushroom[]; +extern const u32 gItemIconPalette_Mushroom[]; +extern const u32 gItemIcon_BigMushroom[]; +extern const u32 gItemIcon_Pearl[]; +extern const u32 gItemIconPalette_Pearl[]; +extern const u32 gItemIcon_BigPearl[]; +extern const u32 gItemIcon_Stardust[]; +extern const u32 gItemIconPalette_Star[]; +extern const u32 gItemIcon_StarPiece[]; +extern const u32 gItemIcon_Nugget[]; +extern const u32 gItemIconPalette_Nugget[]; +extern const u32 gItemIcon_HeartScale[]; +extern const u32 gItemIconPalette_HeartScale[]; +extern const u32 gItemIcon_OrangeMail[]; +extern const u32 gItemIconPalette_OrangeMail[]; +extern const u32 gItemIcon_HarborMail[]; +extern const u32 gItemIconPalette_HarborMail[]; +extern const u32 gItemIcon_GlitterMail[]; +extern const u32 gItemIconPalette_GlitterMail[]; +extern const u32 gItemIcon_MechMail[]; +extern const u32 gItemIconPalette_MechMail[]; +extern const u32 gItemIcon_WoodMail[]; +extern const u32 gItemIconPalette_WoodMail[]; +extern const u32 gItemIcon_WaveMail[]; +extern const u32 gItemIconPalette_WaveMail[]; +extern const u32 gItemIcon_BeadMail[]; +extern const u32 gItemIconPalette_BeadMail[]; +extern const u32 gItemIcon_ShadowMail[]; +extern const u32 gItemIconPalette_ShadowMail[]; +extern const u32 gItemIcon_TropicMail[]; +extern const u32 gItemIconPalette_TropicMail[]; +extern const u32 gItemIcon_DreamMail[]; +extern const u32 gItemIconPalette_DreamMail[]; +extern const u32 gItemIcon_FabMail[]; +extern const u32 gItemIconPalette_FabMail[]; +extern const u32 gItemIcon_RetroMail[]; +extern const u32 gItemIconPalette_RetroMail[]; +extern const u32 gItemIcon_CheriBerry[]; +extern const u32 gItemIconPalette_CheriBerry[]; +extern const u32 gItemIcon_ChestoBerry[]; +extern const u32 gItemIconPalette_ChestoBerry[]; +extern const u32 gItemIcon_PechaBerry[]; +extern const u32 gItemIconPalette_PechaBerry[]; +extern const u32 gItemIcon_RawstBerry[]; +extern const u32 gItemIconPalette_RawstBerry[]; +extern const u32 gItemIcon_AspearBerry[]; +extern const u32 gItemIconPalette_AspearBerry[]; +extern const u32 gItemIcon_LeppaBerry[]; +extern const u32 gItemIconPalette_LeppaBerry[]; +extern const u32 gItemIcon_OranBerry[]; +extern const u32 gItemIconPalette_OranBerry[]; +extern const u32 gItemIcon_PersimBerry[]; +extern const u32 gItemIconPalette_PersimBerry[]; +extern const u32 gItemIcon_LumBerry[]; +extern const u32 gItemIconPalette_LumBerry[]; +extern const u32 gItemIcon_SitrusBerry[]; +extern const u32 gItemIconPalette_SitrusBerry[]; +extern const u32 gItemIcon_FigyBerry[]; +extern const u32 gItemIconPalette_FigyBerry[]; +extern const u32 gItemIcon_WikiBerry[]; +extern const u32 gItemIconPalette_WikiBerry[]; +extern const u32 gItemIcon_MagoBerry[]; +extern const u32 gItemIconPalette_MagoBerry[]; +extern const u32 gItemIcon_AguavBerry[]; +extern const u32 gItemIconPalette_AguavBerry[]; +extern const u32 gItemIcon_IapapaBerry[]; +extern const u32 gItemIconPalette_IapapaBerry[]; +extern const u32 gItemIcon_RazzBerry[]; +extern const u32 gItemIconPalette_RazzBerry[]; +extern const u32 gItemIcon_BlukBerry[]; +extern const u32 gItemIconPalette_BlukBerry[]; +extern const u32 gItemIcon_NanabBerry[]; +extern const u32 gItemIconPalette_NanabBerry[]; +extern const u32 gItemIcon_WepearBerry[]; +extern const u32 gItemIconPalette_WepearBerry[]; +extern const u32 gItemIcon_PinapBerry[]; +extern const u32 gItemIconPalette_PinapBerry[]; +extern const u32 gItemIcon_PomegBerry[]; +extern const u32 gItemIconPalette_PomegBerry[]; +extern const u32 gItemIcon_KelpsyBerry[]; +extern const u32 gItemIconPalette_KelpsyBerry[]; +extern const u32 gItemIcon_QualotBerry[]; +extern const u32 gItemIconPalette_QualotBerry[]; +extern const u32 gItemIcon_HondewBerry[]; +extern const u32 gItemIconPalette_HondewBerry[]; +extern const u32 gItemIcon_GrepaBerry[]; +extern const u32 gItemIconPalette_GrepaBerry[]; +extern const u32 gItemIcon_TamatoBerry[]; +extern const u32 gItemIconPalette_TamatoBerry[]; +extern const u32 gItemIcon_CornnBerry[]; +extern const u32 gItemIconPalette_CornnBerry[]; +extern const u32 gItemIcon_MagostBerry[]; +extern const u32 gItemIconPalette_MagostBerry[]; +extern const u32 gItemIcon_RabutaBerry[]; +extern const u32 gItemIconPalette_RabutaBerry[]; +extern const u32 gItemIcon_NomelBerry[]; +extern const u32 gItemIconPalette_NomelBerry[]; +extern const u32 gItemIcon_SpelonBerry[]; +extern const u32 gItemIconPalette_SpelonBerry[]; +extern const u32 gItemIcon_PamtreBerry[]; +extern const u32 gItemIconPalette_PamtreBerry[]; +extern const u32 gItemIcon_WatmelBerry[]; +extern const u32 gItemIconPalette_WatmelBerry[]; +extern const u32 gItemIcon_DurinBerry[]; +extern const u32 gItemIconPalette_DurinBerry[]; +extern const u32 gItemIcon_BelueBerry[]; +extern const u32 gItemIconPalette_BelueBerry[]; +extern const u32 gItemIcon_LiechiBerry[]; +extern const u32 gItemIconPalette_LiechiBerry[]; +extern const u32 gItemIcon_GanlonBerry[]; +extern const u32 gItemIconPalette_GanlonBerry[]; +extern const u32 gItemIcon_SalacBerry[]; +extern const u32 gItemIconPalette_SalacBerry[]; +extern const u32 gItemIcon_PetayaBerry[]; +extern const u32 gItemIconPalette_PetayaBerry[]; +extern const u32 gItemIcon_ApicotBerry[]; +extern const u32 gItemIconPalette_ApicotBerry[]; +extern const u32 gItemIcon_LansatBerry[]; +extern const u32 gItemIconPalette_LansatBerry[]; +extern const u32 gItemIcon_StarfBerry[]; +extern const u32 gItemIconPalette_StarfBerry[]; +extern const u32 gItemIcon_EnigmaBerry[]; +extern const u32 gItemIconPalette_EnigmaBerry[]; +extern const u32 gItemIcon_BrightPowder[]; +extern const u32 gItemIconPalette_BrightPowder[]; +extern const u32 gItemIcon_InBattleHerb[]; +extern const u32 gItemIconPalette_WhiteHerb[]; +extern const u32 gItemIcon_MachoBrace[]; +extern const u32 gItemIconPalette_MachoBrace[]; +extern const u32 gItemIcon_ExpShare[]; +extern const u32 gItemIconPalette_ExpShare[]; +extern const u32 gItemIcon_QuickClaw[]; +extern const u32 gItemIconPalette_QuickClaw[]; +extern const u32 gItemIcon_SootheBell[]; +extern const u32 gItemIconPalette_SootheBell[]; +extern const u32 gItemIcon_InBattleHerb[]; +extern const u32 gItemIconPalette_MentalHerb[]; +extern const u32 gItemIcon_ChoiceBand[]; +extern const u32 gItemIconPalette_ChoiceBand[]; +extern const u32 gItemIcon_KingsRock[]; +extern const u32 gItemIconPalette_KingsRock[]; +extern const u32 gItemIcon_SilverPowder[]; +extern const u32 gItemIconPalette_SilverPowder[]; +extern const u32 gItemIcon_AmuletCoin[]; +extern const u32 gItemIconPalette_AmuletCoin[]; +extern const u32 gItemIcon_CleanseTag[]; +extern const u32 gItemIconPalette_CleanseTag[]; +extern const u32 gItemIcon_SoulDew[]; +extern const u32 gItemIconPalette_SoulDew[]; +extern const u32 gItemIcon_DeepSeaTooth[]; +extern const u32 gItemIconPalette_DeepSeaTooth[]; +extern const u32 gItemIcon_DeepSeaScale[]; +extern const u32 gItemIconPalette_DeepSeaScale[]; +extern const u32 gItemIcon_SmokeBall[]; +extern const u32 gItemIconPalette_SmokeBall[]; +extern const u32 gItemIcon_Everstone[]; +extern const u32 gItemIconPalette_Everstone[]; +extern const u32 gItemIcon_FocusBand[]; +extern const u32 gItemIconPalette_FocusBand[]; +extern const u32 gItemIcon_LuckyEgg[]; +extern const u32 gItemIconPalette_LuckyEgg[]; +extern const u32 gItemIcon_ScopeLens[]; +extern const u32 gItemIconPalette_ScopeLens[]; +extern const u32 gItemIcon_MetalCoat[]; +extern const u32 gItemIconPalette_MetalCoat[]; +extern const u32 gItemIcon_Leftovers[]; +extern const u32 gItemIconPalette_Leftovers[]; +extern const u32 gItemIcon_DragonScale[]; +extern const u32 gItemIconPalette_DragonScale[]; +extern const u32 gItemIcon_LightBall[]; +extern const u32 gItemIconPalette_LightBall[]; +extern const u32 gItemIcon_SoftSand[]; +extern const u32 gItemIconPalette_SoftSand[]; +extern const u32 gItemIcon_HardStone[]; +extern const u32 gItemIconPalette_HardStone[]; +extern const u32 gItemIcon_MiracleSeed[]; +extern const u32 gItemIconPalette_MiracleSeed[]; +extern const u32 gItemIcon_BlackGlasses[]; +extern const u32 gItemIconPalette_BlackTypeEnhancingItem[]; +extern const u32 gItemIcon_BlackBelt[]; +extern const u32 gItemIconPalette_BlackTypeEnhancingItem[]; +extern const u32 gItemIcon_Magnet[]; +extern const u32 gItemIconPalette_Magnet[]; +extern const u32 gItemIcon_MysticWater[]; +extern const u32 gItemIconPalette_MysticWater[]; +extern const u32 gItemIcon_SharpBeak[]; +extern const u32 gItemIconPalette_SharpBeak[]; +extern const u32 gItemIcon_PoisonBarb[]; +extern const u32 gItemIconPalette_PoisonBarb[]; +extern const u32 gItemIcon_NeverMeltIce[]; +extern const u32 gItemIconPalette_NeverMeltIce[]; +extern const u32 gItemIcon_SpellTag[]; +extern const u32 gItemIconPalette_SpellTag[]; +extern const u32 gItemIcon_TwistedSpoon[]; +extern const u32 gItemIconPalette_TwistedSpoon[]; +extern const u32 gItemIcon_Charcoal[]; +extern const u32 gItemIconPalette_Charcoal[]; +extern const u32 gItemIcon_DragonFang[]; +extern const u32 gItemIconPalette_DragonFang[]; +extern const u32 gItemIcon_SilkScarf[]; +extern const u32 gItemIconPalette_SilkScarf[]; +extern const u32 gItemIcon_UpGrade[]; +extern const u32 gItemIconPalette_UpGrade[]; +extern const u32 gItemIcon_ShellBell[]; +extern const u32 gItemIconPalette_Shell[]; +extern const u32 gItemIcon_SeaIncense[]; +extern const u32 gItemIconPalette_SeaIncense[]; +extern const u32 gItemIcon_LaxIncense[]; +extern const u32 gItemIconPalette_LaxIncense[]; +extern const u32 gItemIcon_LuckyPunch[]; +extern const u32 gItemIconPalette_LuckyPunch[]; +extern const u32 gItemIcon_MetalPowder[]; +extern const u32 gItemIconPalette_MetalPowder[]; +extern const u32 gItemIcon_ThickClub[]; +extern const u32 gItemIconPalette_ThickClub[]; +extern const u32 gItemIcon_Stick[]; +extern const u32 gItemIconPalette_Stick[]; +extern const u32 gItemIcon_Scarf[]; +extern const u32 gItemIconPalette_RedScarf[]; +extern const u32 gItemIconPalette_BlueScarf[]; +extern const u32 gItemIconPalette_PinkScarf[]; +extern const u32 gItemIconPalette_GreenScarf[]; +extern const u32 gItemIconPalette_YellowScarf[]; +extern const u32 gItemIcon_MachBike[]; +extern const u32 gItemIconPalette_MachBike[]; +extern const u32 gItemIcon_CoinCase[]; +extern const u32 gItemIconPalette_CoinCase[]; +extern const u32 gItemIcon_Itemfinder[]; +extern const u32 gItemIconPalette_Itemfinder[]; +extern const u32 gItemIcon_OldRod[]; +extern const u32 gItemIconPalette_OldRod[]; +extern const u32 gItemIcon_GoodRod[]; +extern const u32 gItemIconPalette_GoodRod[]; +extern const u32 gItemIcon_SuperRod[]; +extern const u32 gItemIconPalette_SuperRod[]; +extern const u32 gItemIcon_SSTicket[]; +extern const u32 gItemIconPalette_SSTicket[]; +extern const u32 gItemIcon_ContestPass[]; +extern const u32 gItemIconPalette_ContestPass[]; +extern const u32 gItemIcon_WailmerPail[]; +extern const u32 gItemIconPalette_WailmerPail[]; +extern const u32 gItemIcon_DevonGoods[]; +extern const u32 gItemIconPalette_DevonGoods[]; +extern const u32 gItemIcon_SootSack[]; +extern const u32 gItemIconPalette_SootSack[]; +extern const u32 gItemIcon_BasementKey[]; +extern const u32 gItemIconPalette_OldKey[]; +extern const u32 gItemIcon_AcroBike[]; +extern const u32 gItemIconPalette_AcroBike[]; +extern const u32 gItemIcon_PokeblockCase[]; +extern const u32 gItemIconPalette_PokeblockCase[]; +extern const u32 gItemIcon_Letter[]; +extern const u32 gItemIcon_EonTicket[]; +extern const u32 gItemIconPalette_EonTicket[]; +extern const u32 gItemIcon_Orb[]; +extern const u32 gItemIconPalette_RedOrb[]; +extern const u32 gItemIconPalette_BlueOrb[]; +extern const u32 gItemIcon_Scanner[]; +extern const u32 gItemIconPalette_Scanner[]; +extern const u32 gItemIcon_GoGoggles[]; +extern const u32 gItemIconPalette_GoGoggles[]; +extern const u32 gItemIcon_Meteorite[]; +extern const u32 gItemIconPalette_Meteorite[]; +extern const u32 gItemIcon_Room1Key[]; +extern const u32 gItemIconPalette_Key[]; +extern const u32 gItemIcon_Room2Key[]; +extern const u32 gItemIcon_Room4Key[]; +extern const u32 gItemIcon_Room6Key[]; +extern const u32 gItemIcon_StorageKey[]; +extern const u32 gItemIcon_RootFossil[]; +extern const u32 gItemIconPalette_HoennFossil[]; +extern const u32 gItemIcon_ClawFossil[]; +extern const u32 gItemIcon_DevonScope[]; +extern const u32 gItemIconPalette_DevonScope[]; +extern const u32 gItemIcon_TMHM[]; +extern const u32 gItemIconPalette_FightingTMHM[]; +extern const u32 gItemIconPalette_DragonTMHM[]; +extern const u32 gItemIconPalette_WaterTMHM[]; +extern const u32 gItemIconPalette_PsychicTMHM[]; +extern const u32 gItemIconPalette_NormalTMHM[]; +extern const u32 gItemIconPalette_PoisonTMHM[]; +extern const u32 gItemIconPalette_IceTMHM[]; +extern const u32 gItemIconPalette_GrassTMHM[]; +extern const u32 gItemIconPalette_FireTMHM[]; +extern const u32 gItemIconPalette_DarkTMHM[]; +extern const u32 gItemIconPalette_SteelTMHM[]; +extern const u32 gItemIconPalette_ElectricTMHM[]; +extern const u32 gItemIconPalette_GroundTMHM[]; +extern const u32 gItemIconPalette_GhostTMHM[]; +extern const u32 gItemIconPalette_RockTMHM[]; +extern const u32 gItemIconPalette_FlyingTMHM[]; +// FireRed/LeafGreen key items +extern const u32 gItemIcon_OaksParcel[]; +extern const u32 gItemIconPalette_OaksParcel[]; +extern const u32 gItemIcon_PokeFlute[]; +extern const u32 gItemIconPalette_PokeFlute[]; +extern const u32 gItemIcon_SecretKey[]; +extern const u32 gItemIconPalette_SecretKey[]; +extern const u32 gItemIcon_BikeVoucher[]; +extern const u32 gItemIconPalette_BikeVoucher[]; +extern const u32 gItemIcon_GoldTeeth[]; +extern const u32 gItemIconPalette_GoldTeeth[]; +extern const u32 gItemIcon_OldAmber[]; +extern const u32 gItemIconPalette_OldAmber[]; +extern const u32 gItemIcon_CardKey[]; +extern const u32 gItemIconPalette_CardKey[]; +extern const u32 gItemIcon_LiftKey[]; +extern const u32 gItemIconPalette_Key[]; +extern const u32 gItemIcon_HelixFossil[]; +extern const u32 gItemIconPalette_KantoFossil[]; +extern const u32 gItemIcon_DomeFossil[]; +extern const u32 gItemIcon_SilphScope[]; +extern const u32 gItemIconPalette_SilphScope[]; +extern const u32 gItemIcon_Bicycle[]; +extern const u32 gItemIconPalette_Bicycle[]; +extern const u32 gItemIcon_TownMap[]; +extern const u32 gItemIconPalette_TownMap[]; +extern const u32 gItemIcon_VSSeeker[]; +extern const u32 gItemIconPalette_VSSeeker[]; +extern const u32 gItemIcon_FameChecker[]; +extern const u32 gItemIconPalette_FameChecker[]; +extern const u32 gItemIcon_TMCase[]; +extern const u32 gItemIconPalette_TMCase[]; +extern const u32 gItemIcon_BerryPouch[]; +extern const u32 gItemIconPalette_BerryPouch[]; +extern const u32 gItemIcon_TeachyTV[]; +extern const u32 gItemIconPalette_TeachyTV[]; +extern const u32 gItemIcon_TriPass[]; +extern const u32 gItemIconPalette_TriPass[]; +extern const u32 gItemIcon_RainbowPass[]; +extern const u32 gItemIconPalette_RainbowPass[]; +extern const u32 gItemIcon_Tea[]; +extern const u32 gItemIconPalette_Tea[]; +extern const u32 gItemIcon_MysticTicket[]; +extern const u32 gItemIconPalette_MysticTicket[]; +extern const u32 gItemIcon_AuroraTicket[]; +extern const u32 gItemIconPalette_AuroraTicket[]; +extern const u32 gItemIcon_PowderJar[]; +extern const u32 gItemIconPalette_PowderJar[]; +extern const u32 gItemIcon_Gem[]; +extern const u32 gItemIconPalette_Ruby[]; +extern const u32 gItemIconPalette_Sapphire[]; +extern const u32 gItemIcon_ReturnToFieldArrow[]; +extern const u32 gItemIconPalette_ReturnToFieldArrow[]; // battle_anim_utility_funcs extern const u32 gFile_graphics_battle_anims_masks_curse_sheet[]; @@ -4744,9 +4464,9 @@ extern const u32 gBuyMenuFrame_Pal[]; extern const u16 gPPTextPalette[]; // trainer card -extern const u16 gKantoTrainerCard_Pal[]; +extern const u16 gKantoTrainerCardBlue_Pal[]; extern const u32 gKantoTrainerCard_Gfx[]; -extern const u16 gHoennTrainerCard_Pal[]; +extern const u16 gHoennTrainerCardGreen_Pal[]; extern const u32 gHoennTrainerCard_Gfx[]; // battle_interface diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index 57f03422a..3d13bb4c3 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -3,6 +3,12 @@ #include "global.h" +// Values for 2nd argument to GetItemIconGfxPtr +enum { + ITEMICON_TILES, + ITEMICON_PAL, +}; + extern const struct CompressedSpriteSheet gSpriteSheet_BagMale; extern const struct CompressedSpriteSheet gSpriteSheet_BagFemale; extern const struct CompressedSpritePalette gSpritePalette_Bag; @@ -22,7 +28,7 @@ void UpdateSwapLinePos(s16 x, u16 y); void SetSwapLineInvisibility(bool8 invisible); void SetBagVisualPocketId(u8); void ShakeBagSprite(void); -const void *GetItemIconGfxPtr(u16 itemId, u8 ptrId); +const u32 *GetItemIconGfxPtr(u16 itemId, u8 ptrId); void CreateBagSprite(u8 animNum); #endif // GUARD_ITEM_MENU_ICONS diff --git a/include/main.h b/include/main.h index 4a5f79a9d..31b22a3fa 100644 --- a/include/main.h +++ b/include/main.h @@ -44,7 +44,6 @@ struct Main /*0x439*/ u8 field_439_x4:1; }; -extern u8 gUnknown_3001764; extern struct Main gMain; extern bool8 gSoftResetDisabled; extern bool8 gLinkVSyncDisabled; diff --git a/include/menu.h b/include/menu.h index 4adf467ca..b0dc232fb 100644 --- a/include/menu.h +++ b/include/menu.h @@ -8,6 +8,13 @@ #define MENU_NOTHING_CHOSEN -2 #define MENU_B_PRESSED -1 +#define MENU_INFO_ICON_CAUGHT 0 +#define MENU_INFO_ICON_TYPE (NUMBER_OF_MON_TYPES + 1) +#define MENU_INFO_ICON_POWER (NUMBER_OF_MON_TYPES + 2) +#define MENU_INFO_ICON_ACCURACY (NUMBER_OF_MON_TYPES + 3) +#define MENU_INFO_ICON_PP (NUMBER_OF_MON_TYPES + 4) +#define MENU_INFO_ICON_EFFECT (NUMBER_OF_MON_TYPES + 5) + struct MenuAction { const u8 *text; @@ -31,7 +38,7 @@ s8 Menu2_GetMonSpriteAnchorCoordMinusx20(u16 species, u32 personality, u8 a2); void ListMenu_LoadMonIconPalette(u8 palOffset, u16 speciesId); void ListMenu_DrawMonIconGraphics(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y); void ListMenuLoadStdPalAt(u8 palOffset, u8 palId); -void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y); +void BlitMenuInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y); // menu s8 Menu_ProcessInputGridLayout(void); diff --git a/include/palette.h b/include/palette.h index 4d4477b13..3bde46cad 100644 --- a/include/palette.h +++ b/include/palette.h @@ -8,8 +8,7 @@ #define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade #define gPaletteFade_submode (gPaletteFade.multipurpose2) // fast fade -#define PLTT_BUFFER_SIZE 0x200 -#define PLTT_DECOMP_BUFFER_SIZE (PLTT_BUFFER_SIZE * 2) +#define PLTT_BUFFER_SIZE (PLTT_SIZE / sizeof(u16)) #define PALETTE_FADE_STATUS_DELAY 2 #define PALETTE_FADE_STATUS_ACTIVE 1 @@ -20,6 +19,13 @@ #define PALETTES_OBJECTS 0xFFFF0000 #define PALETTES_ALL (PALETTES_BG | PALETTES_OBJECTS) +#define PLTT_ID(n) ((n) * 16) +#define BG_PLTT_OFFSET 0x000 +#define OBJ_PLTT_OFFSET 0x100 +#define BG_PLTT_ID(n) (BG_PLTT_OFFSET + PLTT_ID(n)) +#define OBJ_PLTT_ID(n) (OBJ_PLTT_OFFSET + PLTT_ID(n)) +#define OBJ_PLTT_ID2(n) (PLTT_ID((n) + 16)) + enum { FAST_FADE_IN_FROM_WHITE, @@ -80,4 +86,14 @@ void BlendPalettesGradually(u32 selectedPalettes, s8 delay, u8 coeff, u8 coeffTa bool32 IsBlendPalettesGraduallyTaskActive(u8 var); void DestroyBlendPalettesGraduallyTask(void); +static inline void SetBackdropFromColor(u16 color) +{ + FillPalette(color, 0, PLTT_SIZEOF(1)); +} + +static inline void SetBackdropFromPalette(const u16 *palette) +{ + LoadPalette(palette, 0, PLTT_SIZEOF(1)); +} + #endif // GUARD_PALETTE_H diff --git a/include/shop.h b/include/shop.h index 23490d4e1..5e6d07783 100644 --- a/include/shop.h +++ b/include/shop.h @@ -6,8 +6,6 @@ #define INDEX_CANCEL -2 -extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3]; - void CreatePokemartMenu(const u16 *itemsForSale); void CreateDecorationShop1Menu(const u16 *); void CreateDecorationShop2Menu(const u16 *); diff --git a/include/strings.h b/include/strings.h index f86c7fade..57066f789 100644 --- a/include/strings.h +++ b/include/strings.h @@ -80,7 +80,6 @@ extern const u8 gText_ApostropheSBase[]; extern const u8 gText_NoRegistry[]; extern const u8 gText_OkayToDeleteFromRegistry[]; extern const u8 gText_RegisteredDataDeleted[]; -extern const u8 gUnknown_085EA79D[]; extern const u8 gText_Confirm3[]; extern const u8 gText_Cancel4[]; extern const u8 gText_IsThisTheCorrectTime[]; diff --git a/ld_script.txt b/ld_script.ld similarity index 99% rename from ld_script.txt rename to ld_script.ld index a2cc3e6e7..e68c4a7b3 100644 --- a/ld_script.txt +++ b/ld_script.ld @@ -11,8 +11,8 @@ SECTIONS { . = 0x1C000; - - src/*.o(.ewram_data); + INCLUDE "sym_ewram.ld" + src/*.o(ewram_data); *libc.a:impure.o(.data); *libc.a:locale.o(.data); @@ -26,7 +26,7 @@ SECTIONS { ALIGN(4) { /* .bss starts at 0x3000000 */ - + INCLUDE "sym_bss.ld" src/*.o(.bss); data/*.o(.bss); @@ -34,7 +34,7 @@ SECTIONS { src/m4a.o(.bss.code); /* COMMON starts at 0x30030E0 */ - + INCLUDE "sym_common.ld" *libc.a:sbrkr.o(COMMON); end = .; diff --git a/ld_script.sed b/ld_script.sed deleted file mode 100644 index b91542b6f..000000000 --- a/ld_script.sed +++ /dev/null @@ -1,14 +0,0 @@ -// { - r sym_ewram.ld - d -} - -// { - r sym_bss.ld - d -} - -// { - r sym_common.ld - d -} diff --git a/ld_script_modern.txt b/ld_script_modern.ld similarity index 100% rename from ld_script_modern.txt rename to ld_script_modern.ld diff --git a/src/bag.c b/src/bag.c index 8f1cbce36..9e7681143 100644 --- a/src/bag.c +++ b/src/bag.c @@ -20,27 +20,27 @@ static const u8 sTextColors[][3] = { static const struct WindowTemplate sDefaultBagWindowsStd[] = { { .bg = 0, - .tilemapLeft = 0x0b, - .tilemapTop = 0x01, - .width = 0x12, - .height = 0x0c, - .paletteNum = 0x0f, + .tilemapLeft = 11, + .tilemapTop = 1, + .width = 18, + .height = 12, + .paletteNum = 15, .baseBlock = 0x008a }, { .bg = 0, - .tilemapLeft = 0x05, - .tilemapTop = 0x0e, - .width = 0x19, - .height = 0x06, - .paletteNum = 0x0f, + .tilemapLeft = 5, + .tilemapTop = 14, + .width = 25, + .height = 6, + .paletteNum = 15, .baseBlock = 0x0162 }, { .bg = 0, - .tilemapLeft = 0x01, - .tilemapTop = 0x01, - .width = 0x09, - .height = 0x02, - .paletteNum = 0x0f, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 9, + .height = 2, + .paletteNum = 15, .baseBlock = 0x01f8 }, DUMMY_WIN_TEMPLATE }; @@ -48,27 +48,27 @@ static const struct WindowTemplate sDefaultBagWindowsStd[] = { static const struct WindowTemplate sDefaultBagWindowsDeposit[] = { { .bg = 0, - .tilemapLeft = 0x0b, - .tilemapTop = 0x01, - .width = 0x12, - .height = 0x0c, - .paletteNum = 0x0f, + .tilemapLeft = 11, + .tilemapTop = 1, + .width = 18, + .height = 12, + .paletteNum = 15, .baseBlock = 0x008a }, { .bg = 0, - .tilemapLeft = 0x05, - .tilemapTop = 0x0e, - .width = 0x19, - .height = 0x06, - .paletteNum = 0x0f, + .tilemapLeft = 5, + .tilemapTop = 14, + .width = 25, + .height = 6, + .paletteNum = 15, .baseBlock = 0x0162 }, { .bg = 0, - .tilemapLeft = 0x01, - .tilemapTop = 0x01, - .width = 0x08, - .height = 0x02, - .paletteNum = 0x0C, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 8, + .height = 2, + .paletteNum = 12, .baseBlock = 0x01f8 }, DUMMY_WIN_TEMPLATE }; @@ -80,7 +80,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 5, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x242 }, { .bg = 0, @@ -88,7 +88,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 9, .width = 12, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x242 }, { .bg = 0, @@ -96,7 +96,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 1, .width = 8, .height = 3, - .paletteNum = 0xC, + .paletteNum = 12, .baseBlock = 0x272 }, { .bg = 0, @@ -104,7 +104,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 6, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x28a }, { .bg = 0, @@ -112,7 +112,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 9, .width = 6, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x28a }, { .bg = 0, @@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 26, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x2a2 }, { .bg = 0, @@ -128,7 +128,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 14, .height = 4, - .paletteNum = 0xC, + .paletteNum = 12, .baseBlock = 0x2a2 }, { .bg = 0, @@ -136,7 +136,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 15, .height = 4, - .paletteNum = 0xC, + .paletteNum = 12, .baseBlock = 0x2da }, { .bg = 0, @@ -144,7 +144,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 16, .height = 4, - .paletteNum = 0xC, + .paletteNum = 12, .baseBlock = 0x316 }, { .bg = 0, @@ -152,7 +152,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 23, .height = 4, - .paletteNum = 0xC, + .paletteNum = 12, .baseBlock = 0x356 }, { .bg = 0, @@ -160,7 +160,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 17, .width = 7, .height = 2, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x20a }, { .bg = 0, @@ -168,7 +168,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 7, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x20a }, { .bg = 0, @@ -176,7 +176,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 13, .width = 7, .height = 6, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x20a }, { .bg = 0, @@ -184,7 +184,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 11, .width = 7, .height = 8, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x20a } }; @@ -202,10 +202,10 @@ void InitBagWindows(void) else InitWindows(sDefaultBagWindowsDeposit); DeactivateAllTextPrinters(); - LoadUserWindowGfx(0, 0x64, 0xE0); - LoadMenuMessageWindowGfx(0, 0x6D, 0xD0); - LoadStdWindowGfx(0, 0x81, 0xC0); - LoadPalette(sBagWindowPalF, 0xF0, 0x20); + LoadUserWindowGfx(0, 0x64, BG_PLTT_ID(14)); + LoadMenuMessageWindowGfx(0, 0x6D, BG_PLTT_ID(13)); + LoadStdWindowGfx(0, 0x81, BG_PLTT_ID(12)); + LoadPalette(sBagWindowPalF, BG_PLTT_ID(15), sizeof(sBagWindowPalF)); for (i = 0; i < 3; i++) { FillWindowPixelBuffer(i, 0x00); @@ -232,7 +232,7 @@ void BagPrintTextOnWin1CenteredColor0(const u8 * str, u8 unused) void BagDrawDepositItemTextBox(void) { u32 x; - DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 0x0C); + DrawStdFrameWithCustomTileAndPalette(2, FALSE, 0x081, 12); x = 0x40 - GetStringWidth(FONT_SMALL, gText_DepositItem, 0); AddTextPrinterParameterized(2, FONT_SMALL, gText_DepositItem, x / 2, 1, 0, NULL); } @@ -244,11 +244,11 @@ u8 ShowBagWindow(u8 whichWindow, u8 nItems) sOpenWindows[whichWindow] = AddWindow(&sWindowTemplates[whichWindow + nItems]); if (whichWindow != 6) { - DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 0xE); + DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x064, 14); } else { - DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 0xC); + DrawStdFrameWithCustomTileAndPalette(sOpenWindows[whichWindow], FALSE, 0x081, 12); } ScheduleBgCopyTilemapToVram(0); } @@ -293,12 +293,12 @@ u8 GetBagWindow(u8 whichWindow) void BagCreateYesNoMenuBottomRight(u8 taskId, const struct YesNoFuncTable * ptrs) { - CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], FONT_NORMAL, 0, 2, 0x064, 0x0E, ptrs); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[3], FONT_NORMAL, 0, 2, 0x064, 14, ptrs); } void BagCreateYesNoMenuTopRight(u8 taskId, const struct YesNoFuncTable * ptrs) { - CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], FONT_NORMAL, 0, 2, 0x064, 0x0E, ptrs); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates[4], FONT_NORMAL, 0, 2, 0x064, 14, ptrs); } void BagPrintMoneyAmount(void) @@ -308,5 +308,5 @@ void BagPrintMoneyAmount(void) void BagDrawTextBoxOnWindow(u8 windowId) { - DrawTextBorderOuter(windowId, 0x064, 0x0E); + DrawTextBorderOuter(windowId, 0x064, 14); } diff --git a/src/battle_anim.c b/src/battle_anim.c index 50f8fe703..30f9a7ad2 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -654,8 +654,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2) SetGpuReg(REG_OFFSET_BG1HOFS, gBattle_BG1_X); SetGpuReg(REG_OFFSET_BG1VOFS, gBattle_BG1_Y); - LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], animBg.paletteId * 16, 0x20); - CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + animBg.paletteId * 32), 0x20); + LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); + CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + animBg.paletteId * PLTT_SIZE_4BPP), PLTT_SIZE_4BPP); CopyBattlerSpriteToBg(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles, animBg.bgTilemap, animBg.tilesOffset); @@ -679,8 +679,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2) SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X); SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); - LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20); - CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void *)(BG_PLTT + 0x120), 0x20); + LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], BG_PLTT_ID(9), PLTT_SIZE_4BPP); + CpuCopy32(&gPlttBufferUnfaded[OBJ_PLTT_ID(battlerId)], (void *)(BG_PLTT + 9 * PLTT_SIZE_4BPP), PLTT_SIZE_4BPP); CopyBattlerSpriteToBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset); @@ -739,25 +739,15 @@ static void Task_InitUpdateMonBg(u8 taskId) if (gTasks[taskId].data[5] == 0) { - u16 *src; - u16 *dst; - gBattle_BG1_X = x + gTasks[taskId].data[3]; gBattle_BG1_Y = y + gTasks[taskId].data[4]; - src = gPlttBufferFaded + 0x100 + palIndex * 16; - dst = gPlttBufferFaded + 0x100 + animBg.paletteId * 16 - 256; - CpuCopy32(src, dst, 0x20); + CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(animBg.paletteId)], PLTT_SIZE_4BPP); } else { - u16 *src; - u16 *dst; - gBattle_BG2_X = x + gTasks[taskId].data[3]; gBattle_BG2_Y = y + gTasks[taskId].data[4]; - src = gPlttBufferFaded + 0x100 + palIndex * 16; - dst = gPlttBufferFaded + 0x100 - 112; - CpuCopy32(src, dst, 0x20); + CpuCopy32(&gPlttBufferFaded[OBJ_PLTT_ID(palIndex)], &gPlttBufferFaded[BG_PLTT_ID(9)], PLTT_SIZE_4BPP); } } @@ -1113,7 +1103,7 @@ static void LoadMoveBg(u16 bgId) { LZDecompressVram(gBattleAnimBackgroundTable[bgId].tilemap, (void *)(BG_SCREEN_ADDR(26))); LZDecompressVram(gBattleAnimBackgroundTable[bgId].image, (void *)(BG_CHAR_ADDR(2))); - LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, 32, 32); + LoadCompressedPalette(gBattleAnimBackgroundTable[bgId].palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP); } static void LoadDefaultBg(void) diff --git a/src/battle_anim_dark.c b/src/battle_anim_dark.c index 39e19bda7..fbce95e30 100644 --- a/src/battle_anim_dark.c +++ b/src/battle_anim_dark.c @@ -415,7 +415,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) GetBattleAnimBg1Data(&animBg); task->data[10] = gBattle_BG1_Y; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1); - FillPalette(RGB_BLACK, animBg.paletteId * 16, 32); + FillPalette(RGB_BLACK, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); scanlineParams.dmaDest = ®_BG1VOFS; var0 = WINOUT_WIN01_BG1; if (!IsContest()) @@ -425,7 +425,7 @@ void AnimTask_MoveAttackerMementoShadow(u8 taskId) { task->data[10] = gBattle_BG2_Y; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG2); - FillPalette(RGB_BLACK, 144, 32); + FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP); scanlineParams.dmaDest = ®_BG2VOFS; var0 = WINOUT_WIN01_BG2; if (!IsContest()) @@ -545,12 +545,12 @@ void AnimTask_MoveTargetMementoShadow(u8 taskId) { GetBattleAnimBg1Data(&animBg); task->data[10] = gBattle_BG1_Y; - FillPalette(RGB_BLACK, animBg.paletteId * 16, 32); + FillPalette(RGB_BLACK, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); } else { task->data[10] = gBattle_BG2_Y; - FillPalette(RGB_BLACK, 9 * 16, 32); + FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP); } SetAllBattlersSpritePriority(3); ++task->data[0]; @@ -806,14 +806,14 @@ void AnimTask_MetallicShine(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgTilemap(animBg.bgId, gMetalShineTilemap); AnimLoadCompressedBgGfx(animBg.bgId, gMetalShineGfx, animBg.tilesOffset); - LoadCompressedPalette(gMetalShinePalette, animBg.paletteId * 16, 32); + LoadCompressedPalette(gMetalShinePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); gBattle_BG1_X = -gSprites[spriteId].x + 96; gBattle_BG1_Y = -gSprites[spriteId].y + 32; paletteNum = 16 + gSprites[spriteId].oam.paletteNum; if (gBattleAnimArgs[1] == 0) SetGreyscaleOrOriginalPalette(paletteNum, FALSE); else - BlendPalette(paletteNum * 16, 16, 11, gBattleAnimArgs[2]); + BlendPalette(PLTT_ID(paletteNum), 16, 11, gBattleAnimArgs[2]); gTasks[taskId].data[0] = newSpriteId; gTasks[taskId].data[1] = gBattleAnimArgs[0]; gTasks[taskId].data[2] = gBattleAnimArgs[1]; diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index a09dcb473..e70131f71 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -3672,8 +3672,8 @@ void AnimTask_CycleMagicalLeafPal(u8 taskId) switch (task->data[0]) { case 0: - task->data[8] = IndexOfSpritePaletteTag(ANIM_TAG_LEAF) * 16 + 256; - task->data[12] = IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF) * 16 + 256; + task->data[8] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_LEAF)); + task->data[12] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_RAZOR_LEAF)); task->data[0]++; break; case 1: @@ -3996,7 +3996,7 @@ static void AnimProtect(struct Sprite* sprite) sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker); sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[2] = (IndexOfSpritePaletteTag(ANIM_TAG_PROTECT) << 4) + 0x100; + sprite->data[2] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_PROTECT)); sprite->data[7] = 16; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16 - sprite->data[7], sprite->data[7])); @@ -4384,7 +4384,7 @@ static void AnimLockOnTarget_Step4(struct Sprite* sprite) int pal; sprite->data[2]++; pal = sprite->oam.paletteNum; - LoadPalette(&gPlttBufferUnfaded[0x108 + pal * 16], pal * 16 | 0x101, 4); + LoadPalette(&gPlttBufferUnfaded[OBJ_PLTT_ID(pal) + 8], OBJ_PLTT_ID(pal) + 1, PLTT_SIZEOF(2)); PlaySE12WithPanning(SE_M_LEER, BattleAnimAdjustPanning(SOUND_PAN_TARGET)); } else if (sprite->data[1] == 0) @@ -5216,8 +5216,8 @@ void AnimTask_DoubleTeam(u8 taskId) task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[1] = AllocSpritePalette(ANIM_TAG_BENT_SPOON); - r3 = (task->data[1] * 16) + 0x100; - r4 = (gSprites[task->data[0]].oam.paletteNum + 16) << 4; + r3 = OBJ_PLTT_ID(task->data[1]); + r4 = OBJ_PLTT_ID2(gSprites[task->data[0]].oam.paletteNum); for (i = 1; i < 16; i++) gPlttBufferUnfaded[r3 + i] = gPlttBufferUnfaded[r4 + i]; @@ -5295,7 +5295,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId) index = IndexOfSpritePaletteTag(sParticlesColorBlendTable[0][0]); if (index != 0xFF) { - index = (index << 4) + 0x100; + index = OBJ_PLTT_ID(index); for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++) gPlttBufferFaded[index + i] = sParticlesColorBlendTable[0][i]; } @@ -5305,7 +5305,7 @@ void AnimTask_MusicNotesRainbowBlend(u8 taskId) index = AllocSpritePalette(sParticlesColorBlendTable[j][0]); if (index != 0xFF) { - index = (index << 4) + 0x100; + index = OBJ_PLTT_ID(index); for (i = 1; i < NELEMS(sParticlesColorBlendTable[0]); i++) gPlttBufferFaded[index + i] = sParticlesColorBlendTable[j][i]; } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index bc58491ee..b9aa8818c 100644 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1744,7 +1744,7 @@ void AnimTask_AirCutterProjectile(u8 taskId) static void AnimVoidLines(struct Sprite *sprite) { InitSpritePosToAnimAttacker(sprite, FALSE); - sprite->data[0] = 0x100 + (IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag) << 4); + sprite->data[0] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(sVoidLinesSpriteTemplate.paletteTag)); sprite->callback = AnimVoidLines_Step; } @@ -2687,9 +2687,7 @@ static void AnimUproarRing(struct Sprite *sprite) u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING); if (index != 0xFF) - { - BlendPalette(((index << 20) + 0x1010000) >> 16, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]); - } + BlendPalette(OBJ_PLTT_ID(index) + 1, 15, gBattleAnimArgs[5], gBattleAnimArgs[4]); StartSpriteAffineAnim(sprite, 1); sprite->callback = AnimSpriteOnMonPos; @@ -3045,7 +3043,7 @@ void AnimTask_LoadMusicNotesPals(u8 taskId) gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000); LZDecompressWram(gBattleAnimSpritePal_MusicNotes2, gMonSpritesGfxPtr->multiUseBuffer); for (i = 0; i < NUM_MUSIC_NOTE_PAL_TAGS; i++) - LoadPalette(&gMonSpritesGfxPtr->multiUseBuffer[i * 32], (u16)((paletteNums[i] << 4) + 0x100), 32); + LoadPalette(&gMonSpritesGfxPtr->multiUseBuffer[i * 32], OBJ_PLTT_ID(paletteNums[i]), PLTT_SIZE_4BPP); FREE_AND_SET_NULL(gMonSpritesGfxPtr->multiUseBuffer); DestroyAnimVisualTask(taskId); @@ -3282,7 +3280,7 @@ void AnimTask_HeartsBackground(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBg_AttractTilemap); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBg_AttractGfx, animBg.tilesOffset); - LoadCompressedPalette(gBattleAnimBg_AttractPal, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnimBg_AttractPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); @@ -3370,7 +3368,7 @@ void AnimTask_ScaryFace(u8 taskId) AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimBgTilemap_ScaryFaceOpponent); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_ScaryFaceGfx, animBg.tilesOffset); - LoadCompressedPalette(gBattleAnim_ScaryFacePal, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnim_ScaryFacePal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index 9ae958193..0d79770ca 100644 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -1367,11 +1367,11 @@ static void SetPsychicBackground_Step(u8 taskId) if (++gTasks[taskId].data[5] == 4) { - lastColor = gPlttBufferFaded[paletteIndex * 16 + 11]; + lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11]; for (i = 10; i > 0; i--) - gPlttBufferFaded[paletteIndex * 16 + i + 1] = gPlttBufferFaded[paletteIndex * 16 + i]; + gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i]; - gPlttBufferFaded[paletteIndex * 16 + 1] = lastColor; + gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor; gTasks[taskId].data[5] = 0; } @@ -1393,15 +1393,15 @@ static void FadeScreenToWhite_Step(u8 taskId) if (++gTasks[taskId].data[5] == 4) { - lastColor = gPlttBufferFaded[paletteIndex * 16 + 11]; + lastColor = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 11]; for (i = 10; i > 0; i--) - gPlttBufferFaded[paletteIndex * 16 + i + 1] = gPlttBufferFaded[paletteIndex * 16 + i]; - gPlttBufferFaded[paletteIndex * 16 + 1] = lastColor; + gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + i]; + gPlttBufferFaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor; - lastColor = gPlttBufferUnfaded[paletteIndex * 16 + 11]; + lastColor = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 11]; for (i = 10; i > 0; i--) - gPlttBufferUnfaded[paletteIndex * 16 + i + 1] = gPlttBufferUnfaded[paletteIndex * 16 + i]; - gPlttBufferUnfaded[paletteIndex * 16 + 1] = lastColor; + gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i + 1] = gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + i]; + gPlttBufferUnfaded[BG_PLTT_ID(paletteIndex) + 1] = lastColor; gTasks[taskId].data[5] = 0; } @@ -2329,7 +2329,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset); - LoadCompressedPalette(gBattleAnim_MorningSunPal, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnim_MorningSunPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) { RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); @@ -2509,7 +2509,7 @@ void AnimTask_DoomDesireLightBeam(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnim_MorningSunTilemap); AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnim_MorningSunGfx, animBg.tilesOffset); - LoadCompressedPalette(gBattleAnim_MorningSunPal, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnim_MorningSunPal, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) { @@ -3177,7 +3177,7 @@ void AnimTask_RolePlaySilhouette(u8 taskId) spriteId = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, coord1 + xOffset, coord2, 5, personality, otId, gBattleAnimTarget, 1); gSprites[spriteId].oam.priority = priority; gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND; - FillPalette(RGB_WHITE, (gSprites[spriteId].oam.paletteNum << 4) + 0x100, 32); + FillPalette(RGB_WHITE, OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum), PLTT_SIZE_4BPP); gSprites[spriteId].oam.priority = priority; SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gTasks[taskId].data[1], 16 - gTasks[taskId].data[1])); @@ -3806,7 +3806,7 @@ void AnimTask_FacadeColorBlend(u8 taskId) gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = gBattleAnimArgs[1]; spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]); - gTasks[taskId].data[2] = 0x100 + gSprites[spriteId].oam.paletteNum * 16; + gTasks[taskId].data[2] = OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum); gTasks[taskId].func = AnimTask_FacadeColorBlend_Step; } @@ -5025,7 +5025,7 @@ void AnimTask_SnatchOpposingMonMove(u8 taskId) spriteId2 = CreateAdditionalMonSpriteForMoveAnim(species, isBackPic, 0, x, GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y), subpriority, personality, otId, gBattleAnimAttacker, 0); if (gBattleSpritesDataPtr->battlerData[gBattleAnimAttacker].transformSpecies != SPECIES_NONE) - BlendPalette((gSprites[spriteId2].oam.paletteNum * 16) | 0x100, 16, 6, RGB_WHITE); + BlendPalette(OBJ_PLTT_ID(gSprites[spriteId2].oam.paletteNum), 16, 6, RGB_WHITE); gTasks[taskId].data[15] = spriteId2; gTasks[taskId].data[0]++; break; diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index a3dd62e22..7ba6cde1f 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -4,6 +4,7 @@ #include "util.h" #include "task.h" #include "trig.h" +#include "palette.h" #include "constants/songs.h" static void AnimFireSpiralInward(struct Sprite *sprite); @@ -1239,7 +1240,7 @@ void AnimTask_BlendBackground(u8 taskId) struct BattleAnimBgData animBg; GetBattleAnimBg1Data(&animBg); - BlendPalette(animBg.paletteId * 16, 16, gBattleAnimArgs[0], gBattleAnimArgs[1]); + BlendPalette(BG_PLTT_ID(animBg.paletteId), 16, gBattleAnimArgs[0], gBattleAnimArgs[1]); DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 371aa631e..2128d6757 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -395,15 +395,15 @@ static void AnimTask_AnimateGustTornadoPalette_Step(u8 taskId) { gTasks[taskId].data[10] = 0; data2 = gTasks[taskId].data[2]; - temp = gPlttBufferFaded[16 * data2 + 0x108]; + temp = gPlttBufferFaded[OBJ_PLTT_ID(data2) + 8]; i = 7; - base = data2 * 16; + base = PLTT_ID(data2); do { - gPlttBufferFaded[base + 0x101 + i] = gPlttBufferFaded[base + 0x100 + i]; + gPlttBufferFaded[base + OBJ_PLTT_OFFSET + 1 + i] = gPlttBufferFaded[base + OBJ_PLTT_OFFSET + i]; } while (--i > 0); - gPlttBufferFaded[base + 0x101] = temp; + gPlttBufferFaded[base + OBJ_PLTT_OFFSET + 1] = temp; } if (--gTasks[taskId].data[0] == 0) DestroyAnimVisualTask(taskId); diff --git a/src/battle_anim_ghost.c b/src/battle_anim_ghost.c index d9e06b91e..d378c278c 100644 --- a/src/battle_anim_ghost.c +++ b/src/battle_anim_ghost.c @@ -625,7 +625,7 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId) task->data[2] = 0; task->data[3] = 16; task->data[13] = GetAnimBattlerSpriteId(ANIM_TARGET); - task->data[4] = (gSprites[task->data[13]].oam.paletteNum + 16) * 16; + task->data[4] = OBJ_PLTT_ID2(gSprites[task->data[13]].oam.paletteNum); if (position == 1) { u16 mask = DISPCNT_BG1_ON; @@ -644,8 +644,8 @@ static void AnimTask_SpiteTargetShadow_Step1(u8 taskId) } break; case 1: - task->data[14] = (task->data[14] + 16) * 16; - CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], 0x20); + task->data[14] = OBJ_PLTT_ID2(task->data[14]); + CpuCopy32(&gPlttBufferUnfaded[task->data[4]], &gPlttBufferFaded[task->data[14]], PLTT_SIZE_4BPP); BlendPalette(task->data[4], 16, 10, RGB(13, 0, 15)); ++task->data[15]; break; @@ -1290,10 +1290,10 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId) task->data[3] = 16; task->data[4] = GetAnimBattlerSpriteId(ANIM_ATTACKER); task->data[5] = gSprites[task->data[4]].oam.priority; - task->data[6] = (gSprites[task->data[4]].oam.paletteNum + 16) << 4; + task->data[6] = OBJ_PLTT_ID2(gSprites[task->data[4]].oam.paletteNum); gSprites[task->data[4]].oam.objMode = ST_OAM_OBJ_BLEND; gSprites[task->data[4]].oam.priority = 3; - task->data[7] = 128; + task->data[7] = BG_PLTT_ID(8); break; case 1: ++task->data[1]; @@ -1320,7 +1320,7 @@ static void AnimTask_GhostGetOut_Step1(u8 taskId) SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); GetBattleAnimBgData(&animBgData, 2); AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnim_ScaryFaceGfx, animBgData.tilesOffset); - LoadCompressedPalette(gBattleAnim_ScaryFacePal, 16 * animBgData.paletteId, 0x20); + LoadCompressedPalette(gBattleAnim_ScaryFacePal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 3: GetBattleAnimBgData(&animBgData, 2); @@ -1422,7 +1422,7 @@ static void AnimTask_GhostGetOut_Step3(u8 taskId) break; case 3: InitBattleAnimBg(2); - FillPalette(RGB_BLACK, 0x90, 0x20); + FillPalette(RGB_BLACK, BG_PLTT_ID(9), PLTT_SIZE_4BPP); SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0); task->data[1] = 12; break; diff --git a/src/battle_anim_ice.c b/src/battle_anim_ice.c index f70edfb83..e5feb2529 100644 --- a/src/battle_anim_ice.c +++ b/src/battle_anim_ice.c @@ -946,7 +946,7 @@ void AnimTask_HazeScrollingFog(u8 taskId) GetBattleAnimBg1Data(&animBg); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap); - LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32); + LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); gTasks[taskId].func = AnimTask_HazeScrollingFog_Step; @@ -1043,7 +1043,7 @@ void AnimTask_MistBallFog(u8 taskId) GetBattleAnimBg1Data(&animBg); LoadBgTiles(animBg.bgId, gWeatherFogHorizontalTiles, 0x800, animBg.tilesOffset); AnimLoadCompressedBgTilemap(animBg.bgId, gBattleAnimFogTilemap); - LoadPalette(&gDefaultWeatherSpritePalette, animBg.paletteId * 16, 32); + LoadPalette(&gDefaultWeatherSpritePalette, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); gTasks[taskId].data[15] = -1; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 3b6b34d63..87e71d0ad 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1291,7 +1291,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor) struct PlttData *destColor; u16 average; - paletteNum *= 16; + paletteNum = PLTT_ID(paletteNum); if (!restoreOriginalColor) { @@ -1308,7 +1308,7 @@ void SetGreyscaleOrOriginalPalette(u16 paletteNum, bool8 restoreOriginalColor) } else { - CpuCopy32(&gPlttBufferUnfaded[paletteNum], &gPlttBufferFaded[paletteNum], 32); + CpuCopy32(&gPlttBufferUnfaded[paletteNum], &gPlttBufferFaded[paletteNum], PLTT_SIZE_4BPP); } } @@ -1609,7 +1609,7 @@ void AnimTask_BlendMonInAndOut(u8 task) DestroyAnimVisualTask(task); return; } - gTasks[task].data[0] = (gSprites[spriteId].oam.paletteNum * 0x10) + 0x101; + gTasks[task].data[0] = OBJ_PLTT_ID(gSprites[spriteId].oam.paletteNum) + 1; AnimTask_BlendMonInAndOutSetup(&gTasks[task]); } @@ -1952,7 +1952,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000); if (!isBackpic) { - LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20); + LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP); if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0) LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->multiUseBuffer, @@ -1968,7 +1968,7 @@ u8 CreateAdditionalMonSpriteForMoveAnim(u16 species, bool8 isBackpic, u8 templat } else { - LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20); + LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, trainerId, personality), OBJ_PLTT_ID(palette), PLTT_SIZE_4BPP); if (ignoreDeoxys == TRUE || ShouldIgnoreDeoxysForm(DEOXYS_CHECK_BATTLE_ANIM, battlerId) == TRUE || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0) LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species], gMonSpritesGfxPtr->multiUseBuffer, @@ -2224,8 +2224,8 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) task->tPaletteNum = AllocSpritePalette(ANIM_TAG_BENT_SPOON); task->tNumTracesActive = 0; - dest = (task->tPaletteNum + 16) * 16; - src = (gSprites[task->tBattlerSpriteId].oam.paletteNum + 0x10) * 0x10; + dest = OBJ_PLTT_ID2(task->tPaletteNum); + src = OBJ_PLTT_ID2(gSprites[task->tBattlerSpriteId].oam.paletteNum); // Set trace's priority based on battler's subpriority task->tPriority = GetBattlerSpriteSubpriority(gBattleAnimAttacker); @@ -2234,7 +2234,7 @@ void AnimTask_AttackerPunchWithTrace(u8 taskId) else task->tPriority = 3; - CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20); + CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], PLTT_SIZE_4BPP); BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]); task->func = AnimTask_AttackerPunchWithTrace_Step; } diff --git a/src/battle_anim_psychic.c b/src/battle_anim_psychic.c index 64aa452cc..1a5683b85 100644 --- a/src/battle_anim_psychic.c +++ b/src/battle_anim_psychic.c @@ -459,7 +459,7 @@ static void AnimDefensiveWall(struct Sprite *sprite) } if (IsContest()) sprite->y += 9; - sprite->data[0] = 256 + IndexOfSpritePaletteTag(gBattleAnimArgs[2]) * 16; + sprite->data[0] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(gBattleAnimArgs[2])); sprite->callback = AnimDefensiveWall_Step2; sprite->callback(sprite); } diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index d7b8057ef..34e52638b 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -404,7 +404,7 @@ void AnimTask_LoadSandstormBackground(u8 taskId) GetBattleAnimBg1Data(&animBg); AnimLoadCompressedBgTilemap(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_tilemap); AnimLoadCompressedBgGfx(animBg.bgId, gFile_graphics_battle_anims_backgrounds_sandstorm_brew_sheet, animBg.tilesOffset); - LoadCompressedPalette(gBattleAnimSpritePal_FlyingDirt, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnimSpritePal_FlyingDirt, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); if (IsContest()) RelocateBattleBgPal(animBg.paletteId, animBg.bgTilemap, 0, 0); if (gBattleAnimArgs[0] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) diff --git a/src/battle_anim_special.c b/src/battle_anim_special.c index 48f7435b7..183f86196 100644 --- a/src/battle_anim_special.c +++ b/src/battle_anim_special.c @@ -438,7 +438,7 @@ void AnimTask_LevelUpHealthBox(u8 taskId) GetBattleAnimBg1Data(&animBgData); AnimLoadCompressedBgTilemap(animBgData.bgId, gUnusedLevelupAnimationTilemap); AnimLoadCompressedBgGfx(animBgData.bgId, gUnusedLevelupAnimationGfx, animBgData.tilesOffset); - LoadCompressedPalette(gCureBubblesPal, animBgData.paletteId << 4, 32); + LoadCompressedPalette(gCureBubblesPal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); gBattle_BG1_X = -gSprites[spriteId3].x + 32; gBattle_BG1_Y = -gSprites[spriteId3].y - 32; gTasks[taskId].data[1] = 640; @@ -518,10 +518,10 @@ void DoLoadHealthboxPalsForLevelUp(u8 *paletteId1, u8 *paletteId2, u8 battler) spriteId2 = gSprites[healthBoxSpriteId].data[5]; *paletteId1 = AllocSpritePalette(TAG_HEALTHBOX_PALS_1); *paletteId2 = AllocSpritePalette(TAG_HEALTHBOX_PALS_2); - offset1 = (gSprites[healthBoxSpriteId].oam.paletteNum * 16) + 0x100; - offset2 = (gSprites[spriteId2].oam.paletteNum * 16) + 0x100; - LoadPalette(&gPlttBufferUnfaded[offset1], *paletteId1 * 16 + 0x100, 0x20); - LoadPalette(&gPlttBufferUnfaded[offset2], *paletteId2 * 16 + 0x100, 0x20); + offset1 = OBJ_PLTT_ID(gSprites[healthBoxSpriteId].oam.paletteNum); + offset2 = OBJ_PLTT_ID(gSprites[spriteId2].oam.paletteNum); + LoadPalette(&gPlttBufferUnfaded[offset1], OBJ_PLTT_ID(*paletteId1), PLTT_SIZE_4BPP); + LoadPalette(&gPlttBufferUnfaded[offset2], OBJ_PLTT_ID(*paletteId2), PLTT_SIZE_4BPP); gSprites[healthBoxSpriteId].oam.paletteNum = *paletteId1; gSprites[spriteId1].oam.paletteNum = *paletteId1; gSprites[spriteId2].oam.paletteNum = *paletteId2; @@ -584,7 +584,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId) if (gTasks[taskId].data[2] > 16) gTasks[taskId].data[2] = 16; - paletteOffset = paletteNum * 16 + 0x100; + paletteOffset = OBJ_PLTT_ID(paletteNum); BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31)); if (gTasks[taskId].data[2] == 16) gTasks[taskId].data[1]++; @@ -594,7 +594,7 @@ static void AnimTask_FlashHealthboxOnLevelUp_Step(u8 taskId) if (gTasks[taskId].data[2] < 0) gTasks[taskId].data[2] = 0; - paletteOffset = paletteNum * 16 + 0x100; + paletteOffset = OBJ_PLTT_ID(paletteNum); BlendPalette(paletteOffset + colorOffset, 1, gTasks[taskId].data[2], RGB(20, 27, 31)); if (gTasks[taskId].data[2] == 0) DestroyAnimVisualTask(taskId); @@ -1874,12 +1874,12 @@ u8 LaunchBallFadeMonTask(bool8 unfadeLater, u8 battler, u32 selectedPalettes, u8 if (!unfadeLater) { - BlendPalette(battler * 16 + 0x100, 16, 0, sBallOpenFadeColors[ballId]); + BlendPalette(OBJ_PLTT_ID(battler), 16, 0, sBallOpenFadeColors[ballId]); gTasks[taskId].data[1] = 1; } else { - BlendPalette(battler * 16 + 0x100, 16, 16, sBallOpenFadeColors[ballId]); + BlendPalette(OBJ_PLTT_ID(battler), 16, 16, sBallOpenFadeColors[ballId]); gTasks[taskId].data[0] = 16; gTasks[taskId].data[1] = -1; gTasks[taskId].func = Task_FadeMon_ToNormal; @@ -1895,7 +1895,7 @@ static void Task_FadeMon_ToBallColor(u8 taskId) if (gTasks[taskId].data[2] <= 16) { - BlendPalette(gTasks[taskId].data[3] * 16 + 0x100, 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]); + BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[3]), 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]); gTasks[taskId].data[0] += gTasks[taskId].data[1]; gTasks[taskId].data[2]++; } @@ -1923,7 +1923,7 @@ static void Task_FadeMon_ToNormal_Step(u8 taskId) if (gTasks[taskId].data[2] <= 16) { - BlendPalette(gTasks[taskId].data[3] * 16 + 0x100, 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]); + BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[3]), 16, gTasks[taskId].data[0], sBallOpenFadeColors[ballId]); gTasks[taskId].data[0] += gTasks[taskId].data[1]; gTasks[taskId].data[2]++; } diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 8307d1786..6d3a0e1b3 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -284,7 +284,7 @@ static void Task_UpdateFlashingCircleImpacts(u8 taskId) if (gTasks[taskId].data[2] == 2) { gTasks[taskId].data[2] = 0; - BlendPalette(0x100 + gTasks[taskId].data[0] * 16, 16, gTasks[taskId].data[4], gTasks[taskId].data[1]); + BlendPalette(OBJ_PLTT_ID(gTasks[taskId].data[0]), 16, gTasks[taskId].data[4], gTasks[taskId].data[1]); if (gTasks[taskId].data[5] == 0) { gTasks[taskId].data[4]++; @@ -394,10 +394,10 @@ static void AnimTask_FrozenIceCube_Step2(u8 taskId) { u16 temp; - temp = gPlttBufferFaded[0x100 + palIndex * 16 + 13]; - gPlttBufferFaded[0x100 + palIndex * 16 + 13] = gPlttBufferFaded[0x100 + palIndex * 16 + 14]; - gPlttBufferFaded[0x100 + palIndex * 16 + 14] = gPlttBufferFaded[0x100 + palIndex * 16 + 15]; - gPlttBufferFaded[0x100 + palIndex * 16 + 15] = temp; + temp = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13]; + gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 13] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14]; + gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 14] = gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15]; + gPlttBufferFaded[OBJ_PLTT_ID(palIndex) + 15] = temp; gTasks[taskId].data[2] = 0; gTasks[taskId].data[3]++; diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index d231acf08..896c6411a 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -338,7 +338,7 @@ void AnimTask_DrawFallingWhiteLinesOnAttacker(u8 taskId) if (IsContest()) RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0); AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset); - LoadPalette(sRgbWhite, animBgData.paletteId * 16 + 1, 2); + LoadPalette(sRgbWhite, BG_PLTT_ID(animBgData.paletteId) + 1, PLTT_SIZEOF(1)); gBattle_BG1_X = -gSprites[spriteId].x + 32; gBattle_BG1_Y = -gSprites[spriteId].y + 32; gTasks[taskId].data[0] = newSpriteId; @@ -465,28 +465,28 @@ static void StatsChangeAnimation_Step2(u8 taskId) switch (sAnimStatsChangeData->data[1]) { case 0: - LoadCompressedPalette(gBattleStatMask2_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask2_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 1: - LoadCompressedPalette(gBattleStatMask1_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask1_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 2: - LoadCompressedPalette(gBattleStatMask3_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask3_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 3: - LoadCompressedPalette(gBattleStatMask4_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask4_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 4: - LoadCompressedPalette(gBattleStatMask6_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask6_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 5: - LoadCompressedPalette(gBattleStatMask7_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask7_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; case 6: - LoadCompressedPalette(gBattleStatMask8_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask8_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; default: - LoadCompressedPalette(gBattleStatMask5_Pal, animBgData.paletteId * 16, 32); + LoadCompressedPalette(gBattleStatMask5_Pal, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); break; } gBattle_BG1_X = 0; @@ -618,13 +618,13 @@ static void AnimTask_Flash_Step(u8 taskId) { if ((task->data[15] >> i) & 1) { - u16 paletteOffset = i * 16; + u16 paletteOffset = BG_PLTT_ID(i); BlendPalette(paletteOffset, 16, task->data[2], 0xFFFF); } if ((task->data[14] >> i) & 1) { - u16 paletteOffset = i * 16 + 0x100; + u16 paletteOffset = OBJ_PLTT_ID(i); BlendPalette(paletteOffset, 16, task->data[2], 0); } } @@ -645,7 +645,7 @@ static void SetPalettesToColor(u32 selectedPalettes, u16 color) for (i = 0; i < 32; selectedPalettes >>= 1, ++i) if (selectedPalettes & 1) - for (curOffset = i * 16, paletteOffset = curOffset; curOffset < paletteOffset + 16; ++curOffset) + for (curOffset = PLTT_ID(i), paletteOffset = curOffset; curOffset < paletteOffset + 16; ++curOffset) gPlttBufferFaded[curOffset] = color; } @@ -764,7 +764,7 @@ void StartMonScrollingBgMask(u8 taskId, s32 unused, u16 scrollSpeed, u8 battler1 if (IsContest()) RelocateBattleBgPal(animBgData.paletteId, animBgData.bgTilemap, 0, 0); AnimLoadCompressedBgGfx(animBgData.bgId, gfx, animBgData.tilesOffset); - LoadCompressedPalette(palette, animBgData.paletteId * 16, 32); + LoadCompressedPalette(palette, BG_PLTT_ID(animBgData.paletteId), PLTT_SIZE_4BPP); gBattle_BG1_X = 0; gBattle_BG1_Y = 0; gTasks[taskId].data[1] = scrollSpeed; @@ -867,7 +867,7 @@ void AnimTask_CopyPalUnfadedToBackup(u8 taskId) paletteIndex = gBattleAnimAttacker + 16; else if (gBattleAnimArgs[0] == 2) paletteIndex = gBattleAnimTarget + 16; - memcpy(&gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], &gPlttBufferUnfaded[paletteIndex * 16], 32); + memcpy(&gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], &gPlttBufferUnfaded[PLTT_ID(paletteIndex)], PLTT_SIZE_4BPP); DestroyAnimVisualTask(taskId); } @@ -885,7 +885,7 @@ void AnimTask_CopyPalUnfadedFromBackup(u8 taskId) paletteIndex = gBattleAnimAttacker + 16; else if (gBattleAnimArgs[0] == 2) paletteIndex = gBattleAnimTarget + 16; - memcpy(&gPlttBufferUnfaded[paletteIndex * 16], &gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], 32); + memcpy(&gPlttBufferUnfaded[PLTT_ID(paletteIndex)], &gMonSpritesGfxPtr->multiUseBuffer[gBattleAnimArgs[1] * 16], PLTT_SIZE_4BPP); DestroyAnimVisualTask(taskId); } @@ -903,7 +903,7 @@ void AnimTask_CopyPalFadedToUnfaded(u8 taskId) paletteIndex = gBattleAnimAttacker + 16; else if (gBattleAnimArgs[0] == 2) paletteIndex = gBattleAnimTarget + 16; - memcpy(&gPlttBufferUnfaded[paletteIndex * 16], &gPlttBufferFaded[paletteIndex * 16], 32); + memcpy(&gPlttBufferUnfaded[PLTT_ID(paletteIndex)], &gPlttBufferFaded[PLTT_ID(paletteIndex)], PLTT_SIZE_4BPP); DestroyAnimVisualTask(taskId); } diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 390ab38f3..8cd5ed3f7 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -620,7 +620,7 @@ static void AnimAuroraBeamRings_Step(struct Sprite *sprite) void AnimTask_RotateAuroraRingColors(u8 taskId) { gTasks[taskId].data[0] = gBattleAnimArgs[0]; - gTasks[taskId].data[2] = IndexOfSpritePaletteTag(ANIM_TAG_RAINBOW_RINGS) * 16 + 256; + gTasks[taskId].data[2] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(ANIM_TAG_RAINBOW_RINGS)); gTasks[taskId].func = AnimTask_RotateAuroraRingColors_Step; } static void AnimTask_RotateAuroraRingColors_Step(u8 taskId) @@ -826,9 +826,9 @@ void AnimTask_CreateSurfWave(u8 taskId) } AnimLoadCompressedBgGfx(animBg.bgId, gBattleAnimBgImage_Surf, animBg.tilesOffset); if (gBattleAnimArgs[0] == 0) - LoadCompressedPalette(gBattleAnimBgPalette_Surf, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnimBgPalette_Surf, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); else - LoadCompressedPalette(gBattleAnimBgPalette_MuddyWater, animBg.paletteId * 16, 32); + LoadCompressedPalette(gBattleAnimBgPalette_MuddyWater, BG_PLTT_ID(animBg.paletteId), PLTT_SIZE_4BPP); taskId2 = CreateTask(AnimTask_SurfWaveScanlineEffect, gTasks[taskId].priority + 1); gTasks[taskId].data[15] = taskId2; gTasks[taskId2].data[0] = 0; diff --git a/src/battle_bg.c b/src/battle_bg.c index 8260e7091..3bcc50080 100644 --- a/src/battle_bg.c +++ b/src/battle_bg.c @@ -648,7 +648,7 @@ static void LoadBattleTerrainGfx(u16 terrain) // Copy to bg3 LZDecompressVram(sBattleTerrainTable[terrain].tileset, (void *)BG_CHAR_ADDR(2)); LZDecompressVram(sBattleTerrainTable[terrain].tilemap, (void *)BG_SCREEN_ADDR(26)); - LoadCompressedPalette(sBattleTerrainTable[terrain].palette, 0x20, 0x60); + LoadCompressedPalette(sBattleTerrainTable[terrain].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); } static void LoadBattleTerrainEntryGfx(u16 terrain) @@ -690,19 +690,22 @@ void InitBattleBgsVideo(void) void LoadBattleMenuWindowGfx(void) { - LoadUserWindowGfx(2, 0x012, 0x10); - LoadUserWindowGfx(2, 0x022, 0x10); - gPlttBufferUnfaded[0x5C] = RGB( 9, 9, 9); - gPlttBufferUnfaded[0x5D] = RGB( 9, 9, 9); - gPlttBufferUnfaded[0x5E] = RGB(31, 31, 31); - gPlttBufferUnfaded[0x5F] = RGB( 26, 26, 25); - CpuCopy16(&gPlttBufferUnfaded[0x5C], &gPlttBufferFaded[0x5C], 8); + LoadUserWindowGfx(2, 0x012, BG_PLTT_ID(1)); + LoadUserWindowGfx(2, 0x022, BG_PLTT_ID(1)); + + gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = RGB( 9, 9, 9); + gPlttBufferUnfaded[BG_PLTT_ID(5) + 13] = RGB( 9, 9, 9); + gPlttBufferUnfaded[BG_PLTT_ID(5) + 14] = RGB(31, 31, 31); + gPlttBufferUnfaded[BG_PLTT_ID(5) + 15] = RGB( 26, 26, 25); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 12], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(4)); + if (gBattleTypeFlags & (BATTLE_TYPE_FIRST_BATTLE | BATTLE_TYPE_POKEDUDE)) { - Menu_LoadStdPalAt(0x70); - LoadMenuMessageWindowGfx(0, 0x030, 0x70); - gPlttBufferUnfaded[0x76] = RGB( 0, 0, 0); - CpuCopy16(&gPlttBufferUnfaded[0x76], &gPlttBufferFaded[0x76], 2); + Menu_LoadStdPalAt(BG_PLTT_ID(7)); + LoadMenuMessageWindowGfx(0, 0x030, BG_PLTT_ID(7)); + + gPlttBufferUnfaded[BG_PLTT_ID(7) + 6] = RGB( 0, 0, 0); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(7) + 6], &gPlttBufferFaded[BG_PLTT_ID(7) + 6], PLTT_SIZEOF(1)); } } @@ -716,7 +719,7 @@ void LoadBattleTextboxAndBackground(void) LZDecompressVram(gBattleInterface_Textbox_Gfx, (void *)BG_CHAR_ADDR(0)); CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0x000); CopyBgTilemapBufferToVram(0); - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP); LoadBattleMenuWindowGfx(); DrawMainBattleBackground(); } @@ -927,7 +930,7 @@ void InitLinkBattleVsScreen(u8 taskId) break; case 1: palId = AllocSpritePalette(TAG_VS_LETTERS); - gPlttBufferUnfaded[palId * 16 + 0x10F] = gPlttBufferFaded[palId * 16 + 0x10F] = RGB(31, 31, 31); + gPlttBufferUnfaded[OBJ_PLTT_ID(palId) + 15] = gPlttBufferFaded[OBJ_PLTT_ID(palId) + 15] = RGB_WHITE; gBattleStruct->linkBattleVsSpriteId_V = CreateSprite(&sVsLetter_V_SpriteTemplate, 108, 80, 0); gBattleStruct->linkBattleVsSpriteId_S = CreateSprite(&sVsLetter_S_SpriteTemplate, 132, 80, 0); gSprites[gBattleStruct->linkBattleVsSpriteId_V].invisible = TRUE; @@ -982,7 +985,7 @@ void DrawBattleEntryBackground(void) { LZDecompressVram(gFile_graphics_battle_transitions_vs_frame_sheet, (void *)(BG_CHAR_ADDR(1))); LZDecompressVram(gVsLettersGfx, (void *)(VRAM + 0x10000)); - LoadCompressedPalette(gFile_graphics_battle_transitions_vs_frame_palette, 0x60, 0x20); + LoadCompressedPalette(gFile_graphics_battle_transitions_vs_frame_palette, BG_PLTT_ID(6), PLTT_SIZE_4BPP); SetBgAttribute(1, BG_ATTR_SCREENSIZE, 1); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(28) | BGCNT_TXT512x256); CopyToBgTilemapBuffer(1, gFile_graphics_battle_transitions_vs_frame_tilemap, 0, 0); @@ -1083,7 +1086,7 @@ bool8 LoadChosenBattleElement(u8 caseId) CopyBgTilemapBufferToVram(0); break; case 2: - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x00, 0x40); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP); break; case 3: battleScene = GetBattleTerrainOverride(); @@ -1095,7 +1098,7 @@ bool8 LoadChosenBattleElement(u8 caseId) break; case 5: battleScene = GetBattleTerrainOverride(); - LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, 0x20, 0x60); + LoadCompressedPalette(sBattleTerrainTable[battleScene].palette, BG_PLTT_ID(2), 3 * PLTT_SIZE_4BPP); break; case 6: LoadBattleMenuWindowGfx(); diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index de1f98f77..d2c02a0ae 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -1513,7 +1513,7 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void) trainerPicId = gLinkPlayers[GetBattlerMultiplayerId(gActiveBattler)].gender; } - LoadCompressedPalette(gTrainerBackPicPaletteTable[trainerPicId].data, 0x100 + paletteNum * 16, 32); + LoadCompressedPalette(gTrainerBackPicPaletteTable[trainerPicId].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum; diff --git a/src/battle_controller_oak_old_man.c b/src/battle_controller_oak_old_man.c index 0e0fd8784..71926e579 100644 --- a/src/battle_controller_oak_old_man.c +++ b/src/battle_controller_oak_old_man.c @@ -2086,7 +2086,7 @@ static void OakOldManHandleIntroTrainerBallThrow(void) StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); paletteNum = AllocSpritePalette(0xD6F8); - LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, 0x100 + paletteNum * 16, 32); + LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum; taskId = CreateTask(Task_StartSendOutAnim, 5); gTasks[taskId].data[0] = gActiveBattler; diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index c9afab61f..1422fa13b 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2714,7 +2714,7 @@ static void PlayerHandleIntroTrainerBallThrow(void) StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); paletteNum = AllocSpritePalette(0xD6F8); - LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, 0x100 + paletteNum * 16, 32); + LoadCompressedPalette(gTrainerBackPicPaletteTable[gSaveBlock2Ptr->playerGender].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum; taskId = CreateTask(Task_StartSendOutAnim, 5); gTasks[taskId].data[0] = gActiveBattler; diff --git a/src/battle_controller_pokedude.c b/src/battle_controller_pokedude.c index ca052a025..62c259c04 100644 --- a/src/battle_controller_pokedude.c +++ b/src/battle_controller_pokedude.c @@ -1858,7 +1858,7 @@ static void PokedudeHandleIntroTrainerBallThrow(void) StoreSpriteCallbackInData6(&gSprites[gBattlerSpriteIds[gActiveBattler]], SpriteCB_FreePlayerSpriteLoadMonSprite); StartSpriteAnim(&gSprites[gBattlerSpriteIds[gActiveBattler]], 1); paletteNum = AllocSpritePalette(0xD6F8); - LoadCompressedPalette(gTrainerBackPicPaletteTable[TRAINER_BACK_PIC_POKEDUDE].data, 0x100 + paletteNum * 16, 32); + LoadCompressedPalette(gTrainerBackPicPaletteTable[TRAINER_BACK_PIC_POKEDUDE].data, OBJ_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); gSprites[gBattlerSpriteIds[gActiveBattler]].oam.paletteNum = paletteNum; taskId = CreateTask(Task_StartSendOutAnim, 5); gTasks[taskId].data[0] = gActiveBattler; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index a681dfec6..330880e70 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -341,27 +341,27 @@ void BattleLoadOpponentMonSpriteGfx(struct Pokemon *mon, u8 battlerId) HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species], gMonSpritesGfxPtr->sprites[position], species, currentPersonality); - paletteOffset = 0x100 + battlerId * 16; + paletteOffset = OBJ_PLTT_ID(battlerId); if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE) lzPaletteData = GetMonFrontSpritePal(mon); else lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality); buffer = AllocZeroed(0x400); LZDecompressWram(lzPaletteData, buffer); - LoadPalette(buffer, paletteOffset, 0x20); - LoadPalette(buffer, 0x80 + battlerId * 16, 0x20); + LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP); + LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP); Free(buffer); if (species == SPECIES_CASTFORM) { - paletteOffset = 0x100 + battlerId * 16; + paletteOffset = OBJ_PLTT_ID(battlerId); LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); - LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); + LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP); } // transform's pink color if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE) { BlendPalette(paletteOffset, 16, 6, RGB_WHITE); - CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); + CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP); } } @@ -395,27 +395,27 @@ void BattleLoadPlayerMonSpriteGfx(struct Pokemon *mon, u8 battlerId) HandleLoadSpecialPokePic(&gMonBackPicTable[species], gMonSpritesGfxPtr->sprites[position], species, currentPersonality); - paletteOffset = 0x100 + battlerId * 16; + paletteOffset = OBJ_PLTT_ID(battlerId); if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies == SPECIES_NONE) lzPaletteData = GetMonFrontSpritePal(mon); else lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(species, otId, monsPersonality); buffer = AllocZeroed(0x400); LZDecompressWram(lzPaletteData, buffer); - LoadPalette(buffer, paletteOffset, 0x20); - LoadPalette(buffer, 0x80 + battlerId * 16, 0x20); + LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP); + LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP); Free(buffer); if (species == SPECIES_CASTFORM) { - paletteOffset = 0x100 + battlerId * 16; + paletteOffset = OBJ_PLTT_ID(battlerId); LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); - LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, 0x20); + LoadPalette(gBattleStruct->castformPalette[gBattleMonForms[battlerId]], paletteOffset, PLTT_SIZE_4BPP); } // transform's pink color if (gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != SPECIES_NONE) { BlendPalette(paletteOffset, 16, 6, RGB_WHITE); - CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); + CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP); } } @@ -426,11 +426,11 @@ void DecompressGhostFrontPic(struct Pokemon *unused, u8 battlerId) u8 position = GetBattlerPosition(battlerId); LZ77UnCompWram(gGhostFrontPic, gMonSpritesGfxPtr->sprites[position]); - palOffset = 0x100 + 16 * battlerId; + palOffset = OBJ_PLTT_ID(battlerId); buffer = AllocZeroed(0x400); LZDecompressWram(gGhostPalette, buffer); - LoadPalette(buffer, palOffset, 0x20); - LoadPalette(buffer, 0x80 + 16 * battlerId, 0x20); + LoadPalette(buffer, palOffset, PLTT_SIZE_4BPP); + LoadPalette(buffer, BG_PLTT_ID(8) + BG_PLTT_ID(battlerId), PLTT_SIZE_4BPP); Free(buffer); } @@ -449,7 +449,7 @@ void DecompressTrainerFrontPic(u16 frontPicId, u8 battlerId) void DecompressTrainerBackPalette(u16 index, u8 palette) { - LoadCompressedPalette(gTrainerBackPicPaletteTable[index].data, (palette + 16) * 16, 0x20); + LoadCompressedPalette(gTrainerBackPicPaletteTable[index].data, OBJ_PLTT_ID2(palette), PLTT_SIZE_4BPP); } void BattleGfxSfxDummy3(u8 gender) @@ -675,11 +675,11 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType) src = gMonSpritesGfxPtr->sprites[position]; dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32); DmaCopy32(3, src, dst, 0x800); - paletteOffset = 0x100 + battlerAtk * 16; + paletteOffset = OBJ_PLTT_ID(battlerAtk); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue); buffer = AllocZeroed(0x400); LZDecompressWram(lzPaletteData, buffer); - LoadPalette(buffer, paletteOffset, 32); + LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP); Free(buffer); gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleMonForms[battlerAtk]); @@ -690,13 +690,13 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType) else if (transformType) // Castform form change { StartSpriteAnim(&gSprites[gBattlerSpriteIds[battlerAtk]], gBattleSpritesDataPtr->animationData->animArg); - paletteOffset = 0x100 + battlerAtk * 16; - LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, 32); + paletteOffset = OBJ_PLTT_ID(battlerAtk); + LoadPalette(gBattleStruct->castformPalette[gBattleSpritesDataPtr->animationData->animArg], paletteOffset, PLTT_SIZE_4BPP); gBattleMonForms[battlerAtk] = gBattleSpritesDataPtr->animationData->animArg; if (gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies != SPECIES_NONE) { BlendPalette(paletteOffset, 16, 6, RGB_WHITE); - CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); + CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP); } gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); } @@ -733,19 +733,19 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, u8 transformType) src = gMonSpritesGfxPtr->sprites[position]; dst = (void *)(VRAM + 0x10000 + gSprites[gBattlerSpriteIds[battlerAtk]].oam.tileNum * 32); DmaCopy32(3, src, dst, 0x800); - paletteOffset = 0x100 + battlerAtk * 16; + paletteOffset = OBJ_PLTT_ID(battlerAtk); lzPaletteData = GetMonSpritePalFromSpeciesAndPersonality(targetSpecies, otId, personalityValue); buffer = AllocZeroed(0x400); LZDecompressWram(lzPaletteData, buffer); - LoadPalette(buffer, paletteOffset, 32); + LoadPalette(buffer, paletteOffset, PLTT_SIZE_4BPP); Free(buffer); if (targetSpecies == SPECIES_CASTFORM) { LZDecompressWram(lzPaletteData, gBattleStruct->castformPalette[0]); - LoadPalette(gBattleStruct->castformPalette[0] + gBattleMonForms[battlerDef] * 16, paletteOffset, 32); + LoadPalette(gBattleStruct->castformPalette[0] + gBattleMonForms[battlerDef] * 16, paletteOffset, PLTT_SIZE_4BPP); } BlendPalette(paletteOffset, 16, 6, RGB_WHITE); - CpuCopy32(gPlttBufferFaded + paletteOffset, gPlttBufferUnfaded + paletteOffset, 32); + CpuCopy32(&gPlttBufferFaded[paletteOffset], &gPlttBufferUnfaded[paletteOffset], PLTT_SIZE_4BPP); gBattleSpritesDataPtr->battlerData[battlerAtk].transformSpecies = targetSpecies; gBattleMonForms[battlerAtk] = gBattleMonForms[battlerDef]; gSprites[gBattlerSpriteIds[battlerAtk]].y = GetBattlerSpriteDefault_Y(battlerAtk); @@ -774,8 +774,8 @@ void BattleLoadSubstituteOrMonSpriteGfx(u8 battlerId, bool8 loadMonSprite) --ptr; DmaCopy32Defvars(3, (*ptr)[0], (*ptr)[i], 0x800); } - palOffset = (battlerId * 16) + 0x100; - LoadCompressedPalette(gSubstituteDollPal, palOffset, 32); + palOffset = OBJ_PLTT_ID(battlerId); + LoadCompressedPalette(gSubstituteDollPal, palOffset, PLTT_SIZE_4BPP); } else { diff --git a/src/battle_interface.c b/src/battle_interface.c index feb590f5b..794c38ef4 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -1663,11 +1663,11 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId) return; } - pltAdder = gSprites[healthboxSpriteId].oam.paletteNum * 16; + pltAdder = PLTT_ID(gSprites[healthboxSpriteId].oam.paletteNum); pltAdder += battlerId + 12; - FillPalette(sStatusIconColors[statusPalId], pltAdder + 0x100, 2); - CpuCopy16(gPlttBufferUnfaded + 0x100 + pltAdder, (void *)(OBJ_PLTT + pltAdder * 2), 2); + FillPalette(sStatusIconColors[statusPalId], pltAdder + OBJ_PLTT_OFFSET, PLTT_SIZEOF(1)); + CpuCopy16(&gPlttBufferUnfaded[OBJ_PLTT_OFFSET + pltAdder], (u16 *)OBJ_PLTT + pltAdder, PLTT_SIZEOF(1)); CpuCopy32(statusGfxPtr, (void *)(OBJ_VRAM0 + (gSprites[healthboxSpriteId].oam.tileNum + tileNumAdder) * TILE_SIZE_4BPP), 3 * TILE_SIZE_4BPP); if (IsDoubleBattle() == TRUE || GetBattlerSide(battlerId) == B_SIDE_OPPONENT) { diff --git a/src/battle_main.c b/src/battle_main.c index bb34635b4..66a5cc768 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -1769,7 +1769,7 @@ void CB2_InitEndLinkBattle(void) gBattle_BG3_X = 0; gBattle_BG3_Y = 0; InitBattleBgsVideo(); - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0, 64); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP); LoadBattleMenuWindowGfx(); ResetSpriteData(); ResetTasks(); diff --git a/src/battle_message.c b/src/battle_message.c index 185792324..9e6789c9c 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2820,11 +2820,11 @@ void SetPpNumbersPaletteInMoveSelection(void) u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBattler]], chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBattler]]); - gPlttBufferUnfaded[92] = palPtr[(var * 2) + 0]; - gPlttBufferUnfaded[91] = palPtr[(var * 2) + 1]; + gPlttBufferUnfaded[BG_PLTT_ID(5) + 12] = palPtr[(var * 2) + 0]; + gPlttBufferUnfaded[BG_PLTT_ID(5) + 11] = palPtr[(var * 2) + 1]; - CpuCopy16(&gPlttBufferUnfaded[92], &gPlttBufferFaded[92], sizeof(u16)); - CpuCopy16(&gPlttBufferUnfaded[91], &gPlttBufferFaded[91], sizeof(u16)); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 12], &gPlttBufferFaded[BG_PLTT_ID(5) + 12], PLTT_SIZEOF(1)); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(5) + 11], &gPlttBufferFaded[BG_PLTT_ID(5) + 11], PLTT_SIZEOF(1)); } u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp) diff --git a/src/battle_records.c b/src/battle_records.c index 604ebcb81..3fcc0646a 100644 --- a/src/battle_records.c +++ b/src/battle_records.c @@ -45,7 +45,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 1, .width = 27, .height = 18, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x014 }, DUMMY_WIN_TEMPLATE }; @@ -109,7 +109,7 @@ static void MainCB2_SetUp(void) break; case 3: LoadFrameGfxOnBg(3); - LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); + LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP); gMain.state++; break; case 4: @@ -564,5 +564,5 @@ static void LoadFrameGfxOnBg(u8 bg) { LoadBgTiles(bg, sTiles, 0xC0, 0); CopyToBgTilemapBufferRect(bg, sTilemap, 0, 0, 32, 32); - LoadPalette(sPalette, 0, 0x20); + LoadPalette(sPalette, BG_PLTT_ID(0), PLTT_SIZE_4BPP); } diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e48fc4afa..c9ec79671 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -5784,7 +5784,7 @@ static void InitLevelUpBanner(void) gBattle_BG2_Y = 0; gBattle_BG2_X = LEVEL_UP_BANNER_START; - LoadPalette(sLevelUpBanner_Pal, 0x60, 0x20); + LoadPalette(sLevelUpBanner_Pal, BG_PLTT_ID(6), sizeof(sLevelUpBanner_Pal)); CopyToWindowPixelBuffer(B_WIN_LEVEL_UP_BANNER, sLevelUpBanner_Gfx, 0, 0); PutWindowTilemap(B_WIN_LEVEL_UP_BANNER); CopyWindowToVram(B_WIN_LEVEL_UP_BANNER, COPYWIN_FULL); diff --git a/src/battle_transition.c b/src/battle_transition.c index 4c8782d2b..704670d14 100644 --- a/src/battle_transition.c +++ b/src/battle_transition.c @@ -655,7 +655,7 @@ static void Task_BattleTransition(u8 taskId) static bool8 Transition_StartIntro(struct Task *task) { SetWeatherScreenFadeOut(); - CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, sizeof(gPlttBufferUnfaded)); + CpuCopy32(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE); if (sTasks_Intro[task->tTransitionId] != NULL) { CreateTask(sTasks_Intro[task->tTransitionId], 4); @@ -937,7 +937,7 @@ static bool8 BigPokeball_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuFill16(0, tilemap, BG_SCREEN_SIZE); CpuCopy16(sBigPokeball_Gfx, tileset, sizeof(sBigPokeball_Gfx)); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); + LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } @@ -1108,7 +1108,7 @@ static bool8 PokeballsTrail_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sSlidingPokeball_Tilemap, tileset, sizeof(sSlidingPokeball_Tilemap)); CpuFill32(0, tilemap, BG_SCREEN_SIZE); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); + LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } @@ -1906,8 +1906,8 @@ static bool8 Mugshot_SetGfx(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sMugshotBanner_Gfx, tileset, sizeof(sMugshotBanner_Gfx)); - LoadPalette(sOpponentMugshotsPals[task->tMugshotId], 0xF0, 0x20); - LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], 0xFA, 0xC); + LoadPalette(sOpponentMugshotsPals[task->tMugshotId], BG_PLTT_ID(15), PLTT_SIZE_4BPP); + LoadPalette(sPlayerMugshotsPals[gSaveBlock2Ptr->playerGender], BG_PLTT_ID(15) + 10, PLTT_SIZEOF(16 - 10)); for (i = 0; i < 20; i++) for (j = 0; j < 32; j++, mugshotsMap++) @@ -2588,7 +2588,7 @@ static bool8 GridSquares_Init(struct Task *task) GetBg0TilesDst(&tilemap, &tileset); CpuCopy16(sGridSquare_Gfx, tileset, 0x20); CpuFill16(0xF0 << 8, tilemap, BG_SCREEN_SIZE); - LoadPalette(sFieldEffectPal_Pokeball, 0xF0, sizeof(sFieldEffectPal_Pokeball)); + LoadPalette(sFieldEffectPal_Pokeball, BG_PLTT_ID(15), sizeof(sFieldEffectPal_Pokeball)); task->tState++; return FALSE; } diff --git a/src/berry_crush.c b/src/berry_crush.c index 4adf42a6a..4412827b5 100644 --- a/src/berry_crush.c +++ b/src/berry_crush.c @@ -548,7 +548,7 @@ static const struct WindowTemplate sWindowTemplate_BerryCrushRankings = { .tilemapTop = 4, .width = 24, .height = 13, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x001 }; @@ -559,7 +559,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = { .tilemapTop = 0, .width = 9, .height = 2, - .paletteNum = 0x8, + .paletteNum = 8, .baseBlock = 0x3ed }, { .bg = 0, @@ -567,7 +567,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = { .tilemapTop = 3, .width = 9, .height = 2, - .paletteNum = 0x8, + .paletteNum = 8, .baseBlock = 0x3db }, { .bg = 0, @@ -575,7 +575,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = { .tilemapTop = 6, .width = 9, .height = 2, - .paletteNum = 0x8, + .paletteNum = 8, .baseBlock = 0x3c9 }, { .bg = 0, @@ -583,7 +583,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = { .tilemapTop = 3, .width = 9, .height = 2, - .paletteNum = 0x8, + .paletteNum = 8, .baseBlock = 0x3b7 }, { .bg = 0, @@ -591,7 +591,7 @@ static const struct WindowTemplate sWindowTemplates_PlayerNames[] = { .tilemapTop = 6, .width = 9, .height = 2, - .paletteNum = 0x8, + .paletteNum = 8, .baseBlock = 0x3a5 }, DUMMY_WIN_TEMPLATE }; @@ -604,7 +604,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = { .tilemapTop = 2, .width = 22, .height = 16, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x001 }, [STATE_RESULTS_RANDOM - RESULTS_STATE_START] = { @@ -613,7 +613,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = { .tilemapTop = 2, .width = 22, .height = 16, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x001 }, [STATE_RESULTS_CRUSHING - RESULTS_STATE_START] = { @@ -622,7 +622,7 @@ static const struct WindowTemplate sWindowTemplates_Results[] = { .tilemapTop = 2, .width = 24, .height = 16, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x001 }, DUMMY_WIN_TEMPLATE }; @@ -2551,7 +2551,7 @@ static s32 ShowGameDisplay(void) gPaletteFade.bufferTransferDisabled = TRUE; break; case 7: - LoadPalette(gBerryCrush_Crusher_Pal, 0, 0x180); + LoadPalette(gBerryCrush_Crusher_Pal, BG_PLTT_ID(0), 12 * PLTT_SIZE_4BPP); CopyToBgTilemapBuffer(1, sCrusherTop_Tilemap, 0, 0); CopyToBgTilemapBuffer(2, sContainerCap_Tilemap, 0, 0); CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0); @@ -3046,7 +3046,7 @@ static bool32 OpenResultsWindow(struct BerryCrushGame * game, struct BerryCrushG FillWindowPixelBuffer(spriteManager->resultsWindowId, PIXEL_FILL(0)); break; case 2: - LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, 0xD0); + LoadStdWindowGfx(spriteManager->resultsWindowId, 0x21D, BG_PLTT_ID(13)); DrawStdFrameWithCustomTileAndPalette(spriteManager->resultsWindowId, FALSE, 541, 13); break; case 3: @@ -3105,8 +3105,8 @@ static void Task_ShowBerryCrushRankings(u8 taskId) tWindowId = AddWindow(&sWindowTemplate_BerryCrushRankings); PutWindowTilemap(tWindowId); FillWindowPixelBuffer(tWindowId, PIXEL_FILL(0)); - LoadStdWindowGfx(tWindowId, 0x21D, 0xD0); - DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 0xD); + LoadStdWindowGfx(tWindowId, 0x21D, BG_PLTT_ID(13)); + DrawStdFrameWithCustomTileAndPalette(tWindowId, 0, 0x21D, 13); break; case 1: xPos = 96 - GetStringWidth(FONT_NORMAL, gText_BerryCrush2, -1) / 2u; diff --git a/src/berry_pouch.c b/src/berry_pouch.c index e2f7302c9..545d1450c 100644 --- a/src/berry_pouch.c +++ b/src/berry_pouch.c @@ -244,116 +244,116 @@ static const struct WindowTemplate sWindowTemplates_Main[] = { static const struct WindowTemplate sWindowTemplates_Variable[] = { { - .bg = 0x02, - .tilemapLeft = 0x18, - .tilemapTop = 0x0f, - .width = 0x05, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 24, + .tilemapTop = 15, + .width = 5, + .height = 4, + .paletteNum = 15, .baseBlock = 0x1d1 }, { - .bg = 0x02, - .tilemapLeft = 0x11, - .tilemapTop = 0x09, - .width = 0x0c, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 17, + .tilemapTop = 9, + .width = 12, + .height = 4, + .paletteNum = 15, .baseBlock = 0x1d1 }, { - .bg = 0x02, - .tilemapLeft = 0x01, - .tilemapTop = 0x01, - .width = 0x08, - .height = 0x03, - .paletteNum = 0x0c, + .bg = 2, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 8, + .height = 3, + .paletteNum = 12, .baseBlock = 0x201 }, { - .bg = 0x02, - .tilemapLeft = 0x17, - .tilemapTop = 0x0f, - .width = 0x06, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 23, + .tilemapTop = 15, + .width = 6, + .height = 4, + .paletteNum = 15, .baseBlock = 0x219 }, { - .bg = 0x02, - .tilemapLeft = 0x15, - .tilemapTop = 0x09, - .width = 0x06, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 21, + .tilemapTop = 9, + .width = 6, + .height = 4, + .paletteNum = 15, .baseBlock = 0x219 }, { - .bg = 0x02, - .tilemapLeft = 0x02, - .tilemapTop = 0x0f, - .width = 0x1a, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 26, + .height = 4, + .paletteNum = 15, .baseBlock = 0x231 }, { - .bg = 0x02, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x0e, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 2, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 14, + .height = 4, + .paletteNum = 12, .baseBlock = 0x231 }, { - .bg = 0x02, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x0f, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 2, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 15, + .height = 4, + .paletteNum = 12, .baseBlock = 0x269 }, { - .bg = 0x02, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x10, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 2, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 16, + .height = 4, + .paletteNum = 12, .baseBlock = 0x2a5 }, { - .bg = 0x02, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x17, - .height = 0x04, - .paletteNum = 0x0c, + .bg = 2, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 23, + .height = 4, + .paletteNum = 12, .baseBlock = 0x2e5 }, { - .bg = 0x02, - .tilemapLeft = 0x16, - .tilemapTop = 0x11, - .width = 0x07, - .height = 0x02, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 22, + .tilemapTop = 17, + .width = 7, + .height = 2, + .paletteNum = 15, .baseBlock = 0x199 }, { - .bg = 0x02, - .tilemapLeft = 0x16, - .tilemapTop = 0x0f, - .width = 0x07, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 22, + .tilemapTop = 15, + .width = 7, + .height = 4, + .paletteNum = 15, .baseBlock = 0x199 }, { - .bg = 0x02, - .tilemapLeft = 0x16, - .tilemapTop = 0x0d, - .width = 0x07, - .height = 0x06, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 22, + .tilemapTop = 13, + .width = 7, + .height = 6, + .paletteNum = 15, .baseBlock = 0x199 }, { - .bg = 0x02, - .tilemapLeft = 0x16, - .tilemapTop = 0x0b, - .width = 0x07, - .height = 0x08, - .paletteNum = 0x0f, + .bg = 2, + .tilemapLeft = 22, + .tilemapTop = 11, + .width = 7, + .height = 8, + .paletteNum = 15, .baseBlock = 0x199 } }; @@ -619,9 +619,9 @@ static bool8 BerryPouchLoadGfx(void) } break; case 2: - LoadCompressedPalette(gBerryPouchBgPals, 0, 0x60); + LoadCompressedPalette(gBerryPouchBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); if (gSaveBlock2Ptr->playerGender != MALE) - LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, 0, 0x20); + LoadCompressedPalette(gBerryPouchBgPal0FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP); sResources->data[0]++; break; case 3: @@ -1412,10 +1412,10 @@ static void BerryPouchInitWindows(void) u8 i; InitWindows(sWindowTemplates_Main); DeactivateAllTextPrinters(); - LoadUserWindowGfx(0, 0x001, 0xE0); - LoadMenuMessageWindowGfx(0, 0x013, 0xD0); - LoadStdWindowGfx(0, 0x00A, 0xC0); - LoadPalette(gStandardMenuPalette, 0xF0, 0x20); + LoadUserWindowGfx(0, 0x001, BG_PLTT_ID(14)); + LoadMenuMessageWindowGfx(0, 0x013, BG_PLTT_ID(13)); + LoadStdWindowGfx(0, 0x00A, BG_PLTT_ID(12)); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP); for (i = 0; i < 3; i++) FillWindowPixelBuffer(i, PIXEL_FILL(0)); PutWindowTilemap(0); @@ -1439,9 +1439,9 @@ static u8 GetOrCreateVariableWindow(u8 winIdx) { sVariableWindowIds[winIdx] = AddWindow(&sWindowTemplates_Variable[winIdx]); if (winIdx == 2 || winIdx == 6 || winIdx == 7 || winIdx == 8 || winIdx == 9) - DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 0xC); + DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x00A, 12); else - DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE); + DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14); ScheduleBgCopyTilemapToVram(2); retval = sVariableWindowIds[winIdx]; } @@ -1450,7 +1450,7 @@ static u8 GetOrCreateVariableWindow(u8 winIdx) static void VariableWindowSetAltFrameTileAndPalette(u8 winIdx) { - DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 0xE); + DrawStdFrameWithCustomTileAndPalette(sVariableWindowIds[winIdx], FALSE, 0x001, 14); } static void DestroyVariableWindow(u8 winIdx) @@ -1491,12 +1491,12 @@ void DisplayItemMessageInBerryPouch(u8 taskId, u8 fontId, const u8 * str, TaskFu static void CreateYesNoMenuWin3(u8 taskId, const struct YesNoFuncTable *ptrs) { - CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[3], FONT_NORMAL, 0, 2, 0x001, 0xE, ptrs); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[3], FONT_NORMAL, 0, 2, 0x001, 14, ptrs); } static void CreateYesNoMenuWin4(u8 taskId, const struct YesNoFuncTable *ptrs) { - CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], FONT_NORMAL, 0, 2, 0x001, 0xE, ptrs); + CreateYesNoMenuWithCallbacks(taskId, &sWindowTemplates_Variable[4], FONT_NORMAL, 0, 2, 0x001, 14, ptrs); } static void PrintMoneyInWin2(void) diff --git a/src/berry_powder.c b/src/berry_powder.c index 044810e94..d5090e0dd 100644 --- a/src/berry_powder.c +++ b/src/berry_powder.c @@ -2,6 +2,7 @@ #include "event_data.h" #include "load_save.h" #include "menu.h" +#include "palette.h" #include "quest_log.h" #include "script_menu.h" #include "string_util.h" @@ -120,8 +121,8 @@ void DisplayBerryPowderVendorMenu(void) sBerryPowderVendorWindowId = AddWindow(&template); FillWindowPixelBuffer(sBerryPowderVendorWindowId, 0); PutWindowTilemap(sBerryPowderVendorWindowId); - LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, 0xD0); - DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 0xD, GetBerryPowder()); + LoadStdWindowGfx(sBerryPowderVendorWindowId, 0x21D, BG_PLTT_ID(13)); + DrawPlayerPowderAmount(sBerryPowderVendorWindowId, 0x21D, 13, GetBerryPowder()); } void RemoveBerryPowderVendorMenu(void) diff --git a/src/bike.c b/src/bike.c index ddaae0fa6..be9cd8e50 100644 --- a/src/bike.c +++ b/src/bike.c @@ -338,7 +338,7 @@ void BikeClearState(u32 directionHistory, u32 abStartSelectHistory) gPlayerAvatar.acroBikeState = BIKE_STATE_NORMAL; gPlayerAvatar.newDirBackup = 0; gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; gPlayerAvatar.directionHistory = directionHistory; gPlayerAvatar.abStartSelectHistory = abStartSelectHistory; gPlayerAvatar.lastSpinTile = 0; @@ -355,21 +355,21 @@ void Bike_UpdateBikeCounterSpeed(u8 counter) static void Bike_SetBikeStill(void) { gPlayerAvatar.bikeFrameCounter = 0; - gPlayerAvatar.bikeSpeed = SPEED_STANDING; + gPlayerAvatar.bikeSpeed = PLAYER_SPEED_STANDING; } s16 GetPlayerSpeed(void) { - s16 machBikeSpeeds[] = { SPEED_NORMAL, SPEED_FAST, SPEED_FASTEST }; + s16 machBikeSpeeds[] = { PLAYER_SPEED_NORMAL, PLAYER_SPEED_FAST, PLAYER_SPEED_FASTEST }; if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_MACH_BIKE) return machBikeSpeeds[gPlayerAvatar.bikeFrameCounter]; else if (gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_ACRO_BIKE) - return SPEED_FASTER; + return PLAYER_SPEED_FASTER; else if (gPlayerAvatar.flags & (PLAYER_AVATAR_FLAG_SURFING | PLAYER_AVATAR_FLAG_DASH)) - return SPEED_FAST; + return PLAYER_SPEED_FAST; else - return SPEED_NORMAL; + return PLAYER_SPEED_NORMAL; } void Bike_HandleBumpySlopeJump(void) diff --git a/src/buy_menu_helpers.c b/src/buy_menu_helpers.c index 3a83da3d6..d08569d40 100644 --- a/src/buy_menu_helpers.c +++ b/src/buy_menu_helpers.c @@ -8,61 +8,62 @@ #include "new_menu_helpers.h" #include "menu.h" #include "shop.h" +#include "palette.h" static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] = { { - .bg = 0x0, - .tilemapLeft = 0x1, - .tilemapTop = 0x1, - .width = 0x8, - .height = 0x3, - .paletteNum = 0xF, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 8, + .height = 3, + .paletteNum = 15, .baseBlock = 0x27, }, { - .bg = 0x0, - .tilemapLeft = 0x1, - .tilemapTop = 0xB, - .width = 0xD, - .height = 0x2, - .paletteNum = 0xF, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 11, + .width = 13, + .height = 2, + .paletteNum = 15, .baseBlock = 0x3F, }, { - .bg = 0x0, - .tilemapLeft = 0x2, - .tilemapTop = 0xF, - .width = 0x1A, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 26, + .height = 4, + .paletteNum = 14, .baseBlock = 0x59, }, { - .bg = 0x0, - .tilemapLeft = 0x11, - .tilemapTop = 0x9, - .width = 0xC, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 17, + .tilemapTop = 9, + .width = 12, + .height = 4, + .paletteNum = 14, .baseBlock = 0xC1, }, { - .bg = 0x0, - .tilemapLeft = 0xB, - .tilemapTop = 0x1, - .width = 0x11, - .height = 0xC, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 11, + .tilemapTop = 1, + .width = 17, + .height = 12, + .paletteNum = 14, .baseBlock = 0xF1, }, { - .bg = 0x0, - .tilemapLeft = 0x5, - .tilemapTop = 0xE, - .width = 0x19, - .height = 0x6, - .paletteNum = 0xF, + .bg = 0, + .tilemapLeft = 5, + .tilemapTop = 14, + .width = 25, + .height = 6, + .paletteNum = 15, .baseBlock = 0x1BD, }, DUMMY_WIN_TEMPLATE, @@ -72,66 +73,66 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesNormal[] = static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] = { { - .bg = 0x0, - .tilemapLeft = 0x1, - .tilemapTop = 0x1, - .width = 0x8, - .height = 0x3, - .paletteNum = 0xF, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 8, + .height = 3, + .paletteNum = 15, .baseBlock = 0x27, }, { - .bg = 0x0, - .tilemapLeft = 0x1, - .tilemapTop = 0xB, - .width = 0xD, - .height = 0x2, - .paletteNum = 0xF, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 11, + .width = 13, + .height = 2, + .paletteNum = 15, .baseBlock = 0x3F, }, { - .bg = 0x0, - .tilemapLeft = 0x2, - .tilemapTop = 0xF, - .width = 0x1A, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 26, + .height = 4, + .paletteNum = 14, .baseBlock = 0x59, }, { - .bg = 0x0, - .tilemapLeft = 0x11, - .tilemapTop = 0x9, - .width = 0xC, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 17, + .tilemapTop = 9, + .width = 12, + .height = 4, + .paletteNum = 14, .baseBlock = 0xC1, }, { - .bg = 0x0, - .tilemapLeft = 0xB, - .tilemapTop = 0x1, - .width = 0x11, - .height = 0xA, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 11, + .tilemapTop = 1, + .width = 17, + .height = 10, + .paletteNum = 14, .baseBlock = 0xF1, }, { - .bg = 0x0, - .tilemapLeft = 0xC, - .tilemapTop = 0xC, - .width = 0x12, - .height = 0x8, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 12, + .tilemapTop = 12, + .width = 18, + .height = 8, + .paletteNum = 14, .baseBlock = 0x19B, }, { - .bg = 0x0, - .tilemapLeft = 0x1, - .tilemapTop = 0xE, - .width = 0xA, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 14, + .width = 10, + .height = 4, + .paletteNum = 14, .baseBlock = 0x22B, }, DUMMY_WIN_TEMPLATE, @@ -139,12 +140,12 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplatesTM[] = static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplate = { - .bg = 0x0, - .tilemapLeft = 0x15, - .tilemapTop = 0x9, - .width = 0x6, - .height = 0x4, - .paletteNum = 0xE, + .bg = 0, + .tilemapLeft = 21, + .tilemapTop = 9, + .width = 6, + .height = 4, + .paletteNum = 14, .baseBlock = 0xC1, }; @@ -162,9 +163,9 @@ void BuyMenuInitWindows(bool32 isSellingTM) else InitWindows(sShopBuyMenuWindowTemplatesTM); DeactivateAllTextPrinters(); - LoadUserWindowGfx(0, 0x1, 0xD0); - LoadMenuMessageWindowGfx(0, 0x13, 0xE0); - LoadStdWindowGfx(0, 0xA, 0xF0); + LoadUserWindowGfx(0, 0x1, BG_PLTT_ID(13)); + LoadMenuMessageWindowGfx(0, 0x13, BG_PLTT_ID(14)); + LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(15)); PutWindowTilemap(0); PutWindowTilemap(4); PutWindowTilemap(5); @@ -190,15 +191,15 @@ void BuyMenuDisplayMessage(u8 taskId, const u8 *text, TaskFunc callback) void BuyMenuQuantityBoxNormalBorder(u8 windowId, bool8 copyToVram) { - DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 0xD); + DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0x1, 13); } void BuyMenuQuantityBoxThinBorder(u8 windowId, bool8 copyToVram) { - DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 0xF); + DrawStdFrameWithCustomTileAndPalette(windowId, copyToVram, 0xA, 15); } void BuyMenuConfirmPurchase(u8 taskId, const struct YesNoFuncTable *yesNo) { - CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, FONT_NORMAL, 0, 2, 1, 0xD, yesNo); + CreateYesNoMenuWithCallbacks(taskId, &sShopBuyMenuYesNoWindowTemplate, FONT_NORMAL, 0, 2, 1, 13, yesNo); } diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index 83af4a123..c4cdcf9c4 100644 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -40,7 +40,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 5, .width = 6, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x00A }, { .bg = 0, @@ -48,7 +48,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 23, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x022 }, DUMMY_WIN_TEMPLATE }; @@ -101,16 +101,16 @@ static void Task_DrawClearSaveDataScreen(u8 taskId) SaveClearScreen_GpuInit(); break; case 3: - LoadStdWindowGfx(0, 0x001, 0xF0); - LoadStdWindowGfx(1, 0x001, 0xF0); + LoadStdWindowGfx(0, 0x001, BG_PLTT_ID(15)); + LoadStdWindowGfx(1, 0x001, BG_PLTT_ID(15)); break; case 4: - DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 0xF); + DrawStdFrameWithCustomTileAndPalette(1, TRUE, 0x001, 15); AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 3, 1, 1, sTextColor, 0, gText_ClearAllSaveData); CopyWindowToVram(1, COPYWIN_GFX); break; case 5: - CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 0xF, 1); + CreateYesNoMenu(&sWindowTemplates[0], FONT_NORMAL, 0, 2, 0x001, 15, 1); CopyBgTilemapBufferToVram(0); break; default: diff --git a/src/coins.c b/src/coins.c index cd68a9a87..f34f86053 100644 --- a/src/coins.c +++ b/src/coins.c @@ -84,8 +84,8 @@ void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y) sCoinsWindowId = AddWindow(&template); FillWindowPixelBuffer(sCoinsWindowId, 0); PutWindowTilemap(sCoinsWindowId); - LoadStdWindowGfx(sCoinsWindowId, 0x21D, 0xD0); - DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 0xD); + LoadStdWindowGfx(sCoinsWindowId, 0x21D, BG_PLTT_ID(13)); + DrawStdFrameWithCustomTileAndPalette(sCoinsWindowId, FALSE, 0x21D, 13); AddTextPrinterParameterized(sCoinsWindowId, FONT_NORMAL, gText_Coins_2, 0, 0, 0xFF, 0); PrintCoinsString(coinAmount); } diff --git a/src/credits.c b/src/credits.c index dda43e691..c0b449b6d 100644 --- a/src/credits.c +++ b/src/credits.c @@ -803,9 +803,9 @@ static bool32 DoOverworldMapScrollScene(u8 whichMon) SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(36, DISPLAY_HEIGHT - 36)); SwitchWin1OffWin0On(); InitBgDarkenEffect(); - Menu_LoadStdPalAt(0xF0); - gPlttBufferUnfaded[0xFF] = RGB_BLACK; - gPlttBufferFaded[0xFF] = RGB_BLACK; + Menu_LoadStdPalAt(BG_PLTT_ID(15)); + gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK; + gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK; return TRUE; default: return FALSE; @@ -827,9 +827,9 @@ static s32 RollCredits(void) case CREDITSSCENE_SETUP_DARKEN_EFFECT: InitBgDarkenEffect(); CreateCreditsWindow(); - Menu_LoadStdPalAt(0xF0); - gPlttBufferUnfaded[0xFF] = RGB_BLACK; - gPlttBufferFaded[0xFF] = RGB_BLACK; + Menu_LoadStdPalAt(BG_PLTT_ID(15)); + gPlttBufferUnfaded[BG_PLTT_ID(15) + 15] = RGB_BLACK; + gPlttBufferFaded[BG_PLTT_ID(15) + 15] = RGB_BLACK; sCreditsMgr->mainseqno = CREDITSSCENE_OPEN_WIN0; return 0; case CREDITSSCENE_OPEN_WIN0: @@ -1128,15 +1128,15 @@ static bool32 DoCreditsMonScene(void) DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tiles, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(1, gCreditsMonPokeball_Tilemap, 0x500, 0, 1); DecompressAndLoadBgGfxUsingHeap(2, sCreditsMonCircle_Tilemap, 0x400, 0, 1); - LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], 0, 0x20); - LoadPalette(sCreditsMonCircle_Pal, 0xF0, 0x20); + LoadPalette(gCreditsMonPokeball_Pals[sCreditsMgr->whichMon], BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(sCreditsMonCircle_Pal, BG_PLTT_ID(15), sizeof(sCreditsMonCircle_Pal)); LoadCreditsMonPic(sCreditsMgr->whichMon); SetVBlankCallback(VBlankCB); EnableInterrupts(INTR_FLAG_VBLANK); sCreditsMgr->subseqno++; break; case 1: - FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, PIXEL_FILL(1)); + FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17); PutWindowTilemap(0); CopyBgTilemapBufferToVram(2); CopyBgTilemapBufferToVram(1); @@ -1249,7 +1249,7 @@ static bool32 DoCopyrightOrTheEndGfxScene(void) ChangeBgY(0, 0, BG_COORD_SET); DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].tiles, 0x2000, 0, 0); DecompressAndLoadBgGfxUsingHeap(0, sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].map, 0x800, 0, 1); - LoadPalette(sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].palette, 0x00, 0x200); + LoadPalette(sCopyrightOrTheEndGfxHeaders[sCreditsMgr->whichMon].palette, BG_PLTT_ID(0), 16 * PLTT_SIZE_4BPP); SetVBlankCallback(VBlankCB); EnableInterrupts(INTR_FLAG_VBLANK); sCreditsMgr->subseqno++; @@ -1375,7 +1375,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->characterTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sPlayerMale_Pal, 0x1F0, sizeof(sPlayerMale_Pal)); + LoadPalette(sPlayerMale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerMale_Pal)); } else { @@ -1383,7 +1383,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->characterTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sPlayerFemale_Pal, 0x1F0, sizeof(sPlayerFemale_Pal)); + LoadPalette(sPlayerFemale_Pal, OBJ_PLTT_ID(15), sizeof(sPlayerFemale_Pal)); } break; case 1: @@ -1392,7 +1392,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->characterTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sRival_Pal, 0x1F0, sizeof(sRival_Pal)); + LoadPalette(sRival_Pal, OBJ_PLTT_ID(15), sizeof(sRival_Pal)); break; } sprTemplate = sPlayerOrRivalSpriteTemplate; @@ -1410,7 +1410,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->groundTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sGround_Grass_Pal, 0x1E0, sizeof(sGround_Grass_Pal)); + LoadPalette(sGround_Grass_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Grass_Pal)); sprTemplate = sGroundSpriteTemplate_Running; break; case 1: @@ -1418,7 +1418,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->groundTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sGround_Grass_Pal, 0x1E0, sizeof(sGround_Grass_Pal)); + LoadPalette(sGround_Grass_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Grass_Pal)); sprTemplate = sGroundSpriteTemplate_Static; break; case 2: @@ -1426,7 +1426,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->groundTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sGround_Dirt_Pal, 0x1E0, sizeof(sGround_Dirt_Pal)); + LoadPalette(sGround_Dirt_Pal, OBJ_PLTT_ID(14), sizeof(sGround_Dirt_Pal)); sprTemplate = sGroundSpriteTemplate_Running; break; case 3: @@ -1434,7 +1434,7 @@ static void LoadPlayerOrRivalSprite(u8 whichScene) sprSheet.size = 0x3000; sprSheet.tag = data->groundTilesTag; LoadCompressedSpriteSheet(&sprSheet); - LoadPalette(sGround_City_Pal, 0x1E0, sizeof(sGround_City_Pal)); + LoadPalette(sGround_City_Pal, OBJ_PLTT_ID(14), sizeof(sGround_City_Pal)); sprTemplate = sGroundSpriteTemplate_Running; break; } diff --git a/src/data/graphics/items.h b/src/data/graphics/items.h index ee86b454c..b5a5a6bb7 100644 --- a/src/data/graphics/items.h +++ b/src/data/graphics/items.h @@ -1,672 +1,713 @@ -const u32 gFile_graphics_items_icons_question_mark_sheet[] = INCBIN_U32("graphics/items/icons/question_mark.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_question_mark_palette[] = INCBIN_U32("graphics/items/icon_palettes/question_mark.gbapal.lz"); +const u32 gItemIcon_QuestionMark[] = INCBIN_U32("graphics/items/icons/question_mark.4bpp.lz"); +const u32 gItemIconPalette_QuestionMark[] = INCBIN_U32("graphics/items/icon_palettes/question_mark.gbapal.lz"); -const u32 gFile_graphics_items_icons_return_to_field_arrow_sheet[] = INCBIN_U32("graphics/items/icons/return_to_field_arrow.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_return_to_field_arrow_palette[] = INCBIN_U32("graphics/items/icon_palettes/return_to_field_arrow.gbapal.lz"); +const u32 gItemIcon_ReturnToFieldArrow[] = INCBIN_U32("graphics/items/icons/return_to_field_arrow.4bpp.lz"); +const u32 gItemIconPalette_ReturnToFieldArrow[] = INCBIN_U32("graphics/items/icon_palettes/return_to_field_arrow.gbapal.lz"); -const u32 gFile_graphics_items_icons_master_ball_sheet[] = INCBIN_U32("graphics/items/icons/master_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_master_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/master_ball.gbapal.lz"); +// Pokeballs -const u32 gFile_graphics_items_icons_ultra_ball_sheet[] = INCBIN_U32("graphics/items/icons/ultra_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_ultra_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/ultra_ball.gbapal.lz"); +const u32 gItemIcon_MasterBall[] = INCBIN_U32("graphics/items/icons/master_ball.4bpp.lz"); +const u32 gItemIconPalette_MasterBall[] = INCBIN_U32("graphics/items/icon_palettes/master_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_great_ball_sheet[] = INCBIN_U32("graphics/items/icons/great_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_great_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/great_ball.gbapal.lz"); +const u32 gItemIcon_UltraBall[] = INCBIN_U32("graphics/items/icons/ultra_ball.4bpp.lz"); +const u32 gItemIconPalette_UltraBall[] = INCBIN_U32("graphics/items/icon_palettes/ultra_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_poke_ball_sheet[] = INCBIN_U32("graphics/items/icons/poke_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_poke_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/poke_ball.gbapal.lz"); +const u32 gItemIcon_GreatBall[] = INCBIN_U32("graphics/items/icons/great_ball.4bpp.lz"); +const u32 gItemIconPalette_GreatBall[] = INCBIN_U32("graphics/items/icon_palettes/great_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_safari_ball_sheet[] = INCBIN_U32("graphics/items/icons/safari_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_safari_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/safari_ball.gbapal.lz"); +const u32 gItemIcon_PokeBall[] = INCBIN_U32("graphics/items/icons/poke_ball.4bpp.lz"); +const u32 gItemIconPalette_PokeBall[] = INCBIN_U32("graphics/items/icon_palettes/poke_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_net_ball_sheet[] = INCBIN_U32("graphics/items/icons/net_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_net_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/net_ball.gbapal.lz"); +const u32 gItemIcon_SafariBall[] = INCBIN_U32("graphics/items/icons/safari_ball.4bpp.lz"); +const u32 gItemIconPalette_SafariBall[] = INCBIN_U32("graphics/items/icon_palettes/safari_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_dive_ball_sheet[] = INCBIN_U32("graphics/items/icons/dive_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_dive_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/dive_ball.gbapal.lz"); +const u32 gItemIcon_NetBall[] = INCBIN_U32("graphics/items/icons/net_ball.4bpp.lz"); +const u32 gItemIconPalette_NetBall[] = INCBIN_U32("graphics/items/icon_palettes/net_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_nest_ball_sheet[] = INCBIN_U32("graphics/items/icons/nest_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_nest_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/nest_ball.gbapal.lz"); +const u32 gItemIcon_DiveBall[] = INCBIN_U32("graphics/items/icons/dive_ball.4bpp.lz"); +const u32 gItemIconPalette_DiveBall[] = INCBIN_U32("graphics/items/icon_palettes/dive_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_repeat_ball_sheet[] = INCBIN_U32("graphics/items/icons/repeat_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_repeat_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/repeat_ball.gbapal.lz"); +const u32 gItemIcon_NestBall[] = INCBIN_U32("graphics/items/icons/nest_ball.4bpp.lz"); +const u32 gItemIconPalette_NestBall[] = INCBIN_U32("graphics/items/icon_palettes/nest_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_timer_ball_sheet[] = INCBIN_U32("graphics/items/icons/timer_ball.4bpp.lz"); +const u32 gItemIcon_RepeatBall[] = INCBIN_U32("graphics/items/icons/repeat_ball.4bpp.lz"); +const u32 gItemIconPalette_RepeatBall[] = INCBIN_U32("graphics/items/icon_palettes/repeat_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_luxury_ball_sheet[] = INCBIN_U32("graphics/items/icons/luxury_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_luxury_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/luxury_ball.gbapal.lz"); +const u32 gItemIcon_TimerBall[] = INCBIN_U32("graphics/items/icons/timer_ball.4bpp.lz"); -const u32 gFile_graphics_items_icons_premier_ball_sheet[] = INCBIN_U32("graphics/items/icons/premier_ball.4bpp.lz"); +const u32 gItemIcon_LuxuryBall[] = INCBIN_U32("graphics/items/icons/luxury_ball.4bpp.lz"); +const u32 gItemIconPalette_LuxuryBall[] = INCBIN_U32("graphics/items/icon_palettes/luxury_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_potion_sheet[] = INCBIN_U32("graphics/items/icons/potion.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_potion_palette[] = INCBIN_U32("graphics/items/icon_palettes/potion.gbapal.lz"); +const u32 gItemIcon_PremierBall[] = INCBIN_U32("graphics/items/icons/premier_ball.4bpp.lz"); -const u32 gFile_graphics_items_icons_antidote_sheet[] = INCBIN_U32("graphics/items/icons/antidote.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_antidote_palette[] = INCBIN_U32("graphics/items/icon_palettes/antidote.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_burn_heal_palette[] = INCBIN_U32("graphics/items/icon_palettes/burn_heal.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_ice_heal_palette[] = INCBIN_U32("graphics/items/icon_palettes/ice_heal.gbapal.lz"); -const u32 gFile_graphics_items_icons_status_heal_sheet[] = INCBIN_U32("graphics/items/icons/status_heal.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_awakening_palette[] = INCBIN_U32("graphics/items/icon_palettes/awakening.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_paralyze_heal_palette[] = INCBIN_U32("graphics/items/icon_palettes/paralyze_heal.gbapal.lz"); +// Medicine -const u32 gFile_graphics_items_icons_large_potion_sheet[] = INCBIN_U32("graphics/items/icons/large_potion.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_full_restore_palette[] = INCBIN_U32("graphics/items/icon_palettes/full_restore.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_max_potion_palette[] = INCBIN_U32("graphics/items/icon_palettes/max_potion.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_hyper_potion_palette[] = INCBIN_U32("graphics/items/icon_palettes/hyper_potion.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_super_potion_palette[] = INCBIN_U32("graphics/items/icon_palettes/super_potion.gbapal.lz"); +const u32 gItemIcon_Potion[] = INCBIN_U32("graphics/items/icons/potion.4bpp.lz"); +const u32 gItemIconPalette_Potion[] = INCBIN_U32("graphics/items/icon_palettes/potion.gbapal.lz"); -const u32 gFile_graphics_items_icons_full_heal_sheet[] = INCBIN_U32("graphics/items/icons/full_heal.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_full_heal_palette[] = INCBIN_U32("graphics/items/icon_palettes/full_heal.gbapal.lz"); +const u32 gItemIcon_Antidote[] = INCBIN_U32("graphics/items/icons/antidote.4bpp.lz"); +const u32 gItemIconPalette_Antidote[] = INCBIN_U32("graphics/items/icon_palettes/antidote.gbapal.lz"); -const u32 gFile_graphics_items_icons_revive_sheet[] = INCBIN_U32("graphics/items/icons/revive.4bpp.lz"); -const u32 gFile_graphics_items_icons_max_revive_sheet[] = INCBIN_U32("graphics/items/icons/max_revive.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_revive_palette[] = INCBIN_U32("graphics/items/icon_palettes/revive.gbapal.lz"); +const u32 gItemIconPalette_BurnHeal[] = INCBIN_U32("graphics/items/icon_palettes/burn_heal.gbapal.lz"); +const u32 gItemIconPalette_IceHeal[] = INCBIN_U32("graphics/items/icon_palettes/ice_heal.gbapal.lz"); +const u32 gItemIcon_StatusHeal[] = INCBIN_U32("graphics/items/icons/status_heal.4bpp.lz"); +const u32 gItemIconPalette_Awakening[] = INCBIN_U32("graphics/items/icon_palettes/awakening.gbapal.lz"); +const u32 gItemIconPalette_ParalyzeHeal[] = INCBIN_U32("graphics/items/icon_palettes/paralyze_heal.gbapal.lz"); -const u32 gFile_graphics_items_icons_fresh_water_sheet[] = INCBIN_U32("graphics/items/icons/fresh_water.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fresh_water_palette[] = INCBIN_U32("graphics/items/icon_palettes/fresh_water.gbapal.lz"); +const u32 gItemIcon_LargePotion[] = INCBIN_U32("graphics/items/icons/large_potion.4bpp.lz"); +const u32 gItemIconPalette_FullRestore[] = INCBIN_U32("graphics/items/icon_palettes/full_restore.gbapal.lz"); +const u32 gItemIconPalette_MaxPotion[] = INCBIN_U32("graphics/items/icon_palettes/max_potion.gbapal.lz"); -const u32 gFile_graphics_items_icons_soda_pop_sheet[] = INCBIN_U32("graphics/items/icons/soda_pop.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_soda_pop_palette[] = INCBIN_U32("graphics/items/icon_palettes/soda_pop.gbapal.lz"); +const u32 gItemIconPalette_HyperPotion[] = INCBIN_U32("graphics/items/icon_palettes/hyper_potion.gbapal.lz"); -const u32 gFile_graphics_items_icons_lemonade_sheet[] = INCBIN_U32("graphics/items/icons/lemonade.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lemonade_palette[] = INCBIN_U32("graphics/items/icon_palettes/lemonade.gbapal.lz"); +const u32 gItemIconPalette_SuperPotion[] = INCBIN_U32("graphics/items/icon_palettes/super_potion.gbapal.lz"); -const u32 gFile_graphics_items_icons_moomoo_milk_sheet[] = INCBIN_U32("graphics/items/icons/moomoo_milk.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_moomoo_milk_palette[] = INCBIN_U32("graphics/items/icon_palettes/moomoo_milk.gbapal.lz"); +const u32 gItemIcon_FullHeal[] = INCBIN_U32("graphics/items/icons/full_heal.4bpp.lz"); +const u32 gItemIconPalette_FullHeal[] = INCBIN_U32("graphics/items/icon_palettes/full_heal.gbapal.lz"); -const u32 gFile_graphics_items_icons_powder_sheet[] = INCBIN_U32("graphics/items/icons/powder.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_energy_powder_palette[] = INCBIN_U32("graphics/items/icon_palettes/energy_powder.gbapal.lz"); +const u32 gItemIcon_Revive[] = INCBIN_U32("graphics/items/icons/revive.4bpp.lz"); -const u32 gFile_graphics_items_icons_energy_root_sheet[] = INCBIN_U32("graphics/items/icons/energy_root.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_energy_root_palette[] = INCBIN_U32("graphics/items/icon_palettes/energy_root.gbapal.lz"); +const u32 gItemIcon_MaxRevive[] = INCBIN_U32("graphics/items/icons/max_revive.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_heal_powder_palette[] = INCBIN_U32("graphics/items/icon_palettes/heal_powder.gbapal.lz"); +const u32 gItemIconPalette_Revive[] = INCBIN_U32("graphics/items/icon_palettes/revive.gbapal.lz"); -const u32 gFile_graphics_items_icons_revival_herb_sheet[] = INCBIN_U32("graphics/items/icons/revival_herb.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_revival_herb_palette[] = INCBIN_U32("graphics/items/icon_palettes/revival_herb.gbapal.lz"); +const u32 gItemIcon_FreshWater[] = INCBIN_U32("graphics/items/icons/fresh_water.4bpp.lz"); +const u32 gItemIconPalette_FreshWater[] = INCBIN_U32("graphics/items/icon_palettes/fresh_water.gbapal.lz"); -const u32 gFile_graphics_items_icons_ether_sheet[] = INCBIN_U32("graphics/items/icons/ether.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_ether_palette[] = INCBIN_U32("graphics/items/icon_palettes/ether.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_max_ether_palette[] = INCBIN_U32("graphics/items/icon_palettes/max_ether.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_elixir_palette[] = INCBIN_U32("graphics/items/icon_palettes/elixir.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_max_elixir_palette[] = INCBIN_U32("graphics/items/icon_palettes/max_elixir.gbapal.lz"); +const u32 gItemIcon_SodaPop[] = INCBIN_U32("graphics/items/icons/soda_pop.4bpp.lz"); +const u32 gItemIconPalette_SodaPop[] = INCBIN_U32("graphics/items/icon_palettes/soda_pop.gbapal.lz"); -const u32 gFile_graphics_items_icons_lava_cookie_sheet[] = INCBIN_U32("graphics/items/icons/lava_cookie.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette[] = INCBIN_U32("graphics/items/icon_palettes/lava_cookie_and_letter.gbapal.lz"); +const u32 gItemIcon_Lemonade[] = INCBIN_U32("graphics/items/icons/lemonade.4bpp.lz"); +const u32 gItemIconPalette_Lemonade[] = INCBIN_U32("graphics/items/icon_palettes/lemonade.gbapal.lz"); -const u32 gFile_graphics_items_icons_flute_sheet[] = INCBIN_U32("graphics/items/icons/flute.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_blue_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/blue_flute.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_yellow_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/yellow_flute.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_red_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/red_flute.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_black_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/black_flute.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_white_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/white_flute.gbapal.lz"); +const u32 gItemIcon_MoomooMilk[] = INCBIN_U32("graphics/items/icons/moomoo_milk.4bpp.lz"); +const u32 gItemIconPalette_MoomooMilk[] = INCBIN_U32("graphics/items/icon_palettes/moomoo_milk.gbapal.lz"); -const u32 gFile_graphics_items_icons_berry_juice_sheet[] = INCBIN_U32("graphics/items/icons/berry_juice.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_berry_juice_palette[] = INCBIN_U32("graphics/items/icon_palettes/berry_juice.gbapal.lz"); +const u32 gItemIcon_Powder[] = INCBIN_U32("graphics/items/icons/powder.4bpp.lz"); +const u32 gItemIconPalette_EnergyPowder[] = INCBIN_U32("graphics/items/icon_palettes/energy_powder.gbapal.lz"); -const u32 gFile_graphics_items_icons_sacred_ash_sheet[] = INCBIN_U32("graphics/items/icons/sacred_ash.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sacred_ash_palette[] = INCBIN_U32("graphics/items/icon_palettes/sacred_ash.gbapal.lz"); +const u32 gItemIcon_EnergyRoot[] = INCBIN_U32("graphics/items/icons/energy_root.4bpp.lz"); +const u32 gItemIconPalette_EnergyRoot[] = INCBIN_U32("graphics/items/icon_palettes/energy_root.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_shoal_salt_palette[] = INCBIN_U32("graphics/items/icon_palettes/shoal_salt.gbapal.lz"); -const u32 gFile_graphics_items_icons_shoal_shell_sheet[] = INCBIN_U32("graphics/items/icons/shoal_shell.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_shell_palette[] = INCBIN_U32("graphics/items/icon_palettes/shell.gbapal.lz"); +const u32 gItemIconPalette_HealPowder[] = INCBIN_U32("graphics/items/icon_palettes/heal_powder.gbapal.lz"); -const u32 gFile_graphics_items_icons_shard_sheet[] = INCBIN_U32("graphics/items/icons/shard.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_red_shard_palette[] = INCBIN_U32("graphics/items/icon_palettes/red_shard.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_blue_shard_palette[] = INCBIN_U32("graphics/items/icon_palettes/blue_shard.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_yellow_shard_palette[] = INCBIN_U32("graphics/items/icon_palettes/yellow_shard.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_green_shard_palette[] = INCBIN_U32("graphics/items/icon_palettes/green_shard.gbapal.lz"); +const u32 gItemIcon_RevivalHerb[] = INCBIN_U32("graphics/items/icons/revival_herb.4bpp.lz"); +const u32 gItemIconPalette_RevivalHerb[] = INCBIN_U32("graphics/items/icon_palettes/revival_herb.gbapal.lz"); -const u32 gFile_graphics_items_icons_hp_up_sheet[] = INCBIN_U32("graphics/items/icons/hp_up.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_hp_up_palette[] = INCBIN_U32("graphics/items/icon_palettes/hp_up.gbapal.lz"); +const u32 gItemIcon_Ether[] = INCBIN_U32("graphics/items/icons/ether.4bpp.lz"); +const u32 gItemIconPalette_Ether[] = INCBIN_U32("graphics/items/icon_palettes/ether.gbapal.lz"); +const u32 gItemIconPalette_MaxEther[] = INCBIN_U32("graphics/items/icon_palettes/max_ether.gbapal.lz"); +const u32 gItemIconPalette_Elixir[] = INCBIN_U32("graphics/items/icon_palettes/elixir.gbapal.lz"); +const u32 gItemIconPalette_MaxElixir[] = INCBIN_U32("graphics/items/icon_palettes/max_elixir.gbapal.lz"); -const u32 gFile_graphics_items_icons_vitamin_sheet[] = INCBIN_U32("graphics/items/icons/vitamin.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_protein_palette[] = INCBIN_U32("graphics/items/icon_palettes/protein.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_iron_palette[] = INCBIN_U32("graphics/items/icon_palettes/iron.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_carbos_palette[] = INCBIN_U32("graphics/items/icon_palettes/carbos.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_calcium_palette[] = INCBIN_U32("graphics/items/icon_palettes/calcium.gbapal.lz"); +const u32 gItemIcon_LavaCookie[] = INCBIN_U32("graphics/items/icons/lava_cookie.4bpp.lz"); +const u32 gItemIconPalette_LavaCookieAndLetter[] = INCBIN_U32("graphics/items/icon_palettes/lava_cookie_and_letter.gbapal.lz"); -const u32 gFile_graphics_items_icons_rare_candy_sheet[] = INCBIN_U32("graphics/items/icons/rare_candy.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_rare_candy_palette[] = INCBIN_U32("graphics/items/icon_palettes/rare_candy.gbapal.lz"); +const u32 gItemIcon_Flute[] = INCBIN_U32("graphics/items/icons/flute.4bpp.lz"); +const u32 gItemIconPalette_BlueFlute[] = INCBIN_U32("graphics/items/icon_palettes/blue_flute.gbapal.lz"); +const u32 gItemIconPalette_YellowFlute[] = INCBIN_U32("graphics/items/icon_palettes/yellow_flute.gbapal.lz"); +const u32 gItemIconPalette_RedFlute[] = INCBIN_U32("graphics/items/icon_palettes/red_flute.gbapal.lz"); +const u32 gItemIconPalette_BlackFlute[] = INCBIN_U32("graphics/items/icon_palettes/black_flute.gbapal.lz"); +const u32 gItemIconPalette_WhiteFlute[] = INCBIN_U32("graphics/items/icon_palettes/white_flute.gbapal.lz"); -const u32 gFile_graphics_items_icons_pp_up_sheet[] = INCBIN_U32("graphics/items/icons/pp_up.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pp_up_palette[] = INCBIN_U32("graphics/items/icon_palettes/pp_up.gbapal.lz"); +const u32 gItemIcon_BerryJuice[] = INCBIN_U32("graphics/items/icons/berry_juice.4bpp.lz"); +const u32 gItemIconPalette_BerryJuice[] = INCBIN_U32("graphics/items/icon_palettes/berry_juice.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_zinc_palette[] = INCBIN_U32("graphics/items/icon_palettes/zinc.gbapal.lz"); +const u32 gItemIcon_SacredAsh[] = INCBIN_U32("graphics/items/icons/sacred_ash.4bpp.lz"); +const u32 gItemIconPalette_SacredAsh[] = INCBIN_U32("graphics/items/icon_palettes/sacred_ash.gbapal.lz"); -const u32 gFile_graphics_items_icons_pp_max_sheet[] = INCBIN_U32("graphics/items/icons/pp_max.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pp_max_palette[] = INCBIN_U32("graphics/items/icon_palettes/pp_max.gbapal.lz"); +// Collectibles -const u32 gFile_graphics_items_icon_palettes_guard_spec_palette[] = INCBIN_U32("graphics/items/icon_palettes/guard_spec.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_dire_hit_palette[] = INCBIN_U32("graphics/items/icon_palettes/dire_hit.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_x_attack_palette[] = INCBIN_U32("graphics/items/icon_palettes/x_attack.gbapal.lz"); -const u32 gFile_graphics_items_icons_battle_stat_item_sheet[] = INCBIN_U32("graphics/items/icons/battle_stat_item.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_x_defend_palette[] = INCBIN_U32("graphics/items/icon_palettes/x_defend.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_x_speed_palette[] = INCBIN_U32("graphics/items/icon_palettes/x_speed.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_x_accuracy_palette[] = INCBIN_U32("graphics/items/icon_palettes/x_accuracy.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_x_special_palette[] = INCBIN_U32("graphics/items/icon_palettes/x_special.gbapal.lz"); +const u32 gItemIconPalette_ShoalSalt[] = INCBIN_U32("graphics/items/icon_palettes/shoal_salt.gbapal.lz"); -const u32 gFile_graphics_items_icons_poke_doll_sheet[] = INCBIN_U32("graphics/items/icons/poke_doll.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_poke_doll_palette[] = INCBIN_U32("graphics/items/icon_palettes/poke_doll.gbapal.lz"); +const u32 gItemIcon_ShoalShell[] = INCBIN_U32("graphics/items/icons/shoal_shell.4bpp.lz"); +const u32 gItemIconPalette_Shell[] = INCBIN_U32("graphics/items/icon_palettes/shell.gbapal.lz"); -const u32 gFile_graphics_items_icons_fluffy_tail_sheet[] = INCBIN_U32("graphics/items/icons/fluffy_tail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fluffy_tail_palette[] = INCBIN_U32("graphics/items/icon_palettes/fluffy_tail.gbapal.lz"); +const u32 gItemIcon_Shard[] = INCBIN_U32("graphics/items/icons/shard.4bpp.lz"); +const u32 gItemIconPalette_RedShard[] = INCBIN_U32("graphics/items/icon_palettes/red_shard.gbapal.lz"); +const u32 gItemIconPalette_BlueShard[] = INCBIN_U32("graphics/items/icon_palettes/blue_shard.gbapal.lz"); +const u32 gItemIconPalette_YellowShard[] = INCBIN_U32("graphics/items/icon_palettes/yellow_shard.gbapal.lz"); +const u32 gItemIconPalette_GreenShard[] = INCBIN_U32("graphics/items/icon_palettes/green_shard.gbapal.lz"); -const u32 gFile_graphics_items_icons_repel_sheet[] = INCBIN_U32("graphics/items/icons/repel.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_super_repel_palette[] = INCBIN_U32("graphics/items/icon_palettes/super_repel.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_max_repel_palette[] = INCBIN_U32("graphics/items/icon_palettes/max_repel.gbapal.lz"); +// Vitamins -const u32 gFile_graphics_items_icons_escape_rope_sheet[] = INCBIN_U32("graphics/items/icons/escape_rope.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_escape_rope_palette[] = INCBIN_U32("graphics/items/icon_palettes/escape_rope.gbapal.lz"); +const u32 gItemIcon_HPUp[] = INCBIN_U32("graphics/items/icons/hp_up.4bpp.lz"); +const u32 gItemIconPalette_HPUp[] = INCBIN_U32("graphics/items/icon_palettes/hp_up.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_repel_palette[] = INCBIN_U32("graphics/items/icon_palettes/repel.gbapal.lz"); +const u32 gItemIcon_Vitamin[] = INCBIN_U32("graphics/items/icons/vitamin.4bpp.lz"); +const u32 gItemIconPalette_Protein[] = INCBIN_U32("graphics/items/icon_palettes/protein.gbapal.lz"); +const u32 gItemIconPalette_Iron[] = INCBIN_U32("graphics/items/icon_palettes/iron.gbapal.lz"); +const u32 gItemIconPalette_Carbos[] = INCBIN_U32("graphics/items/icon_palettes/carbos.gbapal.lz"); +const u32 gItemIconPalette_Calcium[] = INCBIN_U32("graphics/items/icon_palettes/calcium.gbapal.lz"); -const u32 gFile_graphics_items_icons_sun_stone_sheet[] = INCBIN_U32("graphics/items/icons/sun_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sun_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/sun_stone.gbapal.lz"); +const u32 gItemIcon_RareCandy[] = INCBIN_U32("graphics/items/icons/rare_candy.4bpp.lz"); +const u32 gItemIconPalette_RareCandy[] = INCBIN_U32("graphics/items/icon_palettes/rare_candy.gbapal.lz"); -const u32 gFile_graphics_items_icons_moon_stone_sheet[] = INCBIN_U32("graphics/items/icons/moon_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_moon_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/moon_stone.gbapal.lz"); +const u32 gItemIcon_PPUp[] = INCBIN_U32("graphics/items/icons/pp_up.4bpp.lz"); +const u32 gItemIconPalette_PPUp[] = INCBIN_U32("graphics/items/icon_palettes/pp_up.gbapal.lz"); -const u32 gFile_graphics_items_icons_fire_stone_sheet[] = INCBIN_U32("graphics/items/icons/fire_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fire_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/fire_stone.gbapal.lz"); +const u32 gItemIconPalette_Zinc[] = INCBIN_U32("graphics/items/icon_palettes/zinc.gbapal.lz"); -const u32 gFile_graphics_items_icons_thunder_stone_sheet[] = INCBIN_U32("graphics/items/icons/thunder_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_thunder_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/thunder_stone.gbapal.lz"); +const u32 gItemIcon_PPMax[] = INCBIN_U32("graphics/items/icons/pp_max.4bpp.lz"); +const u32 gItemIconPalette_PPMax[] = INCBIN_U32("graphics/items/icon_palettes/pp_max.gbapal.lz"); -const u32 gFile_graphics_items_icons_water_stone_sheet[] = INCBIN_U32("graphics/items/icons/water_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_water_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/water_stone.gbapal.lz"); +// Battle items -const u32 gFile_graphics_items_icons_leaf_stone_sheet[] = INCBIN_U32("graphics/items/icons/leaf_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_leaf_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/leaf_stone.gbapal.lz"); +const u32 gItemIconPalette_GuardSpec[] = INCBIN_U32("graphics/items/icon_palettes/guard_spec.gbapal.lz"); +const u32 gItemIconPalette_DireHit[] = INCBIN_U32("graphics/items/icon_palettes/dire_hit.gbapal.lz"); +const u32 gItemIconPalette_XAttack[] = INCBIN_U32("graphics/items/icon_palettes/x_attack.gbapal.lz"); +const u32 gItemIcon_BattleStatItem[] = INCBIN_U32("graphics/items/icons/battle_stat_item.4bpp.lz"); +const u32 gItemIconPalette_XDefend[] = INCBIN_U32("graphics/items/icon_palettes/x_defend.gbapal.lz"); +const u32 gItemIconPalette_XSpeed[] = INCBIN_U32("graphics/items/icon_palettes/x_speed.gbapal.lz"); +const u32 gItemIconPalette_XAccuracy[] = INCBIN_U32("graphics/items/icon_palettes/x_accuracy.gbapal.lz"); +const u32 gItemIconPalette_XSpecial[] = INCBIN_U32("graphics/items/icon_palettes/x_special.gbapal.lz"); -const u32 gFile_graphics_items_icons_tiny_mushroom_sheet[] = INCBIN_U32("graphics/items/icons/tiny_mushroom.4bpp.lz"); -const u32 gFile_graphics_items_icons_big_mushroom_sheet[] = INCBIN_U32("graphics/items/icons/big_mushroom.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mushroom_palette[] = INCBIN_U32("graphics/items/icon_palettes/mushroom.gbapal.lz"); +const u32 gItemIcon_PokeDoll[] = INCBIN_U32("graphics/items/icons/poke_doll.4bpp.lz"); +const u32 gItemIconPalette_PokeDoll[] = INCBIN_U32("graphics/items/icon_palettes/poke_doll.gbapal.lz"); -const u32 gFile_graphics_items_icons_pearl_sheet[] = INCBIN_U32("graphics/items/icons/pearl.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pearl_palette[] = INCBIN_U32("graphics/items/icon_palettes/pearl.gbapal.lz"); -const u32 gFile_graphics_items_icons_big_pearl_sheet[] = INCBIN_U32("graphics/items/icons/big_pearl.4bpp.lz"); +const u32 gItemIcon_FluffyTail[] = INCBIN_U32("graphics/items/icons/fluffy_tail.4bpp.lz"); +const u32 gItemIconPalette_FluffyTail[] = INCBIN_U32("graphics/items/icon_palettes/fluffy_tail.gbapal.lz"); -const u32 gFile_graphics_items_icons_stardust_sheet[] = INCBIN_U32("graphics/items/icons/stardust.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_star_palette[] = INCBIN_U32("graphics/items/icon_palettes/star.gbapal.lz"); -const u32 gFile_graphics_items_icons_star_piece_sheet[] = INCBIN_U32("graphics/items/icons/star_piece.4bpp.lz"); +// Field items -const u32 gFile_graphics_items_icons_nugget_sheet[] = INCBIN_U32("graphics/items/icons/nugget.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_nugget_palette[] = INCBIN_U32("graphics/items/icon_palettes/nugget.gbapal.lz"); +const u32 gItemIcon_Repel[] = INCBIN_U32("graphics/items/icons/repel.4bpp.lz"); +const u32 gItemIconPalette_SuperRepel[] = INCBIN_U32("graphics/items/icon_palettes/super_repel.gbapal.lz"); +const u32 gItemIconPalette_MaxRepel[] = INCBIN_U32("graphics/items/icon_palettes/max_repel.gbapal.lz"); -const u32 gFile_graphics_items_icons_heart_scale_sheet[] = INCBIN_U32("graphics/items/icons/heart_scale.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_heart_scale_palette[] = INCBIN_U32("graphics/items/icon_palettes/heart_scale.gbapal.lz"); +const u32 gItemIcon_EscapeRope[] = INCBIN_U32("graphics/items/icons/escape_rope.4bpp.lz"); -const u32 gFile_graphics_items_icons_orange_mail_sheet[] = INCBIN_U32("graphics/items/icons/orange_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_orange_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/orange_mail.gbapal.lz"); +const u32 gItemIconPalette_EscapeRope[] = INCBIN_U32("graphics/items/icon_palettes/escape_rope.gbapal.lz"); -const u32 gFile_graphics_items_icons_harbor_mail_sheet[] = INCBIN_U32("graphics/items/icons/harbor_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_harbor_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/harbor_mail.gbapal.lz"); +const u32 gItemIconPalette_Repel[] = INCBIN_U32("graphics/items/icon_palettes/repel.gbapal.lz"); -const u32 gFile_graphics_items_icons_glitter_mail_sheet[] = INCBIN_U32("graphics/items/icons/glitter_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_glitter_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/glitter_mail.gbapal.lz"); +// Evolution stones -const u32 gFile_graphics_items_icons_mech_mail_sheet[] = INCBIN_U32("graphics/items/icons/mech_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mech_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/mech_mail.gbapal.lz"); +const u32 gItemIcon_SunStone[] = INCBIN_U32("graphics/items/icons/sun_stone.4bpp.lz"); +const u32 gItemIconPalette_SunStone[] = INCBIN_U32("graphics/items/icon_palettes/sun_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_wood_mail_sheet[] = INCBIN_U32("graphics/items/icons/wood_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_wood_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/wood_mail.gbapal.lz"); +const u32 gItemIcon_MoonStone[] = INCBIN_U32("graphics/items/icons/moon_stone.4bpp.lz"); +const u32 gItemIconPalette_MoonStone[] = INCBIN_U32("graphics/items/icon_palettes/moon_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_wave_mail_sheet[] = INCBIN_U32("graphics/items/icons/wave_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_wave_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/wave_mail.gbapal.lz"); +const u32 gItemIcon_FireStone[] = INCBIN_U32("graphics/items/icons/fire_stone.4bpp.lz"); +const u32 gItemIconPalette_FireStone[] = INCBIN_U32("graphics/items/icon_palettes/fire_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_bead_mail_sheet[] = INCBIN_U32("graphics/items/icons/bead_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_bead_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/bead_mail.gbapal.lz"); +const u32 gItemIcon_ThunderStone[] = INCBIN_U32("graphics/items/icons/thunder_stone.4bpp.lz"); +const u32 gItemIconPalette_ThunderStone[] = INCBIN_U32("graphics/items/icon_palettes/thunder_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_shadow_mail_sheet[] = INCBIN_U32("graphics/items/icons/shadow_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_shadow_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/shadow_mail.gbapal.lz"); +const u32 gItemIcon_WaterStone[] = INCBIN_U32("graphics/items/icons/water_stone.4bpp.lz"); +const u32 gItemIconPalette_WaterStone[] = INCBIN_U32("graphics/items/icon_palettes/water_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_tropic_mail_sheet[] = INCBIN_U32("graphics/items/icons/tropic_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_tropic_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/tropic_mail.gbapal.lz"); +const u32 gItemIcon_LeafStone[] = INCBIN_U32("graphics/items/icons/leaf_stone.4bpp.lz"); +const u32 gItemIconPalette_LeafStone[] = INCBIN_U32("graphics/items/icon_palettes/leaf_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_dream_mail_sheet[] = INCBIN_U32("graphics/items/icons/dream_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_dream_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/dream_mail.gbapal.lz"); +// Valuables -const u32 gFile_graphics_items_icons_fab_mail_sheet[] = INCBIN_U32("graphics/items/icons/fab_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fab_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/fab_mail.gbapal.lz"); +const u32 gItemIcon_TinyMushroom[] = INCBIN_U32("graphics/items/icons/tiny_mushroom.4bpp.lz"); +const u32 gItemIcon_BigMushroom[] = INCBIN_U32("graphics/items/icons/big_mushroom.4bpp.lz"); +const u32 gItemIconPalette_Mushroom[] = INCBIN_U32("graphics/items/icon_palettes/mushroom.gbapal.lz"); -const u32 gFile_graphics_items_icons_retro_mail_sheet[] = INCBIN_U32("graphics/items/icons/retro_mail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_retro_mail_palette[] = INCBIN_U32("graphics/items/icon_palettes/retro_mail.gbapal.lz"); +const u32 gItemIcon_Pearl[] = INCBIN_U32("graphics/items/icons/pearl.4bpp.lz"); +const u32 gItemIconPalette_Pearl[] = INCBIN_U32("graphics/items/icon_palettes/pearl.gbapal.lz"); +const u32 gItemIcon_BigPearl[] = INCBIN_U32("graphics/items/icons/big_pearl.4bpp.lz"); -const u32 gFile_graphics_items_icons_cheri_berry_sheet[] = INCBIN_U32("graphics/items/icons/cheri_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_cheri_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/cheri_berry.gbapal.lz"); +const u32 gItemIcon_Stardust[] = INCBIN_U32("graphics/items/icons/stardust.4bpp.lz"); +const u32 gItemIconPalette_Star[] = INCBIN_U32("graphics/items/icon_palettes/star.gbapal.lz"); +const u32 gItemIcon_StarPiece[] = INCBIN_U32("graphics/items/icons/star_piece.4bpp.lz"); -const u32 gFile_graphics_items_icons_chesto_berry_sheet[] = INCBIN_U32("graphics/items/icons/chesto_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_chesto_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/chesto_berry.gbapal.lz"); +const u32 gItemIcon_Nugget[] = INCBIN_U32("graphics/items/icons/nugget.4bpp.lz"); +const u32 gItemIconPalette_Nugget[] = INCBIN_U32("graphics/items/icon_palettes/nugget.gbapal.lz"); -const u32 gFile_graphics_items_icons_pecha_berry_sheet[] = INCBIN_U32("graphics/items/icons/pecha_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pecha_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/pecha_berry.gbapal.lz"); +const u32 gItemIcon_HeartScale[] = INCBIN_U32("graphics/items/icons/heart_scale.4bpp.lz"); +const u32 gItemIconPalette_HeartScale[] = INCBIN_U32("graphics/items/icon_palettes/heart_scale.gbapal.lz"); -const u32 gFile_graphics_items_icons_rawst_berry_sheet[] = INCBIN_U32("graphics/items/icons/rawst_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_rawst_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/rawst_berry.gbapal.lz"); +// Mail -const u32 gFile_graphics_items_icons_aspear_berry_sheet[] = INCBIN_U32("graphics/items/icons/aspear_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_aspear_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/aspear_berry.gbapal.lz"); +const u32 gItemIcon_OrangeMail[] = INCBIN_U32("graphics/items/icons/orange_mail.4bpp.lz"); +const u32 gItemIconPalette_OrangeMail[] = INCBIN_U32("graphics/items/icon_palettes/orange_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_leppa_berry_sheet[] = INCBIN_U32("graphics/items/icons/leppa_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_leppa_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/leppa_berry.gbapal.lz"); +const u32 gItemIcon_HarborMail[] = INCBIN_U32("graphics/items/icons/harbor_mail.4bpp.lz"); +const u32 gItemIconPalette_HarborMail[] = INCBIN_U32("graphics/items/icon_palettes/harbor_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_oran_berry_sheet[] = INCBIN_U32("graphics/items/icons/oran_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_oran_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/oran_berry.gbapal.lz"); +const u32 gItemIcon_GlitterMail[] = INCBIN_U32("graphics/items/icons/glitter_mail.4bpp.lz"); +const u32 gItemIconPalette_GlitterMail[] = INCBIN_U32("graphics/items/icon_palettes/glitter_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_persim_berry_sheet[] = INCBIN_U32("graphics/items/icons/persim_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_persim_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/persim_berry.gbapal.lz"); +const u32 gItemIcon_MechMail[] = INCBIN_U32("graphics/items/icons/mech_mail.4bpp.lz"); +const u32 gItemIconPalette_MechMail[] = INCBIN_U32("graphics/items/icon_palettes/mech_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_lum_berry_sheet[] = INCBIN_U32("graphics/items/icons/lum_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lum_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/lum_berry.gbapal.lz"); +const u32 gItemIcon_WoodMail[] = INCBIN_U32("graphics/items/icons/wood_mail.4bpp.lz"); +const u32 gItemIconPalette_WoodMail[] = INCBIN_U32("graphics/items/icon_palettes/wood_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_sitrus_berry_sheet[] = INCBIN_U32("graphics/items/icons/sitrus_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sitrus_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/sitrus_berry.gbapal.lz"); +const u32 gItemIcon_WaveMail[] = INCBIN_U32("graphics/items/icons/wave_mail.4bpp.lz"); +const u32 gItemIconPalette_WaveMail[] = INCBIN_U32("graphics/items/icon_palettes/wave_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_figy_berry_sheet[] = INCBIN_U32("graphics/items/icons/figy_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_figy_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/figy_berry.gbapal.lz"); +const u32 gItemIcon_BeadMail[] = INCBIN_U32("graphics/items/icons/bead_mail.4bpp.lz"); +const u32 gItemIconPalette_BeadMail[] = INCBIN_U32("graphics/items/icon_palettes/bead_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_wiki_berry_sheet[] = INCBIN_U32("graphics/items/icons/wiki_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_wiki_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/wiki_berry.gbapal.lz"); +const u32 gItemIcon_ShadowMail[] = INCBIN_U32("graphics/items/icons/shadow_mail.4bpp.lz"); +const u32 gItemIconPalette_ShadowMail[] = INCBIN_U32("graphics/items/icon_palettes/shadow_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_mago_berry_sheet[] = INCBIN_U32("graphics/items/icons/mago_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mago_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/mago_berry.gbapal.lz"); +const u32 gItemIcon_TropicMail[] = INCBIN_U32("graphics/items/icons/tropic_mail.4bpp.lz"); +const u32 gItemIconPalette_TropicMail[] = INCBIN_U32("graphics/items/icon_palettes/tropic_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_aguav_berry_sheet[] = INCBIN_U32("graphics/items/icons/aguav_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_aguav_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/aguav_berry.gbapal.lz"); +const u32 gItemIcon_DreamMail[] = INCBIN_U32("graphics/items/icons/dream_mail.4bpp.lz"); +const u32 gItemIconPalette_DreamMail[] = INCBIN_U32("graphics/items/icon_palettes/dream_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_iapapa_berry_sheet[] = INCBIN_U32("graphics/items/icons/iapapa_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_iapapa_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/iapapa_berry.gbapal.lz"); +const u32 gItemIcon_FabMail[] = INCBIN_U32("graphics/items/icons/fab_mail.4bpp.lz"); +const u32 gItemIconPalette_FabMail[] = INCBIN_U32("graphics/items/icon_palettes/fab_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_razz_berry_sheet[] = INCBIN_U32("graphics/items/icons/razz_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_razz_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/razz_berry.gbapal.lz"); +const u32 gItemIcon_RetroMail[] = INCBIN_U32("graphics/items/icons/retro_mail.4bpp.lz"); +const u32 gItemIconPalette_RetroMail[] = INCBIN_U32("graphics/items/icon_palettes/retro_mail.gbapal.lz"); -const u32 gFile_graphics_items_icons_bluk_berry_sheet[] = INCBIN_U32("graphics/items/icons/bluk_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_bluk_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/bluk_berry.gbapal.lz"); +// Berries -const u32 gFile_graphics_items_icons_nanab_berry_sheet[] = INCBIN_U32("graphics/items/icons/nanab_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_nanab_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/nanab_berry.gbapal.lz"); +const u32 gItemIcon_CheriBerry[] = INCBIN_U32("graphics/items/icons/cheri_berry.4bpp.lz"); +const u32 gItemIconPalette_CheriBerry[] = INCBIN_U32("graphics/items/icon_palettes/cheri_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_wepear_berry_sheet[] = INCBIN_U32("graphics/items/icons/wepear_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_wepear_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/wepear_berry.gbapal.lz"); +const u32 gItemIcon_ChestoBerry[] = INCBIN_U32("graphics/items/icons/chesto_berry.4bpp.lz"); +const u32 gItemIconPalette_ChestoBerry[] = INCBIN_U32("graphics/items/icon_palettes/chesto_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_pinap_berry_sheet[] = INCBIN_U32("graphics/items/icons/pinap_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pinap_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/pinap_berry.gbapal.lz"); +const u32 gItemIcon_PechaBerry[] = INCBIN_U32("graphics/items/icons/pecha_berry.4bpp.lz"); +const u32 gItemIconPalette_PechaBerry[] = INCBIN_U32("graphics/items/icon_palettes/pecha_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_pomeg_berry_sheet[] = INCBIN_U32("graphics/items/icons/pomeg_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pomeg_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/pomeg_berry.gbapal.lz"); +const u32 gItemIcon_RawstBerry[] = INCBIN_U32("graphics/items/icons/rawst_berry.4bpp.lz"); +const u32 gItemIconPalette_RawstBerry[] = INCBIN_U32("graphics/items/icon_palettes/rawst_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_kelpsy_berry_sheet[] = INCBIN_U32("graphics/items/icons/kelpsy_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_kelpsy_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/kelpsy_berry.gbapal.lz"); +const u32 gItemIcon_AspearBerry[] = INCBIN_U32("graphics/items/icons/aspear_berry.4bpp.lz"); +const u32 gItemIconPalette_AspearBerry[] = INCBIN_U32("graphics/items/icon_palettes/aspear_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_qualot_berry_sheet[] = INCBIN_U32("graphics/items/icons/qualot_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_qualot_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/qualot_berry.gbapal.lz"); +const u32 gItemIcon_LeppaBerry[] = INCBIN_U32("graphics/items/icons/leppa_berry.4bpp.lz"); +const u32 gItemIconPalette_LeppaBerry[] = INCBIN_U32("graphics/items/icon_palettes/leppa_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_hondew_berry_sheet[] = INCBIN_U32("graphics/items/icons/hondew_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_hondew_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/hondew_berry.gbapal.lz"); +const u32 gItemIcon_OranBerry[] = INCBIN_U32("graphics/items/icons/oran_berry.4bpp.lz"); +const u32 gItemIconPalette_OranBerry[] = INCBIN_U32("graphics/items/icon_palettes/oran_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_grepa_berry_sheet[] = INCBIN_U32("graphics/items/icons/grepa_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_grepa_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/grepa_berry.gbapal.lz"); +const u32 gItemIcon_PersimBerry[] = INCBIN_U32("graphics/items/icons/persim_berry.4bpp.lz"); +const u32 gItemIconPalette_PersimBerry[] = INCBIN_U32("graphics/items/icon_palettes/persim_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_tamato_berry_sheet[] = INCBIN_U32("graphics/items/icons/tamato_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_tamato_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/tamato_berry.gbapal.lz"); +const u32 gItemIcon_LumBerry[] = INCBIN_U32("graphics/items/icons/lum_berry.4bpp.lz"); +const u32 gItemIconPalette_LumBerry[] = INCBIN_U32("graphics/items/icon_palettes/lum_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_cornn_berry_sheet[] = INCBIN_U32("graphics/items/icons/cornn_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_cornn_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/cornn_berry.gbapal.lz"); +const u32 gItemIcon_SitrusBerry[] = INCBIN_U32("graphics/items/icons/sitrus_berry.4bpp.lz"); +const u32 gItemIconPalette_SitrusBerry[] = INCBIN_U32("graphics/items/icon_palettes/sitrus_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_magost_berry_sheet[] = INCBIN_U32("graphics/items/icons/magost_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_magost_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/magost_berry.gbapal.lz"); +const u32 gItemIcon_FigyBerry[] = INCBIN_U32("graphics/items/icons/figy_berry.4bpp.lz"); +const u32 gItemIconPalette_FigyBerry[] = INCBIN_U32("graphics/items/icon_palettes/figy_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_rabuta_berry_sheet[] = INCBIN_U32("graphics/items/icons/rabuta_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_rabuta_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/rabuta_berry.gbapal.lz"); +const u32 gItemIcon_WikiBerry[] = INCBIN_U32("graphics/items/icons/wiki_berry.4bpp.lz"); +const u32 gItemIconPalette_WikiBerry[] = INCBIN_U32("graphics/items/icon_palettes/wiki_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_nomel_berry_sheet[] = INCBIN_U32("graphics/items/icons/nomel_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_nomel_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/nomel_berry.gbapal.lz"); +const u32 gItemIcon_MagoBerry[] = INCBIN_U32("graphics/items/icons/mago_berry.4bpp.lz"); +const u32 gItemIconPalette_MagoBerry[] = INCBIN_U32("graphics/items/icon_palettes/mago_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_spelon_berry_sheet[] = INCBIN_U32("graphics/items/icons/spelon_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_spelon_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/spelon_berry.gbapal.lz"); +const u32 gItemIcon_AguavBerry[] = INCBIN_U32("graphics/items/icons/aguav_berry.4bpp.lz"); +const u32 gItemIconPalette_AguavBerry[] = INCBIN_U32("graphics/items/icon_palettes/aguav_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_pamtre_berry_sheet[] = INCBIN_U32("graphics/items/icons/pamtre_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pamtre_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/pamtre_berry.gbapal.lz"); +const u32 gItemIcon_IapapaBerry[] = INCBIN_U32("graphics/items/icons/iapapa_berry.4bpp.lz"); +const u32 gItemIconPalette_IapapaBerry[] = INCBIN_U32("graphics/items/icon_palettes/iapapa_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_watmel_berry_sheet[] = INCBIN_U32("graphics/items/icons/watmel_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_watmel_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/watmel_berry.gbapal.lz"); +const u32 gItemIcon_RazzBerry[] = INCBIN_U32("graphics/items/icons/razz_berry.4bpp.lz"); +const u32 gItemIconPalette_RazzBerry[] = INCBIN_U32("graphics/items/icon_palettes/razz_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_durin_berry_sheet[] = INCBIN_U32("graphics/items/icons/durin_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_durin_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/durin_berry.gbapal.lz"); +const u32 gItemIcon_BlukBerry[] = INCBIN_U32("graphics/items/icons/bluk_berry.4bpp.lz"); +const u32 gItemIconPalette_BlukBerry[] = INCBIN_U32("graphics/items/icon_palettes/bluk_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_belue_berry_sheet[] = INCBIN_U32("graphics/items/icons/belue_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_belue_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/belue_berry.gbapal.lz"); +const u32 gItemIcon_NanabBerry[] = INCBIN_U32("graphics/items/icons/nanab_berry.4bpp.lz"); +const u32 gItemIconPalette_NanabBerry[] = INCBIN_U32("graphics/items/icon_palettes/nanab_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_liechi_berry_sheet[] = INCBIN_U32("graphics/items/icons/liechi_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_liechi_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/liechi_berry.gbapal.lz"); +const u32 gItemIcon_WepearBerry[] = INCBIN_U32("graphics/items/icons/wepear_berry.4bpp.lz"); +const u32 gItemIconPalette_WepearBerry[] = INCBIN_U32("graphics/items/icon_palettes/wepear_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_ganlon_berry_sheet[] = INCBIN_U32("graphics/items/icons/ganlon_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_ganlon_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/ganlon_berry.gbapal.lz"); +const u32 gItemIcon_PinapBerry[] = INCBIN_U32("graphics/items/icons/pinap_berry.4bpp.lz"); +const u32 gItemIconPalette_PinapBerry[] = INCBIN_U32("graphics/items/icon_palettes/pinap_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_salac_berry_sheet[] = INCBIN_U32("graphics/items/icons/salac_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_salac_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/salac_berry.gbapal.lz"); +const u32 gItemIcon_PomegBerry[] = INCBIN_U32("graphics/items/icons/pomeg_berry.4bpp.lz"); +const u32 gItemIconPalette_PomegBerry[] = INCBIN_U32("graphics/items/icon_palettes/pomeg_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_petaya_berry_sheet[] = INCBIN_U32("graphics/items/icons/petaya_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_petaya_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/petaya_berry.gbapal.lz"); +const u32 gItemIcon_KelpsyBerry[] = INCBIN_U32("graphics/items/icons/kelpsy_berry.4bpp.lz"); +const u32 gItemIconPalette_KelpsyBerry[] = INCBIN_U32("graphics/items/icon_palettes/kelpsy_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_apicot_berry_sheet[] = INCBIN_U32("graphics/items/icons/apicot_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_apicot_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/apicot_berry.gbapal.lz"); +const u32 gItemIcon_QualotBerry[] = INCBIN_U32("graphics/items/icons/qualot_berry.4bpp.lz"); +const u32 gItemIconPalette_QualotBerry[] = INCBIN_U32("graphics/items/icon_palettes/qualot_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_lansat_berry_sheet[] = INCBIN_U32("graphics/items/icons/lansat_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lansat_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/lansat_berry.gbapal.lz"); +const u32 gItemIcon_HondewBerry[] = INCBIN_U32("graphics/items/icons/hondew_berry.4bpp.lz"); +const u32 gItemIconPalette_HondewBerry[] = INCBIN_U32("graphics/items/icon_palettes/hondew_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_starf_berry_sheet[] = INCBIN_U32("graphics/items/icons/starf_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_starf_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/starf_berry.gbapal.lz"); +const u32 gItemIcon_GrepaBerry[] = INCBIN_U32("graphics/items/icons/grepa_berry.4bpp.lz"); +const u32 gItemIconPalette_GrepaBerry[] = INCBIN_U32("graphics/items/icon_palettes/grepa_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_enigma_berry_sheet[] = INCBIN_U32("graphics/items/icons/enigma_berry.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_enigma_berry_palette[] = INCBIN_U32("graphics/items/icon_palettes/enigma_berry.gbapal.lz"); +const u32 gItemIcon_TamatoBerry[] = INCBIN_U32("graphics/items/icons/tamato_berry.4bpp.lz"); +const u32 gItemIconPalette_TamatoBerry[] = INCBIN_U32("graphics/items/icon_palettes/tamato_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_bright_powder_sheet[] = INCBIN_U32("graphics/items/icons/bright_powder.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_bright_powder_palette[] = INCBIN_U32("graphics/items/icon_palettes/bright_powder.gbapal.lz"); +const u32 gItemIcon_CornnBerry[] = INCBIN_U32("graphics/items/icons/cornn_berry.4bpp.lz"); +const u32 gItemIconPalette_CornnBerry[] = INCBIN_U32("graphics/items/icon_palettes/cornn_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_in_battle_herb_sheet[] = INCBIN_U32("graphics/items/icons/in_battle_herb.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_white_herb_palette[] = INCBIN_U32("graphics/items/icon_palettes/white_herb.gbapal.lz"); +const u32 gItemIcon_MagostBerry[] = INCBIN_U32("graphics/items/icons/magost_berry.4bpp.lz"); +const u32 gItemIconPalette_MagostBerry[] = INCBIN_U32("graphics/items/icon_palettes/magost_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_macho_brace_sheet[] = INCBIN_U32("graphics/items/icons/macho_brace.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_macho_brace_palette[] = INCBIN_U32("graphics/items/icon_palettes/macho_brace.gbapal.lz"); +const u32 gItemIcon_RabutaBerry[] = INCBIN_U32("graphics/items/icons/rabuta_berry.4bpp.lz"); +const u32 gItemIconPalette_RabutaBerry[] = INCBIN_U32("graphics/items/icon_palettes/rabuta_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_exp_share_sheet[] = INCBIN_U32("graphics/items/icons/exp_share.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_exp_share_palette[] = INCBIN_U32("graphics/items/icon_palettes/exp_share.gbapal.lz"); +const u32 gItemIcon_NomelBerry[] = INCBIN_U32("graphics/items/icons/nomel_berry.4bpp.lz"); +const u32 gItemIconPalette_NomelBerry[] = INCBIN_U32("graphics/items/icon_palettes/nomel_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_quick_claw_sheet[] = INCBIN_U32("graphics/items/icons/quick_claw.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_quick_claw_palette[] = INCBIN_U32("graphics/items/icon_palettes/quick_claw.gbapal.lz"); +const u32 gItemIcon_SpelonBerry[] = INCBIN_U32("graphics/items/icons/spelon_berry.4bpp.lz"); +const u32 gItemIconPalette_SpelonBerry[] = INCBIN_U32("graphics/items/icon_palettes/spelon_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_soothe_bell_sheet[] = INCBIN_U32("graphics/items/icons/soothe_bell.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_soothe_bell_palette[] = INCBIN_U32("graphics/items/icon_palettes/soothe_bell.gbapal.lz"); +const u32 gItemIcon_PamtreBerry[] = INCBIN_U32("graphics/items/icons/pamtre_berry.4bpp.lz"); +const u32 gItemIconPalette_PamtreBerry[] = INCBIN_U32("graphics/items/icon_palettes/pamtre_berry.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_mental_herb_palette[] = INCBIN_U32("graphics/items/icon_palettes/mental_herb.gbapal.lz"); +const u32 gItemIcon_WatmelBerry[] = INCBIN_U32("graphics/items/icons/watmel_berry.4bpp.lz"); +const u32 gItemIconPalette_WatmelBerry[] = INCBIN_U32("graphics/items/icon_palettes/watmel_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_choice_band_sheet[] = INCBIN_U32("graphics/items/icons/choice_band.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_choice_band_palette[] = INCBIN_U32("graphics/items/icon_palettes/choice_band.gbapal.lz"); +const u32 gItemIcon_DurinBerry[] = INCBIN_U32("graphics/items/icons/durin_berry.4bpp.lz"); +const u32 gItemIconPalette_DurinBerry[] = INCBIN_U32("graphics/items/icon_palettes/durin_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_kings_rock_sheet[] = INCBIN_U32("graphics/items/icons/kings_rock.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_kings_rock_palette[] = INCBIN_U32("graphics/items/icon_palettes/kings_rock.gbapal.lz"); +const u32 gItemIcon_BelueBerry[] = INCBIN_U32("graphics/items/icons/belue_berry.4bpp.lz"); +const u32 gItemIconPalette_BelueBerry[] = INCBIN_U32("graphics/items/icon_palettes/belue_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_silver_powder_sheet[] = INCBIN_U32("graphics/items/icons/silver_powder.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_silver_powder_palette[] = INCBIN_U32("graphics/items/icon_palettes/silver_powder.gbapal.lz"); +const u32 gItemIcon_LiechiBerry[] = INCBIN_U32("graphics/items/icons/liechi_berry.4bpp.lz"); +const u32 gItemIconPalette_LiechiBerry[] = INCBIN_U32("graphics/items/icon_palettes/liechi_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_amulet_coin_sheet[] = INCBIN_U32("graphics/items/icons/amulet_coin.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_amulet_coin_palette[] = INCBIN_U32("graphics/items/icon_palettes/amulet_coin.gbapal.lz"); +const u32 gItemIcon_GanlonBerry[] = INCBIN_U32("graphics/items/icons/ganlon_berry.4bpp.lz"); +const u32 gItemIconPalette_GanlonBerry[] = INCBIN_U32("graphics/items/icon_palettes/ganlon_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_cleanse_tag_sheet[] = INCBIN_U32("graphics/items/icons/cleanse_tag.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_cleanse_tag_palette[] = INCBIN_U32("graphics/items/icon_palettes/cleanse_tag.gbapal.lz"); +const u32 gItemIcon_SalacBerry[] = INCBIN_U32("graphics/items/icons/salac_berry.4bpp.lz"); +const u32 gItemIconPalette_SalacBerry[] = INCBIN_U32("graphics/items/icon_palettes/salac_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_soul_dew_sheet[] = INCBIN_U32("graphics/items/icons/soul_dew.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_soul_dew_palette[] = INCBIN_U32("graphics/items/icon_palettes/soul_dew.gbapal.lz"); +const u32 gItemIcon_PetayaBerry[] = INCBIN_U32("graphics/items/icons/petaya_berry.4bpp.lz"); +const u32 gItemIconPalette_PetayaBerry[] = INCBIN_U32("graphics/items/icon_palettes/petaya_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_deep_sea_tooth_sheet[] = INCBIN_U32("graphics/items/icons/deep_sea_tooth.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_deep_sea_tooth_palette[] = INCBIN_U32("graphics/items/icon_palettes/deep_sea_tooth.gbapal.lz"); +const u32 gItemIcon_ApicotBerry[] = INCBIN_U32("graphics/items/icons/apicot_berry.4bpp.lz"); +const u32 gItemIconPalette_ApicotBerry[] = INCBIN_U32("graphics/items/icon_palettes/apicot_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_deep_sea_scale_sheet[] = INCBIN_U32("graphics/items/icons/deep_sea_scale.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_deep_sea_scale_palette[] = INCBIN_U32("graphics/items/icon_palettes/deep_sea_scale.gbapal.lz"); +const u32 gItemIcon_LansatBerry[] = INCBIN_U32("graphics/items/icons/lansat_berry.4bpp.lz"); +const u32 gItemIconPalette_LansatBerry[] = INCBIN_U32("graphics/items/icon_palettes/lansat_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_smoke_ball_sheet[] = INCBIN_U32("graphics/items/icons/smoke_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_smoke_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/smoke_ball.gbapal.lz"); +const u32 gItemIcon_StarfBerry[] = INCBIN_U32("graphics/items/icons/starf_berry.4bpp.lz"); +const u32 gItemIconPalette_StarfBerry[] = INCBIN_U32("graphics/items/icon_palettes/starf_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_everstone_sheet[] = INCBIN_U32("graphics/items/icons/everstone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_everstone_palette[] = INCBIN_U32("graphics/items/icon_palettes/everstone.gbapal.lz"); +const u32 gItemIcon_EnigmaBerry[] = INCBIN_U32("graphics/items/icons/enigma_berry.4bpp.lz"); +const u32 gItemIconPalette_EnigmaBerry[] = INCBIN_U32("graphics/items/icon_palettes/enigma_berry.gbapal.lz"); -const u32 gFile_graphics_items_icons_focus_band_sheet[] = INCBIN_U32("graphics/items/icons/focus_band.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_focus_band_palette[] = INCBIN_U32("graphics/items/icon_palettes/focus_band.gbapal.lz"); +// Hold items -const u32 gFile_graphics_items_icons_lucky_egg_sheet[] = INCBIN_U32("graphics/items/icons/lucky_egg.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lucky_egg_palette[] = INCBIN_U32("graphics/items/icon_palettes/lucky_egg.gbapal.lz"); +const u32 gItemIcon_BrightPowder[] = INCBIN_U32("graphics/items/icons/bright_powder.4bpp.lz"); +const u32 gItemIconPalette_BrightPowder[] = INCBIN_U32("graphics/items/icon_palettes/bright_powder.gbapal.lz"); -const u32 gFile_graphics_items_icons_scope_lens_sheet[] = INCBIN_U32("graphics/items/icons/scope_lens.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_scope_lens_palette[] = INCBIN_U32("graphics/items/icon_palettes/scope_lens.gbapal.lz"); +const u32 gItemIcon_InBattleHerb[] = INCBIN_U32("graphics/items/icons/in_battle_herb.4bpp.lz"); +const u32 gItemIconPalette_WhiteHerb[] = INCBIN_U32("graphics/items/icon_palettes/white_herb.gbapal.lz"); -const u32 gFile_graphics_items_icons_metal_coat_sheet[] = INCBIN_U32("graphics/items/icons/metal_coat.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_metal_coat_palette[] = INCBIN_U32("graphics/items/icon_palettes/metal_coat.gbapal.lz"); +const u32 gItemIcon_MachoBrace[] = INCBIN_U32("graphics/items/icons/macho_brace.4bpp.lz"); +const u32 gItemIconPalette_MachoBrace[] = INCBIN_U32("graphics/items/icon_palettes/macho_brace.gbapal.lz"); -const u32 gFile_graphics_items_icons_leftovers_sheet[] = INCBIN_U32("graphics/items/icons/leftovers.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_leftovers_palette[] = INCBIN_U32("graphics/items/icon_palettes/leftovers.gbapal.lz"); +const u32 gItemIcon_ExpShare[] = INCBIN_U32("graphics/items/icons/exp_share.4bpp.lz"); +const u32 gItemIconPalette_ExpShare[] = INCBIN_U32("graphics/items/icon_palettes/exp_share.gbapal.lz"); -const u32 gFile_graphics_items_icons_dragon_scale_sheet[] = INCBIN_U32("graphics/items/icons/dragon_scale.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_dragon_scale_palette[] = INCBIN_U32("graphics/items/icon_palettes/dragon_scale.gbapal.lz"); +const u32 gItemIcon_QuickClaw[] = INCBIN_U32("graphics/items/icons/quick_claw.4bpp.lz"); +const u32 gItemIconPalette_QuickClaw[] = INCBIN_U32("graphics/items/icon_palettes/quick_claw.gbapal.lz"); -const u32 gFile_graphics_items_icons_light_ball_sheet[] = INCBIN_U32("graphics/items/icons/light_ball.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_light_ball_palette[] = INCBIN_U32("graphics/items/icon_palettes/light_ball.gbapal.lz"); +const u32 gItemIcon_SootheBell[] = INCBIN_U32("graphics/items/icons/soothe_bell.4bpp.lz"); +const u32 gItemIconPalette_SootheBell[] = INCBIN_U32("graphics/items/icon_palettes/soothe_bell.gbapal.lz"); -const u32 gFile_graphics_items_icons_soft_sand_sheet[] = INCBIN_U32("graphics/items/icons/soft_sand.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_soft_sand_palette[] = INCBIN_U32("graphics/items/icon_palettes/soft_sand.gbapal.lz"); +const u32 gItemIconPalette_MentalHerb[] = INCBIN_U32("graphics/items/icon_palettes/mental_herb.gbapal.lz"); -const u32 gFile_graphics_items_icons_hard_stone_sheet[] = INCBIN_U32("graphics/items/icons/hard_stone.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_hard_stone_palette[] = INCBIN_U32("graphics/items/icon_palettes/hard_stone.gbapal.lz"); +const u32 gItemIcon_ChoiceBand[] = INCBIN_U32("graphics/items/icons/choice_band.4bpp.lz"); +const u32 gItemIconPalette_ChoiceBand[] = INCBIN_U32("graphics/items/icon_palettes/choice_band.gbapal.lz"); -const u32 gFile_graphics_items_icons_miracle_seed_sheet[] = INCBIN_U32("graphics/items/icons/miracle_seed.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_miracle_seed_palette[] = INCBIN_U32("graphics/items/icon_palettes/miracle_seed.gbapal.lz"); +const u32 gItemIcon_KingsRock[] = INCBIN_U32("graphics/items/icons/kings_rock.4bpp.lz"); +const u32 gItemIconPalette_KingsRock[] = INCBIN_U32("graphics/items/icon_palettes/kings_rock.gbapal.lz"); -const u32 gFile_graphics_items_icons_black_glasses_sheet[] = INCBIN_U32("graphics/items/icons/black_glasses.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette[] = INCBIN_U32("graphics/items/icon_palettes/black_type_enhancing_item.gbapal.lz"); -const u32 gFile_graphics_items_icons_black_belt_sheet[] = INCBIN_U32("graphics/items/icons/black_belt.4bpp.lz"); +const u32 gItemIcon_SilverPowder[] = INCBIN_U32("graphics/items/icons/silver_powder.4bpp.lz"); +const u32 gItemIconPalette_SilverPowder[] = INCBIN_U32("graphics/items/icon_palettes/silver_powder.gbapal.lz"); -const u32 gFile_graphics_items_icons_magnet_sheet[] = INCBIN_U32("graphics/items/icons/magnet.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_magnet_palette[] = INCBIN_U32("graphics/items/icon_palettes/magnet.gbapal.lz"); +const u32 gItemIcon_AmuletCoin[] = INCBIN_U32("graphics/items/icons/amulet_coin.4bpp.lz"); +const u32 gItemIconPalette_AmuletCoin[] = INCBIN_U32("graphics/items/icon_palettes/amulet_coin.gbapal.lz"); -const u32 gFile_graphics_items_icons_mystic_water_sheet[] = INCBIN_U32("graphics/items/icons/mystic_water.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mystic_water_palette[] = INCBIN_U32("graphics/items/icon_palettes/mystic_water.gbapal.lz"); +const u32 gItemIcon_CleanseTag[] = INCBIN_U32("graphics/items/icons/cleanse_tag.4bpp.lz"); +const u32 gItemIconPalette_CleanseTag[] = INCBIN_U32("graphics/items/icon_palettes/cleanse_tag.gbapal.lz"); -const u32 gFile_graphics_items_icons_sharp_beak_sheet[] = INCBIN_U32("graphics/items/icons/sharp_beak.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sharp_beak_palette[] = INCBIN_U32("graphics/items/icon_palettes/sharp_beak.gbapal.lz"); +const u32 gItemIcon_SoulDew[] = INCBIN_U32("graphics/items/icons/soul_dew.4bpp.lz"); +const u32 gItemIconPalette_SoulDew[] = INCBIN_U32("graphics/items/icon_palettes/soul_dew.gbapal.lz"); -const u32 gFile_graphics_items_icons_poison_barb_sheet[] = INCBIN_U32("graphics/items/icons/poison_barb.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_poison_barb_palette[] = INCBIN_U32("graphics/items/icon_palettes/poison_barb.gbapal.lz"); +const u32 gItemIcon_DeepSeaTooth[] = INCBIN_U32("graphics/items/icons/deep_sea_tooth.4bpp.lz"); +const u32 gItemIconPalette_DeepSeaTooth[] = INCBIN_U32("graphics/items/icon_palettes/deep_sea_tooth.gbapal.lz"); -const u32 gFile_graphics_items_icons_never_melt_ice_sheet[] = INCBIN_U32("graphics/items/icons/never_melt_ice.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_never_melt_ice_palette[] = INCBIN_U32("graphics/items/icon_palettes/never_melt_ice.gbapal.lz"); +const u32 gItemIcon_DeepSeaScale[] = INCBIN_U32("graphics/items/icons/deep_sea_scale.4bpp.lz"); +const u32 gItemIconPalette_DeepSeaScale[] = INCBIN_U32("graphics/items/icon_palettes/deep_sea_scale.gbapal.lz"); -const u32 gFile_graphics_items_icons_spell_tag_sheet[] = INCBIN_U32("graphics/items/icons/spell_tag.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_spell_tag_palette[] = INCBIN_U32("graphics/items/icon_palettes/spell_tag.gbapal.lz"); +const u32 gItemIcon_SmokeBall[] = INCBIN_U32("graphics/items/icons/smoke_ball.4bpp.lz"); +const u32 gItemIconPalette_SmokeBall[] = INCBIN_U32("graphics/items/icon_palettes/smoke_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_twisted_spoon_sheet[] = INCBIN_U32("graphics/items/icons/twisted_spoon.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_twisted_spoon_palette[] = INCBIN_U32("graphics/items/icon_palettes/twisted_spoon.gbapal.lz"); +const u32 gItemIcon_Everstone[] = INCBIN_U32("graphics/items/icons/everstone.4bpp.lz"); +const u32 gItemIconPalette_Everstone[] = INCBIN_U32("graphics/items/icon_palettes/everstone.gbapal.lz"); -const u32 gFile_graphics_items_icons_charcoal_sheet[] = INCBIN_U32("graphics/items/icons/charcoal.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_charcoal_palette[] = INCBIN_U32("graphics/items/icon_palettes/charcoal.gbapal.lz"); +const u32 gItemIcon_FocusBand[] = INCBIN_U32("graphics/items/icons/focus_band.4bpp.lz"); +const u32 gItemIconPalette_FocusBand[] = INCBIN_U32("graphics/items/icon_palettes/focus_band.gbapal.lz"); -const u32 gFile_graphics_items_icons_dragon_fang_sheet[] = INCBIN_U32("graphics/items/icons/dragon_fang.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_dragon_fang_palette[] = INCBIN_U32("graphics/items/icon_palettes/dragon_fang.gbapal.lz"); +const u32 gItemIcon_LuckyEgg[] = INCBIN_U32("graphics/items/icons/lucky_egg.4bpp.lz"); +const u32 gItemIconPalette_LuckyEgg[] = INCBIN_U32("graphics/items/icon_palettes/lucky_egg.gbapal.lz"); -const u32 gFile_graphics_items_icons_silk_scarf_sheet[] = INCBIN_U32("graphics/items/icons/silk_scarf.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_silk_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/silk_scarf.gbapal.lz"); +const u32 gItemIcon_ScopeLens[] = INCBIN_U32("graphics/items/icons/scope_lens.4bpp.lz"); +const u32 gItemIconPalette_ScopeLens[] = INCBIN_U32("graphics/items/icon_palettes/scope_lens.gbapal.lz"); -const u32 gFile_graphics_items_icons_up_grade_sheet[] = INCBIN_U32("graphics/items/icons/up_grade.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_up_grade_palette[] = INCBIN_U32("graphics/items/icon_palettes/up_grade.gbapal.lz"); +const u32 gItemIcon_MetalCoat[] = INCBIN_U32("graphics/items/icons/metal_coat.4bpp.lz"); +const u32 gItemIconPalette_MetalCoat[] = INCBIN_U32("graphics/items/icon_palettes/metal_coat.gbapal.lz"); -const u32 gFile_graphics_items_icons_shell_bell_sheet[] = INCBIN_U32("graphics/items/icons/shell_bell.4bpp.lz"); +const u32 gItemIcon_Leftovers[] = INCBIN_U32("graphics/items/icons/leftovers.4bpp.lz"); +const u32 gItemIconPalette_Leftovers[] = INCBIN_U32("graphics/items/icon_palettes/leftovers.gbapal.lz"); -const u32 gFile_graphics_items_icons_sea_incense_sheet[] = INCBIN_U32("graphics/items/icons/sea_incense.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sea_incense_palette[] = INCBIN_U32("graphics/items/icon_palettes/sea_incense.gbapal.lz"); +const u32 gItemIcon_DragonScale[] = INCBIN_U32("graphics/items/icons/dragon_scale.4bpp.lz"); +const u32 gItemIconPalette_DragonScale[] = INCBIN_U32("graphics/items/icon_palettes/dragon_scale.gbapal.lz"); -const u32 gFile_graphics_items_icons_lax_incense_sheet[] = INCBIN_U32("graphics/items/icons/lax_incense.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lax_incense_palette[] = INCBIN_U32("graphics/items/icon_palettes/lax_incense.gbapal.lz"); +const u32 gItemIcon_LightBall[] = INCBIN_U32("graphics/items/icons/light_ball.4bpp.lz"); +const u32 gItemIconPalette_LightBall[] = INCBIN_U32("graphics/items/icon_palettes/light_ball.gbapal.lz"); -const u32 gFile_graphics_items_icons_lucky_punch_sheet[] = INCBIN_U32("graphics/items/icons/lucky_punch.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_lucky_punch_palette[] = INCBIN_U32("graphics/items/icon_palettes/lucky_punch.gbapal.lz"); +const u32 gItemIcon_SoftSand[] = INCBIN_U32("graphics/items/icons/soft_sand.4bpp.lz"); +const u32 gItemIconPalette_SoftSand[] = INCBIN_U32("graphics/items/icon_palettes/soft_sand.gbapal.lz"); -const u32 gFile_graphics_items_icons_metal_powder_sheet[] = INCBIN_U32("graphics/items/icons/metal_powder.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_metal_powder_palette[] = INCBIN_U32("graphics/items/icon_palettes/metal_powder.gbapal.lz"); +const u32 gItemIcon_HardStone[] = INCBIN_U32("graphics/items/icons/hard_stone.4bpp.lz"); +const u32 gItemIconPalette_HardStone[] = INCBIN_U32("graphics/items/icon_palettes/hard_stone.gbapal.lz"); -const u32 gFile_graphics_items_icons_thick_club_sheet[] = INCBIN_U32("graphics/items/icons/thick_club.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_thick_club_palette[] = INCBIN_U32("graphics/items/icon_palettes/thick_club.gbapal.lz"); +const u32 gItemIcon_MiracleSeed[] = INCBIN_U32("graphics/items/icons/miracle_seed.4bpp.lz"); +const u32 gItemIconPalette_MiracleSeed[] = INCBIN_U32("graphics/items/icon_palettes/miracle_seed.gbapal.lz"); -const u32 gFile_graphics_items_icons_stick_sheet[] = INCBIN_U32("graphics/items/icons/stick.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_stick_palette[] = INCBIN_U32("graphics/items/icon_palettes/stick.gbapal.lz"); +const u32 gItemIcon_BlackGlasses[] = INCBIN_U32("graphics/items/icons/black_glasses.4bpp.lz"); +const u32 gItemIconPalette_BlackTypeEnhancingItem[] = INCBIN_U32("graphics/items/icon_palettes/black_type_enhancing_item.gbapal.lz"); -const u32 gFile_graphics_items_icons_scarf_sheet[] = INCBIN_U32("graphics/items/icons/scarf.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_red_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/red_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_blue_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/blue_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_pink_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/pink_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_green_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/green_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_yellow_scarf_palette[] = INCBIN_U32("graphics/items/icon_palettes/yellow_scarf.gbapal.lz"); +const u32 gItemIcon_BlackBelt[] = INCBIN_U32("graphics/items/icons/black_belt.4bpp.lz"); -const u32 gFile_graphics_items_icons_mach_bike_sheet[] = INCBIN_U32("graphics/items/icons/mach_bike.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mach_bike_palette[] = INCBIN_U32("graphics/items/icon_palettes/mach_bike.gbapal.lz"); +const u32 gItemIcon_Magnet[] = INCBIN_U32("graphics/items/icons/magnet.4bpp.lz"); +const u32 gItemIconPalette_Magnet[] = INCBIN_U32("graphics/items/icon_palettes/magnet.gbapal.lz"); -const u32 gFile_graphics_items_icons_coin_case_sheet[] = INCBIN_U32("graphics/items/icons/coin_case.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_coin_case_palette[] = INCBIN_U32("graphics/items/icon_palettes/coin_case.gbapal.lz"); +const u32 gItemIcon_MysticWater[] = INCBIN_U32("graphics/items/icons/mystic_water.4bpp.lz"); +const u32 gItemIconPalette_MysticWater[] = INCBIN_U32("graphics/items/icon_palettes/mystic_water.gbapal.lz"); -const u32 gFile_graphics_items_icons_itemfinder_sheet[] = INCBIN_U32("graphics/items/icons/itemfinder.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_itemfinder_palette[] = INCBIN_U32("graphics/items/icon_palettes/itemfinder.gbapal.lz"); +const u32 gItemIcon_SharpBeak[] = INCBIN_U32("graphics/items/icons/sharp_beak.4bpp.lz"); +const u32 gItemIconPalette_SharpBeak[] = INCBIN_U32("graphics/items/icon_palettes/sharp_beak.gbapal.lz"); -const u32 gFile_graphics_items_icons_old_rod_sheet[] = INCBIN_U32("graphics/items/icons/old_rod.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_old_rod_palette[] = INCBIN_U32("graphics/items/icon_palettes/old_rod.gbapal.lz"); +const u32 gItemIcon_PoisonBarb[] = INCBIN_U32("graphics/items/icons/poison_barb.4bpp.lz"); +const u32 gItemIconPalette_PoisonBarb[] = INCBIN_U32("graphics/items/icon_palettes/poison_barb.gbapal.lz"); -const u32 gFile_graphics_items_icons_good_rod_sheet[] = INCBIN_U32("graphics/items/icons/good_rod.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_good_rod_palette[] = INCBIN_U32("graphics/items/icon_palettes/good_rod.gbapal.lz"); +const u32 gItemIcon_NeverMeltIce[] = INCBIN_U32("graphics/items/icons/never_melt_ice.4bpp.lz"); +const u32 gItemIconPalette_NeverMeltIce[] = INCBIN_U32("graphics/items/icon_palettes/never_melt_ice.gbapal.lz"); -const u32 gFile_graphics_items_icons_super_rod_sheet[] = INCBIN_U32("graphics/items/icons/super_rod.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_super_rod_palette[] = INCBIN_U32("graphics/items/icon_palettes/super_rod.gbapal.lz"); +const u32 gItemIcon_SpellTag[] = INCBIN_U32("graphics/items/icons/spell_tag.4bpp.lz"); +const u32 gItemIconPalette_SpellTag[] = INCBIN_U32("graphics/items/icon_palettes/spell_tag.gbapal.lz"); -const u32 gFile_graphics_items_icons_ss_ticket_sheet[] = INCBIN_U32("graphics/items/icons/ss_ticket.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_ss_ticket_palette[] = INCBIN_U32("graphics/items/icon_palettes/ss_ticket.gbapal.lz"); +const u32 gItemIcon_TwistedSpoon[] = INCBIN_U32("graphics/items/icons/twisted_spoon.4bpp.lz"); +const u32 gItemIconPalette_TwistedSpoon[] = INCBIN_U32("graphics/items/icon_palettes/twisted_spoon.gbapal.lz"); -const u32 gFile_graphics_items_icons_contest_pass_sheet[] = INCBIN_U32("graphics/items/icons/contest_pass.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_contest_pass_palette[] = INCBIN_U32("graphics/items/icon_palettes/contest_pass.gbapal.lz"); +const u32 gItemIcon_Charcoal[] = INCBIN_U32("graphics/items/icons/charcoal.4bpp.lz"); +const u32 gItemIconPalette_Charcoal[] = INCBIN_U32("graphics/items/icon_palettes/charcoal.gbapal.lz"); -const u32 gFile_graphics_items_icons_wailmer_pail_sheet[] = INCBIN_U32("graphics/items/icons/wailmer_pail.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_wailmer_pail_palette[] = INCBIN_U32("graphics/items/icon_palettes/wailmer_pail.gbapal.lz"); +const u32 gItemIcon_DragonFang[] = INCBIN_U32("graphics/items/icons/dragon_fang.4bpp.lz"); +const u32 gItemIconPalette_DragonFang[] = INCBIN_U32("graphics/items/icon_palettes/dragon_fang.gbapal.lz"); -const u32 gFile_graphics_items_icons_devon_goods_sheet[] = INCBIN_U32("graphics/items/icons/devon_goods.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_devon_goods_palette[] = INCBIN_U32("graphics/items/icon_palettes/devon_goods.gbapal.lz"); +const u32 gItemIcon_SilkScarf[] = INCBIN_U32("graphics/items/icons/silk_scarf.4bpp.lz"); +const u32 gItemIconPalette_SilkScarf[] = INCBIN_U32("graphics/items/icon_palettes/silk_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icons_soot_sack_sheet[] = INCBIN_U32("graphics/items/icons/soot_sack.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_soot_sack_palette[] = INCBIN_U32("graphics/items/icon_palettes/soot_sack.gbapal.lz"); +const u32 gItemIcon_UpGrade[] = INCBIN_U32("graphics/items/icons/up_grade.4bpp.lz"); +const u32 gItemIconPalette_UpGrade[] = INCBIN_U32("graphics/items/icon_palettes/up_grade.gbapal.lz"); -const u32 gFile_graphics_items_icons_basement_key_sheet[] = INCBIN_U32("graphics/items/icons/basement_key.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_old_key_palette[] = INCBIN_U32("graphics/items/icon_palettes/old_key.gbapal.lz"); +const u32 gItemIcon_ShellBell[] = INCBIN_U32("graphics/items/icons/shell_bell.4bpp.lz"); -const u32 gFile_graphics_items_icons_acro_bike_sheet[] = INCBIN_U32("graphics/items/icons/acro_bike.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_acro_bike_palette[] = INCBIN_U32("graphics/items/icon_palettes/acro_bike.gbapal.lz"); +const u32 gItemIcon_SeaIncense[] = INCBIN_U32("graphics/items/icons/sea_incense.4bpp.lz"); +const u32 gItemIconPalette_SeaIncense[] = INCBIN_U32("graphics/items/icon_palettes/sea_incense.gbapal.lz"); -const u32 gFile_graphics_items_icons_pokeblock_case_sheet[] = INCBIN_U32("graphics/items/icons/pokeblock_case.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_pokeblock_case_palette[] = INCBIN_U32("graphics/items/icon_palettes/pokeblock_case.gbapal.lz"); +const u32 gItemIcon_LaxIncense[] = INCBIN_U32("graphics/items/icons/lax_incense.4bpp.lz"); +const u32 gItemIconPalette_LaxIncense[] = INCBIN_U32("graphics/items/icon_palettes/lax_incense.gbapal.lz"); -const u32 gFile_graphics_items_icons_letter_sheet[] = INCBIN_U32("graphics/items/icons/letter.4bpp.lz"); +const u32 gItemIcon_LuckyPunch[] = INCBIN_U32("graphics/items/icons/lucky_punch.4bpp.lz"); +const u32 gItemIconPalette_LuckyPunch[] = INCBIN_U32("graphics/items/icon_palettes/lucky_punch.gbapal.lz"); -const u32 gFile_graphics_items_icons_eon_ticket_sheet[] = INCBIN_U32("graphics/items/icons/eon_ticket.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_eon_ticket_palette[] = INCBIN_U32("graphics/items/icon_palettes/eon_ticket.gbapal.lz"); +const u32 gItemIcon_MetalPowder[] = INCBIN_U32("graphics/items/icons/metal_powder.4bpp.lz"); +const u32 gItemIconPalette_MetalPowder[] = INCBIN_U32("graphics/items/icon_palettes/metal_powder.gbapal.lz"); -const u32 gFile_graphics_items_icons_orb_sheet[] = INCBIN_U32("graphics/items/icons/orb.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_red_orb_palette[] = INCBIN_U32("graphics/items/icon_palettes/red_orb.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_blue_orb_palette[] = INCBIN_U32("graphics/items/icon_palettes/blue_orb.gbapal.lz"); +const u32 gItemIcon_ThickClub[] = INCBIN_U32("graphics/items/icons/thick_club.4bpp.lz"); +const u32 gItemIconPalette_ThickClub[] = INCBIN_U32("graphics/items/icon_palettes/thick_club.gbapal.lz"); -const u32 gFile_graphics_items_icons_scanner_sheet[] = INCBIN_U32("graphics/items/icons/scanner.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_scanner_palette[] = INCBIN_U32("graphics/items/icon_palettes/scanner.gbapal.lz"); +const u32 gItemIcon_Stick[] = INCBIN_U32("graphics/items/icons/stick.4bpp.lz"); +const u32 gItemIconPalette_Stick[] = INCBIN_U32("graphics/items/icon_palettes/stick.gbapal.lz"); -const u32 gFile_graphics_items_icons_go_goggles_sheet[] = INCBIN_U32("graphics/items/icons/go_goggles.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_go_goggles_palette[] = INCBIN_U32("graphics/items/icon_palettes/go_goggles.gbapal.lz"); +const u32 gItemIcon_Scarf[] = INCBIN_U32("graphics/items/icons/scarf.4bpp.lz"); +const u32 gItemIconPalette_RedScarf[] = INCBIN_U32("graphics/items/icon_palettes/red_scarf.gbapal.lz"); +const u32 gItemIconPalette_BlueScarf[] = INCBIN_U32("graphics/items/icon_palettes/blue_scarf.gbapal.lz"); +const u32 gItemIconPalette_PinkScarf[] = INCBIN_U32("graphics/items/icon_palettes/pink_scarf.gbapal.lz"); +const u32 gItemIconPalette_GreenScarf[] = INCBIN_U32("graphics/items/icon_palettes/green_scarf.gbapal.lz"); +const u32 gItemIconPalette_YellowScarf[] = INCBIN_U32("graphics/items/icon_palettes/yellow_scarf.gbapal.lz"); -const u32 gFile_graphics_items_icons_meteorite_sheet[] = INCBIN_U32("graphics/items/icons/meteorite.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_meteorite_palette[] = INCBIN_U32("graphics/items/icon_palettes/meteorite.gbapal.lz"); +// Key items -const u32 gFile_graphics_items_icons_room1_key_sheet[] = INCBIN_U32("graphics/items/icons/room1_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_room2_key_sheet[] = INCBIN_U32("graphics/items/icons/room2_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_room4_key_sheet[] = INCBIN_U32("graphics/items/icons/room4_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_room6_key_sheet[] = INCBIN_U32("graphics/items/icons/room6_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_storage_key_sheet[] = INCBIN_U32("graphics/items/icons/storage_key.4bpp.lz"); +const u32 gItemIcon_MachBike[] = INCBIN_U32("graphics/items/icons/mach_bike.4bpp.lz"); +const u32 gItemIconPalette_MachBike[] = INCBIN_U32("graphics/items/icon_palettes/mach_bike.gbapal.lz"); -const u32 gFile_graphics_items_icons_root_fossil_sheet[] = INCBIN_U32("graphics/items/icons/root_fossil.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_hoenn_fossil_palette[] = INCBIN_U32("graphics/items/icon_palettes/hoenn_fossil.gbapal.lz"); -const u32 gFile_graphics_items_icons_claw_fossil_sheet[] = INCBIN_U32("graphics/items/icons/claw_fossil.4bpp.lz"); +const u32 gItemIcon_CoinCase[] = INCBIN_U32("graphics/items/icons/coin_case.4bpp.lz"); +const u32 gItemIconPalette_CoinCase[] = INCBIN_U32("graphics/items/icon_palettes/coin_case.gbapal.lz"); -const u32 gFile_graphics_items_icons_devon_scope_sheet[] = INCBIN_U32("graphics/items/icons/devon_scope.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_devon_scope_palette[] = INCBIN_U32("graphics/items/icon_palettes/devon_scope.gbapal.lz"); +const u32 gItemIcon_Itemfinder[] = INCBIN_U32("graphics/items/icons/itemfinder.4bpp.lz"); +const u32 gItemIconPalette_Itemfinder[] = INCBIN_U32("graphics/items/icon_palettes/itemfinder.gbapal.lz"); -const u32 gFile_graphics_items_icons_tm_sheet[] = INCBIN_U32("graphics/items/icons/tm.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fighting_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/fighting_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_dragon_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/dragon_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_water_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/water_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_psychic_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/psychic_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_normal_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/normal_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_poison_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/poison_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_ice_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/ice_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_grass_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/grass_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_fire_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/fire_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_dark_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/dark_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_steel_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/steel_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_electric_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/electric_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_ground_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/ground_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_ghost_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/ghost_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_rock_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/rock_tm_hm.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_flying_tm_hm_palette[] = INCBIN_U32("graphics/items/icon_palettes/flying_tm_hm.gbapal.lz"); +const u32 gItemIcon_OldRod[] = INCBIN_U32("graphics/items/icons/old_rod.4bpp.lz"); +const u32 gItemIconPalette_OldRod[] = INCBIN_U32("graphics/items/icon_palettes/old_rod.gbapal.lz"); -const u32 gFile_graphics_items_icons_oaks_parcel_sheet[] = INCBIN_U32("graphics/items/icons/oaks_parcel.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_oaks_parcel_palette[] = INCBIN_U32("graphics/items/icon_palettes/oaks_parcel.gbapal.lz"); +const u32 gItemIcon_GoodRod[] = INCBIN_U32("graphics/items/icons/good_rod.4bpp.lz"); +const u32 gItemIconPalette_GoodRod[] = INCBIN_U32("graphics/items/icon_palettes/good_rod.gbapal.lz"); -const u32 gFile_graphics_items_icons_poke_flute_sheet[] = INCBIN_U32("graphics/items/icons/poke_flute.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_poke_flute_palette[] = INCBIN_U32("graphics/items/icon_palettes/poke_flute.gbapal.lz"); +const u32 gItemIcon_SuperRod[] = INCBIN_U32("graphics/items/icons/super_rod.4bpp.lz"); +const u32 gItemIconPalette_SuperRod[] = INCBIN_U32("graphics/items/icon_palettes/super_rod.gbapal.lz"); -const u32 gFile_graphics_items_icons_secret_key_sheet[] = INCBIN_U32("graphics/items/icons/secret_key.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_secret_key_palette[] = INCBIN_U32("graphics/items/icon_palettes/secret_key.gbapal.lz"); +const u32 gItemIcon_SSTicket[] = INCBIN_U32("graphics/items/icons/ss_ticket.4bpp.lz"); +const u32 gItemIconPalette_SSTicket[] = INCBIN_U32("graphics/items/icon_palettes/ss_ticket.gbapal.lz"); -const u32 gFile_graphics_items_icons_bike_voucher_sheet[] = INCBIN_U32("graphics/items/icons/bike_voucher.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_bike_voucher_palette[] = INCBIN_U32("graphics/items/icon_palettes/bike_voucher.gbapal.lz"); +const u32 gItemIcon_ContestPass[] = INCBIN_U32("graphics/items/icons/contest_pass.4bpp.lz"); +const u32 gItemIconPalette_ContestPass[] = INCBIN_U32("graphics/items/icon_palettes/contest_pass.gbapal.lz"); -const u32 gFile_graphics_items_icons_gold_teeth_sheet[] = INCBIN_U32("graphics/items/icons/gold_teeth.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_gold_teeth_palette[] = INCBIN_U32("graphics/items/icon_palettes/gold_teeth.gbapal.lz"); +const u32 gItemIcon_WailmerPail[] = INCBIN_U32("graphics/items/icons/wailmer_pail.4bpp.lz"); +const u32 gItemIconPalette_WailmerPail[] = INCBIN_U32("graphics/items/icon_palettes/wailmer_pail.gbapal.lz"); -const u32 gFile_graphics_items_icons_old_amber_sheet[] = INCBIN_U32("graphics/items/icons/old_amber.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_old_amber_palette[] = INCBIN_U32("graphics/items/icon_palettes/old_amber.gbapal.lz"); +const u32 gItemIcon_DevonGoods[] = INCBIN_U32("graphics/items/icons/devon_goods.4bpp.lz"); +const u32 gItemIconPalette_DevonGoods[] = INCBIN_U32("graphics/items/icon_palettes/devon_goods.gbapal.lz"); -const u32 gFile_graphics_items_icons_card_key_sheet[] = INCBIN_U32("graphics/items/icons/card_key.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_card_key_palette[] = INCBIN_U32("graphics/items/icon_palettes/card_key.gbapal.lz"); +const u32 gItemIcon_SootSack[] = INCBIN_U32("graphics/items/icons/soot_sack.4bpp.lz"); +const u32 gItemIconPalette_SootSack[] = INCBIN_U32("graphics/items/icon_palettes/soot_sack.gbapal.lz"); -const u32 gFile_graphics_items_icons_lift_key_sheet[] = INCBIN_U32("graphics/items/icons/lift_key.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_key_palette[] = INCBIN_U32("graphics/items/icon_palettes/key.gbapal.lz"); +const u32 gItemIcon_BasementKey[] = INCBIN_U32("graphics/items/icons/basement_key.4bpp.lz"); +const u32 gItemIconPalette_OldKey[] = INCBIN_U32("graphics/items/icon_palettes/old_key.gbapal.lz"); -const u32 gFile_graphics_items_icons_helix_fossil_sheet[] = INCBIN_U32("graphics/items/icons/helix_fossil.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_kanto_fossil_palette[] = INCBIN_U32("graphics/items/icon_palettes/kanto_fossil.gbapal.lz"); -const u32 gFile_graphics_items_icons_dome_fossil_sheet[] = INCBIN_U32("graphics/items/icons/dome_fossil.4bpp.lz"); +const u32 gItemIcon_AcroBike[] = INCBIN_U32("graphics/items/icons/acro_bike.4bpp.lz"); +const u32 gItemIconPalette_AcroBike[] = INCBIN_U32("graphics/items/icon_palettes/acro_bike.gbapal.lz"); -const u32 gFile_graphics_items_icons_silph_scope_sheet[] = INCBIN_U32("graphics/items/icons/silph_scope.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_silph_scope_palette[] = INCBIN_U32("graphics/items/icon_palettes/silph_scope.gbapal.lz"); +const u32 gItemIcon_PokeblockCase[] = INCBIN_U32("graphics/items/icons/pokeblock_case.4bpp.lz"); +const u32 gItemIconPalette_PokeblockCase[] = INCBIN_U32("graphics/items/icon_palettes/pokeblock_case.gbapal.lz"); -const u32 gFile_graphics_items_icons_bicycle_sheet[] = INCBIN_U32("graphics/items/icons/bicycle.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_bicycle_palette[] = INCBIN_U32("graphics/items/icon_palettes/bicycle.gbapal.lz"); +const u32 gItemIcon_Letter[] = INCBIN_U32("graphics/items/icons/letter.4bpp.lz"); +const u32 gItemIcon_EonTicket[] = INCBIN_U32("graphics/items/icons/eon_ticket.4bpp.lz"); -const u32 gFile_graphics_items_icons_town_map_sheet[] = INCBIN_U32("graphics/items/icons/town_map.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_town_map_palette[] = INCBIN_U32("graphics/items/icon_palettes/town_map.gbapal.lz"); +const u32 gItemIconPalette_EonTicket[] = INCBIN_U32("graphics/items/icon_palettes/eon_ticket.gbapal.lz"); -const u32 gFile_graphics_items_icons_vs_seeker_sheet[] = INCBIN_U32("graphics/items/icons/vs_seeker.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_vs_seeker_palette[] = INCBIN_U32("graphics/items/icon_palettes/vs_seeker.gbapal.lz"); +const u32 gItemIcon_Orb[] = INCBIN_U32("graphics/items/icons/orb.4bpp.lz"); +const u32 gItemIconPalette_RedOrb[] = INCBIN_U32("graphics/items/icon_palettes/red_orb.gbapal.lz"); +const u32 gItemIconPalette_BlueOrb[] = INCBIN_U32("graphics/items/icon_palettes/blue_orb.gbapal.lz"); -const u32 gFile_graphics_items_icons_fame_checker_sheet[] = INCBIN_U32("graphics/items/icons/fame_checker.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_fame_checker_palette[] = INCBIN_U32("graphics/items/icon_palettes/fame_checker.gbapal.lz"); +const u32 gItemIcon_Scanner[] = INCBIN_U32("graphics/items/icons/scanner.4bpp.lz"); +const u32 gItemIconPalette_Scanner[] = INCBIN_U32("graphics/items/icon_palettes/scanner.gbapal.lz"); -const u32 gFile_graphics_items_icons_tm_case_sheet[] = INCBIN_U32("graphics/items/icons/tm_case.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_tm_case_palette[] = INCBIN_U32("graphics/items/icon_palettes/tm_case.gbapal.lz"); +const u32 gItemIcon_GoGoggles[] = INCBIN_U32("graphics/items/icons/go_goggles.4bpp.lz"); +const u32 gItemIconPalette_GoGoggles[] = INCBIN_U32("graphics/items/icon_palettes/go_goggles.gbapal.lz"); -const u32 gFile_graphics_items_icons_berry_pouch_sheet[] = INCBIN_U32("graphics/items/icons/berry_pouch.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_berry_pouch_palette[] = INCBIN_U32("graphics/items/icon_palettes/berry_pouch.gbapal.lz"); +const u32 gItemIcon_Meteorite[] = INCBIN_U32("graphics/items/icons/meteorite.4bpp.lz"); +const u32 gItemIconPalette_Meteorite[] = INCBIN_U32("graphics/items/icon_palettes/meteorite.gbapal.lz"); -const u32 gFile_graphics_items_icons_teachy_tv_sheet[] = INCBIN_U32("graphics/items/icons/teachy_tv.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_teachy_tv_palette[] = INCBIN_U32("graphics/items/icon_palettes/teachy_tv.gbapal.lz"); +const u32 gItemIcon_Room1Key[] = INCBIN_U32("graphics/items/icons/room1_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_tri_pass_sheet[] = INCBIN_U32("graphics/items/icons/tri_pass.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_tri_pass_palette[] = INCBIN_U32("graphics/items/icon_palettes/tri_pass.gbapal.lz"); +const u32 gItemIcon_Room2Key[] = INCBIN_U32("graphics/items/icons/room2_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_rainbow_pass_sheet[] = INCBIN_U32("graphics/items/icons/rainbow_pass.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_rainbow_pass_palette[] = INCBIN_U32("graphics/items/icon_palettes/rainbow_pass.gbapal.lz"); +const u32 gItemIcon_Room4Key[] = INCBIN_U32("graphics/items/icons/room4_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_tea_sheet[] = INCBIN_U32("graphics/items/icons/tea.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_tea_palette[] = INCBIN_U32("graphics/items/icon_palettes/tea.gbapal.lz"); +const u32 gItemIcon_Room6Key[] = INCBIN_U32("graphics/items/icons/room6_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_mystic_ticket_sheet[] = INCBIN_U32("graphics/items/icons/mystic_ticket.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_mystic_ticket_palette[] = INCBIN_U32("graphics/items/icon_palettes/mystic_ticket.gbapal.lz"); +const u32 gItemIcon_StorageKey[] = INCBIN_U32("graphics/items/icons/storage_key.4bpp.lz"); -const u32 gFile_graphics_items_icons_aurora_ticket_sheet[] = INCBIN_U32("graphics/items/icons/aurora_ticket.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_aurora_ticket_palette[] = INCBIN_U32("graphics/items/icon_palettes/aurora_ticket.gbapal.lz"); +const u32 gItemIcon_RootFossil[] = INCBIN_U32("graphics/items/icons/root_fossil.4bpp.lz"); +const u32 gItemIconPalette_HoennFossil[] = INCBIN_U32("graphics/items/icon_palettes/hoenn_fossil.gbapal.lz"); +const u32 gItemIcon_ClawFossil[] = INCBIN_U32("graphics/items/icons/claw_fossil.4bpp.lz"); -const u32 gFile_graphics_items_icons_powder_jar_sheet[] = INCBIN_U32("graphics/items/icons/powder_jar.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_powder_jar_palette[] = INCBIN_U32("graphics/items/icon_palettes/powder_jar.gbapal.lz"); +const u32 gItemIcon_DevonScope[] = INCBIN_U32("graphics/items/icons/devon_scope.4bpp.lz"); +const u32 gItemIconPalette_DevonScope[] = INCBIN_U32("graphics/items/icon_palettes/devon_scope.gbapal.lz"); -const u32 gFile_graphics_items_icon_palettes_ruby_palette[] = INCBIN_U32("graphics/items/icon_palettes/ruby.gbapal.lz"); -const u32 gFile_graphics_items_icons_gem_sheet[] = INCBIN_U32("graphics/items/icons/gem.4bpp.lz"); -const u32 gFile_graphics_items_icon_palettes_sapphire_palette[] = INCBIN_U32("graphics/items/icon_palettes/sapphire.gbapal.lz"); +// TMs/HMs + +const u32 gItemIcon_TMHM[] = INCBIN_U32("graphics/items/icons/tm_hm.4bpp.lz"); + +const u32 gItemIconPalette_FightingTMHM[] = INCBIN_U32("graphics/items/icon_palettes/fighting_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_DragonTMHM[] = INCBIN_U32("graphics/items/icon_palettes/dragon_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_WaterTMHM[] = INCBIN_U32("graphics/items/icon_palettes/water_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_PsychicTMHM[] = INCBIN_U32("graphics/items/icon_palettes/psychic_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_NormalTMHM[] = INCBIN_U32("graphics/items/icon_palettes/normal_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_PoisonTMHM[] = INCBIN_U32("graphics/items/icon_palettes/poison_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_IceTMHM[] = INCBIN_U32("graphics/items/icon_palettes/ice_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_GrassTMHM[] = INCBIN_U32("graphics/items/icon_palettes/grass_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_FireTMHM[] = INCBIN_U32("graphics/items/icon_palettes/fire_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_DarkTMHM[] = INCBIN_U32("graphics/items/icon_palettes/dark_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_SteelTMHM[] = INCBIN_U32("graphics/items/icon_palettes/steel_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_ElectricTMHM[] = INCBIN_U32("graphics/items/icon_palettes/electric_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_GroundTMHM[] = INCBIN_U32("graphics/items/icon_palettes/ground_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_GhostTMHM[] = INCBIN_U32("graphics/items/icon_palettes/ghost_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_RockTMHM[] = INCBIN_U32("graphics/items/icon_palettes/rock_tm_hm.gbapal.lz"); +const u32 gItemIconPalette_FlyingTMHM[] = INCBIN_U32("graphics/items/icon_palettes/flying_tm_hm.gbapal.lz"); + +// FireRed/LeafGreen key items + +const u32 gItemIcon_OaksParcel[] = INCBIN_U32("graphics/items/icons/oaks_parcel.4bpp.lz"); +const u32 gItemIconPalette_OaksParcel[] = INCBIN_U32("graphics/items/icon_palettes/oaks_parcel.gbapal.lz"); + +const u32 gItemIcon_PokeFlute[] = INCBIN_U32("graphics/items/icons/poke_flute.4bpp.lz"); +const u32 gItemIconPalette_PokeFlute[] = INCBIN_U32("graphics/items/icon_palettes/poke_flute.gbapal.lz"); + +const u32 gItemIcon_SecretKey[] = INCBIN_U32("graphics/items/icons/secret_key.4bpp.lz"); +const u32 gItemIconPalette_SecretKey[] = INCBIN_U32("graphics/items/icon_palettes/secret_key.gbapal.lz"); + +const u32 gItemIcon_BikeVoucher[] = INCBIN_U32("graphics/items/icons/bike_voucher.4bpp.lz"); +const u32 gItemIconPalette_BikeVoucher[] = INCBIN_U32("graphics/items/icon_palettes/bike_voucher.gbapal.lz"); + +const u32 gItemIcon_GoldTeeth[] = INCBIN_U32("graphics/items/icons/gold_teeth.4bpp.lz"); +const u32 gItemIconPalette_GoldTeeth[] = INCBIN_U32("graphics/items/icon_palettes/gold_teeth.gbapal.lz"); + +const u32 gItemIcon_OldAmber[] = INCBIN_U32("graphics/items/icons/old_amber.4bpp.lz"); +const u32 gItemIconPalette_OldAmber[] = INCBIN_U32("graphics/items/icon_palettes/old_amber.gbapal.lz"); + +const u32 gItemIcon_CardKey[] = INCBIN_U32("graphics/items/icons/card_key.4bpp.lz"); +const u32 gItemIconPalette_CardKey[] = INCBIN_U32("graphics/items/icon_palettes/card_key.gbapal.lz"); + +const u32 gItemIcon_LiftKey[] = INCBIN_U32("graphics/items/icons/lift_key.4bpp.lz"); +const u32 gItemIconPalette_Key[] = INCBIN_U32("graphics/items/icon_palettes/key.gbapal.lz"); + +const u32 gItemIcon_HelixFossil[] = INCBIN_U32("graphics/items/icons/helix_fossil.4bpp.lz"); +const u32 gItemIconPalette_KantoFossil[] = INCBIN_U32("graphics/items/icon_palettes/kanto_fossil.gbapal.lz"); +const u32 gItemIcon_DomeFossil[] = INCBIN_U32("graphics/items/icons/dome_fossil.4bpp.lz"); + +const u32 gItemIcon_SilphScope[] = INCBIN_U32("graphics/items/icons/silph_scope.4bpp.lz"); +const u32 gItemIconPalette_SilphScope[] = INCBIN_U32("graphics/items/icon_palettes/silph_scope.gbapal.lz"); + +const u32 gItemIcon_Bicycle[] = INCBIN_U32("graphics/items/icons/bicycle.4bpp.lz"); +const u32 gItemIconPalette_Bicycle[] = INCBIN_U32("graphics/items/icon_palettes/bicycle.gbapal.lz"); + +const u32 gItemIcon_TownMap[] = INCBIN_U32("graphics/items/icons/town_map.4bpp.lz"); +const u32 gItemIconPalette_TownMap[] = INCBIN_U32("graphics/items/icon_palettes/town_map.gbapal.lz"); + +const u32 gItemIcon_VSSeeker[] = INCBIN_U32("graphics/items/icons/vs_seeker.4bpp.lz"); +const u32 gItemIconPalette_VSSeeker[] = INCBIN_U32("graphics/items/icon_palettes/vs_seeker.gbapal.lz"); + +const u32 gItemIcon_FameChecker[] = INCBIN_U32("graphics/items/icons/fame_checker.4bpp.lz"); +const u32 gItemIconPalette_FameChecker[] = INCBIN_U32("graphics/items/icon_palettes/fame_checker.gbapal.lz"); + +const u32 gItemIcon_TMCase[] = INCBIN_U32("graphics/items/icons/tm_case.4bpp.lz"); +const u32 gItemIconPalette_TMCase[] = INCBIN_U32("graphics/items/icon_palettes/tm_case.gbapal.lz"); + +const u32 gItemIcon_BerryPouch[] = INCBIN_U32("graphics/items/icons/berry_pouch.4bpp.lz"); +const u32 gItemIconPalette_BerryPouch[] = INCBIN_U32("graphics/items/icon_palettes/berry_pouch.gbapal.lz"); + +const u32 gItemIcon_TeachyTV[] = INCBIN_U32("graphics/items/icons/teachy_tv.4bpp.lz"); +const u32 gItemIconPalette_TeachyTV[] = INCBIN_U32("graphics/items/icon_palettes/teachy_tv.gbapal.lz"); + +const u32 gItemIcon_TriPass[] = INCBIN_U32("graphics/items/icons/tri_pass.4bpp.lz"); +const u32 gItemIconPalette_TriPass[] = INCBIN_U32("graphics/items/icon_palettes/tri_pass.gbapal.lz"); + +const u32 gItemIcon_RainbowPass[] = INCBIN_U32("graphics/items/icons/rainbow_pass.4bpp.lz"); +const u32 gItemIconPalette_RainbowPass[] = INCBIN_U32("graphics/items/icon_palettes/rainbow_pass.gbapal.lz"); + +const u32 gItemIcon_Tea[] = INCBIN_U32("graphics/items/icons/tea.4bpp.lz"); +const u32 gItemIconPalette_Tea[] = INCBIN_U32("graphics/items/icon_palettes/tea.gbapal.lz"); + +const u32 gItemIcon_MysticTicket[] = INCBIN_U32("graphics/items/icons/mystic_ticket.4bpp.lz"); +const u32 gItemIconPalette_MysticTicket[] = INCBIN_U32("graphics/items/icon_palettes/mystic_ticket.gbapal.lz"); + +const u32 gItemIcon_AuroraTicket[] = INCBIN_U32("graphics/items/icons/aurora_ticket.4bpp.lz"); +const u32 gItemIconPalette_AuroraTicket[] = INCBIN_U32("graphics/items/icon_palettes/aurora_ticket.gbapal.lz"); + +const u32 gItemIcon_PowderJar[] = INCBIN_U32("graphics/items/icons/powder_jar.4bpp.lz"); +const u32 gItemIconPalette_PowderJar[] = INCBIN_U32("graphics/items/icon_palettes/powder_jar.gbapal.lz"); + +const u32 gItemIconPalette_Ruby[] = INCBIN_U32("graphics/items/icon_palettes/ruby.gbapal.lz"); +const u32 gItemIcon_Gem[] = INCBIN_U32("graphics/items/icons/gem.4bpp.lz"); +const u32 gItemIconPalette_Sapphire[] = INCBIN_U32("graphics/items/icon_palettes/sapphire.gbapal.lz"); diff --git a/src/data/graphics/trainers.h b/src/data/graphics/trainers.h index cd7463a4e..0b4a21e75 100644 --- a/src/data/graphics/trainers.h +++ b/src/data/graphics/trainers.h @@ -450,7 +450,7 @@ const u8 gTrainerBackPic_OldMan[] = INCBIN_U8("graphics/trainers/back_pics/old_m const u8 gTrainerBackPic_RSBrendan[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_brendan_back_pic.4bpp"); const u8 gTrainerBackPic_RSMay[] = INCBIN_U8("graphics/trainers/back_pics/ruby_sapphire_may_back_pic.4bpp"); -const u32 gTrainerPalette_RedBackPic[] = INCBIN_U32("graphics/trainers/palettes/leaf_back_pic.gbapal.lz"); -const u32 gTrainerPalette_LeafBackPic[] = INCBIN_U32("graphics/trainers/palettes/red_back_pic.gbapal.lz"); +const u32 gTrainerPalette_RedBackPic[] = INCBIN_U32("graphics/trainers/palettes/red_back_pic.gbapal.lz"); +const u32 gTrainerPalette_LeafBackPic[] = INCBIN_U32("graphics/trainers/palettes/leaf_back_pic.gbapal.lz"); const u32 gTrainerPalette_PokedudeBackPic[] = INCBIN_U32("graphics/trainers/palettes/pokedude_back_pic.gbapal.lz"); const u32 gTrainerPalette_OldManBackPic[] = INCBIN_U32("graphics/trainers/palettes/old_man_back_pic.gbapal.lz"); diff --git a/src/data/item_icon_table.h b/src/data/item_icon_table.h index 1fd403366..a9dd7f0b2 100644 --- a/src/data/item_icon_table.h +++ b/src/data/item_icon_table.h @@ -1,379 +1,403 @@ -static const void *const sItemIconTable[ITEMS_COUNT + 1][2] = +static const u32 *const sItemIconTable[ITEMS_COUNT + 1][2] = { - [ITEM_NONE] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_MASTER_BALL] = {gFile_graphics_items_icons_master_ball_sheet, gFile_graphics_items_icon_palettes_master_ball_palette}, - [ITEM_ULTRA_BALL] = {gFile_graphics_items_icons_ultra_ball_sheet, gFile_graphics_items_icon_palettes_ultra_ball_palette}, - [ITEM_GREAT_BALL] = {gFile_graphics_items_icons_great_ball_sheet, gFile_graphics_items_icon_palettes_great_ball_palette}, - [ITEM_POKE_BALL] = {gFile_graphics_items_icons_poke_ball_sheet, gFile_graphics_items_icon_palettes_poke_ball_palette}, - [ITEM_SAFARI_BALL] = {gFile_graphics_items_icons_safari_ball_sheet, gFile_graphics_items_icon_palettes_safari_ball_palette}, - [ITEM_NET_BALL] = {gFile_graphics_items_icons_net_ball_sheet, gFile_graphics_items_icon_palettes_net_ball_palette}, - [ITEM_DIVE_BALL] = {gFile_graphics_items_icons_dive_ball_sheet, gFile_graphics_items_icon_palettes_dive_ball_palette}, - [ITEM_NEST_BALL] = {gFile_graphics_items_icons_nest_ball_sheet, gFile_graphics_items_icon_palettes_nest_ball_palette}, - [ITEM_REPEAT_BALL] = {gFile_graphics_items_icons_repeat_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette}, - [ITEM_TIMER_BALL] = {gFile_graphics_items_icons_timer_ball_sheet, gFile_graphics_items_icon_palettes_repeat_ball_palette}, - [ITEM_LUXURY_BALL] = {gFile_graphics_items_icons_luxury_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette}, - [ITEM_PREMIER_BALL] = {gFile_graphics_items_icons_premier_ball_sheet, gFile_graphics_items_icon_palettes_luxury_ball_palette}, - [ITEM_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_potion_palette}, - [ITEM_ANTIDOTE] = {gFile_graphics_items_icons_antidote_sheet, gFile_graphics_items_icon_palettes_antidote_palette}, - [ITEM_BURN_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_burn_heal_palette}, - [ITEM_ICE_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_ice_heal_palette}, - [ITEM_AWAKENING] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_awakening_palette}, - [ITEM_PARALYZE_HEAL] = {gFile_graphics_items_icons_status_heal_sheet, gFile_graphics_items_icon_palettes_paralyze_heal_palette}, - [ITEM_FULL_RESTORE] = {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_full_restore_palette}, - [ITEM_MAX_POTION] = {gFile_graphics_items_icons_large_potion_sheet, gFile_graphics_items_icon_palettes_max_potion_palette}, - [ITEM_HYPER_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_hyper_potion_palette}, - [ITEM_SUPER_POTION] = {gFile_graphics_items_icons_potion_sheet, gFile_graphics_items_icon_palettes_super_potion_palette}, - [ITEM_FULL_HEAL] = {gFile_graphics_items_icons_full_heal_sheet, gFile_graphics_items_icon_palettes_full_heal_palette}, - [ITEM_REVIVE] = {gFile_graphics_items_icons_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette}, - [ITEM_MAX_REVIVE] = {gFile_graphics_items_icons_max_revive_sheet, gFile_graphics_items_icon_palettes_revive_palette}, - [ITEM_FRESH_WATER] = {gFile_graphics_items_icons_fresh_water_sheet, gFile_graphics_items_icon_palettes_fresh_water_palette}, - [ITEM_SODA_POP] = {gFile_graphics_items_icons_soda_pop_sheet, gFile_graphics_items_icon_palettes_soda_pop_palette}, - [ITEM_LEMONADE] = {gFile_graphics_items_icons_lemonade_sheet, gFile_graphics_items_icon_palettes_lemonade_palette}, - [ITEM_MOOMOO_MILK] = {gFile_graphics_items_icons_moomoo_milk_sheet, gFile_graphics_items_icon_palettes_moomoo_milk_palette}, - [ITEM_ENERGY_POWDER] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_energy_powder_palette}, - [ITEM_ENERGY_ROOT] = {gFile_graphics_items_icons_energy_root_sheet, gFile_graphics_items_icon_palettes_energy_root_palette}, - [ITEM_HEAL_POWDER] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_heal_powder_palette}, - [ITEM_REVIVAL_HERB] = {gFile_graphics_items_icons_revival_herb_sheet, gFile_graphics_items_icon_palettes_revival_herb_palette}, - [ITEM_ETHER] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_ether_palette}, - [ITEM_MAX_ETHER] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_ether_palette}, - [ITEM_ELIXIR] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_elixir_palette}, - [ITEM_MAX_ELIXIR] = {gFile_graphics_items_icons_ether_sheet, gFile_graphics_items_icon_palettes_max_elixir_palette}, - [ITEM_LAVA_COOKIE] = {gFile_graphics_items_icons_lava_cookie_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette}, - [ITEM_BLUE_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_blue_flute_palette}, - [ITEM_YELLOW_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_yellow_flute_palette}, - [ITEM_RED_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_red_flute_palette}, - [ITEM_BLACK_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_black_flute_palette}, - [ITEM_WHITE_FLUTE] = {gFile_graphics_items_icons_flute_sheet, gFile_graphics_items_icon_palettes_white_flute_palette}, - [ITEM_BERRY_JUICE] = {gFile_graphics_items_icons_berry_juice_sheet, gFile_graphics_items_icon_palettes_berry_juice_palette}, - [ITEM_SACRED_ASH] = {gFile_graphics_items_icons_sacred_ash_sheet, gFile_graphics_items_icon_palettes_sacred_ash_palette}, - [ITEM_SHOAL_SALT] = {gFile_graphics_items_icons_powder_sheet, gFile_graphics_items_icon_palettes_shoal_salt_palette}, - [ITEM_SHOAL_SHELL] = {gFile_graphics_items_icons_shoal_shell_sheet, gFile_graphics_items_icon_palettes_shell_palette}, - [ITEM_RED_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_red_shard_palette}, - [ITEM_BLUE_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_blue_shard_palette}, - [ITEM_YELLOW_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_yellow_shard_palette}, - [ITEM_GREEN_SHARD] = {gFile_graphics_items_icons_shard_sheet, gFile_graphics_items_icon_palettes_green_shard_palette}, - [ITEM_034] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_035] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_036] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_037] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_038] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_039] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_03A] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_03B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_03C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_03D] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_03E] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_HP_UP] = {gFile_graphics_items_icons_hp_up_sheet, gFile_graphics_items_icon_palettes_hp_up_palette}, - [ITEM_PROTEIN] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_protein_palette}, - [ITEM_IRON] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_iron_palette}, - [ITEM_CARBOS] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_carbos_palette}, - [ITEM_CALCIUM] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_calcium_palette}, - [ITEM_RARE_CANDY] = {gFile_graphics_items_icons_rare_candy_sheet, gFile_graphics_items_icon_palettes_rare_candy_palette}, - [ITEM_PP_UP] = {gFile_graphics_items_icons_pp_up_sheet, gFile_graphics_items_icon_palettes_pp_up_palette}, - [ITEM_ZINC] = {gFile_graphics_items_icons_vitamin_sheet, gFile_graphics_items_icon_palettes_zinc_palette}, - [ITEM_PP_MAX] = {gFile_graphics_items_icons_pp_max_sheet, gFile_graphics_items_icon_palettes_pp_max_palette}, - [ITEM_048] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_GUARD_SPEC] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_guard_spec_palette}, - [ITEM_DIRE_HIT] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_dire_hit_palette}, - [ITEM_X_ATTACK] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_attack_palette}, - [ITEM_X_DEFEND] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_defend_palette}, - [ITEM_X_SPEED] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_speed_palette}, - [ITEM_X_ACCURACY] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_accuracy_palette}, - [ITEM_X_SPECIAL] = {gFile_graphics_items_icons_battle_stat_item_sheet, gFile_graphics_items_icon_palettes_x_special_palette}, - [ITEM_POKE_DOLL] = {gFile_graphics_items_icons_poke_doll_sheet, gFile_graphics_items_icon_palettes_poke_doll_palette}, - [ITEM_FLUFFY_TAIL] = {gFile_graphics_items_icons_fluffy_tail_sheet, gFile_graphics_items_icon_palettes_fluffy_tail_palette}, - [ITEM_052] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_SUPER_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_super_repel_palette}, - [ITEM_MAX_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_max_repel_palette}, - [ITEM_ESCAPE_ROPE] = {gFile_graphics_items_icons_escape_rope_sheet, gFile_graphics_items_icon_palettes_escape_rope_palette}, - [ITEM_REPEL] = {gFile_graphics_items_icons_repel_sheet, gFile_graphics_items_icon_palettes_repel_palette}, - [ITEM_057] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_058] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_059] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_05A] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_05B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_05C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_SUN_STONE] = {gFile_graphics_items_icons_sun_stone_sheet, gFile_graphics_items_icon_palettes_sun_stone_palette}, - [ITEM_MOON_STONE] = {gFile_graphics_items_icons_moon_stone_sheet, gFile_graphics_items_icon_palettes_moon_stone_palette}, - [ITEM_FIRE_STONE] = {gFile_graphics_items_icons_fire_stone_sheet, gFile_graphics_items_icon_palettes_fire_stone_palette}, - [ITEM_THUNDER_STONE] = {gFile_graphics_items_icons_thunder_stone_sheet, gFile_graphics_items_icon_palettes_thunder_stone_palette}, - [ITEM_WATER_STONE] = {gFile_graphics_items_icons_water_stone_sheet, gFile_graphics_items_icon_palettes_water_stone_palette}, - [ITEM_LEAF_STONE] = {gFile_graphics_items_icons_leaf_stone_sheet, gFile_graphics_items_icon_palettes_leaf_stone_palette}, - [ITEM_063] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_064] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_065] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_066] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_TINY_MUSHROOM] = {gFile_graphics_items_icons_tiny_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette}, - [ITEM_BIG_MUSHROOM] = {gFile_graphics_items_icons_big_mushroom_sheet, gFile_graphics_items_icon_palettes_mushroom_palette}, - [ITEM_069] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_PEARL] = {gFile_graphics_items_icons_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette}, - [ITEM_BIG_PEARL] = {gFile_graphics_items_icons_big_pearl_sheet, gFile_graphics_items_icon_palettes_pearl_palette}, - [ITEM_STARDUST] = {gFile_graphics_items_icons_stardust_sheet, gFile_graphics_items_icon_palettes_star_palette}, - [ITEM_STAR_PIECE] = {gFile_graphics_items_icons_star_piece_sheet, gFile_graphics_items_icon_palettes_star_palette}, - [ITEM_NUGGET] = {gFile_graphics_items_icons_nugget_sheet, gFile_graphics_items_icon_palettes_nugget_palette}, - [ITEM_HEART_SCALE] = {gFile_graphics_items_icons_heart_scale_sheet, gFile_graphics_items_icon_palettes_heart_scale_palette}, - [ITEM_070] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_071] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_072] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_073] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_074] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_075] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_076] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_077] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_078] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_ORANGE_MAIL] = {gFile_graphics_items_icons_orange_mail_sheet, gFile_graphics_items_icon_palettes_orange_mail_palette}, - [ITEM_HARBOR_MAIL] = {gFile_graphics_items_icons_harbor_mail_sheet, gFile_graphics_items_icon_palettes_harbor_mail_palette}, - [ITEM_GLITTER_MAIL] = {gFile_graphics_items_icons_glitter_mail_sheet, gFile_graphics_items_icon_palettes_glitter_mail_palette}, - [ITEM_MECH_MAIL] = {gFile_graphics_items_icons_mech_mail_sheet, gFile_graphics_items_icon_palettes_mech_mail_palette}, - [ITEM_WOOD_MAIL] = {gFile_graphics_items_icons_wood_mail_sheet, gFile_graphics_items_icon_palettes_wood_mail_palette}, - [ITEM_WAVE_MAIL] = {gFile_graphics_items_icons_wave_mail_sheet, gFile_graphics_items_icon_palettes_wave_mail_palette}, - [ITEM_BEAD_MAIL] = {gFile_graphics_items_icons_bead_mail_sheet, gFile_graphics_items_icon_palettes_bead_mail_palette}, - [ITEM_SHADOW_MAIL] = {gFile_graphics_items_icons_shadow_mail_sheet, gFile_graphics_items_icon_palettes_shadow_mail_palette}, - [ITEM_TROPIC_MAIL] = {gFile_graphics_items_icons_tropic_mail_sheet, gFile_graphics_items_icon_palettes_tropic_mail_palette}, - [ITEM_DREAM_MAIL] = {gFile_graphics_items_icons_dream_mail_sheet, gFile_graphics_items_icon_palettes_dream_mail_palette}, - [ITEM_FAB_MAIL] = {gFile_graphics_items_icons_fab_mail_sheet, gFile_graphics_items_icon_palettes_fab_mail_palette}, - [ITEM_RETRO_MAIL] = {gFile_graphics_items_icons_retro_mail_sheet, gFile_graphics_items_icon_palettes_retro_mail_palette}, - [ITEM_CHERI_BERRY] = {gFile_graphics_items_icons_cheri_berry_sheet, gFile_graphics_items_icon_palettes_cheri_berry_palette}, - [ITEM_CHESTO_BERRY] = {gFile_graphics_items_icons_chesto_berry_sheet, gFile_graphics_items_icon_palettes_chesto_berry_palette}, - [ITEM_PECHA_BERRY] = {gFile_graphics_items_icons_pecha_berry_sheet, gFile_graphics_items_icon_palettes_pecha_berry_palette}, - [ITEM_RAWST_BERRY] = {gFile_graphics_items_icons_rawst_berry_sheet, gFile_graphics_items_icon_palettes_rawst_berry_palette}, - [ITEM_ASPEAR_BERRY] = {gFile_graphics_items_icons_aspear_berry_sheet, gFile_graphics_items_icon_palettes_aspear_berry_palette}, - [ITEM_LEPPA_BERRY] = {gFile_graphics_items_icons_leppa_berry_sheet, gFile_graphics_items_icon_palettes_leppa_berry_palette}, - [ITEM_ORAN_BERRY] = {gFile_graphics_items_icons_oran_berry_sheet, gFile_graphics_items_icon_palettes_oran_berry_palette}, - [ITEM_PERSIM_BERRY] = {gFile_graphics_items_icons_persim_berry_sheet, gFile_graphics_items_icon_palettes_persim_berry_palette}, - [ITEM_LUM_BERRY] = {gFile_graphics_items_icons_lum_berry_sheet, gFile_graphics_items_icon_palettes_lum_berry_palette}, - [ITEM_SITRUS_BERRY] = {gFile_graphics_items_icons_sitrus_berry_sheet, gFile_graphics_items_icon_palettes_sitrus_berry_palette}, - [ITEM_FIGY_BERRY] = {gFile_graphics_items_icons_figy_berry_sheet, gFile_graphics_items_icon_palettes_figy_berry_palette}, - [ITEM_WIKI_BERRY] = {gFile_graphics_items_icons_wiki_berry_sheet, gFile_graphics_items_icon_palettes_wiki_berry_palette}, - [ITEM_MAGO_BERRY] = {gFile_graphics_items_icons_mago_berry_sheet, gFile_graphics_items_icon_palettes_mago_berry_palette}, - [ITEM_AGUAV_BERRY] = {gFile_graphics_items_icons_aguav_berry_sheet, gFile_graphics_items_icon_palettes_aguav_berry_palette}, - [ITEM_IAPAPA_BERRY] = {gFile_graphics_items_icons_iapapa_berry_sheet, gFile_graphics_items_icon_palettes_iapapa_berry_palette}, - [ITEM_RAZZ_BERRY] = {gFile_graphics_items_icons_razz_berry_sheet, gFile_graphics_items_icon_palettes_razz_berry_palette}, - [ITEM_BLUK_BERRY] = {gFile_graphics_items_icons_bluk_berry_sheet, gFile_graphics_items_icon_palettes_bluk_berry_palette}, - [ITEM_NANAB_BERRY] = {gFile_graphics_items_icons_nanab_berry_sheet, gFile_graphics_items_icon_palettes_nanab_berry_palette}, - [ITEM_WEPEAR_BERRY] = {gFile_graphics_items_icons_wepear_berry_sheet, gFile_graphics_items_icon_palettes_wepear_berry_palette}, - [ITEM_PINAP_BERRY] = {gFile_graphics_items_icons_pinap_berry_sheet, gFile_graphics_items_icon_palettes_pinap_berry_palette}, - [ITEM_POMEG_BERRY] = {gFile_graphics_items_icons_pomeg_berry_sheet, gFile_graphics_items_icon_palettes_pomeg_berry_palette}, - [ITEM_KELPSY_BERRY] = {gFile_graphics_items_icons_kelpsy_berry_sheet, gFile_graphics_items_icon_palettes_kelpsy_berry_palette}, - [ITEM_QUALOT_BERRY] = {gFile_graphics_items_icons_qualot_berry_sheet, gFile_graphics_items_icon_palettes_qualot_berry_palette}, - [ITEM_HONDEW_BERRY] = {gFile_graphics_items_icons_hondew_berry_sheet, gFile_graphics_items_icon_palettes_hondew_berry_palette}, - [ITEM_GREPA_BERRY] = {gFile_graphics_items_icons_grepa_berry_sheet, gFile_graphics_items_icon_palettes_grepa_berry_palette}, - [ITEM_TAMATO_BERRY] = {gFile_graphics_items_icons_tamato_berry_sheet, gFile_graphics_items_icon_palettes_tamato_berry_palette}, - [ITEM_CORNN_BERRY] = {gFile_graphics_items_icons_cornn_berry_sheet, gFile_graphics_items_icon_palettes_cornn_berry_palette}, - [ITEM_MAGOST_BERRY] = {gFile_graphics_items_icons_magost_berry_sheet, gFile_graphics_items_icon_palettes_magost_berry_palette}, - [ITEM_RABUTA_BERRY] = {gFile_graphics_items_icons_rabuta_berry_sheet, gFile_graphics_items_icon_palettes_rabuta_berry_palette}, - [ITEM_NOMEL_BERRY] = {gFile_graphics_items_icons_nomel_berry_sheet, gFile_graphics_items_icon_palettes_nomel_berry_palette}, - [ITEM_SPELON_BERRY] = {gFile_graphics_items_icons_spelon_berry_sheet, gFile_graphics_items_icon_palettes_spelon_berry_palette}, - [ITEM_PAMTRE_BERRY] = {gFile_graphics_items_icons_pamtre_berry_sheet, gFile_graphics_items_icon_palettes_pamtre_berry_palette}, - [ITEM_WATMEL_BERRY] = {gFile_graphics_items_icons_watmel_berry_sheet, gFile_graphics_items_icon_palettes_watmel_berry_palette}, - [ITEM_DURIN_BERRY] = {gFile_graphics_items_icons_durin_berry_sheet, gFile_graphics_items_icon_palettes_durin_berry_palette}, - [ITEM_BELUE_BERRY] = {gFile_graphics_items_icons_belue_berry_sheet, gFile_graphics_items_icon_palettes_belue_berry_palette}, - [ITEM_LIECHI_BERRY] = {gFile_graphics_items_icons_liechi_berry_sheet, gFile_graphics_items_icon_palettes_liechi_berry_palette}, - [ITEM_GANLON_BERRY] = {gFile_graphics_items_icons_ganlon_berry_sheet, gFile_graphics_items_icon_palettes_ganlon_berry_palette}, - [ITEM_SALAC_BERRY] = {gFile_graphics_items_icons_salac_berry_sheet, gFile_graphics_items_icon_palettes_salac_berry_palette}, - [ITEM_PETAYA_BERRY] = {gFile_graphics_items_icons_petaya_berry_sheet, gFile_graphics_items_icon_palettes_petaya_berry_palette}, - [ITEM_APICOT_BERRY] = {gFile_graphics_items_icons_apicot_berry_sheet, gFile_graphics_items_icon_palettes_apicot_berry_palette}, - [ITEM_LANSAT_BERRY] = {gFile_graphics_items_icons_lansat_berry_sheet, gFile_graphics_items_icon_palettes_lansat_berry_palette}, - [ITEM_STARF_BERRY] = {gFile_graphics_items_icons_starf_berry_sheet, gFile_graphics_items_icon_palettes_starf_berry_palette}, - [ITEM_ENIGMA_BERRY] = {gFile_graphics_items_icons_enigma_berry_sheet, gFile_graphics_items_icon_palettes_enigma_berry_palette}, - [ITEM_0B0] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0B1] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0B2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_BRIGHT_POWDER] = {gFile_graphics_items_icons_bright_powder_sheet, gFile_graphics_items_icon_palettes_bright_powder_palette}, - [ITEM_WHITE_HERB] = {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_white_herb_palette}, - [ITEM_MACHO_BRACE] = {gFile_graphics_items_icons_macho_brace_sheet, gFile_graphics_items_icon_palettes_macho_brace_palette}, - [ITEM_EXP_SHARE] = {gFile_graphics_items_icons_exp_share_sheet, gFile_graphics_items_icon_palettes_exp_share_palette}, - [ITEM_QUICK_CLAW] = {gFile_graphics_items_icons_quick_claw_sheet, gFile_graphics_items_icon_palettes_quick_claw_palette}, - [ITEM_SOOTHE_BELL] = {gFile_graphics_items_icons_soothe_bell_sheet, gFile_graphics_items_icon_palettes_soothe_bell_palette}, - [ITEM_MENTAL_HERB] = {gFile_graphics_items_icons_in_battle_herb_sheet, gFile_graphics_items_icon_palettes_mental_herb_palette}, - [ITEM_CHOICE_BAND] = {gFile_graphics_items_icons_choice_band_sheet, gFile_graphics_items_icon_palettes_choice_band_palette}, - [ITEM_KINGS_ROCK] = {gFile_graphics_items_icons_kings_rock_sheet, gFile_graphics_items_icon_palettes_kings_rock_palette}, - [ITEM_SILVER_POWDER] = {gFile_graphics_items_icons_silver_powder_sheet, gFile_graphics_items_icon_palettes_silver_powder_palette}, - [ITEM_AMULET_COIN] = {gFile_graphics_items_icons_amulet_coin_sheet, gFile_graphics_items_icon_palettes_amulet_coin_palette}, - [ITEM_CLEANSE_TAG] = {gFile_graphics_items_icons_cleanse_tag_sheet, gFile_graphics_items_icon_palettes_cleanse_tag_palette}, - [ITEM_SOUL_DEW] = {gFile_graphics_items_icons_soul_dew_sheet, gFile_graphics_items_icon_palettes_soul_dew_palette}, - [ITEM_DEEP_SEA_TOOTH] = {gFile_graphics_items_icons_deep_sea_tooth_sheet, gFile_graphics_items_icon_palettes_deep_sea_tooth_palette}, - [ITEM_DEEP_SEA_SCALE] = {gFile_graphics_items_icons_deep_sea_scale_sheet, gFile_graphics_items_icon_palettes_deep_sea_scale_palette}, - [ITEM_SMOKE_BALL] = {gFile_graphics_items_icons_smoke_ball_sheet, gFile_graphics_items_icon_palettes_smoke_ball_palette}, - [ITEM_EVERSTONE] = {gFile_graphics_items_icons_everstone_sheet, gFile_graphics_items_icon_palettes_everstone_palette}, - [ITEM_FOCUS_BAND] = {gFile_graphics_items_icons_focus_band_sheet, gFile_graphics_items_icon_palettes_focus_band_palette}, - [ITEM_LUCKY_EGG] = {gFile_graphics_items_icons_lucky_egg_sheet, gFile_graphics_items_icon_palettes_lucky_egg_palette}, - [ITEM_SCOPE_LENS] = {gFile_graphics_items_icons_scope_lens_sheet, gFile_graphics_items_icon_palettes_scope_lens_palette}, - [ITEM_METAL_COAT] = {gFile_graphics_items_icons_metal_coat_sheet, gFile_graphics_items_icon_palettes_metal_coat_palette}, - [ITEM_LEFTOVERS] = {gFile_graphics_items_icons_leftovers_sheet, gFile_graphics_items_icon_palettes_leftovers_palette}, - [ITEM_DRAGON_SCALE] = {gFile_graphics_items_icons_dragon_scale_sheet, gFile_graphics_items_icon_palettes_dragon_scale_palette}, - [ITEM_LIGHT_BALL] = {gFile_graphics_items_icons_light_ball_sheet, gFile_graphics_items_icon_palettes_light_ball_palette}, - [ITEM_SOFT_SAND] = {gFile_graphics_items_icons_soft_sand_sheet, gFile_graphics_items_icon_palettes_soft_sand_palette}, - [ITEM_HARD_STONE] = {gFile_graphics_items_icons_hard_stone_sheet, gFile_graphics_items_icon_palettes_hard_stone_palette}, - [ITEM_MIRACLE_SEED] = {gFile_graphics_items_icons_miracle_seed_sheet, gFile_graphics_items_icon_palettes_miracle_seed_palette}, - [ITEM_BLACK_GLASSES] = {gFile_graphics_items_icons_black_glasses_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette}, - [ITEM_BLACK_BELT] = {gFile_graphics_items_icons_black_belt_sheet, gFile_graphics_items_icon_palettes_black_type_enhancing_item_palette}, - [ITEM_MAGNET] = {gFile_graphics_items_icons_magnet_sheet, gFile_graphics_items_icon_palettes_magnet_palette}, - [ITEM_MYSTIC_WATER] = {gFile_graphics_items_icons_mystic_water_sheet, gFile_graphics_items_icon_palettes_mystic_water_palette}, - [ITEM_SHARP_BEAK] = {gFile_graphics_items_icons_sharp_beak_sheet, gFile_graphics_items_icon_palettes_sharp_beak_palette}, - [ITEM_POISON_BARB] = {gFile_graphics_items_icons_poison_barb_sheet, gFile_graphics_items_icon_palettes_poison_barb_palette}, - [ITEM_NEVER_MELT_ICE] = {gFile_graphics_items_icons_never_melt_ice_sheet, gFile_graphics_items_icon_palettes_never_melt_ice_palette}, - [ITEM_SPELL_TAG] = {gFile_graphics_items_icons_spell_tag_sheet, gFile_graphics_items_icon_palettes_spell_tag_palette}, - [ITEM_TWISTED_SPOON] = {gFile_graphics_items_icons_twisted_spoon_sheet, gFile_graphics_items_icon_palettes_twisted_spoon_palette}, - [ITEM_CHARCOAL] = {gFile_graphics_items_icons_charcoal_sheet, gFile_graphics_items_icon_palettes_charcoal_palette}, - [ITEM_DRAGON_FANG] = {gFile_graphics_items_icons_dragon_fang_sheet, gFile_graphics_items_icon_palettes_dragon_fang_palette}, - [ITEM_SILK_SCARF] = {gFile_graphics_items_icons_silk_scarf_sheet, gFile_graphics_items_icon_palettes_silk_scarf_palette}, - [ITEM_UP_GRADE] = {gFile_graphics_items_icons_up_grade_sheet, gFile_graphics_items_icon_palettes_up_grade_palette}, - [ITEM_SHELL_BELL] = {gFile_graphics_items_icons_shell_bell_sheet, gFile_graphics_items_icon_palettes_shell_palette}, - [ITEM_SEA_INCENSE] = {gFile_graphics_items_icons_sea_incense_sheet, gFile_graphics_items_icon_palettes_sea_incense_palette}, - [ITEM_LAX_INCENSE] = {gFile_graphics_items_icons_lax_incense_sheet, gFile_graphics_items_icon_palettes_lax_incense_palette}, - [ITEM_LUCKY_PUNCH] = {gFile_graphics_items_icons_lucky_punch_sheet, gFile_graphics_items_icon_palettes_lucky_punch_palette}, - [ITEM_METAL_POWDER] = {gFile_graphics_items_icons_metal_powder_sheet, gFile_graphics_items_icon_palettes_metal_powder_palette}, - [ITEM_THICK_CLUB] = {gFile_graphics_items_icons_thick_club_sheet, gFile_graphics_items_icon_palettes_thick_club_palette}, - [ITEM_STICK] = {gFile_graphics_items_icons_stick_sheet, gFile_graphics_items_icon_palettes_stick_palette}, - [ITEM_0E2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E3] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E4] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E5] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E6] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E7] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E8] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0E9] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0EA] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0EB] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0EC] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0ED] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0EE] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0EF] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F0] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F1] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F2] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F3] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F4] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F5] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F6] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F7] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F8] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0F9] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0FA] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0FB] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0FC] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_0FD] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_RED_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_red_scarf_palette}, - [ITEM_BLUE_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_blue_scarf_palette}, - [ITEM_PINK_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_pink_scarf_palette}, - [ITEM_GREEN_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_green_scarf_palette}, - [ITEM_YELLOW_SCARF] = {gFile_graphics_items_icons_scarf_sheet, gFile_graphics_items_icon_palettes_yellow_scarf_palette}, - [ITEM_MACH_BIKE] = {gFile_graphics_items_icons_mach_bike_sheet, gFile_graphics_items_icon_palettes_mach_bike_palette}, - [ITEM_COIN_CASE] = {gFile_graphics_items_icons_coin_case_sheet, gFile_graphics_items_icon_palettes_coin_case_palette}, - [ITEM_ITEMFINDER] = {gFile_graphics_items_icons_itemfinder_sheet, gFile_graphics_items_icon_palettes_itemfinder_palette}, - [ITEM_OLD_ROD] = {gFile_graphics_items_icons_old_rod_sheet, gFile_graphics_items_icon_palettes_old_rod_palette}, - [ITEM_GOOD_ROD] = {gFile_graphics_items_icons_good_rod_sheet, gFile_graphics_items_icon_palettes_good_rod_palette}, - [ITEM_SUPER_ROD] = {gFile_graphics_items_icons_super_rod_sheet, gFile_graphics_items_icon_palettes_super_rod_palette}, - [ITEM_SS_TICKET] = {gFile_graphics_items_icons_ss_ticket_sheet, gFile_graphics_items_icon_palettes_ss_ticket_palette}, - [ITEM_CONTEST_PASS] = {gFile_graphics_items_icons_contest_pass_sheet, gFile_graphics_items_icon_palettes_contest_pass_palette}, - [ITEM_10B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_WAILMER_PAIL] = {gFile_graphics_items_icons_wailmer_pail_sheet, gFile_graphics_items_icon_palettes_wailmer_pail_palette}, - [ITEM_DEVON_GOODS] = {gFile_graphics_items_icons_devon_goods_sheet, gFile_graphics_items_icon_palettes_devon_goods_palette}, - [ITEM_SOOT_SACK] = {gFile_graphics_items_icons_soot_sack_sheet, gFile_graphics_items_icon_palettes_soot_sack_palette}, - [ITEM_BASEMENT_KEY] = {gFile_graphics_items_icons_basement_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette}, - [ITEM_ACRO_BIKE] = {gFile_graphics_items_icons_acro_bike_sheet, gFile_graphics_items_icon_palettes_acro_bike_palette}, - [ITEM_POKEBLOCK_CASE] = {gFile_graphics_items_icons_pokeblock_case_sheet, gFile_graphics_items_icon_palettes_pokeblock_case_palette}, - [ITEM_LETTER] = {gFile_graphics_items_icons_letter_sheet, gFile_graphics_items_icon_palettes_lava_cookie_and_letter_palette}, - [ITEM_EON_TICKET] = {gFile_graphics_items_icons_eon_ticket_sheet, gFile_graphics_items_icon_palettes_eon_ticket_palette}, - [ITEM_RED_ORB] = {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_red_orb_palette}, - [ITEM_BLUE_ORB] = {gFile_graphics_items_icons_orb_sheet, gFile_graphics_items_icon_palettes_blue_orb_palette}, - [ITEM_SCANNER] = {gFile_graphics_items_icons_scanner_sheet, gFile_graphics_items_icon_palettes_scanner_palette}, - [ITEM_GO_GOGGLES] = {gFile_graphics_items_icons_go_goggles_sheet, gFile_graphics_items_icon_palettes_go_goggles_palette}, - [ITEM_METEORITE] = {gFile_graphics_items_icons_meteorite_sheet, gFile_graphics_items_icon_palettes_meteorite_palette}, - [ITEM_ROOM_1_KEY] = {gFile_graphics_items_icons_room1_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, - [ITEM_ROOM_2_KEY] = {gFile_graphics_items_icons_room2_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, - [ITEM_ROOM_4_KEY] = {gFile_graphics_items_icons_room4_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, - [ITEM_ROOM_6_KEY] = {gFile_graphics_items_icons_room6_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, - [ITEM_STORAGE_KEY] = {gFile_graphics_items_icons_storage_key_sheet, gFile_graphics_items_icon_palettes_old_key_palette}, - [ITEM_ROOT_FOSSIL] = {gFile_graphics_items_icons_root_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette}, - [ITEM_CLAW_FOSSIL] = {gFile_graphics_items_icons_claw_fossil_sheet, gFile_graphics_items_icon_palettes_hoenn_fossil_palette}, - [ITEM_DEVON_SCOPE] = {gFile_graphics_items_icons_devon_scope_sheet, gFile_graphics_items_icon_palettes_devon_scope_palette}, - [ITEM_TM01] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, - [ITEM_TM02] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dragon_tm_hm_palette}, - [ITEM_TM03] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, - [ITEM_TM04] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM05] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM06] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette}, - [ITEM_TM07] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, - [ITEM_TM08] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, - [ITEM_TM09] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, - [ITEM_TM10] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM11] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, - [ITEM_TM12] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, - [ITEM_TM13] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, - [ITEM_TM14] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ice_tm_hm_palette}, - [ITEM_TM15] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM16] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM17] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM18] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, - [ITEM_TM19] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, - [ITEM_TM20] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM21] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM22] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_grass_tm_hm_palette}, - [ITEM_TM23] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette}, - [ITEM_TM24] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, - [ITEM_TM25] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, - [ITEM_TM26] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette}, - [ITEM_TM27] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM28] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ground_tm_hm_palette}, - [ITEM_TM29] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM30] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_ghost_tm_hm_palette}, - [ITEM_TM31] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, - [ITEM_TM32] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM33] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM34] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_electric_tm_hm_palette}, - [ITEM_TM35] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, - [ITEM_TM36] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_poison_tm_hm_palette}, - [ITEM_TM37] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette}, - [ITEM_TM38] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, - [ITEM_TM39] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_rock_tm_hm_palette}, - [ITEM_TM40] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette}, - [ITEM_TM41] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, - [ITEM_TM42] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM43] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM44] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM45] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_TM46] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, - [ITEM_TM47] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_steel_tm_hm_palette}, - [ITEM_TM48] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_psychic_tm_hm_palette}, - [ITEM_TM49] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_dark_tm_hm_palette}, - [ITEM_TM50] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fire_tm_hm_palette}, - [ITEM_HM01] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_HM02] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_flying_tm_hm_palette}, - [ITEM_HM03] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, - [ITEM_HM04] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_HM05] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_normal_tm_hm_palette}, - [ITEM_HM06] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_fighting_tm_hm_palette}, - [ITEM_HM07] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, - [ITEM_HM08] = {gFile_graphics_items_icons_tm_sheet, gFile_graphics_items_icon_palettes_water_tm_hm_palette}, - [ITEM_15B] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_15C] = {gFile_graphics_items_icons_question_mark_sheet, gFile_graphics_items_icon_palettes_question_mark_palette}, - [ITEM_OAKS_PARCEL] = {gFile_graphics_items_icons_oaks_parcel_sheet, gFile_graphics_items_icon_palettes_oaks_parcel_palette}, - [ITEM_POKE_FLUTE] = {gFile_graphics_items_icons_poke_flute_sheet, gFile_graphics_items_icon_palettes_poke_flute_palette}, - [ITEM_SECRET_KEY] = {gFile_graphics_items_icons_secret_key_sheet, gFile_graphics_items_icon_palettes_secret_key_palette}, - [ITEM_BIKE_VOUCHER] = {gFile_graphics_items_icons_bike_voucher_sheet, gFile_graphics_items_icon_palettes_bike_voucher_palette}, - [ITEM_GOLD_TEETH] = {gFile_graphics_items_icons_gold_teeth_sheet, gFile_graphics_items_icon_palettes_gold_teeth_palette}, - [ITEM_OLD_AMBER] = {gFile_graphics_items_icons_old_amber_sheet, gFile_graphics_items_icon_palettes_old_amber_palette}, - [ITEM_CARD_KEY] = {gFile_graphics_items_icons_card_key_sheet, gFile_graphics_items_icon_palettes_card_key_palette}, - [ITEM_LIFT_KEY] = {gFile_graphics_items_icons_lift_key_sheet, gFile_graphics_items_icon_palettes_key_palette}, - [ITEM_HELIX_FOSSIL] = {gFile_graphics_items_icons_helix_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette}, - [ITEM_DOME_FOSSIL] = {gFile_graphics_items_icons_dome_fossil_sheet, gFile_graphics_items_icon_palettes_kanto_fossil_palette}, - [ITEM_SILPH_SCOPE] = {gFile_graphics_items_icons_silph_scope_sheet, gFile_graphics_items_icon_palettes_silph_scope_palette}, - [ITEM_BICYCLE] = {gFile_graphics_items_icons_bicycle_sheet, gFile_graphics_items_icon_palettes_bicycle_palette}, - [ITEM_TOWN_MAP] = {gFile_graphics_items_icons_town_map_sheet, gFile_graphics_items_icon_palettes_town_map_palette}, - [ITEM_VS_SEEKER] = {gFile_graphics_items_icons_vs_seeker_sheet, gFile_graphics_items_icon_palettes_vs_seeker_palette}, - [ITEM_FAME_CHECKER] = {gFile_graphics_items_icons_fame_checker_sheet, gFile_graphics_items_icon_palettes_fame_checker_palette}, - [ITEM_TM_CASE] = {gFile_graphics_items_icons_tm_case_sheet, gFile_graphics_items_icon_palettes_tm_case_palette}, - [ITEM_BERRY_POUCH] = {gFile_graphics_items_icons_berry_pouch_sheet, gFile_graphics_items_icon_palettes_berry_pouch_palette}, - [ITEM_TEACHY_TV] = {gFile_graphics_items_icons_teachy_tv_sheet, gFile_graphics_items_icon_palettes_teachy_tv_palette}, - [ITEM_TRI_PASS] = {gFile_graphics_items_icons_tri_pass_sheet, gFile_graphics_items_icon_palettes_tri_pass_palette}, - [ITEM_RAINBOW_PASS] = {gFile_graphics_items_icons_rainbow_pass_sheet, gFile_graphics_items_icon_palettes_rainbow_pass_palette}, - [ITEM_TEA] = {gFile_graphics_items_icons_tea_sheet, gFile_graphics_items_icon_palettes_tea_palette}, - [ITEM_MYSTIC_TICKET] = {gFile_graphics_items_icons_mystic_ticket_sheet, gFile_graphics_items_icon_palettes_mystic_ticket_palette}, - [ITEM_AURORA_TICKET] = {gFile_graphics_items_icons_aurora_ticket_sheet, gFile_graphics_items_icon_palettes_aurora_ticket_palette}, - [ITEM_POWDER_JAR] = {gFile_graphics_items_icons_powder_jar_sheet, gFile_graphics_items_icon_palettes_powder_jar_palette}, - [ITEM_RUBY] = {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_ruby_palette}, - [ITEM_SAPPHIRE] = {gFile_graphics_items_icons_gem_sheet, gFile_graphics_items_icon_palettes_sapphire_palette}, - [ITEMS_COUNT] = {gFile_graphics_items_icons_return_to_field_arrow_sheet, gFile_graphics_items_icon_palettes_return_to_field_arrow_palette} + [ITEM_NONE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Pokeballs + [ITEM_MASTER_BALL] = {gItemIcon_MasterBall, gItemIconPalette_MasterBall}, + [ITEM_ULTRA_BALL] = {gItemIcon_UltraBall, gItemIconPalette_UltraBall}, + [ITEM_GREAT_BALL] = {gItemIcon_GreatBall, gItemIconPalette_GreatBall}, + [ITEM_POKE_BALL] = {gItemIcon_PokeBall, gItemIconPalette_PokeBall}, + [ITEM_SAFARI_BALL] = {gItemIcon_SafariBall, gItemIconPalette_SafariBall}, + [ITEM_NET_BALL] = {gItemIcon_NetBall, gItemIconPalette_NetBall}, + [ITEM_DIVE_BALL] = {gItemIcon_DiveBall, gItemIconPalette_DiveBall}, + [ITEM_NEST_BALL] = {gItemIcon_NestBall, gItemIconPalette_NestBall}, + [ITEM_REPEAT_BALL] = {gItemIcon_RepeatBall, gItemIconPalette_RepeatBall}, + [ITEM_TIMER_BALL] = {gItemIcon_TimerBall, gItemIconPalette_RepeatBall}, + [ITEM_LUXURY_BALL] = {gItemIcon_LuxuryBall, gItemIconPalette_LuxuryBall}, + [ITEM_PREMIER_BALL] = {gItemIcon_PremierBall, gItemIconPalette_LuxuryBall}, + // Medicine + [ITEM_POTION] = {gItemIcon_Potion, gItemIconPalette_Potion}, + [ITEM_ANTIDOTE] = {gItemIcon_Antidote, gItemIconPalette_Antidote}, + [ITEM_BURN_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_BurnHeal}, + [ITEM_ICE_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_IceHeal}, + [ITEM_AWAKENING] = {gItemIcon_StatusHeal, gItemIconPalette_Awakening}, + [ITEM_PARALYZE_HEAL] = {gItemIcon_StatusHeal, gItemIconPalette_ParalyzeHeal}, + [ITEM_FULL_RESTORE] = {gItemIcon_LargePotion, gItemIconPalette_FullRestore}, + [ITEM_MAX_POTION] = {gItemIcon_LargePotion, gItemIconPalette_MaxPotion}, + [ITEM_HYPER_POTION] = {gItemIcon_Potion, gItemIconPalette_HyperPotion}, + [ITEM_SUPER_POTION] = {gItemIcon_Potion, gItemIconPalette_SuperPotion}, + [ITEM_FULL_HEAL] = {gItemIcon_FullHeal, gItemIconPalette_FullHeal}, + [ITEM_REVIVE] = {gItemIcon_Revive, gItemIconPalette_Revive}, + [ITEM_MAX_REVIVE] = {gItemIcon_MaxRevive, gItemIconPalette_Revive}, + [ITEM_FRESH_WATER] = {gItemIcon_FreshWater, gItemIconPalette_FreshWater}, + [ITEM_SODA_POP] = {gItemIcon_SodaPop, gItemIconPalette_SodaPop}, + [ITEM_LEMONADE] = {gItemIcon_Lemonade, gItemIconPalette_Lemonade}, + [ITEM_MOOMOO_MILK] = {gItemIcon_MoomooMilk, gItemIconPalette_MoomooMilk}, + [ITEM_ENERGY_POWDER] = {gItemIcon_Powder, gItemIconPalette_EnergyPowder}, + [ITEM_ENERGY_ROOT] = {gItemIcon_EnergyRoot, gItemIconPalette_EnergyRoot}, + [ITEM_HEAL_POWDER] = {gItemIcon_Powder, gItemIconPalette_HealPowder}, + [ITEM_REVIVAL_HERB] = {gItemIcon_RevivalHerb, gItemIconPalette_RevivalHerb}, + [ITEM_ETHER] = {gItemIcon_Ether, gItemIconPalette_Ether}, + [ITEM_MAX_ETHER] = {gItemIcon_Ether, gItemIconPalette_MaxEther}, + [ITEM_ELIXIR] = {gItemIcon_Ether, gItemIconPalette_Elixir}, + [ITEM_MAX_ELIXIR] = {gItemIcon_Ether, gItemIconPalette_MaxElixir}, + [ITEM_LAVA_COOKIE] = {gItemIcon_LavaCookie, gItemIconPalette_LavaCookieAndLetter}, + [ITEM_BLUE_FLUTE] = {gItemIcon_Flute, gItemIconPalette_BlueFlute}, + [ITEM_YELLOW_FLUTE] = {gItemIcon_Flute, gItemIconPalette_YellowFlute}, + [ITEM_RED_FLUTE] = {gItemIcon_Flute, gItemIconPalette_RedFlute}, + [ITEM_BLACK_FLUTE] = {gItemIcon_Flute, gItemIconPalette_BlackFlute}, + [ITEM_WHITE_FLUTE] = {gItemIcon_Flute, gItemIconPalette_WhiteFlute}, + [ITEM_BERRY_JUICE] = {gItemIcon_BerryJuice, gItemIconPalette_BerryJuice}, + [ITEM_SACRED_ASH] = {gItemIcon_SacredAsh, gItemIconPalette_SacredAsh}, + // Collectibles + [ITEM_SHOAL_SALT] = {gItemIcon_Powder, gItemIconPalette_ShoalSalt}, + [ITEM_SHOAL_SHELL] = {gItemIcon_ShoalShell, gItemIconPalette_Shell}, + [ITEM_RED_SHARD] = {gItemIcon_Shard, gItemIconPalette_RedShard}, + [ITEM_BLUE_SHARD] = {gItemIcon_Shard, gItemIconPalette_BlueShard}, + [ITEM_YELLOW_SHARD] = {gItemIcon_Shard, gItemIconPalette_YellowShard}, + [ITEM_GREEN_SHARD] = {gItemIcon_Shard, gItemIconPalette_GreenShard}, + // ???????? + [ITEM_034] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_035] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_036] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_037] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_038] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_039] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_03A] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_03B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_03C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_03D] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_03E] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Vitamins + [ITEM_HP_UP] = {gItemIcon_HPUp, gItemIconPalette_HPUp}, + [ITEM_PROTEIN] = {gItemIcon_Vitamin, gItemIconPalette_Protein}, + [ITEM_IRON] = {gItemIcon_Vitamin, gItemIconPalette_Iron}, + [ITEM_CARBOS] = {gItemIcon_Vitamin, gItemIconPalette_Carbos}, + [ITEM_CALCIUM] = {gItemIcon_Vitamin, gItemIconPalette_Calcium}, + [ITEM_RARE_CANDY] = {gItemIcon_RareCandy, gItemIconPalette_RareCandy}, + [ITEM_PP_UP] = {gItemIcon_PPUp, gItemIconPalette_PPUp}, + [ITEM_ZINC] = {gItemIcon_Vitamin, gItemIconPalette_Zinc}, + [ITEM_PP_MAX] = {gItemIcon_PPMax, gItemIconPalette_PPMax}, + // ???????? + [ITEM_048] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Battle items + [ITEM_GUARD_SPEC] = {gItemIcon_BattleStatItem, gItemIconPalette_GuardSpec}, + [ITEM_DIRE_HIT] = {gItemIcon_BattleStatItem, gItemIconPalette_DireHit}, + [ITEM_X_ATTACK] = {gItemIcon_BattleStatItem, gItemIconPalette_XAttack}, + [ITEM_X_DEFEND] = {gItemIcon_BattleStatItem, gItemIconPalette_XDefend}, + [ITEM_X_SPEED] = {gItemIcon_BattleStatItem, gItemIconPalette_XSpeed}, + [ITEM_X_ACCURACY] = {gItemIcon_BattleStatItem, gItemIconPalette_XAccuracy}, + [ITEM_X_SPECIAL] = {gItemIcon_BattleStatItem, gItemIconPalette_XSpecial}, + [ITEM_POKE_DOLL] = {gItemIcon_PokeDoll, gItemIconPalette_PokeDoll}, + [ITEM_FLUFFY_TAIL] = {gItemIcon_FluffyTail, gItemIconPalette_FluffyTail}, + // ???????? + [ITEM_052] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Field items + [ITEM_SUPER_REPEL] = {gItemIcon_Repel, gItemIconPalette_SuperRepel}, + [ITEM_MAX_REPEL] = {gItemIcon_Repel, gItemIconPalette_MaxRepel}, + [ITEM_ESCAPE_ROPE] = {gItemIcon_EscapeRope, gItemIconPalette_EscapeRope}, + [ITEM_REPEL] = {gItemIcon_Repel, gItemIconPalette_Repel}, + // ???????? + [ITEM_057] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_058] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_059] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_05A] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_05B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_05C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Evolution stones + [ITEM_SUN_STONE] = {gItemIcon_SunStone, gItemIconPalette_SunStone}, + [ITEM_MOON_STONE] = {gItemIcon_MoonStone, gItemIconPalette_MoonStone}, + [ITEM_FIRE_STONE] = {gItemIcon_FireStone, gItemIconPalette_FireStone}, + [ITEM_THUNDER_STONE] = {gItemIcon_ThunderStone, gItemIconPalette_ThunderStone}, + [ITEM_WATER_STONE] = {gItemIcon_WaterStone, gItemIconPalette_WaterStone}, + [ITEM_LEAF_STONE] = {gItemIcon_LeafStone, gItemIconPalette_LeafStone}, + // ???????? + [ITEM_063] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_064] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_065] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_066] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Valuables + [ITEM_TINY_MUSHROOM] = {gItemIcon_TinyMushroom, gItemIconPalette_Mushroom}, + [ITEM_BIG_MUSHROOM] = {gItemIcon_BigMushroom, gItemIconPalette_Mushroom}, + [ITEM_069] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_PEARL] = {gItemIcon_Pearl, gItemIconPalette_Pearl}, + [ITEM_BIG_PEARL] = {gItemIcon_BigPearl, gItemIconPalette_Pearl}, + [ITEM_STARDUST] = {gItemIcon_Stardust, gItemIconPalette_Star}, + [ITEM_STAR_PIECE] = {gItemIcon_StarPiece, gItemIconPalette_Star}, + [ITEM_NUGGET] = {gItemIcon_Nugget, gItemIconPalette_Nugget}, + [ITEM_HEART_SCALE] = {gItemIcon_HeartScale, gItemIconPalette_HeartScale}, + // ???????? + [ITEM_070] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_071] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_072] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_073] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_074] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_075] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_076] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_077] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_078] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Mail + [ITEM_ORANGE_MAIL] = {gItemIcon_OrangeMail, gItemIconPalette_OrangeMail}, + [ITEM_HARBOR_MAIL] = {gItemIcon_HarborMail, gItemIconPalette_HarborMail}, + [ITEM_GLITTER_MAIL] = {gItemIcon_GlitterMail, gItemIconPalette_GlitterMail}, + [ITEM_MECH_MAIL] = {gItemIcon_MechMail, gItemIconPalette_MechMail}, + [ITEM_WOOD_MAIL] = {gItemIcon_WoodMail, gItemIconPalette_WoodMail}, + [ITEM_WAVE_MAIL] = {gItemIcon_WaveMail, gItemIconPalette_WaveMail}, + [ITEM_BEAD_MAIL] = {gItemIcon_BeadMail, gItemIconPalette_BeadMail}, + [ITEM_SHADOW_MAIL] = {gItemIcon_ShadowMail, gItemIconPalette_ShadowMail}, + [ITEM_TROPIC_MAIL] = {gItemIcon_TropicMail, gItemIconPalette_TropicMail}, + [ITEM_DREAM_MAIL] = {gItemIcon_DreamMail, gItemIconPalette_DreamMail}, + [ITEM_FAB_MAIL] = {gItemIcon_FabMail, gItemIconPalette_FabMail}, + [ITEM_RETRO_MAIL] = {gItemIcon_RetroMail, gItemIconPalette_RetroMail}, + // Berries + [ITEM_CHERI_BERRY] = {gItemIcon_CheriBerry, gItemIconPalette_CheriBerry}, + [ITEM_CHESTO_BERRY] = {gItemIcon_ChestoBerry, gItemIconPalette_ChestoBerry}, + [ITEM_PECHA_BERRY] = {gItemIcon_PechaBerry, gItemIconPalette_PechaBerry}, + [ITEM_RAWST_BERRY] = {gItemIcon_RawstBerry, gItemIconPalette_RawstBerry}, + [ITEM_ASPEAR_BERRY] = {gItemIcon_AspearBerry, gItemIconPalette_AspearBerry}, + [ITEM_LEPPA_BERRY] = {gItemIcon_LeppaBerry, gItemIconPalette_LeppaBerry}, + [ITEM_ORAN_BERRY] = {gItemIcon_OranBerry, gItemIconPalette_OranBerry}, + [ITEM_PERSIM_BERRY] = {gItemIcon_PersimBerry, gItemIconPalette_PersimBerry}, + [ITEM_LUM_BERRY] = {gItemIcon_LumBerry, gItemIconPalette_LumBerry}, + [ITEM_SITRUS_BERRY] = {gItemIcon_SitrusBerry, gItemIconPalette_SitrusBerry}, + [ITEM_FIGY_BERRY] = {gItemIcon_FigyBerry, gItemIconPalette_FigyBerry}, + [ITEM_WIKI_BERRY] = {gItemIcon_WikiBerry, gItemIconPalette_WikiBerry}, + [ITEM_MAGO_BERRY] = {gItemIcon_MagoBerry, gItemIconPalette_MagoBerry}, + [ITEM_AGUAV_BERRY] = {gItemIcon_AguavBerry, gItemIconPalette_AguavBerry}, + [ITEM_IAPAPA_BERRY] = {gItemIcon_IapapaBerry, gItemIconPalette_IapapaBerry}, + [ITEM_RAZZ_BERRY] = {gItemIcon_RazzBerry, gItemIconPalette_RazzBerry}, + [ITEM_BLUK_BERRY] = {gItemIcon_BlukBerry, gItemIconPalette_BlukBerry}, + [ITEM_NANAB_BERRY] = {gItemIcon_NanabBerry, gItemIconPalette_NanabBerry}, + [ITEM_WEPEAR_BERRY] = {gItemIcon_WepearBerry, gItemIconPalette_WepearBerry}, + [ITEM_PINAP_BERRY] = {gItemIcon_PinapBerry, gItemIconPalette_PinapBerry}, + [ITEM_POMEG_BERRY] = {gItemIcon_PomegBerry, gItemIconPalette_PomegBerry}, + [ITEM_KELPSY_BERRY] = {gItemIcon_KelpsyBerry, gItemIconPalette_KelpsyBerry}, + [ITEM_QUALOT_BERRY] = {gItemIcon_QualotBerry, gItemIconPalette_QualotBerry}, + [ITEM_HONDEW_BERRY] = {gItemIcon_HondewBerry, gItemIconPalette_HondewBerry}, + [ITEM_GREPA_BERRY] = {gItemIcon_GrepaBerry, gItemIconPalette_GrepaBerry}, + [ITEM_TAMATO_BERRY] = {gItemIcon_TamatoBerry, gItemIconPalette_TamatoBerry}, + [ITEM_CORNN_BERRY] = {gItemIcon_CornnBerry, gItemIconPalette_CornnBerry}, + [ITEM_MAGOST_BERRY] = {gItemIcon_MagostBerry, gItemIconPalette_MagostBerry}, + [ITEM_RABUTA_BERRY] = {gItemIcon_RabutaBerry, gItemIconPalette_RabutaBerry}, + [ITEM_NOMEL_BERRY] = {gItemIcon_NomelBerry, gItemIconPalette_NomelBerry}, + [ITEM_SPELON_BERRY] = {gItemIcon_SpelonBerry, gItemIconPalette_SpelonBerry}, + [ITEM_PAMTRE_BERRY] = {gItemIcon_PamtreBerry, gItemIconPalette_PamtreBerry}, + [ITEM_WATMEL_BERRY] = {gItemIcon_WatmelBerry, gItemIconPalette_WatmelBerry}, + [ITEM_DURIN_BERRY] = {gItemIcon_DurinBerry, gItemIconPalette_DurinBerry}, + [ITEM_BELUE_BERRY] = {gItemIcon_BelueBerry, gItemIconPalette_BelueBerry}, + [ITEM_LIECHI_BERRY] = {gItemIcon_LiechiBerry, gItemIconPalette_LiechiBerry}, + [ITEM_GANLON_BERRY] = {gItemIcon_GanlonBerry, gItemIconPalette_GanlonBerry}, + [ITEM_SALAC_BERRY] = {gItemIcon_SalacBerry, gItemIconPalette_SalacBerry}, + [ITEM_PETAYA_BERRY] = {gItemIcon_PetayaBerry, gItemIconPalette_PetayaBerry}, + [ITEM_APICOT_BERRY] = {gItemIcon_ApicotBerry, gItemIconPalette_ApicotBerry}, + [ITEM_LANSAT_BERRY] = {gItemIcon_LansatBerry, gItemIconPalette_LansatBerry}, + [ITEM_STARF_BERRY] = {gItemIcon_StarfBerry, gItemIconPalette_StarfBerry}, + [ITEM_ENIGMA_BERRY] = {gItemIcon_EnigmaBerry, gItemIconPalette_EnigmaBerry}, + [ITEM_UNUSED_BERRY_1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_UNUSED_BERRY_2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_UNUSED_BERRY_3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Hold items + [ITEM_BRIGHT_POWDER] = {gItemIcon_BrightPowder, gItemIconPalette_BrightPowder}, + [ITEM_WHITE_HERB] = {gItemIcon_InBattleHerb, gItemIconPalette_WhiteHerb}, + [ITEM_MACHO_BRACE] = {gItemIcon_MachoBrace, gItemIconPalette_MachoBrace}, + [ITEM_EXP_SHARE] = {gItemIcon_ExpShare, gItemIconPalette_ExpShare}, + [ITEM_QUICK_CLAW] = {gItemIcon_QuickClaw, gItemIconPalette_QuickClaw}, + [ITEM_SOOTHE_BELL] = {gItemIcon_SootheBell, gItemIconPalette_SootheBell}, + [ITEM_MENTAL_HERB] = {gItemIcon_InBattleHerb, gItemIconPalette_MentalHerb}, + [ITEM_CHOICE_BAND] = {gItemIcon_ChoiceBand, gItemIconPalette_ChoiceBand}, + [ITEM_KINGS_ROCK] = {gItemIcon_KingsRock, gItemIconPalette_KingsRock}, + [ITEM_SILVER_POWDER] = {gItemIcon_SilverPowder, gItemIconPalette_SilverPowder}, + [ITEM_AMULET_COIN] = {gItemIcon_AmuletCoin, gItemIconPalette_AmuletCoin}, + [ITEM_CLEANSE_TAG] = {gItemIcon_CleanseTag, gItemIconPalette_CleanseTag}, + [ITEM_SOUL_DEW] = {gItemIcon_SoulDew, gItemIconPalette_SoulDew}, + [ITEM_DEEP_SEA_TOOTH] = {gItemIcon_DeepSeaTooth, gItemIconPalette_DeepSeaTooth}, + [ITEM_DEEP_SEA_SCALE] = {gItemIcon_DeepSeaScale, gItemIconPalette_DeepSeaScale}, + [ITEM_SMOKE_BALL] = {gItemIcon_SmokeBall, gItemIconPalette_SmokeBall}, + [ITEM_EVERSTONE] = {gItemIcon_Everstone, gItemIconPalette_Everstone}, + [ITEM_FOCUS_BAND] = {gItemIcon_FocusBand, gItemIconPalette_FocusBand}, + [ITEM_LUCKY_EGG] = {gItemIcon_LuckyEgg, gItemIconPalette_LuckyEgg}, + [ITEM_SCOPE_LENS] = {gItemIcon_ScopeLens, gItemIconPalette_ScopeLens}, + [ITEM_METAL_COAT] = {gItemIcon_MetalCoat, gItemIconPalette_MetalCoat}, + [ITEM_LEFTOVERS] = {gItemIcon_Leftovers, gItemIconPalette_Leftovers}, + [ITEM_DRAGON_SCALE] = {gItemIcon_DragonScale, gItemIconPalette_DragonScale}, + [ITEM_LIGHT_BALL] = {gItemIcon_LightBall, gItemIconPalette_LightBall}, + [ITEM_SOFT_SAND] = {gItemIcon_SoftSand, gItemIconPalette_SoftSand}, + [ITEM_HARD_STONE] = {gItemIcon_HardStone, gItemIconPalette_HardStone}, + [ITEM_MIRACLE_SEED] = {gItemIcon_MiracleSeed, gItemIconPalette_MiracleSeed}, + [ITEM_BLACK_GLASSES] = {gItemIcon_BlackGlasses, gItemIconPalette_BlackTypeEnhancingItem}, + [ITEM_BLACK_BELT] = {gItemIcon_BlackBelt, gItemIconPalette_BlackTypeEnhancingItem}, + [ITEM_MAGNET] = {gItemIcon_Magnet, gItemIconPalette_Magnet}, + [ITEM_MYSTIC_WATER] = {gItemIcon_MysticWater, gItemIconPalette_MysticWater}, + [ITEM_SHARP_BEAK] = {gItemIcon_SharpBeak, gItemIconPalette_SharpBeak}, + [ITEM_POISON_BARB] = {gItemIcon_PoisonBarb, gItemIconPalette_PoisonBarb}, + [ITEM_NEVER_MELT_ICE] = {gItemIcon_NeverMeltIce, gItemIconPalette_NeverMeltIce}, + [ITEM_SPELL_TAG] = {gItemIcon_SpellTag, gItemIconPalette_SpellTag}, + [ITEM_TWISTED_SPOON] = {gItemIcon_TwistedSpoon, gItemIconPalette_TwistedSpoon}, + [ITEM_CHARCOAL] = {gItemIcon_Charcoal, gItemIconPalette_Charcoal}, + [ITEM_DRAGON_FANG] = {gItemIcon_DragonFang, gItemIconPalette_DragonFang}, + [ITEM_SILK_SCARF] = {gItemIcon_SilkScarf, gItemIconPalette_SilkScarf}, + [ITEM_UP_GRADE] = {gItemIcon_UpGrade, gItemIconPalette_UpGrade}, + [ITEM_SHELL_BELL] = {gItemIcon_ShellBell, gItemIconPalette_Shell}, + [ITEM_SEA_INCENSE] = {gItemIcon_SeaIncense, gItemIconPalette_SeaIncense}, + [ITEM_LAX_INCENSE] = {gItemIcon_LaxIncense, gItemIconPalette_LaxIncense}, + [ITEM_LUCKY_PUNCH] = {gItemIcon_LuckyPunch, gItemIconPalette_LuckyPunch}, + [ITEM_METAL_POWDER] = {gItemIcon_MetalPowder, gItemIconPalette_MetalPowder}, + [ITEM_THICK_CLUB] = {gItemIcon_ThickClub, gItemIconPalette_ThickClub}, + [ITEM_STICK] = {gItemIcon_Stick, gItemIconPalette_Stick}, + // ???????? + [ITEM_0E2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E4] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E5] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E6] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E7] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E8] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0E9] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0EA] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0EB] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0EC] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0ED] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0EE] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0EF] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F0] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F1] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F2] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F3] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F4] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F5] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F6] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F7] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F8] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0F9] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0FA] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0FB] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0FC] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_0FD] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // Contest hold items + [ITEM_RED_SCARF] = {gItemIcon_Scarf, gItemIconPalette_RedScarf}, + [ITEM_BLUE_SCARF] = {gItemIcon_Scarf, gItemIconPalette_BlueScarf}, + [ITEM_PINK_SCARF] = {gItemIcon_Scarf, gItemIconPalette_PinkScarf}, + [ITEM_GREEN_SCARF] = {gItemIcon_Scarf, gItemIconPalette_GreenScarf}, + [ITEM_YELLOW_SCARF] = {gItemIcon_Scarf, gItemIconPalette_YellowScarf}, + // Key items + [ITEM_MACH_BIKE] = {gItemIcon_MachBike, gItemIconPalette_MachBike}, + [ITEM_COIN_CASE] = {gItemIcon_CoinCase, gItemIconPalette_CoinCase}, + [ITEM_ITEMFINDER] = {gItemIcon_Itemfinder, gItemIconPalette_Itemfinder}, + [ITEM_OLD_ROD] = {gItemIcon_OldRod, gItemIconPalette_OldRod}, + [ITEM_GOOD_ROD] = {gItemIcon_GoodRod, gItemIconPalette_GoodRod}, + [ITEM_SUPER_ROD] = {gItemIcon_SuperRod, gItemIconPalette_SuperRod}, + [ITEM_SS_TICKET] = {gItemIcon_SSTicket, gItemIconPalette_SSTicket}, + [ITEM_CONTEST_PASS] = {gItemIcon_ContestPass, gItemIconPalette_ContestPass}, + [ITEM_10B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_WAILMER_PAIL] = {gItemIcon_WailmerPail, gItemIconPalette_WailmerPail}, + [ITEM_DEVON_GOODS] = {gItemIcon_DevonGoods, gItemIconPalette_DevonGoods}, + [ITEM_SOOT_SACK] = {gItemIcon_SootSack, gItemIconPalette_SootSack}, + [ITEM_BASEMENT_KEY] = {gItemIcon_BasementKey, gItemIconPalette_OldKey}, + [ITEM_ACRO_BIKE] = {gItemIcon_AcroBike, gItemIconPalette_AcroBike}, + [ITEM_POKEBLOCK_CASE] = {gItemIcon_PokeblockCase, gItemIconPalette_PokeblockCase}, + [ITEM_LETTER] = {gItemIcon_Letter, gItemIconPalette_LavaCookieAndLetter}, + [ITEM_EON_TICKET] = {gItemIcon_EonTicket, gItemIconPalette_EonTicket}, + [ITEM_RED_ORB] = {gItemIcon_Orb, gItemIconPalette_RedOrb}, + [ITEM_BLUE_ORB] = {gItemIcon_Orb, gItemIconPalette_BlueOrb}, + [ITEM_SCANNER] = {gItemIcon_Scanner, gItemIconPalette_Scanner}, + [ITEM_GO_GOGGLES] = {gItemIcon_GoGoggles, gItemIconPalette_GoGoggles}, + [ITEM_METEORITE] = {gItemIcon_Meteorite, gItemIconPalette_Meteorite}, + [ITEM_ROOM_1_KEY] = {gItemIcon_Room1Key, gItemIconPalette_Key}, + [ITEM_ROOM_2_KEY] = {gItemIcon_Room2Key, gItemIconPalette_Key}, + [ITEM_ROOM_4_KEY] = {gItemIcon_Room4Key, gItemIconPalette_Key}, + [ITEM_ROOM_6_KEY] = {gItemIcon_Room6Key, gItemIconPalette_Key}, + [ITEM_STORAGE_KEY] = {gItemIcon_StorageKey, gItemIconPalette_OldKey}, + [ITEM_ROOT_FOSSIL] = {gItemIcon_RootFossil, gItemIconPalette_HoennFossil}, + [ITEM_CLAW_FOSSIL] = {gItemIcon_ClawFossil, gItemIconPalette_HoennFossil}, + [ITEM_DEVON_SCOPE] = {gItemIcon_DevonScope, gItemIconPalette_DevonScope}, + // TMs / HMs + [ITEM_TM01] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM}, + [ITEM_TM02] = {gItemIcon_TMHM, gItemIconPalette_DragonTMHM}, + [ITEM_TM03] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM}, + [ITEM_TM04] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM05] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM06] = {gItemIcon_TMHM, gItemIconPalette_PoisonTMHM}, + [ITEM_TM07] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM}, + [ITEM_TM08] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM}, + [ITEM_TM09] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM}, + [ITEM_TM10] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM11] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM}, + [ITEM_TM12] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM}, + [ITEM_TM13] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM}, + [ITEM_TM14] = {gItemIcon_TMHM, gItemIconPalette_IceTMHM}, + [ITEM_TM15] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM16] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM17] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM18] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM}, + [ITEM_TM19] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM}, + [ITEM_TM20] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM21] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM22] = {gItemIcon_TMHM, gItemIconPalette_GrassTMHM}, + [ITEM_TM23] = {gItemIcon_TMHM, gItemIconPalette_SteelTMHM}, + [ITEM_TM24] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM}, + [ITEM_TM25] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM}, + [ITEM_TM26] = {gItemIcon_TMHM, gItemIconPalette_GroundTMHM}, + [ITEM_TM27] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM28] = {gItemIcon_TMHM, gItemIconPalette_GroundTMHM}, + [ITEM_TM29] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM30] = {gItemIcon_TMHM, gItemIconPalette_GhostTMHM}, + [ITEM_TM31] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM}, + [ITEM_TM32] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM33] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM34] = {gItemIcon_TMHM, gItemIconPalette_ElectricTMHM}, + [ITEM_TM35] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM}, + [ITEM_TM36] = {gItemIcon_TMHM, gItemIconPalette_PoisonTMHM}, + [ITEM_TM37] = {gItemIcon_TMHM, gItemIconPalette_RockTMHM}, + [ITEM_TM38] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM}, + [ITEM_TM39] = {gItemIcon_TMHM, gItemIconPalette_RockTMHM}, + [ITEM_TM40] = {gItemIcon_TMHM, gItemIconPalette_FlyingTMHM}, + [ITEM_TM41] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM}, + [ITEM_TM42] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM43] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM44] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM45] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_TM46] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM}, + [ITEM_TM47] = {gItemIcon_TMHM, gItemIconPalette_SteelTMHM}, + [ITEM_TM48] = {gItemIcon_TMHM, gItemIconPalette_PsychicTMHM}, + [ITEM_TM49] = {gItemIcon_TMHM, gItemIconPalette_DarkTMHM}, + [ITEM_TM50] = {gItemIcon_TMHM, gItemIconPalette_FireTMHM}, + [ITEM_HM01] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_HM02] = {gItemIcon_TMHM, gItemIconPalette_FlyingTMHM}, + [ITEM_HM03] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM}, + [ITEM_HM04] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_HM05] = {gItemIcon_TMHM, gItemIconPalette_NormalTMHM}, + [ITEM_HM06] = {gItemIcon_TMHM, gItemIconPalette_FightingTMHM}, + [ITEM_HM07] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM}, + [ITEM_HM08] = {gItemIcon_TMHM, gItemIconPalette_WaterTMHM}, + // ???????? + [ITEM_15B] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + [ITEM_15C] = {gItemIcon_QuestionMark, gItemIconPalette_QuestionMark}, + // FireRed/LeafGreen key items + [ITEM_OAKS_PARCEL] = {gItemIcon_OaksParcel, gItemIconPalette_OaksParcel}, + [ITEM_POKE_FLUTE] = {gItemIcon_PokeFlute, gItemIconPalette_PokeFlute}, + [ITEM_SECRET_KEY] = {gItemIcon_SecretKey, gItemIconPalette_SecretKey}, + [ITEM_BIKE_VOUCHER] = {gItemIcon_BikeVoucher, gItemIconPalette_BikeVoucher}, + [ITEM_GOLD_TEETH] = {gItemIcon_GoldTeeth, gItemIconPalette_GoldTeeth}, + [ITEM_OLD_AMBER] = {gItemIcon_OldAmber, gItemIconPalette_OldAmber}, + [ITEM_CARD_KEY] = {gItemIcon_CardKey, gItemIconPalette_CardKey}, + [ITEM_LIFT_KEY] = {gItemIcon_LiftKey, gItemIconPalette_Key}, + [ITEM_HELIX_FOSSIL] = {gItemIcon_HelixFossil, gItemIconPalette_KantoFossil}, + [ITEM_DOME_FOSSIL] = {gItemIcon_DomeFossil, gItemIconPalette_KantoFossil}, + [ITEM_SILPH_SCOPE] = {gItemIcon_SilphScope, gItemIconPalette_SilphScope}, + [ITEM_BICYCLE] = {gItemIcon_Bicycle, gItemIconPalette_Bicycle}, + [ITEM_TOWN_MAP] = {gItemIcon_TownMap, gItemIconPalette_TownMap}, + [ITEM_VS_SEEKER] = {gItemIcon_VSSeeker, gItemIconPalette_VSSeeker}, + [ITEM_FAME_CHECKER] = {gItemIcon_FameChecker, gItemIconPalette_FameChecker}, + [ITEM_TM_CASE] = {gItemIcon_TMCase, gItemIconPalette_TMCase}, + [ITEM_BERRY_POUCH] = {gItemIcon_BerryPouch, gItemIconPalette_BerryPouch}, + [ITEM_TEACHY_TV] = {gItemIcon_TeachyTV, gItemIconPalette_TeachyTV}, + [ITEM_TRI_PASS] = {gItemIcon_TriPass, gItemIconPalette_TriPass}, + [ITEM_RAINBOW_PASS] = {gItemIcon_RainbowPass, gItemIconPalette_RainbowPass}, + [ITEM_TEA] = {gItemIcon_Tea, gItemIconPalette_Tea}, + [ITEM_MYSTIC_TICKET] = {gItemIcon_MysticTicket, gItemIconPalette_MysticTicket}, + [ITEM_AURORA_TICKET] = {gItemIcon_AuroraTicket, gItemIconPalette_AuroraTicket}, + [ITEM_POWDER_JAR] = {gItemIcon_PowderJar, gItemIconPalette_PowderJar}, + [ITEM_RUBY] = {gItemIcon_Gem, gItemIconPalette_Ruby}, + [ITEM_SAPPHIRE] = {gItemIcon_Gem, gItemIconPalette_Sapphire}, + // Return to field arrow + [ITEMS_COUNT] = {gItemIcon_ReturnToFieldArrow, gItemIconPalette_ReturnToFieldArrow}, }; diff --git a/src/data/object_events/object_event_graphics_info.h b/src/data/object_events/object_event_graphics_info.h index 3b1671d5a..b4a6541f6 100644 --- a/src/data/object_events/object_event_graphics_info.h +++ b/src/data/object_events/object_event_graphics_info.h @@ -5,7 +5,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedNormal = { .size = 512, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -24,7 +24,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedBike = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -43,7 +43,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedSurf = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = TRUE, @@ -62,7 +62,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedFieldMove = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -81,7 +81,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Policeman = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -100,7 +100,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RSBrendan = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -119,7 +119,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RSMay = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -138,7 +138,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleBoy = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -157,7 +157,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LittleGirl = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -176,7 +176,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SittingBoy = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -195,7 +195,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lass = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -214,7 +214,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Youngster = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -233,7 +233,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman1 = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -252,7 +252,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman3 = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -271,7 +271,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Boy = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -290,7 +290,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BattleGirl = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -309,7 +309,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BugCatcher = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -328,7 +328,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_FatMan = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -347,7 +347,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_BaldingMan = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -366,7 +366,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Woman2 = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -385,7 +385,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan1 = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -404,7 +404,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WorkerM = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -423,7 +423,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_WorkerF = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -442,7 +442,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Beauty = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -461,7 +461,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Chef = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -480,7 +480,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldMan2 = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -499,7 +499,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldWoman = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -518,7 +518,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Camper = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -537,7 +537,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Picnicker = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -556,7 +556,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CooltrainerM = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -575,7 +575,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CooltrainerF = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -594,7 +594,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SuperNerd = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -613,7 +613,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Channeler = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -632,7 +632,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RocketF = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -651,7 +651,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerMWater = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -670,7 +670,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerFWater = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -689,7 +689,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerMLand = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -708,7 +708,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SwimmerFLand = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -727,7 +727,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Blackbelt = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -746,7 +746,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Scientist = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -765,7 +765,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Gentleman = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -784,7 +784,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sailor = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -803,7 +803,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Captain = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -822,7 +822,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fisher = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -841,7 +841,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TeachyTVHost = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -860,7 +860,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedWoman = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -879,7 +879,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberF = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -898,7 +898,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMWater = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -917,7 +917,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TuberMLand = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -936,7 +936,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Hiker = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -955,7 +955,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Biker = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -974,7 +974,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GymGuy = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -993,7 +993,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nurse = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1012,7 +1012,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnusedMaleReceptio .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1031,7 +1031,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ItemBall = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1050,7 +1050,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_ProfOak = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1069,7 +1069,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Man = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1088,7 +1088,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Rocker = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1107,7 +1107,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MrFuji = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1126,7 +1126,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bruno = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1145,7 +1145,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldManLyingDown = .size = 512, .width = 32, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1164,7 +1164,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CutTree = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1183,7 +1183,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Clerk = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1202,7 +1202,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_MGDeliveryman = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1221,7 +1221,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TrainerTowerDude = .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1240,7 +1240,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_CableClubReception .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1259,7 +1259,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_UnionRoomReception .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1278,7 +1278,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RockSmashRock = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1297,7 +1297,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_StrengthBoulder = .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1316,7 +1316,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenNormal = { .size = 512, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1335,7 +1335,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenBike = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1354,7 +1354,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenSurf = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = TRUE, @@ -1373,7 +1373,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenFieldMove = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1392,7 +1392,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedBikeAlt = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 10, + .paletteSlot = PALSLOT_NPC_SPECIAL, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1411,7 +1411,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RocketM = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1430,7 +1430,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Celio = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1449,7 +1449,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Agatha = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1468,7 +1468,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Brock = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1487,7 +1487,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Misty = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1506,7 +1506,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LtSurge = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1525,7 +1525,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Erika = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1544,7 +1544,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Koga = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1563,7 +1563,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Giovanni = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1582,7 +1582,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Blaine = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1601,7 +1601,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sabrina = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1620,7 +1620,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Bill = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1639,7 +1639,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Daisy = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1658,7 +1658,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lorelei = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1677,7 +1677,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lance = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1696,7 +1696,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Blue = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1715,7 +1715,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedFish = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1734,7 +1734,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenFish = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1753,7 +1753,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedVSSeeker = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1772,7 +1772,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_RedVSSeekerBike = .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1791,7 +1791,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenVSSeeker = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1810,7 +1810,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GreenVSSeekerBike .size = 512, .width = 32, .height = 32, - .paletteSlot = 0, + .paletteSlot = PALSLOT_PLAYER, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1829,7 +1829,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TownMap = { .size = 256, .width = 32, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1848,7 +1848,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pokedex = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1867,7 +1867,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GBAKid = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1886,7 +1886,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Snorlax = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -1905,7 +1905,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fossil = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1924,7 +1924,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Ruby = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1943,7 +1943,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sapphire = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1962,7 +1962,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_OldAmber = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -1981,7 +1981,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_GymSign = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2000,7 +2000,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Sign = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2019,7 +2019,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_TrainerTips = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2038,7 +2038,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Clipboard = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2057,7 +2057,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Meteorite = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 10, + .paletteSlot = PALSLOT_NPC_SPECIAL, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2076,7 +2076,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_LaprasDoll = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_S, .inanimate = TRUE, .disableReflectionPaletteLoad = FALSE, @@ -2095,7 +2095,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Spearow = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2114,7 +2114,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Omanyte = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2133,7 +2133,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kangaskhan = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2152,7 +2152,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Psyduck = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2171,7 +2171,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NidoranF = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2190,7 +2190,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_NidoranM = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2209,7 +2209,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Nidorino = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2228,7 +2228,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Meowth = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2247,7 +2247,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Seel = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2266,7 +2266,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Voltorb = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2285,7 +2285,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Slowpoke = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2304,7 +2304,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Slowbro = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2323,7 +2323,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Machop = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2342,7 +2342,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Wigglytuff = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2361,7 +2361,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Doduo = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2380,7 +2380,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Fearow = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2399,7 +2399,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lapras = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2418,7 +2418,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Zapdos = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2437,7 +2437,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Moltres = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2456,7 +2456,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Articuno = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2475,7 +2475,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DeoxysD = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2494,7 +2494,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DeoxysA = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2513,7 +2513,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_DeoxysN = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2532,7 +2532,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mewtwo = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2551,7 +2551,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mew = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2570,7 +2570,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Entei = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2589,7 +2589,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Raikou = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2608,7 +2608,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Suicune = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2627,7 +2627,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Lugia = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2646,7 +2646,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_HoOh = { .size = 512, .width = 32, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2665,7 +2665,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Celebi = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 4, + .paletteSlot = PALSLOT_NPC_3, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2684,7 +2684,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Cubone = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 5, + .paletteSlot = PALSLOT_NPC_4, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2703,7 +2703,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Machoke = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2722,7 +2722,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Kabuto = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2741,7 +2741,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Poliwrath = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2760,7 +2760,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pidgeot = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2779,7 +2779,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Chansey = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2798,7 +2798,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pikachu = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2817,7 +2817,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Jigglypuff = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2836,7 +2836,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Pidgey = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2855,7 +2855,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Clefairy = { .size = 128, .width = 16, .height = 16, - .paletteSlot = 3, + .paletteSlot = PALSLOT_NPC_2, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2874,7 +2874,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Mom = { .size = 256, .width = 16, .height = 32, - .paletteSlot = 2, + .paletteSlot = PALSLOT_NPC_1, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2893,7 +2893,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_Seagallop = { .size = 2048, .width = 64, .height = 64, - .paletteSlot = 10, + .paletteSlot = PALSLOT_NPC_SPECIAL, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, @@ -2912,7 +2912,7 @@ const struct ObjectEventGraphicsInfo gObjectEventGraphicsInfo_SSAnne = { .size = 4096, .width = 128, .height = 64, - .paletteSlot = 10, + .paletteSlot = PALSLOT_NPC_SPECIAL, .shadowSize = SHADOW_SIZE_M, .inanimate = FALSE, .disableReflectionPaletteLoad = FALSE, diff --git a/src/data/union_room.h b/src/data/union_room.h index 0e73b832e..0bbeadbb4 100644 --- a/src/data/union_room.h +++ b/src/data/union_room.h @@ -30,7 +30,7 @@ static const struct WindowTemplate sWindowTemplate_BButtonCancel = { .tilemapTop = 0, .width = 30, .height = 2, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x008 }; diff --git a/src/daycare.c b/src/daycare.c index adf754425..b3bc5c3a0 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -1810,7 +1810,7 @@ static void CB2_EggHatch_0(void) case 2: DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0); CopyToBgTilemapBuffer(0, gBattleInterface_Textbox_Tilemap, 0, 0); - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0, 0x20); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); gMain.state++; break; case 3: @@ -1834,7 +1834,7 @@ static void CB2_EggHatch_0(void) break; case 7: SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP); - LoadPalette(gTradeGba2_Pal, 0x10, 0xA0); + LoadPalette(gTradeGba2_Pal, BG_PLTT_ID(1), 5 * PLTT_SIZE_4BPP); LoadBgTiles(1, gTradeGba_Gfx, 0x1420, 0); CopyToBgTilemapBuffer(1, gTradeOrHatchMonShadowTilemap, 0x1000, 0); CopyBgTilemapBufferToVram(1); @@ -1948,8 +1948,8 @@ static void CB2_EggHatch_1(void) case 9: if (!IsTextPrinterActive(sEggHatchData->windowId)) { - LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, 0xE0); - CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 0xE, 0); + LoadUserWindowGfx2(sEggHatchData->windowId, 0x140, BG_PLTT_ID(14)); + CreateYesNoMenu(&sYesNoWinTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x140, 14, 0); sEggHatchData->CB2_state++; } break; diff --git a/src/diploma.c b/src/diploma.c index e24c693eb..b10c4d75c 100644 --- a/src/diploma.c +++ b/src/diploma.c @@ -243,7 +243,7 @@ static bool8 DiplomaLoadGfx(void) return FALSE; break; case 3: - LoadPalette(sDiplomaPal, 0, sizeof(sDiplomaPal)); + LoadPalette(sDiplomaPal, BG_PLTT_ID(0), sizeof(sDiplomaPal)); // fallthrough default: // Finished diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index a740bda86..a33714760 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -3002,8 +3002,8 @@ static void PrintRecordsText(u8 windowId) recordNums[1] = gSaveBlock2Ptr->berryPick.bestScore; recordNums[2] = gSaveBlock2Ptr->berryPick.berriesPickedInRow; - LoadStdWindowGfx(windowId, 0x21D, 0xD0); - DrawTextBorderOuter(windowId, 0x21D, 0xD); + LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13)); + DrawTextBorderOuter(windowId, 0x21D, 13); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); AddTextPrinterParameterized(windowId, FONT_NORMAL, sRecordsTexts[0], 1, 1, TEXT_SKIP_DRAW, NULL); for (i = 0; i < NUM_RECORD_TYPES; i++) @@ -4161,12 +4161,12 @@ static void ResetBerryAndStatusBarSprites(void) static void LoadWindowFrameGfx(u8 frameId) { LoadBgTiles(BG_INTERFACE, GetUserWindowGraphics(frameId)->tiles, 0x120, 1); - LoadPalette(GetUserWindowGraphics(frameId)->palette, 0xA0, 0x20); + LoadPalette(GetUserWindowGraphics(frameId)->palette, BG_PLTT_ID(10), PLTT_SIZE_4BPP); } static void DBP_LoadStdWindowGfx(void) { - LoadStdWindowGfx(0, 0xA, 0xB0); + LoadStdWindowGfx(0, 0xA, BG_PLTT_ID(11)); } static void ResetGfxState(void) @@ -4926,7 +4926,7 @@ static bool32 LoadBgGfx(void) switch (sGfx->loadState) { case 0: - LoadPalette(sBg_Pal, 0, sizeof(sBg_Pal)); + LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal)); break; case 1: ResetTempTileDataBuffers(); @@ -4942,7 +4942,7 @@ static bool32 LoadBgGfx(void) return FALSE; break; case 5: - LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); + LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP); break; default: sGfx->loadState = 0; diff --git a/src/easy_chat_3.c b/src/easy_chat_3.c index a72c82b79..81a27a654 100644 --- a/src/easy_chat_3.c +++ b/src/easy_chat_3.c @@ -1319,13 +1319,13 @@ static void SetGpuRegsForEasyChatInit(void) static void LoadEasyChatPals(void) { ResetPaletteFade(); - LoadPalette(gEasyChatWindow_Pal, 0, 32); - LoadPalette(sTextInputFrameOrange_Pal, 1 * 16, 32); - LoadPalette(sTextInputFrameGreen_Pal, 4 * 16, 32); - LoadPalette(sTitleText_Pal, 10 * 16, 8); - LoadPalette(sText_Pal, 11 * 16, 10); - LoadPalette(sText_Pal, 15 * 16, 10); - LoadPalette(sText_Pal, 3 * 16, 10); + LoadPalette(gEasyChatWindow_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(sTextInputFrameOrange_Pal, BG_PLTT_ID(1), sizeof(sTextInputFrameOrange_Pal)); + LoadPalette(sTextInputFrameGreen_Pal, BG_PLTT_ID(4), sizeof(sTextInputFrameGreen_Pal)); + LoadPalette(sTitleText_Pal, BG_PLTT_ID(10), sizeof(sTitleText_Pal)); + LoadPalette(sText_Pal, BG_PLTT_ID(11), sizeof(sText_Pal)); + LoadPalette(sText_Pal, BG_PLTT_ID(15), sizeof(sText_Pal)); + LoadPalette(sText_Pal, BG_PLTT_ID(3), sizeof(sText_Pal)); } static void PrintTitleText(void) @@ -1363,7 +1363,7 @@ static void EC_AddTextPrinterParameterized2(u8 windowId, u8 fontId, const u8 *st static void PrintECInstructionsText(void) { FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17); - LoadUserWindowGfx(1, 1, 0xE0); + LoadUserWindowGfx(1, 1, BG_PLTT_ID(14)); DrawTextBorderOuter(1, 1, 14); PrintECInterfaceTextById(0); PutWindowTilemap(1); diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 07c4c07bd..03c1c140a 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -2175,7 +2175,7 @@ void PatchObjectPalette(u16 paletteTag, u8 paletteSlot) { u8 paletteIndex = FindObjectEventPaletteIndexByTag(paletteTag); - LoadPalette(sObjectEventSpritePalettes[paletteIndex].data, 16 * paletteSlot + 0x100, 0x20); + LoadPalette(sObjectEventSpritePalettes[paletteIndex].data, OBJ_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP); ApplyGlobalFieldPaletteTint(paletteSlot); } diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index 5bb28ed28..151faca91 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -397,7 +397,7 @@ static void EvoTask_PostEvoSparklesSet2Init(u8 taskId) SetEvoSparklesMatrices(); gTasks[taskId].data[15] = 0; IsMovingBackgroundTaskRunning(); - CpuCopy16(&gPlttBufferFaded[32], &gPlttBufferUnfaded[32], 96); + CpuCopy16(&gPlttBufferFaded[BG_PLTT_ID(2)], &gPlttBufferUnfaded[BG_PLTT_ID(2)], 3 * PLTT_SIZE_4BPP); BeginNormalPaletteFade(0xFFF90F1C, 0, 0, 16, RGB_WHITE); gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2; PlaySE(SE_M_PETAL_DANCE); @@ -448,7 +448,7 @@ static void EvoTask_PostEvoSparklesSet2TradeInit(u8 taskId) SetEvoSparklesMatrices(); gTasks[taskId].data[15] = 0; IsMovingBackgroundTaskRunning(); - CpuCopy16(&gPlttBufferFaded[32], &gPlttBufferUnfaded[32], 96); + CpuCopy16(&gPlttBufferFaded[BG_PLTT_ID(2)], &gPlttBufferUnfaded[BG_PLTT_ID(2)], 3 * PLTT_SIZE_4BPP); BeginNormalPaletteFade(0xFFF90F00, 0, 0, 16, RGB_WHITE); gTasks[taskId].func = EvoTask_CreatePostEvoSparklesSet2Trade; PlaySE(SE_M_PETAL_DANCE); @@ -511,12 +511,12 @@ u8 CycleEvolutionMonSprite(u8 preEvoSpriteId, u8 postEvoSpriteId) gSprites[preEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[preEvoSpriteId].oam.matrixNum = 30; gSprites[preEvoSpriteId].invisible = FALSE; - CpuCopy16(palette, &gPlttBufferFaded[256 + 16 * gSprites[preEvoSpriteId].oam.paletteNum], 32); + CpuCopy16(palette, &gPlttBufferFaded[OBJ_PLTT_ID(gSprites[preEvoSpriteId].oam.paletteNum)], PLTT_SIZE_4BPP); gSprites[postEvoSpriteId].callback = SpriteCallbackDummy_MonSprites; gSprites[postEvoSpriteId].oam.affineMode = ST_OAM_AFFINE_NORMAL; gSprites[postEvoSpriteId].oam.matrixNum = 31; gSprites[postEvoSpriteId].invisible = FALSE; - CpuCopy16(palette, &gPlttBufferFaded[256 + 16 * gSprites[postEvoSpriteId].oam.paletteNum], 32); + CpuCopy16(palette, &gPlttBufferFaded[OBJ_PLTT_ID(gSprites[postEvoSpriteId].oam.paletteNum)], PLTT_SIZE_4BPP); gTasks[taskId].EvoGraphicsTaskEvoStop = FALSE; return taskId; } diff --git a/src/evolution_scene.c b/src/evolution_scene.c index b35e4569c..5e505e336 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -264,7 +264,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_LEFT], currSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(currSpecies, trainerId, personality); - LoadCompressedPalette(pokePal->data, 0x110, 0x20); + LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(1), PLTT_SIZE_4BPP); SetMultiuseSpriteTemplateToPokemon(currSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; @@ -279,7 +279,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); - LoadCompressedPalette(pokePal->data, 0x120, 0x20); + LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; @@ -299,7 +299,7 @@ void EvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, bool8 canStopEvo, u gTasks[id].tEvoWasStopped = FALSE; gTasks[id].tPartyId = partyId; - memcpy(&sEvoStructPtr->savedPalette, &gPlttBufferUnfaded[0x20], sizeof(sEvoStructPtr->savedPalette)); + memcpy(&sEvoStructPtr->savedPalette, &gPlttBufferUnfaded[BG_PLTT_ID(2)], sizeof(sEvoStructPtr->savedPalette)); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_OBJ_ON | DISPCNT_BG_ALL_ON | DISPCNT_OBJ_1D_MAP); @@ -358,7 +358,7 @@ static void CB2_EvolutionSceneLoadGraphics(void) postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); - LoadCompressedPalette(pokePal->data, 0x120, 0x20); + LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_RIGHT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; @@ -416,7 +416,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) gMain.state++; break; case 3: - FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 0x11); + FillBgTilemapBufferRect(1, 0, 0, 0, 0x20, 0x20, 17); CopyBgTilemapBufferToVram(1); gMain.state++; break; @@ -429,7 +429,7 @@ static void CB2_TradeEvolutionSceneLoadGraphics(void) gMonSpritesGfxPtr->sprites[B_POSITION_OPPONENT_RIGHT], postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); - LoadCompressedPalette(pokePal->data, 0x120, 0x20); + LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP); gMain.state++; } break; @@ -494,7 +494,7 @@ void TradeEvolutionScene(struct Pokemon* mon, u16 postEvoSpecies, u8 preEvoSprit postEvoSpecies); pokePal = GetMonSpritePalStructFromOtIdPersonality(postEvoSpecies, trainerId, personality); - LoadCompressedPalette(pokePal->data, 0x120, 0x20); + LoadCompressedPalette(pokePal->data, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP); SetMultiuseSpriteTemplateToPokemon(postEvoSpecies, B_POSITION_OPPONENT_LEFT); gMultiuseSpriteTemplate.affineAnims = gDummySpriteAffineAnimTable; @@ -756,7 +756,7 @@ static void Task_EvolutionScene(u8 taskId) if (IsSEPlaying()) { m4aMPlayAllStop(); - memcpy(&gPlttBufferUnfaded[0x20], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette)); + memcpy(&gPlttBufferUnfaded[BG_PLTT_ID(2)], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette)); RestoreBgAfterAnim(); BeginNormalPaletteFade(0x1C, 0, 0x10, 0, RGB_BLACK); gTasks[taskId].tState++; @@ -1199,7 +1199,7 @@ static void Task_TradeEvolutionScene(u8 taskId) { // Free(sBgAnimPal); PlayCry_Normal(gTasks[taskId].tPostEvoSpecies, 0); - memcpy(&gPlttBufferUnfaded[0x20], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette)); + memcpy(&gPlttBufferUnfaded[BG_PLTT_ID(2)], sEvoStructPtr->savedPalette, sizeof(sEvoStructPtr->savedPalette)); gTasks[taskId].tState++; } break; @@ -1331,8 +1331,8 @@ static void Task_TradeEvolutionScene(u8 taskId) case T_MVSTATE_PRINT_YES_NO: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - LoadUserWindowGfx2(0, 0xA8, 0xE0); - CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 0xE, 0); + LoadUserWindowGfx2(0, 0xA8, BG_PLTT_ID(14)); + CreateYesNoMenu(&gTradeEvolutionSceneYesNoWindowTemplate, FONT_NORMAL_COPY_2, 0, 2, 0xA8, 14, 0); sEvoCursorPos = 0; gTasks[taskId].tLearnMoveState++; sEvoCursorPos = 0; @@ -1537,7 +1537,7 @@ static void Task_UpdateBgPalette(u8 taskId) else { // Haven't reached final palette in current stage, load the current palette - LoadPalette(&sBgAnimPal[tPalStage * 16], 0xA0, 0x20); + LoadPalette(&sBgAnimPal[tPalStage * 16], BG_PLTT_ID(10), PLTT_SIZE_4BPP); tCycleTimer = 0; tPalStage++; } @@ -1635,7 +1635,7 @@ static void StartBgAnimation(bool8 isLink) else innerBgId = 1, outerBgId = 3; - LoadPalette(sBlackPalette, 0xA0, 0x20); + LoadPalette(sBlackPalette, BG_PLTT_ID(10), sizeof(sBlackPalette)); DecompressAndLoadBgGfxUsingHeap(1, sMovingBackgroundTiles, FALSE, 0, 0); CopyToBgTilemapBuffer(1, sMovingBackgroundMap1, 0, 0); @@ -1673,7 +1673,7 @@ void IsMovingBackgroundTaskRunning(void) // unused if (taskId != TASK_NONE) gTasks[taskId].tPaused = TRUE; - FillPalette(RGB_BLACK, 0xA0, 0x20); + FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP); } #undef tPaused @@ -1687,7 +1687,7 @@ static void StopBgAnimation(void) if ((taskId = FindTaskIdByFunc(Task_AnimateBg)) != TASK_NONE) DestroyTask(taskId); - FillPalette(RGB_BLACK, 0xA0, 0x20); + FillPalette(RGB_BLACK, BG_PLTT_ID(10), PLTT_SIZE_4BPP); RestoreBgAfterAnim(); } diff --git a/src/fame_checker.c b/src/fame_checker.c index b00700839..3c0c76963 100644 --- a/src/fame_checker.c +++ b/src/fame_checker.c @@ -663,11 +663,11 @@ static void MainCB2_LoadFameChecker(void) case 3: LoadBgTiles(3, gFameCheckerBgTiles, sizeof(gFameCheckerBgTiles), 0); CopyToBgTilemapBufferRect(3, gFameCheckerBg3Tilemap, 0, 0, 32, 32); - LoadPalette(gFameCheckerBgPals + 0x00, 0x00, 0x40); - LoadPalette(gFameCheckerBgPals + 0x10, 0x10, 0x20); + LoadPalette(&gFameCheckerBgPals[0], BG_PLTT_ID(0), 2 * PLTT_SIZE_4BPP); + LoadPalette(&gFameCheckerBgPals[1], BG_PLTT_ID(1), PLTT_SIZE_4BPP); CopyToBgTilemapBufferRect(2, gFameCheckerBg2Tilemap, 0, 0, 32, 32); CopyToBgTilemapBufferRect_ChangePalette(1, sFameCheckerTilemap, 30, 0, 32, 32, 0x11); - LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP); gMain.state++; break; case 4: @@ -1335,40 +1335,44 @@ static void SpriteCB_FCSpinningPokeball(struct Sprite *sprite) } } +#define PERSON_PAL_NUM 6 +#define PERSON_X 148 +#define PERSON_Y 66 + static u8 CreatePersonPicSprite(u8 fcPersonIdx) { u8 spriteId; if (fcPersonIdx == FAMECHECKER_DAISY) { - spriteId = CreateSprite(&sDaisySpriteTemplate, 0x94, 0x42, 0); - LoadPalette(sDaisySpritePalette, 0x160, 0x20); - gSprites[spriteId].oam.paletteNum = 6; + spriteId = CreateSprite(&sDaisySpriteTemplate, PERSON_X, PERSON_Y, 0); + LoadPalette(sDaisySpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sDaisySpritePalette)); + gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM; } else if (fcPersonIdx == FAMECHECKER_MRFUJI) { - spriteId = CreateSprite(&sFujiSpriteTemplate, 0x94, 0x42, 0); - LoadPalette(sFujiSpritePalette, 0x160, 0x20); - gSprites[spriteId].oam.paletteNum = 6; + spriteId = CreateSprite(&sFujiSpriteTemplate, PERSON_X, PERSON_Y, 0); + LoadPalette(sFujiSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sFujiSpritePalette)); + gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM; } else if (fcPersonIdx == FAMECHECKER_OAK) { - spriteId = CreateSprite(&sOakSpriteTemplate, 0x94, 0x42, 0); - LoadPalette(sOakSpritePalette, 0x160, 0x20); - gSprites[spriteId].oam.paletteNum = 6; + spriteId = CreateSprite(&sOakSpriteTemplate, PERSON_X, PERSON_Y, 0); + LoadPalette(sOakSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sOakSpritePalette)); + gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM; } else if (fcPersonIdx == FAMECHECKER_BILL) { - spriteId = CreateSprite(&sBillSpriteTemplate, 0x94, 0x42, 0); - LoadPalette(sBillSpritePalette, 0x160, 0x20); - gSprites[spriteId].oam.paletteNum = 6; + spriteId = CreateSprite(&sBillSpriteTemplate, PERSON_X, PERSON_Y, 0); + LoadPalette(sBillSpritePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sBillSpritePalette)); + gSprites[spriteId].oam.paletteNum = PERSON_PAL_NUM; } else { - spriteId = CreateTrainerPicSprite(sFameCheckerTrainerPicIdxs[fcPersonIdx], 1, 0x94, 0x42, 6, 0xFFFF); + spriteId = CreateTrainerPicSprite(sFameCheckerTrainerPicIdxs[fcPersonIdx], TRUE, PERSON_X, PERSON_Y, PERSON_PAL_NUM, TAG_NONE); } gSprites[spriteId].callback = SpriteCB_FCSpinningPokeball; if (gSaveBlock1Ptr->fameChecker[fcPersonIdx].pickState == FCPICKSTATE_SILHOUETTE) - LoadPalette(sSilhouettePalette, 0x160, 0x20); + LoadPalette(sSilhouettePalette, OBJ_PLTT_ID(PERSON_PAL_NUM), sizeof(sSilhouettePalette)); return spriteId; } diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c index 41ef6ab9c..6ef78e6f3 100644 --- a/src/field_control_avatar.c +++ b/src/field_control_avatar.c @@ -103,7 +103,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys) } if ((tileTransitionState == T_TILE_CENTER && forcedMove == FALSE) || tileTransitionState == T_NOT_MOVING) { - if (GetPlayerSpeed() != 4) + if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST) { if ((newKeys & START_BUTTON) && !(gPlayerAvatar.flags & PLAYER_AVATAR_FLAG_FORCED)) input->pressedStartButton = TRUE; diff --git a/src/field_effect.c b/src/field_effect.c index 2fdeeead1..84a4cff88 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -106,7 +106,7 @@ static const struct OamData sNewGameOakOamAttributes = { .size = SPRITE_SIZE(64x64), .tileNum = 0x000, .priority = 0, - .paletteNum = 0x0, + .paletteNum = 0, .affineParam = 0 }; @@ -122,7 +122,7 @@ static const struct OamData sOamData_8x8 = { .size = SPRITE_SIZE(8x8), .tileNum = 0x000, .priority = 0, - .paletteNum = 0x0, + .paletteNum = 0, .affineParam = 0 }; @@ -138,7 +138,7 @@ static const struct OamData sOamData_16x16 = { .size = SPRITE_SIZE(16x16), .tileNum = 0x000, .priority = 0, - .paletteNum = 0x0, + .paletteNum = 0, .affineParam = 0 }; @@ -189,7 +189,7 @@ static const struct OamData sOamData_32x16 = { .size = SPRITE_SIZE(32x16), .tileNum = 0x000, .priority = 0, - .paletteNum = 0x0, + .paletteNum = 0, .affineParam = 0 }; @@ -442,19 +442,19 @@ void ApplyGlobalFieldPaletteTint(u8 paletteIdx) case 0: return; case 1: - TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); + TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16); break; case 2: - TintPalette_SepiaTone(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); + TintPalette_SepiaTone(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16); break; case 3: - QuestLog_BackUpPalette((paletteIdx + 16) * 16, 0x10); - TintPalette_GrayScale(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], 0x10); + QuestLog_BackUpPalette(OBJ_PLTT_ID2(paletteIdx), 16); + TintPalette_GrayScale(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], 16); break; default: return; } - CpuFastCopy(&gPlttBufferUnfaded[(paletteIdx + 16) * 16], &gPlttBufferFaded[(paletteIdx + 16) * 16], 0x20); + CpuFastCopy(&gPlttBufferUnfaded[OBJ_PLTT_ID2(paletteIdx)], &gPlttBufferFaded[OBJ_PLTT_ID2(paletteIdx)], PLTT_SIZE_4BPP); } static void FieldEffectScript_LoadFadedPal(const u8 **script) @@ -591,10 +591,11 @@ u8 CreateTrainerSprite(u8 trainerSpriteID, s16 x, s16 y, u8 subpriority, u8 *buf return CreateSprite(&spriteTemplate, x, y, subpriority); } +// Unused static void LoadTrainerGfx_TrainerCard(u8 gender, u16 palOffset, u8 *dest) { LZDecompressVram(gTrainerFrontPicTable[gender].data, dest); - LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, 0x20); + LoadCompressedPalette(gTrainerFrontPicPaletteTable[gender].data, palOffset, PLTT_SIZE_4BPP); } // Unused @@ -945,14 +946,14 @@ static void PokeballGlowEffect_FlashFirstThree(struct Sprite *sprite) sprite->sNumFlashed++; } phase = (sprite->sCounter + 3) & 3; - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 8, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); phase = (sprite->sCounter + 2) & 3; - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 6, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); phase = (sprite->sCounter + 1) & 3; - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 2, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); phase = sprite->sCounter; - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 3, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); if (sprite->sNumFlashed >= 3) { sprite->sState++; @@ -976,11 +977,11 @@ static void PokeballGlowEffect_FlashLast(struct Sprite *sprite) } } phase = sprite->sCounter; - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x108, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x106, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x102, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x105, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); - MultiplyInvertedPaletteRGBComponents((IndexOfSpritePaletteTag(0x1007) << 4) + 0x103, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 8, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 6, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 2, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 5, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); + MultiplyInvertedPaletteRGBComponents(OBJ_PLTT_ID(IndexOfSpritePaletteTag(0x1007)) + 3, sPokeballGlowReds[phase], sPokeballGlowGreens[phase], sPokeballGlowBlues[phase]); } static void PokeballGlowEffect_WaitAfterFlash(struct Sprite *sprite) @@ -2625,7 +2626,7 @@ static void ShowMonEffect_Outdoors_2(struct Task *task) u16 screenbase = ((GetGpuReg(REG_OFFSET_BG0CNT) >> 8) << 11); CpuCopy16(sFieldMoveStreaksOutdoors_Gfx, (void *)(VRAM + charbase), 0x200); CpuFill32(0, (void *)(VRAM + screenbase), 0x800); - LoadPalette(sFieldMoveStreaksOutdoors_Pal, 0xf0, 0x20); + LoadPalette(sFieldMoveStreaksOutdoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksOutdoors_Pal)); LoadFieldMoveStreaksTilemapToVram(screenbase); task->data[0]++; } @@ -2776,7 +2777,7 @@ static void ShowMonEffect_Indoors_2(struct Task *task) task->data[12] = screenbase; CpuCopy16(sFieldMoveStreaksIndoors_Gfx, (void *)(VRAM + charbase), 0x80); CpuFill32(0, (void *)(VRAM + screenbase), 0x800); - LoadPalette(sFieldMoveStreaksIndoors_Pal, 0xf0, 0x20); + LoadPalette(sFieldMoveStreaksIndoors_Pal, BG_PLTT_ID(15), sizeof(sFieldMoveStreaksIndoors_Pal)); task->data[0]++; } diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c index 7a9a59f66..278364803 100644 --- a/src/field_effect_helpers.c +++ b/src/field_effect_helpers.c @@ -81,18 +81,12 @@ static void LoadObjectRegularReflectionPalette(struct ObjectEvent * objectEvent, graphicsInfo = GetObjectEventGraphicsInfo(objectEvent->graphicsId); if (graphicsInfo->reflectionPaletteTag != OBJ_EVENT_PAL_TAG_NONE) { - if (graphicsInfo->paletteSlot == 0) - { + if (graphicsInfo->paletteSlot == PALSLOT_PLAYER) LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex); - } - else if (graphicsInfo->paletteSlot == 10) - { + else if (graphicsInfo->paletteSlot == PALSLOT_NPC_SPECIAL) LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex); - } else - { PatchObjectPalette(GetObjectPaletteTag(paletteIndex), paletteIndex); - } UpdateSpritePaletteWithWeather(paletteIndex); } } diff --git a/src/field_fadetransition.c b/src/field_fadetransition.c index f2e8826b5..1c185885a 100644 --- a/src/field_fadetransition.c +++ b/src/field_fadetransition.c @@ -43,12 +43,12 @@ static bool8 WaitStairExitMovementFinished(s16 *speedX, s16 *speedY, s16 *offset void palette_bg_faded_fill_white(void) { - CpuFastFill16(RGB_WHITE, gPlttBufferFaded, 0x400); + CpuFastFill16(RGB_WHITE, gPlttBufferFaded, PLTT_SIZE); } void palette_bg_faded_fill_black(void) { - CpuFastFill16(RGB_BLACK, gPlttBufferFaded, 0x400); + CpuFastFill16(RGB_BLACK, gPlttBufferFaded, PLTT_SIZE); } void WarpFadeInScreen(void) diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index ba143e61b..f311e0f7a 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -394,7 +394,7 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId) case 0: windowId = AddWindow(&sWindowTemplate_WhiteoutText); gTasks[taskId].tWindowId = windowId; - Menu_LoadStdPalAt(0xF0); + Menu_LoadStdPalAt(BG_PLTT_ID(15)); FillWindowPixelBuffer(windowId, PIXEL_FILL(0)); PutWindowTilemap(windowId); CopyWindowToVram(windowId, COPYWIN_FULL); diff --git a/src/field_specials.c b/src/field_specials.c index c0685ec62..c2a9944cc 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -730,7 +730,7 @@ static const struct WindowTemplate sElevatorCurrentFloorWindowTemplate = { .tilemapTop = 1, .width = 7, .height = 4, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x008 }; @@ -1100,8 +1100,8 @@ void DrawElevatorCurrentFloorWindow(void) return; sElevatorCurrentFloorWindowId = AddWindow(&sElevatorCurrentFloorWindowTemplate); - LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, 0xD0); - DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 0xD); + LoadStdWindowGfx(sElevatorCurrentFloorWindowId, 0x21D, BG_PLTT_ID(13)); + DrawStdFrameWithCustomTileAndPalette(sElevatorCurrentFloorWindowId, FALSE, 0x21D, 13); AddTextPrinterParameterized(sElevatorCurrentFloorWindowId, FONT_NORMAL, gText_NowOn, 0, 2, 0xFF, NULL); floorname = sFloorNamePointers[gSpecialVar_0x8005]; strwidth = GetStringWidth(FONT_NORMAL, floorname, 0); @@ -2144,13 +2144,13 @@ void DoPokemonLeagueLightingEffect(void) { data[0] = sChampionRoomLightingTimers[0]; data[2] = 8; - LoadPalette(sChampionRoomLightingPalettes[0], 0x70, 0x20); + LoadPalette(sChampionRoomLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP); } else { data[0] = sEliteFourLightingTimers[0]; data[2] = 11; - LoadPalette(sEliteFourLightingPalettes[0], 0x70, 0x20); + LoadPalette(sEliteFourLightingPalettes[0], BG_PLTT_ID(7), PLTT_SIZE_4BPP); } data[1] = 0; ApplyGlobalTintToPaletteSlot(7, 1); @@ -2173,12 +2173,12 @@ static void Task_RunPokemonLeagueLightingEffect(u8 taskId) if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM)) { data[0] = sChampionRoomLightingTimers[data[1]]; - LoadPalette(sChampionRoomLightingPalettes[data[1]], 0x70, 0x20); + LoadPalette(sChampionRoomLightingPalettes[data[1]], BG_PLTT_ID(7), PLTT_SIZE_4BPP); } else { data[0] = sEliteFourLightingTimers[data[1]]; - LoadPalette(sEliteFourLightingPalettes[data[1]], 0x70, 0x20); + LoadPalette(sEliteFourLightingPalettes[data[1]], BG_PLTT_ID(7), PLTT_SIZE_4BPP); } ApplyGlobalTintToPaletteSlot(7, 1); } @@ -2190,13 +2190,9 @@ static void Task_CancelPokemonLeagueLightingEffect(u8 taskId) if (FlagGet(FLAG_TEMP_4) != FALSE) { if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(POKEMON_LEAGUE_CHAMPIONS_ROOM) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(POKEMON_LEAGUE_CHAMPIONS_ROOM)) - { - LoadPalette(sChampionRoomLightingPalettes[8], 0x70, 0x20); - } + LoadPalette(sChampionRoomLightingPalettes[8], BG_PLTT_ID(7), PLTT_SIZE_4BPP); else - { - LoadPalette(sEliteFourLightingPalettes[11], 0x70, 0x20); - } + LoadPalette(sEliteFourLightingPalettes[11], BG_PLTT_ID(7), PLTT_SIZE_4BPP); ApplyGlobalTintToPaletteSlot(7, 1); if (gPaletteFade.active) { @@ -2409,7 +2405,7 @@ static void Task_DoDeoxysTriangleInteraction(u8 taskId) static void MoveDeoxysObject(u8 num) { u8 mapObjId; - LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08); + LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4)); ApplyGlobalFieldPaletteTint(10); TryGetObjectEventIdByLocalIdAndMap(1, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &mapObjId); if (num == 0) @@ -2455,7 +2451,7 @@ void IncrementBirthIslandRockStepCount(void) void SetDeoxysTrianglePalette(void) { u8 num = VarGet(VAR_DEOXYS_INTERACTION_NUM); - LoadPalette(sDeoxysObjectPals[num], 0x1A0, 0x08); + LoadPalette(sDeoxysObjectPals[num], OBJ_PLTT_ID(10), PLTT_SIZEOF(4)); ApplyGlobalFieldPaletteTint(10); } diff --git a/src/field_tasks.c b/src/field_tasks.c index 5c60b98b9..ad32f45b3 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -15,7 +15,20 @@ #include "constants/metatile_labels.h" #include "constants/songs.h" -// TODO: Metatile IDs in this file +/* This file handles some persistent tasks that run in the overworld. + * - Task_RunTimeBasedEvents: Triggers ambient cries. In RSE, this also periodically updates local time and RTC events. + * - Task_RunPerStepCallback: Calls one of the functions in sPerStepCallbacks, listed below... + * . DummyPerStepCallback: Default, does nothing. Includes functionality from RS that was removed. + * . AshGrassPerStepCallback: Leftover from RS. Removes the ash from ash-covered grass that the player steps on. + * . IcefallCaveIcePerStepCallback: Cracks/breaks ice in Icefall Cave that the player steps on. + * . CrackedFloorPerStepCallback: Leftover from RS. Breaks cracked floors that the player steps on. + * + * NOTE: "PerStep" is perhaps misleading. One function in sPerStepCallbacks is called + * every frame while in the overworld by Task_RunPerStepCallback regardless of + * whether or not steps are being taken. However, nearly all of the functions in + * the table check if the player has moved from their previous position before + * doing anything else. + */ static void DummyPerStepCallback(u8 taskId); static void AshGrassPerStepCallback(u8 taskId); @@ -34,7 +47,8 @@ static const TaskFunc sPerStepCallbacks[] = [STEP_CB_CRACKED_FLOOR] = CrackedFloorPerStepCallback }; -static const u8 sIcefallCaveIceTileCoords[][2] = +// The positions of each map space with crackable ice in Icefall Cave. +static const u8 sIcefallCaveIceCoords[][2] = { { 8, 3 }, { 10, 5 }, @@ -47,56 +61,53 @@ static const u8 sIcefallCaveIceTileCoords[][2] = { 8, 14 } }; +#define tCallbackId data[0] + static void Task_RunPerStepCallback(u8 taskId) { - int idx = gTasks[taskId].data[0]; + int idx = gTasks[taskId].tCallbackId; sPerStepCallbacks[idx](taskId); } +#define tAmbientCryState data[1] +#define tAmbientCryDelay data[2] + +// RTC functionality from RS was removed here. static void Task_RunTimeBasedEvents(u8 taskId) { s16 *data = gTasks[taskId].data; - if (!ArePlayerFieldControlsLocked()) - { - if (!QL_IS_PLAYBACK_STATE) - { - UpdateAmbientCry(&data[1], &data[2]); - } - } + if (!ArePlayerFieldControlsLocked() && !QL_IS_PLAYBACK_STATE) + UpdateAmbientCry(&tAmbientCryState, &tAmbientCryDelay); } void SetUpFieldTasks(void) { if (!FuncIsActiveTask(Task_RunPerStepCallback)) { - u8 taskId = CreateTask(Task_RunPerStepCallback, 0x50); - gTasks[taskId].data[0] = 0; + u8 taskId = CreateTask(Task_RunPerStepCallback, 80); + gTasks[taskId].tCallbackId = STEP_CB_DUMMY; } if (!FuncIsActiveTask(Task_RunTimeBasedEvents)) - CreateTask(Task_RunTimeBasedEvents, 0x50); + CreateTask(Task_RunTimeBasedEvents, 80); } void ActivatePerStepCallback(u8 callbackId) { u8 taskId = FindTaskIdByFunc(Task_RunPerStepCallback); - if (taskId != 0xff) + if (taskId != TASK_NONE) { s32 i; s16 *data = gTasks[taskId].data; - for (i = 0; i < 16; i++) + for (i = 0; i < NUM_TASK_DATA; i++) data[i] = 0; - if (callbackId >= NELEMS(sPerStepCallbacks)) - { - data[0] = 0; - } + if (callbackId >= ARRAY_COUNT(sPerStepCallbacks)) + tCallbackId = STEP_CB_DUMMY; else - { - data[0] = callbackId; - } + tCallbackId = callbackId; } } @@ -106,29 +117,31 @@ void ResetFieldTasksArgs(void) s16 *data; taskId = FindTaskIdByFunc(Task_RunPerStepCallback); - if (taskId != 0xff) - { + if (taskId != TASK_NONE) data = gTasks[taskId].data; - } + taskId = FindTaskIdByFunc(Task_RunTimeBasedEvents); - if (taskId != 0xff) + if (taskId != TASK_NONE) { data = gTasks[taskId].data; - data[1] = 0; - data[2] = 0; + tAmbientCryState = 0; + tAmbientCryDelay = 0; } } +#undef tAmbientCryState +#undef tAmbientCryDelay + static void DummyPerStepCallback(u8 taskId) { } -static void MarkIcefallCaveCoordVisited(s16 x, s16 y) +static void MarkIcePuzzleCoordVisited(s16 x, s16 y) { - u8 i = 0; - for (; i < NELEMS(sIcefallCaveIceTileCoords); ++i) + u8 i; + for (i = 0; i < ARRAY_COUNT(sIcefallCaveIceCoords); i++) { - if (sIcefallCaveIceTileCoords[i][0] + 7 == x && sIcefallCaveIceTileCoords[i][1] + 7 == y) + if (sIcefallCaveIceCoords[i][0] + MAP_OFFSET == x && sIcefallCaveIceCoords[i][1] + MAP_OFFSET == y) { FlagSet(i + 1); break; @@ -138,118 +151,156 @@ static void MarkIcefallCaveCoordVisited(s16 x, s16 y) void SetIcefallCaveCrackedIceMetatiles(void) { - u8 i = 0; - for (; i < NELEMS(sIcefallCaveIceTileCoords); ++i) + u8 i; + for (i = 0; i < ARRAY_COUNT(sIcefallCaveIceCoords); i++) { if (FlagGet(i + 1) == TRUE) { - int x = sIcefallCaveIceTileCoords[i][0] + 7; - int y = sIcefallCaveIceTileCoords[i][1] + 7; + int x = sIcefallCaveIceCoords[i][0] + MAP_OFFSET; + int y = sIcefallCaveIceCoords[i][1] + MAP_OFFSET; MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce); } } } +#define tState data[1] +#define tPrevX data[2] +#define tPrevY data[3] +#define tIceX data[4] +#define tIceY data[5] +#define tDelay data[6] + static void IcefallCaveIcePerStepCallback(u8 taskId) { s16 x, y; u8 tileBehavior; u16 *iceStepCount; s16 *data = gTasks[taskId].data; - switch (data[1]) + switch (tState) { case 0: PlayerGetDestCoords(&x, &y); - data[2] = x; - data[3] = y; - data[1] = 1; + tPrevX = x; + tPrevY = y; + tState = 1; break; case 1: PlayerGetDestCoords(&x, &y); - if (x != data[2] || y != data[3]) + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + tileBehavior = MapGridGetMetatileBehaviorAt(x, y); + if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE) { - data[2] = x; - data[3] = y; - tileBehavior = MapGridGetMetatileBehaviorAt(x, y); - if (MetatileBehavior_IsThinIce(tileBehavior) == TRUE) - { - MarkIcefallCaveCoordVisited(x, y); - data[6] = 4; - data[1] = 2; - data[4] = x; - data[5] = y; - } - else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE) - { - data[6] = 4; - data[1] = 3; - data[4] = x; - data[5] = y; - } + // Thin ice, set it to cracked ice + MarkIcePuzzleCoordVisited(x, y); + tDelay = 4; + tState = 2; + tIceX = x; + tIceY = y; + } + else if (MetatileBehavior_IsCrackedIce(tileBehavior) == TRUE) + { + // Cracked ice, set it to broken ice + tDelay = 4; + tState = 3; + tIceX = x; + tIceY = y; } break; case 2: - if (data[6] != 0) + if (tDelay != 0) { - data[6]--; + tDelay--; } else { - x = data[4]; - y = data[5]; + // Crack ice + x = tIceX; + y = tIceY; PlaySE(SE_ICE_CRACK); MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce); CurrentMapDrawMetatileAt(x, y); - data[1] = 1; + tState = 1; } break; case 3: - if (data[6] != 0) + if (tDelay != 0) { - data[6]--; + tDelay--; } else { - x = data[4]; - y = data[5]; + // Break ice + x = tIceX; + y = tIceY; PlaySE(SE_ICE_BREAK); MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_IceHole); CurrentMapDrawMetatileAt(x, y); VarSet(VAR_TEMP_1, 1); - data[1] = 1; + tState = 1; } break; } } -// This is leftover from pokeruby and effectively a no-op. +#undef tState +#undef tPrevX +#undef tPrevY +#undef tIceX +#undef tIceY +#undef tDelay + +#define tPrevX data[1] +#define tPrevY data[2] + +// Unused. For some reason this was not dummied out like the other RSE-exclusive step callbacks. static void AshGrassPerStepCallback(u8 taskId) { s16 x, y; u16 *ashGatherCount; s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); - if (x != data[1] || y != data[2]) + + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + if (MetatileBehavior_IsAshGrass((u8)MapGridGetMetatileBehaviorAt(x, y))) { - data[1] = x; - data[2] = y; - if (MetatileBehavior_IsAshGrass((u8)MapGridGetMetatileBehaviorAt(x, y))) - { - if (MapGridGetMetatileIdAt(x, y) == 0x20a) - StartAshFieldEffect(x, y, 0x212, 4); - else - StartAshFieldEffect(x, y, 0x206, 4); - } + // Remove ash from grass + if (MapGridGetMetatileIdAt(x, y) == METATILE_Fallarbor_AshGrass) + StartAshFieldEffect(x, y, METATILE_Fallarbor_NormalGrass, 4); + else + StartAshFieldEffect(x, y, METATILE_Lavaridge_NormalGrass, 4); } } +#undef tPrevX +#undef tPrevY + +// Unused. For some reason these were not dummied out like the other RSE-exclusive step callbacks. static void SetCrackedFloorHoleMetatile(s16 x, s16 y) { - MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == 0x22f ? 0x206 : 0x237); + MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == METATILE_RSCave_CrackedFloor ? METATILE_RSCave_CrackedFloor_Hole : METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole); CurrentMapDrawMetatileAt(x, y); } -// This is leftover from pokeruby and effectively a no-op. +#define tPrevX data[2] +#define tPrevY data[3] +#define tFloor1Delay data[4] +#define tFloor1X data[5] +#define tFloor1Y data[6] +#define tFloor2Delay data[7] +#define tFloor2X data[8] +#define tFloor2Y data[9] + +// Unused. See above. static void CrackedFloorPerStepCallback(u8 taskId) { s16 x, y; @@ -257,40 +308,44 @@ static void CrackedFloorPerStepCallback(u8 taskId) s16 *data = gTasks[taskId].data; PlayerGetDestCoords(&x, &y); behavior = MapGridGetMetatileBehaviorAt(x, y); - if (data[4] != 0 && (--data[4]) == 0) - SetCrackedFloorHoleMetatile(data[5], data[6]); - if (data[7] != 0 && (--data[7]) == 0) - SetCrackedFloorHoleMetatile(data[8], data[9]); + // Update up to 2 previous cracked floor spaces + if (tFloor1Delay != 0 && (--tFloor1Delay) == 0) + SetCrackedFloorHoleMetatile(tFloor1X, tFloor1Y); + if (tFloor2Delay != 0 && (--tFloor2Delay) == 0) + SetCrackedFloorHoleMetatile(tFloor2X, tFloor2Y); - if ((x != data[2] || y != data[3])) + // End if player hasn't moved + if (x == tPrevX && y == tPrevY) + return; + + tPrevX = x; + tPrevY = y; + if (MetatileBehavior_IsCrackedFloor(behavior)) { - data[2] = x; - data[3] = y; - if (MetatileBehavior_IsCrackedFloor(behavior)) - { - if (GetPlayerSpeed() != 4) - VarSet(VAR_ICE_STEP_COUNT, 0); + if (GetPlayerSpeed() != PLAYER_SPEED_FASTEST) + VarSet(VAR_ICE_STEP_COUNT, 0); // this var does double duty - if (data[4] == 0) - { - data[4] = 3; - data[5] = x; - data[6] = y; - } - else if (data[7] == 0) - { - data[7] = 3; - data[8] = x; - data[9] = y; - } + if (tFloor1Delay == 0) + { + tFloor1Delay = 3; + tFloor1X = x; + tFloor1Y = y; + } + else if (tFloor2Delay == 0) + { + tFloor2Delay = 3; + tFloor2X = x; + tFloor2Y = y; } } } -// Unused -static void SetHasPokedexAndPokemon(void) -{ - FlagSet(FLAG_SYS_POKEDEX_GET); - FlagSet(FLAG_SYS_POKEMON_GET); -} +#undef tPrevX +#undef tPrevY +#undef tFloor1Delay +#undef tFloor1X +#undef tFloor1Y +#undef tFloor2Delay +#undef tFloor2X +#undef tFloor2Y diff --git a/src/field_weather.c b/src/field_weather.c index e088f22df..56cf6505b 100644 --- a/src/field_weather.c +++ b/src/field_weather.c @@ -146,7 +146,7 @@ void StartWeather(void) if (!FuncIsActiveTask(Task_WeatherMain)) { u8 index = AllocSpritePalette(0x1200); - CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[0x100 + index * 16], 32); + CpuCopy32(gDefaultWeatherSpritePalette, &gPlttBufferUnfaded[OBJ_PLTT_ID(index)], PLTT_SIZE_4BPP); ApplyGlobalFieldPaletteTint(index); BuildGammaShiftTables(); gWeatherPtr->altGammaSpritePalIndex = index; @@ -449,7 +449,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) if (gammaIndex > 0) { gammaIndex--; - palOffset = startPalIndex * 16; + palOffset = PLTT_ID(startPalIndex); numPalettes += startPalIndex; curPalIndex = startPalIndex; @@ -459,7 +459,7 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) { // No palette change. - CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16)); + CpuFastCopy(&gPlttBufferUnfaded[palOffset], &gPlttBufferFaded[palOffset], PLTT_SIZE_4BPP); palOffset += 16; } else @@ -489,37 +489,11 @@ static void ApplyGammaShift(u8 startPalIndex, u8 numPalettes, s8 gammaIndex) { // A negative gammIndex value means that the blending will come from the special Drought weather's palette tables. // Dummied out in FRLG - - // gammaIndex = -gammaIndex - 1; - // palOffset = startPalIndex * 16; - // numPalettes += startPalIndex; - // curPalIndex = startPalIndex; - // - // CpuFastCopy(gPlttBufferUnfaded + palOffset, gPlttBufferFaded + palOffset, 16 * sizeof(u16)); - // while (curPalIndex < numPalettes) - // { - // if (sPaletteGammaTypes[curPalIndex] == GAMMA_NONE) - // { - // // No palette change. - // palOffset += 16; - // } - // else - // { - // - // for (i = 0; i < 16; i++) - // { - // gPlttBufferFaded[palOffset] = sDroughtWeatherColors[gammaIndex][DROUGHT_COLOR_INDEX(gPlttBufferUnfaded[palOffset])]; - // palOffset++; - // } - // } - // - // curPalIndex++; - // } } else { // No palette blending. - CpuFastCopy(gPlttBufferUnfaded + startPalIndex * 16, gPlttBufferFaded + startPalIndex * 16, numPalettes * 16 * sizeof(u16)); + CpuFastCopy(&gPlttBufferUnfaded[PLTT_ID(startPalIndex)], &gPlttBufferFaded[PLTT_ID(startPalIndex)], numPalettes * PLTT_SIZE_4BPP); } } @@ -533,7 +507,7 @@ static void ApplyGammaShiftWithBlend(u8 startPalIndex, u8 numPalettes, s8 gammaI u8 gBlend = color.g; u8 bBlend = color.b; - palOffset = startPalIndex * 16; + palOffset = PLTT_ID(startPalIndex); numPalettes += startPalIndex; gammaIndex--; curPalIndex = startPalIndex; @@ -641,8 +615,8 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor) { if (LightenSpritePaletteInFog(curPalIndex)) { - u16 palEnd = (curPalIndex + 1) * 16; - u16 palOffset = curPalIndex * 16; + u16 palEnd = PLTT_ID(curPalIndex + 1); + u16 palOffset = PLTT_ID(curPalIndex); while (palOffset < palEnd) { @@ -665,7 +639,7 @@ static void ApplyFogBlend(u8 blendCoeff, u16 blendColor) } else { - BlendPalette(curPalIndex * 16, 16, blendCoeff, blendColor); + BlendPalette(PLTT_ID(curPalIndex), 16, blendCoeff, blendColor); } } } @@ -829,7 +803,7 @@ void FadeSelectedPals(u8 mode, s8 delay, u32 selectedPalettes) if (fadeOut) { if (useWeatherPal) - CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); + CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE); BeginNormalPaletteFade(selectedPalettes, delay, 0, 16, fadeColor); gWeatherPtr->palProcessingState = WEATHER_PAL_STATE_SCREEN_FADING_OUT; @@ -868,14 +842,14 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex) { if (gWeatherPtr->currWeather == WEATHER_FOG_HORIZONTAL) MarkFogSpritePalToLighten(paletteIndex); - paletteIndex *= 16; + paletteIndex = PLTT_ID(paletteIndex); for (i = 0; i < 16; i++) gPlttBufferFaded[paletteIndex + i] = gWeatherPtr->fadeDestColor; } break; case WEATHER_PAL_STATE_SCREEN_FADING_OUT: - paletteIndex *= 16; - CpuFastCopy(gPlttBufferFaded + paletteIndex, gPlttBufferUnfaded + paletteIndex, 32); + paletteIndex = PLTT_ID(paletteIndex); + CpuFastCopy(&gPlttBufferFaded[paletteIndex], &gPlttBufferUnfaded[paletteIndex], PLTT_SIZE_4BPP); BlendPalette(paletteIndex, 16, gPaletteFade.y, gPaletteFade.blendColor); break; // WEATHER_PAL_STATE_CHANGING_WEATHER @@ -887,7 +861,7 @@ void UpdateSpritePaletteWithWeather(u8 spritePaletteIndex) } else { - paletteIndex *= 16; + paletteIndex = PLTT_ID(paletteIndex); BlendPalette(paletteIndex, 16, 12, RGB(28, 31, 28)); } break; @@ -909,7 +883,7 @@ static u8 IsWeatherFadingIn(void) void LoadCustomWeatherSpritePalette(const u16 *palette) { - LoadPalette(palette, 0x100 + gWeatherPtr->weatherPicSpritePalIndex * 16, 32); + LoadPalette(palette, OBJ_PLTT_ID(gWeatherPtr->weatherPicSpritePalIndex), PLTT_SIZE_4BPP); UpdateSpritePaletteWithWeather(gWeatherPtr->weatherPicSpritePalIndex); } diff --git a/src/fieldmap.c b/src/fieldmap.c index e10f1af11..bd69c0533 100644 --- a/src/fieldmap.c +++ b/src/fieldmap.c @@ -845,19 +845,19 @@ static void ApplyGlobalTintToPaletteEntries(u16 offset, u16 size) case QL_TINT_NONE: return; case QL_TINT_GRAYSCALE: - TintPalette_GrayScale(gPlttBufferUnfaded + offset, size); + TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size); break; case QL_TINT_SEPIA: - TintPalette_SepiaTone(gPlttBufferUnfaded + offset, size); + TintPalette_SepiaTone(&gPlttBufferUnfaded[offset], size); break; case QL_TINT_BACKUP_GRAYSCALE: QuestLog_BackUpPalette(offset, size); - TintPalette_GrayScale(gPlttBufferUnfaded + offset, size); + TintPalette_GrayScale(&gPlttBufferUnfaded[offset], size); break; default: return; } - CpuCopy16(gPlttBufferUnfaded + offset, gPlttBufferFaded + offset, size * sizeof(u16)); + CpuCopy16(&gPlttBufferUnfaded[offset], &gPlttBufferFaded[offset], PLTT_SIZEOF(size)); } void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count) @@ -867,19 +867,19 @@ void ApplyGlobalTintToPaletteSlot(u8 slot, u8 count) case QL_TINT_NONE: return; case QL_TINT_GRAYSCALE: - TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16); + TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16); break; case QL_TINT_SEPIA: - TintPalette_SepiaTone(gPlttBufferUnfaded + slot * 16, count * 16); + TintPalette_SepiaTone(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16); break; case QL_TINT_BACKUP_GRAYSCALE: - QuestLog_BackUpPalette(slot * 16, count * 16); - TintPalette_GrayScale(gPlttBufferUnfaded + slot * 16, count * 16); + QuestLog_BackUpPalette(BG_PLTT_ID(slot), count * 16); + TintPalette_GrayScale(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], count * 16); break; default: return; } - CpuFastCopy(gPlttBufferUnfaded + slot * 16, gPlttBufferFaded + slot * 16, count * 16 * sizeof(u16)); + CpuFastCopy(&gPlttBufferUnfaded[BG_PLTT_ID(slot)], &gPlttBufferFaded[BG_PLTT_ID(slot)], count * PLTT_SIZE_4BPP); } static void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u16 size) @@ -890,8 +890,8 @@ static void LoadTilesetPalette(struct Tileset const *tileset, u16 destOffset, u1 { if (tileset->isSecondary == FALSE) { - LoadPalette(&black, destOffset, 2); - LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - 2); + LoadPalette(&black, destOffset, PLTT_SIZEOF(1)); + LoadPalette(tileset->palettes[0] + 1, destOffset + 1, size - PLTT_SIZEOF(1)); ApplyGlobalTintToPaletteEntries(destOffset + 1, (size - 2) >> 1); } else if (tileset->isSecondary == TRUE) @@ -924,12 +924,12 @@ void CopySecondaryTilesetToVramUsingHeap(const struct MapLayout *mapLayout) static void LoadPrimaryTilesetPalette(const struct MapLayout *mapLayout) { - LoadTilesetPalette(mapLayout->primaryTileset, 0, NUM_PALS_IN_PRIMARY * 16 * 2); + LoadTilesetPalette(mapLayout->primaryTileset, BG_PLTT_ID(0), NUM_PALS_IN_PRIMARY * PLTT_SIZE_4BPP); } void LoadSecondaryTilesetPalette(const struct MapLayout *mapLayout) { - LoadTilesetPalette(mapLayout->secondaryTileset, NUM_PALS_IN_PRIMARY * 16, (NUM_PALS_TOTAL - NUM_PALS_IN_PRIMARY) * 16 * 2); + LoadTilesetPalette(mapLayout->secondaryTileset, BG_PLTT_ID(NUM_PALS_IN_PRIMARY), (NUM_PALS_TOTAL - NUM_PALS_IN_PRIMARY) * PLTT_SIZE_4BPP); } void CopyMapTilesetsToVram(struct MapLayout const *mapLayout) diff --git a/src/fldeff_cut.c b/src/fldeff_cut.c index 96c5c1db5..64171bb3f 100644 --- a/src/fldeff_cut.c +++ b/src/fldeff_cut.c @@ -79,7 +79,7 @@ static const struct OamData sOamData_FldEff_CutGrass = { .size = SPRITE_SIZE(8x8), .tileNum = 0x001, .priority = 1, - .paletteNum = 0x1, + .paletteNum = 1, .affineParam = 0 }; diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c index 352ef7bc8..c9918e638 100644 --- a/src/fldeff_flash.c +++ b/src/fldeff_flash.c @@ -154,11 +154,13 @@ static const struct FlashStruct sTransitionTypes[] = { }, {0} }; -static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/field_effects/flash_white.gbapal"); -static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/field_effects/flash_black.gbapal"); -static const u16 sCaveTransitionPalette_Gradient[] = INCBIN_U16("graphics/field_effects/flash_gradient.gbapal"); -static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/field_effects/flash_effect_map.bin.lz"); -static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/field_effects/flash_effect_tiles.4bpp.lz"); +static const u16 sCaveTransitionPalette_White[] = INCBIN_U16("graphics/cave_transition/white.gbapal"); +static const u16 sCaveTransitionPalette_Black[] = INCBIN_U16("graphics/cave_transition/black.gbapal"); + +static const u16 sCaveTransitionPalette_Enter[] = INCBIN_U16("graphics/cave_transition/enter.gbapal"); +static const u16 sCaveTransitionPalette_Exit[] = INCBIN_U16("graphics/cave_transition/exit.gbapal"); +static const u32 sCaveTransitionTilemap[] = INCBIN_U32("graphics/cave_transition/tilemap.bin.lz"); +static const u32 sCaveTransitionTiles[] = INCBIN_U32("graphics/cave_transition/tiles.4bpp.lz"); bool8 SetUpFieldMove_Flash(void) { @@ -299,8 +301,8 @@ static void Task_FlashTransition_Exit_1(u8 taskId) SetGpuReg(REG_OFFSET_DISPCNT, 0); LZ77UnCompVram(sCaveTransitionTiles, (void *)BG_CHAR_ADDR(3)); LZ77UnCompVram(sCaveTransitionTilemap, (void *)BG_SCREEN_ADDR(31)); - LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); - LoadPalette(sCaveTransitionPalette_Gradient + 8, 0xE0, 0x10); + LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White)); + LoadPalette(sCaveTransitionPalette_Exit, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_Exit)); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG0 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD); SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDY, 0); @@ -328,17 +330,17 @@ static void Task_FlashTransition_Exit_2(u8 taskId) static void Task_FlashTransition_Exit_3(u8 taskId) { - u16 r4; + u16 count; SetGpuReg(REG_OFFSET_BLDALPHA, (16 << 8) + 16); - r4 = gTasks[taskId].data[2]; - if (r4 < 8) + count = gTasks[taskId].data[2]; + if (count < 8) { gTasks[taskId].data[2]++; - LoadPalette(sCaveTransitionPalette_Gradient + 8 + r4, 0xE0, 0x10 - 2 * r4); + LoadPalette(&sCaveTransitionPalette_Exit[count], BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_Exit) - PLTT_SIZEOF(count)); } else { - LoadPalette(sCaveTransitionPalette_White, 0x00, 0x20); + LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_White)); gTasks[taskId].func = Task_FlashTransition_Exit_4; gTasks[taskId].data[2] = 8; } @@ -372,8 +374,8 @@ static void Task_FlashTransition_Enter_1(u8 taskId) SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(3) | BGCNT_SCREENBASE(31)); SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_OBJ_ON); - LoadPalette(sCaveTransitionPalette_White, 0xE0, 0x20); - LoadPalette(sCaveTransitionPalette_Black, 0, 0x20); + LoadPalette(sCaveTransitionPalette_White, BG_PLTT_ID(14), sizeof(sCaveTransitionPalette_White)); + LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black)); gTasks[taskId].func = Task_FlashTransition_Enter_2; gTasks[taskId].data[0] = 16; gTasks[taskId].data[1] = 0; @@ -382,13 +384,12 @@ static void Task_FlashTransition_Enter_1(u8 taskId) static void Task_FlashTransition_Enter_2(u8 taskId) { - u16 r4; - r4 = gTasks[taskId].data[2]; - if (r4 < 16) + u16 count = gTasks[taskId].data[2]; + if (count < 16) { gTasks[taskId].data[2]++; gTasks[taskId].data[2]++; - LoadPalette(&sCaveTransitionPalette_Gradient[16 - (r4 + 1)], 0xE0, 2 * (r4 + 1)); + LoadPalette(&sCaveTransitionPalette_Enter[15 - count], BG_PLTT_ID(14), PLTT_SIZEOF(count + 1)); } else { @@ -408,7 +409,7 @@ static void Task_FlashTransition_Enter_3(u8 taskId) } else { - LoadPalette(sCaveTransitionPalette_Black, 0x00, 0x20); + LoadPalette(sCaveTransitionPalette_Black, BG_PLTT_ID(0), sizeof(sCaveTransitionPalette_Black)); SetMainCallback2(gMain.savedCallback); } } diff --git a/src/graphics.c b/src/graphics.c index 04f431469..8e606ca3f 100644 --- a/src/graphics.c +++ b/src/graphics.c @@ -1078,8 +1078,8 @@ const u32 gStatusPal_Icons[] = INCBIN_U32("graphics/interface/status_icons.gbapa const u32 gBagBg_Gfx[] = INCBIN_U32("graphics/item_menu/bg.4bpp.lz"); const u32 gBagBg_Tilemap[] = INCBIN_U32("graphics/item_menu/bg.bin.lz"); const u32 gBagBg_ItemPC_Tilemap[] = INCBIN_U32("graphics/item_menu/bg_item_pc.bin.lz"); -const u32 gBagBgPalette[] = INCBIN_U32("graphics/item_menu/bag_pal1.gbapal.lz"); // palette 1 (Boy + misc Pal) -const u32 gBagBgPalette_FemaleOverride[] = INCBIN_U32("graphics/item_menu/bag_pal2.gbapal.lz"); // palette 2 (Girl) +const u32 gBagBgPalette[] = INCBIN_U32("graphics/item_menu/bg.gbapal.lz"); // palette 1 (Boy + misc Pal) +const u32 gBagBgPalette_FemaleOverride[] = INCBIN_U32("graphics/item_menu/bg_female.gbapal.lz"); // palette 2 (Girl) const u32 gBagMale_Gfx[] = INCBIN_U32("graphics/interface/bag_male.4bpp.lz"); const u32 gBagFemale_Gfx[] = INCBIN_U32("graphics/interface/bag_female.4bpp.lz"); @@ -1137,9 +1137,9 @@ const u32 gGhostFrontPic[] = INCBIN_U32("graphics/pokemon/ghost/front.4bpp.lz"); #include "data/graphics/mail.h" -const u16 gFireRedMenuElements1_Pal[] = INCBIN_U16("graphics/interface/dex_caught_pokeball.gbapal"); -const u16 gFireRedMenuElements2_Pal[] = INCBIN_U16("graphics/interface/pokemon_types.gbapal"); -const u8 gFireRedMenuElements_Gfx[] = INCBIN_U8("graphics/interface/dex_caught_pokeball_and_pokemon_types.4bpp"); +const u16 gMenuInfoElements1_Pal[] = INCBIN_U16("graphics/interface/dex_caught_pokeball.gbapal"); +const u16 gMenuInfoElements2_Pal[] = INCBIN_U16("graphics/interface/pokemon_types.gbapal"); +const u8 gMenuInfoElements_Gfx[] = INCBIN_U8("graphics/interface/menu_info.4bpp"); const u16 gMoveRelearner_Pal[] = INCBIN_U16("graphics/interface/learn_move.gbapal"); const u32 gMoveRelearner_Gfx[] = INCBIN_U32("graphics/interface/learn_move.4bpp.lz"); @@ -1178,10 +1178,10 @@ const u32 gNamingScreenUnderscore_Gfx[] = INCBIN_U32("graphics/naming_screen const u8 gTMCaseHM_Gfx[] = INCBIN_U8("graphics/tm_case/hm.4bpp"); -const u16 gKantoTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star.gbapal"); -const u32 gKantoTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card.4bpp.lz"); -const u16 gHoennTrainerCard_Pal[] = INCBIN_U16("graphics/trainer_card/0star_em.gbapal"); -const u32 gHoennTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/card_em.4bpp.lz"); +const u16 gKantoTrainerCardBlue_Pal[] = INCBIN_U16("graphics/trainer_card/blue.gbapal"); +const u32 gKantoTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/tiles.4bpp.lz"); +const u16 gHoennTrainerCardGreen_Pal[] = INCBIN_U16("graphics/trainer_card/rse/green.gbapal"); +const u32 gHoennTrainerCard_Gfx[] = INCBIN_U32("graphics/trainer_card/rse/tiles.4bpp.lz"); const u16 gEasyChatWindow_Pal[] = INCBIN_U16("graphics/easy_chat/window.gbapal"); const u32 gEasyChatWindow_Gfx[] = INCBIN_U32("graphics/easy_chat/window.4bpp.lz"); @@ -1227,7 +1227,7 @@ const u16 gTradeUnused_Tilemap[] = INCBIN_U16("graphics/trade/unused.bin"); const u16 gTradeMenu_Tilemap[] = INCBIN_U16("graphics/trade/menu.bin"); const u16 gTradeMenuMonBox_Tilemap[] = INCBIN_U16("graphics/trade/menu_mon_box.bin"); -const u16 gFameCheckerBgPals[] = INCBIN_U16("graphics/fame_checker/bg.gbapal"); +const u16 gFameCheckerBgPals[][16] = INCBIN_U16("graphics/fame_checker/bg.gbapal"); const u16 gFameCheckerBgTiles[] = INCBIN_U16("graphics/fame_checker/bg.4bpp"); const u16 gFameCheckerBg3Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap3.bin"); const u16 gFameCheckerBg2Tilemap[] = INCBIN_U16("graphics/fame_checker/tilemap2.bin"); diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index d408b528e..8b4ec8763 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -620,7 +620,7 @@ static void Task_Hof_SpawnPlayerPic(u8 taskId) ShowBg(3); gTasks[taskId].data[4] = CreateTrainerPicSprite(PlayerGenderToFrontTrainerPicId(gSaveBlock2Ptr->playerGender, TRUE), TRUE, 0x78, 0x48, 6, 0xFFFF); AddWindow(&sWindowTemplate); - LoadStdWindowGfx(1, 0x21D, 0xD0); + LoadStdWindowGfx(1, 0x21D, BG_PLTT_ID(13)); gTasks[taskId].data[3] = 120; gTasks[taskId].func = Task_Hof_WaitAndPrintPlayerInfo; } @@ -657,7 +657,7 @@ static void Task_Hof_ExitOnKeyPressed(u8 taskId) static void Task_Hof_HandlePaletteOnExit(u8 taskId) { - CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_BUFFER_SIZE * sizeof(u16)); + CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE); BeginNormalPaletteFade(PALETTES_ALL, 8, 0, 16, RGB_BLACK); gTasks[taskId].func = Task_Hof_HandleExit; } @@ -938,7 +938,7 @@ static void Task_HofPC_HandlePaletteOnExit(u8 taskId) { struct HallofFameTeam* fameTeam; - CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); + CpuCopy16(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE); BeginPCScreenEffect_TurnOff(0, 0, 0); gTasks[taskId].func = Task_HofPC_HandleExit; } @@ -1085,7 +1085,7 @@ static void HallOfFame_PrintPlayerInfo(u8 unused1, u8 unused2) FillWindowPixelBuffer(1, PIXEL_FILL(1)); PutWindowTilemap(1); - DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 0xD); + DrawStdFrameWithCustomTileAndPalette(1, FALSE, 0x21D, 13); AddTextPrinterParameterized4(1, FONT_NORMAL, 4, 3, 0, 0, sTextColors[1], 0, gText_Name); AddTextPrinterParameterized3(1, FONT_NORMAL, textWidth - GetStringWidth(FONT_NORMAL, gSaveBlock2Ptr->playerName, 0), 3, sTextColors[1], 0, gSaveBlock2Ptr->playerName); @@ -1148,7 +1148,7 @@ static void ClearVramOamPltt_LoadHofPal(void) DmaFill16(3, 0, plttOffset, plttSize); ResetPaletteFade(); - LoadPalette(sHallOfFame_Pal, 0, 0x20); + LoadPalette(sHallOfFame_Pal, BG_PLTT_ID(0), sizeof(sHallOfFame_Pal)); } static void HofInit_ResetGpuBuffersAndLoadConfettiGfx(void) diff --git a/src/intro.c b/src/intro.c index f3621b143..3d0caef72 100644 --- a/src/intro.c +++ b/src/intro.c @@ -405,7 +405,7 @@ static const struct WindowTemplate sWindowTemplates[WIN_COUNT + 1] = { .tilemapTop = 4, .width = 18, .height = 9, - .paletteNum = 0xD, + .paletteNum = 13, .baseBlock = 0x000 }, [WIN_COUNT] = DUMMY_WIN_TEMPLATE @@ -930,7 +930,7 @@ static bool8 SetUpCopyrightScreen(void) DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill16(3, 0, PLTT + sizeof(vu16), PLTT_SIZE - sizeof(vu16)); ResetPaletteFade(); - LoadCopyrightGraphics(0 * BG_CHAR_SIZE, 7 * BG_SCREEN_SIZE, 0); + LoadCopyrightGraphics(0 * BG_CHAR_SIZE, 7 * BG_SCREEN_SIZE, BG_PLTT_ID(0)); ScanlineEffect_Stop(); ResetTasks(); ResetSpriteData(); @@ -1025,15 +1025,15 @@ static void CB2_SetUpIntro(void) DmaFill16(3, 0, VRAM, VRAM_SIZE); DmaFill32(3, 0, OAM, OAM_SIZE); DmaFill16(3, 0, PLTT, PLTT_SIZE); - FillPalette(RGB_BLACK, 0, 0x400); + FillPalette(RGB_BLACK, 0, PLTT_SIZE); ResetBgsAndClearDma3BusyFlags(FALSE); InitBgsFromTemplates(0, sBgTemplates_GameFreakScene, ARRAY_COUNT(sBgTemplates_GameFreakScene)); break; case 1: - LoadPalette(sGameFreakBg_Pal, 0x00, sizeof(sGameFreakBg_Pal)); + LoadPalette(sGameFreakBg_Pal, BG_PLTT_ID(0), sizeof(sGameFreakBg_Pal)); DecompressAndCopyTileDataToVram(BG_GF_BACKGROUND, sGameFreakBg_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_GF_BACKGROUND, sGameFreakBg_Map, 0, 0, 1); - LoadPalette(sGameFreakLogo_Pal, 0xD0, sizeof(sGameFreakLogo_Pal)); + LoadPalette(sGameFreakLogo_Pal, BG_PLTT_ID(13), sizeof(sGameFreakLogo_Pal)); break; case 2: if (!FreeTempTileDataBuffersIfPossible()) @@ -1113,7 +1113,7 @@ static void IntroCB_Init(struct IntroSequenceData * this) InitWindows(sWindowTemplates); LZ77UnCompWram(sGameFreakText_Gfx, this->gameFreakTextGfx); LZ77UnCompWram(sGameFreakLogo_Gfx, this->gameFreakLogoGfx); - FillBgTilemapBufferRect(BG_GF_TEXT_LOGO, 0x000, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(BG_GF_TEXT_LOGO, 0x000, 0, 0, 32, 32, 17); FillWindowPixelBuffer(WIN_GF_TEXT_LOGO, PIXEL_FILL(0)); BlitBitmapToWindow(WIN_GF_TEXT_LOGO, this->gameFreakTextGfx, 0, 40, 144, 16); PutWindowTilemap(WIN_GF_TEXT_LOGO); @@ -1293,8 +1293,8 @@ static void IntroCB_Scene1(struct IntroSequenceData * this) { case 0: SetVBlankCallback(NULL); - LoadPalette(sScene1_Grass_Pal, 16 * PALSLOT_SCENE1_GRASS, sizeof(sScene1_Grass_Pal)); - LoadPalette(sScene1_Bg_Pal, 16 * PALSLOT_SCENE1_BG, sizeof(sScene1_Bg_Pal)); + LoadPalette(sScene1_Grass_Pal, BG_PLTT_ID(PALSLOT_SCENE1_GRASS), sizeof(sScene1_Grass_Pal)); + LoadPalette(sScene1_Bg_Pal, BG_PLTT_ID(PALSLOT_SCENE1_BG), sizeof(sScene1_Bg_Pal)); BlendPalettes((1 << PALSLOT_SCENE1_GRASS) | (1 << PALSLOT_SCENE1_BG), 16, RGB_WHITE); InitBgsFromTemplates(0, sBgTemplates_Scene1, ARRAY_COUNT(sBgTemplates_Scene1)); DecompressAndCopyTileDataToVram(BG_SCENE1_BACKGROUND, sScene1_Bg_Gfx, 0, 0, 0); @@ -1439,9 +1439,9 @@ static void IntroCB_Scene2(struct IntroSequenceData * this) if (!FreeTempTileDataBuffersIfPossible()) { SetVBlankCallback(NULL); - LoadPalette(sScene2_Bg_Pal, 0x10, sizeof(sScene2_Bg_Pal)); - LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal)); - LoadPalette(sScene2_NidorinoClose_Pal, 0x60, sizeof(sScene2_NidorinoClose_Pal)); + LoadPalette(sScene2_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene2_Bg_Pal)); + LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal)); + LoadPalette(sScene2_NidorinoClose_Pal, BG_PLTT_ID(6), sizeof(sScene2_NidorinoClose_Pal)); BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE); DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_SCENE2_PLANTS, sScene2_Plants_Map, 0, 0, 1); @@ -1553,8 +1553,8 @@ static void IntroCB_Scene3_Entrance(struct IntroSequenceData * this) switch (this->state) { case 0: - LoadPalette(sScene3_Bg_Pal, 0x10, sizeof(sScene3_Bg_Pal)); - LoadPalette(sGengar_Pal, 0x50, sizeof(sGengar_Pal)); + LoadPalette(sScene3_Bg_Pal, BG_PLTT_ID(1), sizeof(sScene3_Bg_Pal)); + LoadPalette(sGengar_Pal, BG_PLTT_ID(5), sizeof(sGengar_Pal)); BlendPalettes(PALETTES_ALL & ~1, 16, RGB_WHITE); InitBgsFromTemplates(0, sBgTemplates_Scene3, ARRAY_COUNT(sBgTemplates_Scene3)); DecompressAndCopyTileDataToVram(BG_SCENE3_BACKGROUND, sScene3_Bg_Gfx, 0, 0, 0); @@ -1831,7 +1831,7 @@ static void IntroCB_Scene3_Fight(struct IntroSequenceData * this) case 13: if (++this->timer > 8) { - CpuFill16(RGB_WHITE, gPlttBufferUnfaded + 16, 64); + CpuFill16(RGB_WHITE, &gPlttBufferUnfaded[BG_PLTT_ID(1)], 2 * PLTT_SIZE_4BPP); BeginNormalPaletteFade(PALETTES_ALL & ~1, -2, 0, 16, RGB_BLACK); this->state++; } @@ -1916,7 +1916,7 @@ static void IntroCB_ExitToTitleScreen(struct IntroSequenceData * this) switch (this->state) { case 0: - FillPalette(RGB_BLACK, 0, 0x400); + FillPalette(RGB_BLACK, 0, PLTT_SIZE); this->state++; break; case 1: diff --git a/src/item_menu.c b/src/item_menu.c index 1f7530d06..b0c288383 100644 --- a/src/item_menu.c +++ b/src/item_menu.c @@ -110,7 +110,7 @@ static void BeginMovingItemInPocket(u8 taskId, s16 itemIndex); static void Task_MoveItemInPocket_HandleInput(u8 taskId); static void ExecuteMoveItemInPocket(u8 taskId, u32 itemIndex); static void AbortMovingItemInPocket(u8 taskId, u32 itemIndex); -static void CopyBagListBgTileRowToTilemapBuffer(u8 a0); +static void DrawItemListRow(u8 row); static void Task_ItemContext_FieldOrBattle(u8 taskId); static void Task_FieldItemContextMenuHandleInput(u8 taskId); static void Task_ItemMenuAction_Use(u8 taskId); @@ -186,20 +186,10 @@ static const u8 *const sPocketNames[] = { gText_PokeBalls2 }; -static const u16 sBagListBgTiles[][18] = { - INCBIN_U16("graphics/item_menu/bagmap_0.bin"), - INCBIN_U16("graphics/item_menu/bagmap_1.bin"), - INCBIN_U16("graphics/item_menu/bagmap_2.bin"), - INCBIN_U16("graphics/item_menu/bagmap_3.bin"), - INCBIN_U16("graphics/item_menu/bagmap_4.bin"), - INCBIN_U16("graphics/item_menu/bagmap_5.bin"), - INCBIN_U16("graphics/item_menu/bagmap_6.bin"), - INCBIN_U16("graphics/item_menu/bagmap_7.bin"), - INCBIN_U16("graphics/item_menu/bagmap_8.bin"), - INCBIN_U16("graphics/item_menu/bagmap_9.bin"), - INCBIN_U16("graphics/item_menu/bagmap_A.bin"), - INCBIN_U16("graphics/item_menu/bagmap_B.bin") -}; +#define LIST_TILES_WIDTH 18 +#define LIST_TILES_HEIGHT 12 + +static const u16 sItemListTilemap[LIST_TILES_WIDTH * LIST_TILES_HEIGHT] = INCBIN_U16("graphics/item_menu/list.bin"); static const struct MenuAction sItemMenuContextActions[] = { [ITEMMENUACTION_USE] = {gOtherText_Use, {.void_u8 = Task_ItemMenuAction_Use}}, @@ -310,6 +300,10 @@ static const struct ScrollArrowsTemplate sPocketSwitchArrowPairTemplate = { static const u8 sBlit_SelectButton[] = INCBIN_U8("graphics/interface/select_button.4bpp"); +#define tSwitchDir data[11] +#define tSwitchCounter data[12] +#define tSwitchState data[13] + void GoToBagMenu(u8 location, u8 pocket, MainCallback bagCallback) { u8 i; @@ -328,8 +322,8 @@ void GoToBagMenu(u8 location, u8 pocket, MainCallback bagCallback) sBagMenuDisplay->itemOriginalLocation = 0xFF; sBagMenuDisplay->itemMenuIcon = 0; sBagMenuDisplay->inhibitItemDescriptionPrint = FALSE; - sBagMenuDisplay->pocketScrollArrowsTask = 0xFF; - sBagMenuDisplay->pocketSwitchArrowsTask = 0xFF; + sBagMenuDisplay->pocketScrollArrowsTask = TASK_NONE; + sBagMenuDisplay->pocketSwitchArrowsTask = TASK_NONE; if (location == ITEMMENULOCATION_ITEMPC) sBagMenuDisplay->pocketSwitchMode = 1; else if (location == ITEMMENULOCATION_OLD_MAN) @@ -577,9 +571,9 @@ static bool8 DoLoadBagGraphics(void) } break; case 2: - LoadCompressedPalette(gBagBgPalette, 0x00, 0x60); + LoadCompressedPalette(gBagBgPalette, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); if (!BagIsTutorial() && gSaveBlock2Ptr->playerGender != MALE) - LoadCompressedPalette(gBagBgPalette_FemaleOverride, 0x00, 0x20); + LoadCompressedPalette(gBagBgPalette_FemaleOverride, BG_PLTT_ID(0), PLTT_SIZE_4BPP); sBagMenuDisplay->data[0]++; break; case 3: @@ -923,20 +917,20 @@ static void ShowBagOrBeginWin0OpenTask(void) u16 paldata = RGB_BLACK; u8 taskId; - LoadPalette(&paldata, 0x00, 0x02); + SetBackdropFromPalette(&paldata); SetGpuReg(REG_OFFSET_WININ, 0); SetGpuReg(REG_OFFSET_WINOUT, WININ_WIN0_BG_ALL | WININ_WIN0_OBJ | WININ_WIN0_CLR); BlendPalettes(PALETTES_ALL, 16, RGB_BLACK); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); if (gBagMenuState.bagOpen == TRUE) { - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 0)); } else { - SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, 240)); - SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, 160)); + SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(0, DISPLAY_WIDTH)); + SetGpuReg(REG_OFFSET_WIN0V, WIN_RANGE(0, DISPLAY_HEIGHT)); taskId = CreateTask(Task_AnimateWin0v, 0); gTasks[taskId].data[0] = 192; gTasks[taskId].data[1] = -16; @@ -1153,9 +1147,9 @@ static u8 ProcessPocketSwitchInput(u8 taskId, u8 pocketId) static void SwitchPockets(u8 taskId, s16 direction, bool16 a2) { s16 *data = gTasks[taskId].data; - data[13] = 0; - data[12] = 0; - data[11] = direction; + tSwitchState = 0; + tSwitchCounter = 0; + tSwitchDir = direction; if (!a2) { ClearWindowTilemap(0); @@ -1177,35 +1171,36 @@ static void Task_AnimateSwitchPockets(u8 taskId) s16 *data = gTasks[taskId].data; if (!MenuHelpers_IsLinkActive() && !BagIsTutorial()) { - switch (ProcessPocketSwitchInput(taskId, gBagMenuState.pocket + data[11])) + switch (ProcessPocketSwitchInput(taskId, gBagMenuState.pocket + tSwitchDir)) { case 1: - gBagMenuState.pocket += data[11]; + gBagMenuState.pocket += tSwitchDir; SwitchTaskToFollowupFunc(taskId); SwitchPockets(taskId, -1, TRUE); return; case 2: - gBagMenuState.pocket += data[11]; + gBagMenuState.pocket += tSwitchDir; SwitchTaskToFollowupFunc(taskId); SwitchPockets(taskId, 1, TRUE); return; } } - switch (data[13]) + switch (tSwitchState) { case 0: - if (data[12] != 0x7FFF) + // Animate the item list being revealed from the bottom row up + if (tSwitchCounter != SHRT_MAX) { - data[12]++; - CopyBagListBgTileRowToTilemapBuffer(data[12]); - if (data[12] == 12) - data[12] = 0x7FFF; + tSwitchCounter++; + DrawItemListRow(tSwitchCounter); + if (tSwitchCounter == LIST_TILES_HEIGHT) + tSwitchCounter = SHRT_MAX; } - if (data[12] == 0x7FFF) - data[13]++; + if (tSwitchCounter == SHRT_MAX) + tSwitchState++; break; case 1: - gBagMenuState.pocket += data[11]; + gBagMenuState.pocket += tSwitchDir; PrintBagPocketName(); Bag_BuildListMenuTemplate(gBagMenuState.pocket); data[0] = ListMenuInit(&gMultiuseListMenuTemplate, gBagMenuState.cursorPos[gBagMenuState.pocket], gBagMenuState.itemsAbove[gBagMenuState.pocket]); @@ -1333,9 +1328,10 @@ static void UpdateQuantityToTossOrDeposit(s16 value, u8 ndigits) BagPrintTextOnWindow(r6, FONT_SMALL, gStringVar4, 4, 10, 1, 0, 0, 1); } -static void CopyBagListBgTileRowToTilemapBuffer(u8 frame) +// row of 0 is the bottom row in the list, up to LIST_TILES_HEIGHT at the top +static void DrawItemListRow(u8 row) { - CopyToBgTilemapBufferRect(1, sBagListBgTiles[12 - frame], 11, 13 - frame, 18, 1); + CopyToBgTilemapBufferRect(1, &sItemListTilemap[(LIST_TILES_HEIGHT - row) * LIST_TILES_WIDTH], 11, 1 + LIST_TILES_HEIGHT - row, LIST_TILES_WIDTH, 1); ScheduleBgCopyTilemapToVram(1); } diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c index 36997612f..2c579233c 100644 --- a/src/item_menu_icons.c +++ b/src/item_menu_icons.c @@ -327,14 +327,14 @@ u8 AddItemIconObject(u16 tilesTag, u16 paletteTag, u16 itemId) if (!TryAllocItemIconTilesBuffers()) return MAX_SPRITES; - LZDecompressWram(GetItemIconGfxPtr(itemId, 0), sItemIconTilesBuffer); + LZDecompressWram(GetItemIconGfxPtr(itemId, ITEMICON_TILES), sItemIconTilesBuffer); CopyItemIconPicTo4x4Buffer(sItemIconTilesBuffer, sItemIconTilesBufferPadded); spriteSheet.data = sItemIconTilesBufferPadded; spriteSheet.size = 0x200; spriteSheet.tag = tilesTag; LoadSpriteSheet(&spriteSheet); - spritePalette.data = GetItemIconGfxPtr(itemId, 1); + spritePalette.data = GetItemIconGfxPtr(itemId, ITEMICON_PAL); spritePalette.tag = paletteTag; LoadCompressedSpritePalette(&spritePalette); @@ -358,14 +358,14 @@ u8 AddItemIconObjectWithCustomObjectTemplate(const struct SpriteTemplate * origT if (!TryAllocItemIconTilesBuffers()) return MAX_SPRITES; - LZDecompressWram(GetItemIconGfxPtr(itemId, 0), sItemIconTilesBuffer); + LZDecompressWram(GetItemIconGfxPtr(itemId, ITEMICON_TILES), sItemIconTilesBuffer); CopyItemIconPicTo4x4Buffer(sItemIconTilesBuffer, sItemIconTilesBufferPadded); spriteSheet.data = sItemIconTilesBufferPadded; spriteSheet.size = 0x200; spriteSheet.tag = tilesTag; LoadSpriteSheet(&spriteSheet); - spritePalette.data = GetItemIconGfxPtr(itemId, 1); + spritePalette.data = GetItemIconGfxPtr(itemId, ITEMICON_PAL); spritePalette.tag = paletteTag; LoadCompressedSpritePalette(&spritePalette); @@ -410,7 +410,8 @@ void DestroyItemMenuIcon(u8 idx) } } -const void *GetItemIconGfxPtr(u16 itemId, u8 attrId) +// attrId is either ITEMICON_TILES or ITEMICON_PAL +const u32 *GetItemIconGfxPtr(u16 itemId, u8 attrId) { if (itemId > ITEMS_COUNT) itemId = ITEM_NONE; diff --git a/src/item_pc.c b/src/item_pc.c index df2ad56cc..5a114e9fd 100644 --- a/src/item_pc.c +++ b/src/item_pc.c @@ -130,51 +130,51 @@ static const u8 sTextColors[][3] = { static const struct WindowTemplate sWindowTemplates[] = { { .bg = 0, - .tilemapLeft = 0x07, - .tilemapTop = 0x01, - .width = 0x13, - .height = 0x0c, - .paletteNum = 0x0f, + .tilemapLeft = 7, + .tilemapTop = 1, + .width = 19, + .height = 12, + .paletteNum = 15, .baseBlock = 0x02bf }, { .bg = 0, - .tilemapLeft = 0x05, - .tilemapTop = 0x0e, - .width = 0x19, - .height = 0x06, - .paletteNum = 0x0d, + .tilemapLeft = 5, + .tilemapTop = 14, + .width = 25, + .height = 6, + .paletteNum = 13, .baseBlock = 0x0229 }, { .bg = 0, - .tilemapLeft = 0x01, - .tilemapTop = 0x01, - .width = 0x05, - .height = 0x04, - .paletteNum = 0x0f, + .tilemapLeft = 1, + .tilemapTop = 1, + .width = 5, + .height = 4, + .paletteNum = 15, .baseBlock = 0x0215 }, { .bg = 0, - .tilemapLeft = 0x18, - .tilemapTop = 0x0f, - .width = 0x05, - .height = 0x04, - .paletteNum = 0x0f, + .tilemapLeft = 24, + .tilemapTop = 15, + .width = 5, + .height = 4, + .paletteNum = 15, .baseBlock = 0x0201 }, { .bg = 0, - .tilemapLeft = 0x16, - .tilemapTop = 0x0d, - .width = 0x07, - .height = 0x06, - .paletteNum = 0x0f, + .tilemapLeft = 22, + .tilemapTop = 13, + .width = 7, + .height = 6, + .paletteNum = 15, .baseBlock = 0x01d7 }, { .bg = 0, - .tilemapLeft = 0x02, - .tilemapTop = 0x0f, - .width = 0x1a, - .height = 0x04, - .paletteNum = 0x0b, + .tilemapLeft = 2, + .tilemapTop = 15, + .width = 26, + .height = 4, + .paletteNum = 11, .baseBlock = 0x016f }, DUMMY_WIN_TEMPLATE }; @@ -182,27 +182,27 @@ static const struct WindowTemplate sWindowTemplates[] = { static const struct WindowTemplate sSubwindowTemplates[] = { { .bg = 0, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x0e, - .height = 0x04, - .paletteNum = 0x0c, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 14, + .height = 4, + .paletteNum = 12, .baseBlock = 0x0137 }, { .bg = 0, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x10, - .height = 0x04, - .paletteNum = 0x0c, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 16, + .height = 4, + .paletteNum = 12, .baseBlock = 0x0137 }, { .bg = 0, - .tilemapLeft = 0x06, - .tilemapTop = 0x0f, - .width = 0x17, - .height = 0x04, - .paletteNum = 0x0c, + .tilemapLeft = 6, + .tilemapTop = 15, + .width = 23, + .height = 4, + .paletteNum = 12, .baseBlock = 0x009b } }; @@ -443,7 +443,7 @@ static bool8 ItemPc_LoadGraphics(void) } break; case 2: - LoadCompressedPalette(gItemPcBgPals, 0x00, 0x60); + LoadCompressedPalette(gItemPcBgPals, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); sStateDataPtr->data[0]++; break; case 3: @@ -1069,11 +1069,11 @@ static void ItemPc_InitWindows(void) InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); - LoadUserWindowGfx(0, 0x3C0, 0xE0); - LoadStdWindowGfx(0, 0x3A3, 0xC0); - LoadMenuMessageWindowGfx(0, 0x3AC, 0xB0); - LoadPalette(GetTextWindowPalette(2), 0xD0, 0x20); - LoadPalette(gStandardMenuPalette, 0xF0, 0x20); + LoadUserWindowGfx(0, 0x3C0, BG_PLTT_ID(14)); + LoadStdWindowGfx(0, 0x3A3, BG_PLTT_ID(12)); + LoadMenuMessageWindowGfx(0, 0x3AC, BG_PLTT_ID(11)); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP); for (i = 0; i < 3; i++) { FillWindowPixelBuffer(i, 0x00); @@ -1111,7 +1111,7 @@ static void ItemPc_AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 static void ItemPc_SetBorderStyleOnWindow(u8 windowId) { - DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 0x0E); + DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x3C0, 14); } static u8 ItemPc_GetOrCreateSubwindow(u8 idx) @@ -1119,7 +1119,7 @@ static u8 ItemPc_GetOrCreateSubwindow(u8 idx) if (sSubmenuWindowIds[idx] == 0xFF) { sSubmenuWindowIds[idx] = AddWindow(&sSubwindowTemplates[idx]); - DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 0x0C); + DrawStdFrameWithCustomTileAndPalette(sSubmenuWindowIds[idx], TRUE, 0x3A3, 12); } return sSubmenuWindowIds[idx]; diff --git a/src/learn_move.c b/src/learn_move.c index 7c4f163f4..2f7f04b01 100644 --- a/src/learn_move.c +++ b/src/learn_move.c @@ -258,7 +258,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 0, .width = 6, .height = 7, - .paletteNum = 0x0d, + .paletteNum = 13, .baseBlock = 0x014 }, { @@ -267,7 +267,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 0, .width = 5, .height = 5, - .paletteNum = 0x0d, + .paletteNum = 13, .baseBlock = 0x03e }, { @@ -276,7 +276,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 0, .width = 5, .height = 2, - .paletteNum = 0x0d, + .paletteNum = 13, .baseBlock = 0x057 }, { @@ -285,7 +285,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 0, .width = 3, .height = 5, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x061 }, { @@ -294,7 +294,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 2, .width = 3, .height = 3, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x070 }, { @@ -303,7 +303,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 6, .width = 15, .height = 8, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x079 }, { @@ -312,7 +312,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 1, .width = 10, .height = 12, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x0f1 }, { @@ -321,7 +321,7 @@ static const struct WindowTemplate sWindowTemplates[9] = { .tilemapTop = 15, .width = 26, .height = 4, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x169 }, DUMMY_WIN_TEMPLATE }; @@ -332,7 +332,7 @@ static const struct WindowTemplate sMoveRelearnerYesNoMenuTemplate = { .tilemapTop = 8, .width = 6, .height = 4, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x1d1 }; @@ -396,11 +396,11 @@ static void MoveRelearnerLoadBgGfx(void) FillWindowPixelBuffer(i, PIXEL_FILL(0)); } FillWindowPixelBuffer(7, PIXEL_FILL(1)); - FillBgTilemapBufferRect(0, 0x000, 0, 0, 30, 20, 0xF); + FillBgTilemapBufferRect(0, 0x000, 0, 0, 30, 20, 15); SetBgTilemapBuffer(1, sMoveRelearner->bg1TilemapBuffer); - LoadUserWindowGfx(0, 1, 0xE0); - ListMenuLoadStdPalAt(0xD0, 1); - LoadPalette(gMoveRelearner_Pal, 0x00, 0x20); + LoadUserWindowGfx(0, 1, BG_PLTT_ID(14)); + ListMenuLoadStdPalAt(BG_PLTT_ID(13), 1); + LoadPalette(gMoveRelearner_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); DecompressAndLoadBgGfxUsingHeap(1, gMoveRelearner_Gfx, 0, 0, 0); CopyToBgTilemapBuffer(1, gMoveRelearner_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); @@ -442,7 +442,7 @@ static void CB2_MoveRelearner_Resume(void) SetVBlankCallback(VBlankCB_MoveRelearner); MoveRelearnerLoadBgGfx(); SpawnListMenuScrollIndicatorSprites(); - FillPalette(RGB_BLACK, 0, 2); + SetBackdropFromColor(RGB_BLACK); RunTasks(); AnimateSprites(); @@ -506,7 +506,7 @@ static void MoveRelearnerStateMachine(void) MoveRelearnerMenuHandleInput(); break; case MENU_STATE_PRINT_TEACH_MOVE_PROMPT: - CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0); + CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 0); sMoveRelearner->state++; break; case MENU_STATE_TEACH_MOVE_CONFIRM : @@ -531,7 +531,7 @@ static void MoveRelearnerStateMachine(void) } break; case MENU_STATE_PRINT_GIVE_UP_PROMPT: - CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0); + CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 0); sMoveRelearner->state++; break; case MENU_STATE_GIVE_UP_CONFIRM: @@ -552,7 +552,7 @@ static void MoveRelearnerStateMachine(void) sMoveRelearner->state++; break; case MENU_STATE_WAIT_FOR_TRYING_TO_LEARN: - CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0); + CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 0); sMoveRelearner->state = 18; break; case MENU_STATE_CONFIRM_DELETE_OLD_MOVE: @@ -573,7 +573,7 @@ static void MoveRelearnerStateMachine(void) sMoveRelearner->state++; break; case MENU_STATE_WAIT_FOR_STOP_TEACHING: - CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 0xE, 0); + CreateYesNoMenu(&sMoveRelearnerYesNoMenuTemplate, FONT_NORMAL_COPY_2, 0, 2, 0x001, 14, 0); sMoveRelearner->state = 26; break; case MENU_STATE_CONFIRM_STOP_TEACHING: @@ -680,7 +680,7 @@ static void DrawTextBorderOnWindows6and7(void) { int i; for (i = 6; i < 8; i++) - DrawTextBorderOuter(i, 0x001, 0xE); + DrawTextBorderOuter(i, 0x001, 14); } static void PrintTeachWhichMoveToStrVar1(bool8 onInit) @@ -816,7 +816,7 @@ static void MoveLearnerInitListMenu(void) static void PrintMoveInfo(u16 move) { u8 buffer[50]; - BlitMoveInfoIcon(2, gBattleMoves[move].type + 1, 1, 4); + BlitMenuInfoIcon(2, gBattleMoves[move].type + 1, 1, 4); if (gBattleMoves[move].power < 2) { @@ -844,11 +844,11 @@ static void PrintMoveInfo(u16 move) static void LoadMoveInfoUI(void) { - BlitMoveInfoIcon(0, 19, 1, 4); - BlitMoveInfoIcon(1, 20, 0, 4); - BlitMoveInfoIcon(1, 21, 0, 19); - BlitMoveInfoIcon(0, 22, 1, 19); - BlitMoveInfoIcon(0, 23, 1, 34); + BlitMenuInfoIcon(0, MENU_INFO_ICON_TYPE, 1, 4); + BlitMenuInfoIcon(1, MENU_INFO_ICON_POWER, 0, 4); + BlitMenuInfoIcon(1, MENU_INFO_ICON_ACCURACY, 0, 19); + BlitMenuInfoIcon(0, MENU_INFO_ICON_PP, 1, 19); + BlitMenuInfoIcon(0, MENU_INFO_ICON_EFFECT, 1, 34); PutWindowTilemap(0); PutWindowTilemap(1); PutWindowTilemap(4); diff --git a/src/link.c b/src/link.c index 323e8570a..f883db482 100644 --- a/src/link.c +++ b/src/link.c @@ -242,7 +242,7 @@ void Task_DestroySelf(u8 taskId) void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock, u16 baseChar) { - LoadPalette(sLinkTestFontPal, paletteNum * 16, 0x20); + LoadPalette(sLinkTestFontPal, BG_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock) + (16 * baseChar), sizeof sLinkTestFontGfx); gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.paletteNum = paletteNum; @@ -266,7 +266,7 @@ void InitLinkTestBG(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBloc // Unused static void LoadLinkTestBgGfx(u8 paletteNum, u8 bgNum, u8 screenBaseBlock, u8 charBaseBlock) { - LoadPalette(sLinkTestFontPal, paletteNum * 16, 0x20); + LoadPalette(sLinkTestFontPal, BG_PLTT_ID(paletteNum), PLTT_SIZE_4BPP); DmaCopy16(3, sLinkTestFontGfx, (u16 *)BG_CHAR_ADDR(charBaseBlock), sizeof sLinkTestFontGfx); gLinkTestBGInfo.screenBaseBlock = screenBaseBlock; gLinkTestBGInfo.paletteNum = paletteNum; @@ -1382,7 +1382,7 @@ void CB2_LinkError(void) ResetSpriteData(); FreeAllSpritePalettes(); ResetPaletteFadeControl(); - FillPalette(RGB_BLACK, 0, 2); + SetBackdropFromColor(RGB_BLACK); ResetTasks(); ScanlineEffect_Stop(); if (gWirelessCommType) @@ -1407,7 +1407,7 @@ void CB2_LinkError(void) SetGpuReg(REG_OFFSET_BG1HOFS, 0); SetGpuReg(REG_OFFSET_BG1VOFS, 0); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON); - LoadPalette(gStandardMenuPalette, 0xf0, 0x20); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP); gSoftResetDisabled = FALSE; CreateTask(Task_DestroySelf, 0); StopMapMusic(); @@ -1425,7 +1425,7 @@ static void ErrorMsg_MoveCloserToPartner(void) DecompressAndLoadBgGfxUsingHeap(1, sWirelessLinkDisplayGfx, FALSE, 0, 0); CopyToBgTilemapBuffer(1, sWirelessLinkDisplayTilemap, 0, 0); CopyBgTilemapBufferToVram(1); - LoadPalette(sWirelessLinkDisplayPal, 0, 0x20); + LoadPalette(sWirelessLinkDisplayPal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(2, PIXEL_FILL(0)); AddTextPrinterParameterized3(0, FONT_NORMAL_COPY_2, 2, 5, sLinkErrorTextColor, 0, gText_CommErrorEllipsis); diff --git a/src/list_menu.c b/src/list_menu.c index b18fd5151..d759f6d79 100644 --- a/src/list_menu.c +++ b/src/list_menu.c @@ -49,39 +49,39 @@ static void ListMenuDrawCursor(struct ListMenu *list); static void ListMenuCallSelectionChangedCallback(struct ListMenu *list, u8 onInit); static u8 ListMenuAddCursorObject(struct ListMenu *list, u32 cursorKind); -const struct MoveMenuInfoIcon gMoveMenuInfoIcons[] = -{ - { 12, 12, 0x00 }, // Unused - { 32, 12, 0x20 }, // Normal icon - { 32, 12, 0x64 }, // Fight icon - { 32, 12, 0x60 }, // Flying icon - { 32, 12, 0x80 }, // Poison icon - { 32, 12, 0x48 }, // Ground icon - { 32, 12, 0x44 }, // Rock icon - { 32, 12, 0x6C }, // Bug icon - { 32, 12, 0x68 }, // Ghost icon - { 32, 12, 0x88 }, // Steel icon - { 32, 12, 0xA4 }, // ??? (Mystery) icon - { 32, 12, 0x24 }, // Fire icon - { 32, 12, 0x28 }, // Water icon - { 32, 12, 0x2C }, // Grass icon - { 32, 12, 0x40 }, // Electric icon - { 32, 12, 0x84 }, // Psychic icon - { 32, 12, 0x4C }, // Ice icon - { 32, 12, 0xA0 }, // Dragon icon - { 32, 12, 0x8C }, // Dark icon - { 40, 12, 0xA8 }, // -Type- icon - { 40, 12, 0xC0 }, // -Power- icon - { 40, 12, 0xC8 }, // -Accuracy- icon - { 40, 12, 0xE0 }, // -PP- icon - { 40, 12, 0xE8 }, // -Effect- icon +static const struct MoveMenuInfoIcon sMenuInfoIcons[] = +{ // { width, height, offset } + [MENU_INFO_ICON_CAUGHT] = { 12, 12, 0x00 }, + [TYPE_NORMAL + 1] = { 32, 12, 0x20 }, + [TYPE_FIGHTING + 1] = { 32, 12, 0x64 }, + [TYPE_FLYING + 1] = { 32, 12, 0x60 }, + [TYPE_POISON + 1] = { 32, 12, 0x80 }, + [TYPE_GROUND + 1] = { 32, 12, 0x48 }, + [TYPE_ROCK + 1] = { 32, 12, 0x44 }, + [TYPE_BUG + 1] = { 32, 12, 0x6C }, + [TYPE_GHOST + 1] = { 32, 12, 0x68 }, + [TYPE_STEEL + 1] = { 32, 12, 0x88 }, + [TYPE_MYSTERY + 1] = { 32, 12, 0xA4 }, + [TYPE_FIRE + 1] = { 32, 12, 0x24 }, + [TYPE_WATER + 1] = { 32, 12, 0x28 }, + [TYPE_GRASS + 1] = { 32, 12, 0x2C }, + [TYPE_ELECTRIC + 1] = { 32, 12, 0x40 }, + [TYPE_PSYCHIC + 1] = { 32, 12, 0x84 }, + [TYPE_ICE + 1] = { 32, 12, 0x4C }, + [TYPE_DRAGON + 1] = { 32, 12, 0xA0 }, + [TYPE_DARK + 1] = { 32, 12, 0x8C }, + [MENU_INFO_ICON_TYPE] = { 40, 12, 0xA8 }, + [MENU_INFO_ICON_POWER] = { 40, 12, 0xC0 }, + [MENU_INFO_ICON_ACCURACY] = { 40, 12, 0xC8 }, + [MENU_INFO_ICON_PP] = { 40, 12, 0xE0 }, + [MENU_INFO_ICON_EFFECT] = { 40, 12, 0xE8 }, }; static void ListMenuDummyTask(u8 taskId) { } -u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palNum) +u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const struct ListMenuTemplate *listMenuTemplate, u8 arg2, u16 tileNum, u16 palOffset) { switch (sMysteryGiftLinkMenu.state) { @@ -91,9 +91,9 @@ u32 DoMysteryGiftListMenu(const struct WindowTemplate *windowTemplate, const str switch (arg2) { case 2: - LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palNum); + LoadUserWindowGfx(sMysteryGiftLinkMenu.windowId, tileNum, palOffset); case 1: - DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palNum / 16); + DrawTextBorderOuter(sMysteryGiftLinkMenu.windowId, tileNum, palOffset / 16); break; } gMultiuseListMenuTemplate = *listMenuTemplate; @@ -727,7 +727,7 @@ void ListMenuSetTemplateField(u8 taskId, u8 field, s32 value) void ListMenu_LoadMonIconPalette(u8 palOffset, u16 speciesId) { - LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, 0x20); + LoadPalette(GetValidMonIconPalettePtr(speciesId), palOffset, PLTT_SIZE_4BPP); } void ListMenu_DrawMonIconGraphics(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y) @@ -743,16 +743,16 @@ void ListMenuLoadStdPalAt(u8 palOffset, u8 palId) { case 0: default: - palette = gFireRedMenuElements1_Pal; + palette = gMenuInfoElements1_Pal; break; case 1: - palette = gFireRedMenuElements2_Pal; + palette = gMenuInfoElements2_Pal; break; } - LoadPalette(palette, palOffset, 0x20); + LoadPalette(palette, palOffset, PLTT_SIZE_4BPP); } -void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y) +void BlitMenuInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y) { - BlitBitmapRectToWindow(windowId, gFireRedMenuElements_Gfx + gMoveMenuInfoIcons[iconId].offset * 32, 0, 0, 128, 128, x, y, gMoveMenuInfoIcons[iconId].width, gMoveMenuInfoIcons[iconId].height); + BlitBitmapRectToWindow(windowId, &gMenuInfoElements_Gfx[sMenuInfoIcons[iconId].offset * TILE_SIZE_4BPP], 0, 0, 128, 128, x, y, sMenuInfoIcons[iconId].width, sMenuInfoIcons[iconId].height); } diff --git a/src/mail.c b/src/mail.c index 8fd5b50b0..27b63c1db 100644 --- a/src/mail.c +++ b/src/mail.c @@ -560,16 +560,17 @@ static bool8 DoInitMailView(void) CopyBgTilemapBufferToVram(2); break; case 12: - LoadPalette(GetTextWindowPalette(0), 0xF0, 0x20); - gPlttBufferUnfaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; - gPlttBufferFaded[15 * 16 + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; - gPlttBufferUnfaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; - gPlttBufferFaded[15 * 16 + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; - LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, 0x00, 0x20); - gPlttBufferUnfaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; - gPlttBufferFaded[0 * 16 + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; - gPlttBufferUnfaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; - gPlttBufferFaded[0 * 16 + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; + LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(15), PLTT_SIZE_4BPP); + gPlttBufferUnfaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; + gPlttBufferFaded[BG_PLTT_ID(15) + 10] = sGfxHeaders[sMailViewResources->mailType].textpals[0]; + gPlttBufferUnfaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; + gPlttBufferFaded[BG_PLTT_ID(15) + 11] = sGfxHeaders[sMailViewResources->mailType].textpals[1]; + + LoadPalette(sGfxHeaders[sMailViewResources->mailType].pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); + gPlttBufferUnfaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; + gPlttBufferFaded[BG_PLTT_ID(0) + 10] = sGenderPals[gSaveBlock2Ptr->playerGender][0]; + gPlttBufferUnfaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; + gPlttBufferFaded[BG_PLTT_ID(0) + 11] = sGenderPals[gSaveBlock2Ptr->playerGender][1]; break; case 13: if (sMailViewResources->messageExists) diff --git a/src/main_menu.c b/src/main_menu.c index ccacbe574..5cef7c46e 100644 --- a/src/main_menu.c +++ b/src/main_menu.c @@ -196,8 +196,8 @@ static bool32 MainMenuGpuInit(u8 a0) ChangeBgY(2, 0, 0); InitWindows(sWindowTemplate); DeactivateAllTextPrinters(); - LoadPalette(sBg_Pal, 0x00, 0x20); - LoadPalette(sTextbox_Pal, 0xF0, 0x20); + LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal)); + LoadPalette(sTextbox_Pal, BG_PLTT_ID(15), sizeof(sTextbox_Pal)); SetGpuReg(REG_OFFSET_WIN0H, 0); SetGpuReg(REG_OFFSET_WIN0V, 0); SetGpuReg(REG_OFFSET_WININ, 0); @@ -343,7 +343,7 @@ static void Task_PrintMainMenuText(u8 taskId) pal = RGB(4, 16, 31); else pal = RGB(31, 3, 21); - LoadPalette(&pal, 0xF1, 2); + LoadPalette(&pal, BG_PLTT_ID(15) + 1, PLTT_SIZEOF(1)); switch (gTasks[taskId].tMenuType) { case MAIN_MENU_NEWGAME: @@ -678,13 +678,13 @@ static void PrintBadgeCount(void) static void LoadUserFrameToBg(u8 bgId) { LoadBgTiles(bgId, GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->tiles, 0x120, 0x1B1); - LoadPalette(GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->palette, 0x20, 0x20); + LoadPalette(GetUserWindowGraphics(gSaveBlock2Ptr->optionsWindowFrameType)->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP); MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]); } static void SetStdFrame0OnBg(u8 bgId) { - LoadStdWindowGfx(MAIN_MENU_WINDOW_NEWGAME_ONLY, 0x1B1, 0x20); + LoadStdWindowGfx(MAIN_MENU_WINDOW_NEWGAME_ONLY, 0x1B1, BG_PLTT_ID(2)); MainMenu_EraseWindow(&sWindowTemplate[MAIN_MENU_WINDOW_ERROR]); } diff --git a/src/map_name_popup.c b/src/map_name_popup.c index a7d0ce003..e80be27ba 100644 --- a/src/map_name_popup.c +++ b/src/map_name_popup.c @@ -7,6 +7,8 @@ #include "region_map.h" #include "strings.h" +#define FLOOR_ROOFTOP 127 + static void Task_MapNamePopup(u8 taskId); static u16 MapNamePopupCreateWindow(bool32 palIntoFadedBuffer); static void MapNamePopupPrintMapNameOnWindow(u16 windowId); @@ -28,7 +30,7 @@ void ShowMapNamePopup(bool32 palIntoFadedBuffer) if (FlagGet(FLAG_DONT_SHOW_MAP_NAME_POPUP) != TRUE && !QL_IS_PLAYBACK_STATE) { taskId = FindTaskIdByFunc(Task_MapNamePopup); - if (taskId == 0xFF) + if (taskId == TASK_NONE) { taskId = CreateTask(Task_MapNamePopup, 90); ChangeBgX(0, 0x0000, 0); @@ -129,7 +131,7 @@ void DismissMapNamePopup(void) u8 taskId; s16 *data; taskId = FindTaskIdByFunc(Task_MapNamePopup); - if (taskId != 0xFF) + if (taskId != TASK_NONE) { data = gTasks[taskId].data; if (tState < 6) @@ -139,9 +141,11 @@ void DismissMapNamePopup(void) bool32 IsMapNamePopupTaskActive(void) { - return FindTaskIdByFunc(Task_MapNamePopup) != 0xFF ? TRUE : FALSE; + return FindTaskIdByFunc(Task_MapNamePopup) != TASK_NONE ? TRUE : FALSE; } +#define WIN_PAL_NUM 13 + static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer) { struct WindowTemplate windowTemplate = { @@ -150,36 +154,32 @@ static u16 MapNamePopupCreateWindow(bool32 palintoFadedBuffer) .tilemapTop = 29, .width = 14, .height = 2, - .paletteNum = 0xD, + .paletteNum = WIN_PAL_NUM, .baseBlock = 0x001 }; u16 windowId; - u16 r6 = 0x01D; + u16 tileNum = 0x01D; if (gMapHeader.floorNum != 0) { - if (gMapHeader.floorNum != 0x7F) + if (gMapHeader.floorNum != FLOOR_ROOFTOP) { windowTemplate.width += 5; - r6 = 0x027; + tileNum = 0x027; } else { // ROOFTOP windowTemplate.width += 8; - r6 = 0x02D; + tileNum = 0x02D; } } windowId = AddWindow(&windowTemplate); if (palintoFadedBuffer) - { - LoadPalette(GetTextWindowPalette(3), 0xd0, 0x20); - } + LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(WIN_PAL_NUM), PLTT_SIZE_4BPP); else - { - CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[0xd0], 0x20); - } - LoadStdWindowTiles(windowId, r6); - DrawTextBorderOuter(windowId, r6, 0xD); + CpuCopy16(GetTextWindowPalette(3), &gPlttBufferUnfaded[BG_PLTT_ID(WIN_PAL_NUM)], PLTT_SIZE_4BPP); + LoadStdWindowTiles(windowId, tileNum); + DrawTextBorderOuter(windowId, tileNum, WIN_PAL_NUM); PutWindowTilemap(windowId); MapNamePopupPrintMapNameOnWindow(windowId); CopyWindowToVram(windowId, COPYWIN_FULL); @@ -195,7 +195,7 @@ static void MapNamePopupPrintMapNameOnWindow(u16 windowId) if (gMapHeader.floorNum != 0) { ptr = MapNamePopupAppendFloorNum(ptr, gMapHeader.floorNum); - maxWidth = gMapHeader.floorNum != 0x7F ? 152 : 176; + maxWidth = gMapHeader.floorNum != FLOOR_ROOFTOP ? 152 : 176; } xpos = (maxWidth - GetStringWidth(FONT_NORMAL, mapName, -1)) / 2; FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); @@ -207,7 +207,7 @@ static u8 *MapNamePopupAppendFloorNum(u8 *dest, s8 floorNum) if (floorNum == 0) return dest; *dest++ = CHAR_SPACE; - if (floorNum == 0x7F) + if (floorNum == FLOOR_ROOFTOP) return StringCopy(dest, gText_Rooftop2); if (floorNum < 0) { diff --git a/src/map_preview_screen.c b/src/map_preview_screen.c index 068ddfedd..dfe3318d4 100644 --- a/src/map_preview_screen.c +++ b/src/map_preview_screen.c @@ -386,7 +386,7 @@ void MapPreview_LoadGfx(u8 mapsec) if (idx != MPS_COUNT) { ResetTempTileDataBuffers(); - LoadPalette(sMapPreviewScreenData[idx].palptr, 0xD0, 0x60); + LoadPalette(sMapPreviewScreenData[idx].palptr, BG_PLTT_ID(13), 3 * PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(0, sMapPreviewScreenData[idx].tilesptr, 0, 0, 0); if (GetBgTilemapBuffer(0) == NULL) { diff --git a/src/menu.c b/src/menu.c index fe1b82f1e..22e0321bc 100644 --- a/src/menu.c +++ b/src/menu.c @@ -177,10 +177,10 @@ u8 CreateTopBarWindowLoadPalette(u8 bg, u8 width, u8 yPos, u8 palette, u16 baseT window.baseBlock = baseTile; sTopBarWindowId = AddWindow(&window); if (palette > 15) - palette = 15 * 16; + palette = BG_PLTT_ID(15); else - palette *= 16; - LoadPalette(GetTextWindowPalette(2), palette, 0x20); + palette = BG_PLTT_ID(palette); + LoadPalette(GetTextWindowPalette(2), palette, PLTT_SIZE_4BPP); return sTopBarWindowId; } diff --git a/src/menu_indicators.c b/src/menu_indicators.c index 86bfcf5fe..393a50867 100644 --- a/src/menu_indicators.c +++ b/src/menu_indicators.c @@ -333,7 +333,7 @@ u8 AddScrollIndicatorArrowPair(const struct ScrollArrowsTemplate *arrowInfo, u16 LoadCompressedSpriteSheet(&spriteSheet); if (arrowInfo->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * arrowInfo->palNum) + 0x100, 0x20); + LoadPalette(sRedArrowPal, OBJ_PLTT_ID(arrowInfo->palNum), sizeof(sRedArrowPal)); } else { @@ -539,7 +539,7 @@ u8 ListMenuAddRedOutlineCursorObject(const struct CursorStruct *cursor) LoadCompressedSpriteSheet(&spriteSheet); if (cursor->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); + LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal)); } else { @@ -612,7 +612,7 @@ static u8 ListMenuAddRedArrowCursorObject(const struct CursorStruct *cursor) LoadCompressedSpriteSheet(&spriteSheet); if (cursor->palTag == TAG_NONE) { - LoadPalette(sRedArrowPal, (16 * cursor->palNum) + 0x100, 0x20); + LoadPalette(sRedArrowPal, OBJ_PLTT_ID(cursor->palNum), sizeof(sRedArrowPal)); } else { diff --git a/src/money.c b/src/money.c index fbabc889b..4a9a4f464 100644 --- a/src/money.c +++ b/src/money.c @@ -104,9 +104,9 @@ void PrintMoneyAmount(u8 windowId, u8 x, u8 y, int amount, u8 speed) AddTextPrinterParameterized(windowId, FONT_SMALL, gStringVar4, x, y, speed, NULL); } -void PrintMoneyAmountInMoneyBoxWithBorder(u8 windowId, u16 tileStart, u8 pallete, int amount) +void PrintMoneyAmountInMoneyBoxWithBorder(u8 windowId, u16 tileStart, u8 paletteNum, int amount) { - DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, tileStart, pallete); + DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, tileStart, paletteNum); AddTextPrinterParameterized(windowId, FONT_NORMAL, gText_TrainerCardMoney, 0, 0, 0xFF, 0); PrintMoneyAmountInMoneyBox(windowId, amount, 0); } @@ -124,7 +124,7 @@ void DrawMoneyBox(int amount, u8 x, u8 y) sMoneyBoxWindowId = AddWindow(&template); FillWindowPixelBuffer(sMoneyBoxWindowId, 0); PutWindowTilemap(sMoneyBoxWindowId); - LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, 0xD0); + LoadStdWindowGfx(sMoneyBoxWindowId, 0x21D, BG_PLTT_ID(13)); PrintMoneyAmountInMoneyBoxWithBorder(sMoneyBoxWindowId, 0x21D, 13, amount); } diff --git a/src/mystery_gift_menu.c b/src/mystery_gift_menu.c index 7f0644d7f..0c9800146 100644 --- a/src/mystery_gift_menu.c +++ b/src/mystery_gift_menu.c @@ -87,110 +87,110 @@ static const struct BgTemplate sBGTemplates[] = { static const struct WindowTemplate sMainWindows[] = { { - .bg = 0x00, - .tilemapLeft = 0x00, - .tilemapTop = 0x00, - .width = 0x1e, - .height = 0x02, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 0, + .width = 30, + .height = 2, + .paletteNum = 15, .baseBlock = 0x0013 }, { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x1c, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 15, .baseBlock = 0x004f }, { - .bg = 0x00, - .tilemapLeft = 0x00, - .tilemapTop = 0x0f, - .width = 0x1e, - .height = 0x05, - .paletteNum = 0x0d, + .bg = 0, + .tilemapLeft = 0, + .tilemapTop = 15, + .width = 30, + .height = 5, + .paletteNum = 13, .baseBlock = 0x004f }, DUMMY_WIN_TEMPLATE }; static const struct WindowTemplate sWindowTemplate_YesNoMsg_Wide = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x1c, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 28, + .height = 4, + .paletteNum = 15, .baseBlock = 0x00e5 }; static const struct WindowTemplate sWindowTemplate_YesNoMsg = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x14, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 20, + .height = 4, + .paletteNum = 15, .baseBlock = 0x00e5 }; static const struct WindowTemplate sWindowTemplate_GiftSelect = { - .bg = 0x00, - .tilemapLeft = 0x01, - .tilemapTop = 0x0f, - .width = 0x13, - .height = 0x04, - .paletteNum = 0x0f, + .bg = 0, + .tilemapLeft = 1, + .tilemapTop = 15, + .width = 19, + .height = 4, + .paletteNum = 15, .baseBlock = 0x00e5 }; static const struct WindowTemplate sWindowTemplate_ThreeOptions = { - .bg = 0x00, - .tilemapLeft = 0x08, - .tilemapTop = 0x05, - .width = 0x0e, - .height = 0x05, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 8, + .tilemapTop = 5, + .width = 14, + .height = 5, + .paletteNum = 14, .baseBlock = 0x0155 }; static const struct WindowTemplate sWindowTemplate_YesNoBox = { - .bg = 0x00, - .tilemapLeft = 0x17, - .tilemapTop = 0x0f, - .width = 0x06, - .height = 0x04, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 23, + .tilemapTop = 15, + .width = 6, + .height = 4, + .paletteNum = 14, .baseBlock = 0x0155 }; static const struct WindowTemplate sWindowTemplate_GiftSelect_3Options = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0c, - .width = 0x07, - .height = 0x07, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 12, + .width = 7, + .height = 7, + .paletteNum = 14, .baseBlock = 0x0155 }; static const struct WindowTemplate sWindowTemplate_GiftSelect_2Options = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0e, - .width = 0x07, - .height = 0x05, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 14, + .width = 7, + .height = 5, + .paletteNum = 14, .baseBlock = 0x0155 }; static const struct WindowTemplate sWindowTemplate_GiftSelect_1Option = { - .bg = 0x00, - .tilemapLeft = 0x16, - .tilemapTop = 0x0f, - .width = 0x07, - .height = 0x04, - .paletteNum = 0x0e, + .bg = 0, + .tilemapLeft = 22, + .tilemapTop = 15, + .width = 7, + .height = 4, + .paletteNum = 14, .baseBlock = 0x0155 }; @@ -392,8 +392,8 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) SetBgTilemapBuffer(1, Alloc(BG_SCREEN_SIZE)); SetBgTilemapBuffer(0, Alloc(BG_SCREEN_SIZE)); - LoadUserWindowGfx2(0, 10, 0xE0); - LoadStdWindowGfxOnBg(0, 1, 0xF0); + LoadUserWindowGfx2(0, 10, BG_PLTT_ID(14)); + LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(15)); DecompressAndLoadBgGfxUsingHeap(3, sTextboxBorder_Gfx, 0x100, 0, 0); InitWindows(sMainWindows); DeactivateAllTextPrinters(); @@ -404,11 +404,11 @@ bool32 HandleMysteryGiftOrEReaderSetup(s32 isEReader) gMain.state++; break; case 1: - LoadPalette(sTextboxBorder_Pal, 0, 0x20); - LoadPalette(GetTextWindowPalette(2), 0xd0, 0x20); - FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); + LoadPalette(sTextboxBorder_Pal, BG_PLTT_ID(0), sizeof(sTextboxBorder_Pal)); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(13), PLTT_SIZE_4BPP); + FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 17); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17); + FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17); MG_DrawCheckerboardPattern(); PrintMysteryGiftOrEReaderTopMenu(isEReader, FALSE); gMain.state++; @@ -486,23 +486,23 @@ void PrintMysteryGiftOrEReaderTopMenu(bool8 isEReader, bool32 useCancel) void MG_DrawTextBorder(u8 windowId) { - DrawTextBorderOuter(windowId, 0x01, 0xF); + DrawTextBorderOuter(windowId, 0x01, 15); } void MG_DrawCheckerboardPattern(void) { s32 i = 0, j; - FillBgTilemapBufferRect(3, 0x003, 0, 0, 32, 2, 0x11); + FillBgTilemapBufferRect(3, 0x003, 0, 0, 32, 2, 17); for (i = 0; i < 18; i++) { for (j = 0; j < 32; j++) { if ((i & 1) != (j & 1)) - FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 0x11); + FillBgTilemapBufferRect(3, 1, j, i + 2, 1, 1, 17); else - FillBgTilemapBufferRect(3, 2, j, i + 2, 1, 1, 0x11); + FillBgTilemapBufferRect(3, 2, j, i + 2, 1, 1, 17); } } } @@ -512,10 +512,10 @@ void ClearScreenInBg0(bool32 ignoreTopTwoRows) switch (ignoreTopTwoRows) { case 0: - FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(0, 0, 0, 0, 32, 32, 17); break; case 1: - FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 0x11); + FillBgTilemapBufferRect(0, 0, 0, 2, 32, 30, 17); break; } CopyBgTilemapBufferToVram(0); @@ -526,7 +526,7 @@ void AddTextPrinterToWindow1(const u8 *str) StringExpandPlaceholders(gStringVar4, str); FillWindowPixelBuffer(1, 0x11); AddTextPrinterParameterized4(1, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(1, 0x001, 0xF); + DrawTextBorderOuter(1, 0x001, 15); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); } @@ -637,7 +637,7 @@ static u32 MysteryGift_HandleThreeOptionMenu(u8 * unused0, u16 * unused1, u8 whi finalWidth = (((width + 9) / 8) + 2) & ~1; windowTemplate.width = finalWidth; windowTemplate.tilemapLeft = (30 - finalWidth) / 2; - response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, 0xE0); + response = DoMysteryGiftListMenu(&windowTemplate, &listMenuTemplate, 1, 0x00A, BG_PLTT_ID(14)); if (response != LIST_NOTHING_CHOSEN) { ClearWindowTilemap(2); @@ -662,7 +662,7 @@ s8 DoMysteryGiftYesNo(u8 * textState, u16 * windowId, bool8 yesNoBoxPlacement, c *windowId = AddWindow(&sWindowTemplate_YesNoMsg); FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(*windowId, 0x001, 0x0F); + DrawTextBorderOuter(*windowId, 0x001, 15); CopyWindowToVram(*windowId, COPYWIN_GFX); PutWindowTilemap(*windowId); (*textState)++; @@ -719,7 +719,7 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann *windowId = AddWindow(&sWindowTemplate_GiftSelect); FillWindowPixelBuffer(*windowId, 0x11); AddTextPrinterParameterized4(*windowId, FONT_NORMAL, 0, 2, 0, 2, sMG_Ereader_TextColor_2, 0, gStringVar4); - DrawTextBorderOuter(*windowId, 0x001, 0x0F); + DrawTextBorderOuter(*windowId, 0x001, 15); CopyWindowToVram(*windowId, COPYWIN_GFX); PutWindowTilemap(*windowId); (*textState)++; @@ -729,16 +729,16 @@ static s32 HandleMysteryGiftListMenu(u8 * textState, u16 * windowId, bool32 cann if (cannotSend) { if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveToss, 1, 0x00A, BG_PLTT_ID(14)); else - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_1Option, &sListMenu_Receive, 1, 0x00A, BG_PLTT_ID(14)); } else { if (!cannotToss) - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_3Options, &sListMenu_ReceiveSendToss, 1, 0x00A, BG_PLTT_ID(14)); else - input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, 0x00A, 0xE0); + input = DoMysteryGiftListMenu(&sWindowTemplate_GiftSelect_2Options, &sListMenu_ReceiveSend, 1, 0x00A, BG_PLTT_ID(14)); } if (input != LIST_NOTHING_CHOSEN) { diff --git a/src/mystery_gift_show_card.c b/src/mystery_gift_show_card.c index a52c5ca3c..e7b2f9930 100644 --- a/src/mystery_gift_show_card.c +++ b/src/mystery_gift_show_card.c @@ -215,7 +215,7 @@ s32 WonderCard_Enter(void) if (FreeTempTileDataBuffersIfPossible()) return 0; gPaletteFade.bufferTransferDisabled = TRUE; - LoadPalette(sWonderCardData->gfx->pal, 0x10, 0x20); + LoadPalette(sWonderCardData->gfx->pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP); LZ77UnCompWram(sWonderCardData->gfx->map, sWonderCardData->bgTilemapBuffer); CopyRectToBgTilemapBufferRect(2, sWonderCardData->bgTilemapBuffer, 0, 0, 30, 20, 0, 0, 30, 20, 1, 0x008, 0); CopyBgTilemapBufferToVram(2); diff --git a/src/mystery_gift_show_news.c b/src/mystery_gift_show_news.c index 612df3d0d..43d0dea12 100644 --- a/src/mystery_gift_show_news.c +++ b/src/mystery_gift_show_news.c @@ -171,7 +171,7 @@ s32 WonderNews_Enter(void) if (FreeTempTileDataBuffersIfPossible()) return 0; gPaletteFade.bufferTransferDisabled = TRUE; - LoadPalette(sWonderNewsData->gfx->pal, 0x10, 0x20); + LoadPalette(sWonderNewsData->gfx->pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP); LZ77UnCompWram(sWonderNewsData->gfx->map, sWonderNewsData->bgTilemapBuffer); CopyRectToBgTilemapBufferRect(1, sWonderNewsData->bgTilemapBuffer, 0, 0, 30, 3, 0, 0, 30, 3, 1, 8, 0); CopyRectToBgTilemapBufferRect(3, sWonderNewsData->bgTilemapBuffer, 0, 3, 30, 23, 0, 3, 30, 23, 1, 8, 0); diff --git a/src/naming_screen.c b/src/naming_screen.c index 02b71a094..c9d003a97 100644 --- a/src/naming_screen.c +++ b/src/naming_screen.c @@ -978,10 +978,10 @@ static u16 GetButtonPalOffset(u8 button) { const u16 palOffsets[BUTTON_COUNT + 1] = { - [BUTTON_PAGE] = IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP) * 16 + 0x10E, - [BUTTON_BACK] = IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON) * 16 + 0x10E, - [BUTTON_OK] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x10E, - [BUTTON_COUNT] = IndexOfSpritePaletteTag(PALTAG_OK_BUTTON) * 16 + 0x101, + [BUTTON_PAGE] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_PAGE_SWAP)) + 14, + [BUTTON_BACK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_BACK_BUTTON)) + 14, + [BUTTON_OK] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 14, + [BUTTON_COUNT] = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_OK_BUTTON)) + 1, }; return palOffsets[button]; @@ -1060,7 +1060,7 @@ static void SpriteCB_Cursor(struct Sprite *sprite) { s8 gb = sprite->sColor; s8 r = sprite->sColor >> 1; - u16 index = IndexOfSpritePaletteTag(PALTAG_CURSOR) * 16 + 0x0101; + u16 index = OBJ_PLTT_ID(IndexOfSpritePaletteTag(PALTAG_CURSOR)) + 1; MultiplyInvertedPaletteRGBComponents(index, r, gb, gb); } @@ -1872,9 +1872,9 @@ static void CreateHelperTasks(void) static void LoadPalettes(void) { - LoadPalette(gNamingScreenMenu_Pal, 0, sizeof(gNamingScreenMenu_Pal)); - LoadPalette(gNamingScreenKeyboard_Pal, 0xA0, 0x20); - LoadPalette(GetTextWindowPalette(2), 0xB0, 0x20); + LoadPalette(gNamingScreenMenu_Pal, BG_PLTT_ID(0), sizeof(gNamingScreenMenu_Pal)); + LoadPalette(gNamingScreenKeyboard_Pal, BG_PLTT_ID(10), PLTT_SIZE_4BPP); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(11), PLTT_SIZE_4BPP); } static void DecompressToBgTilemapBuffer(u8 bg, const u32 *src) diff --git a/src/new_menu_helpers.c b/src/new_menu_helpers.c index 13e33e119..08c032027 100644 --- a/src/new_menu_helpers.c +++ b/src/new_menu_helpers.c @@ -457,9 +457,9 @@ void LoadStdWindowFrameGfx(void) else { Menu_LoadStdPal(); - LoadMenuMessageWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10); + LoadMenuMessageWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM)); } - LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM * 0x10); + LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM)); } void DrawDialogueFrame(u8 windowId, bool8 copyToVram) @@ -591,7 +591,7 @@ static void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilem void EraseFieldMessageBox(bool8 copyToVram) { - FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 0x11); + FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 17); if (copyToVram == TRUE) CopyBgTilemapBufferToVram(0); } @@ -610,19 +610,19 @@ void LoadMessageBoxAndFrameGfx(u8 windowId, bool8 copyToVram) } else { - LoadMenuMessageWindowGfx(windowId, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10); + LoadMenuMessageWindowGfx(windowId, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM)); } DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM); } void Menu_LoadStdPal(void) { - LoadPalette(gStandardMenuPalette, STD_WINDOW_PALETTE_NUM * 0x10, 0x14); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM), PLTT_SIZEOF(10)); } void Menu_LoadStdPalAt(u16 offset) { - LoadPalette(gStandardMenuPalette, offset, 0x14); + LoadPalette(gStandardMenuPalette, offset, PLTT_SIZEOF(10)); } // Unused @@ -633,7 +633,7 @@ static const u16 *GetStdMenuPalette(void) static u16 GetStdPalColor(u8 colorNum) { - if (colorNum > 0xF) + if (colorNum > 15) colorNum = 0; return gStandardMenuPalette[colorNum]; } @@ -700,7 +700,7 @@ u16 GetStdWindowBaseTileNum(void) void DrawHelpMessageWindowWithText(const u8 * text) { - LoadHelpMessageWindowGfx(CreateHelpMessageWindow(), DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM); + LoadHelpMessageWindowGfx(CreateHelpMessageWindow(), DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM)); PrintTextOnHelpMessageWindow(text, 2); } @@ -712,8 +712,8 @@ void DestroyHelpMessageWindow_(void) void LoadSignpostWindowFrameGfx(void) { Menu_LoadStdPal(); - LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, 0x10 * DLG_WINDOW_PALETTE_NUM); - LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, 0x10 * STD_WINDOW_PALETTE_NUM); + LoadSignpostWindowGfx(0, DLG_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(DLG_WINDOW_PALETTE_NUM)); + LoadUserWindowGfx(0, STD_WINDOW_BASE_TILE_NUM, BG_PLTT_ID(STD_WINDOW_PALETTE_NUM)); } void SetDefaultFontsPointer(void) diff --git a/src/oak_speech.c b/src/oak_speech.c index 4d2e4ccb8..77dd3db45 100644 --- a/src/oak_speech.c +++ b/src/oak_speech.c @@ -17,6 +17,8 @@ #include "data.h" #include "constants/songs.h" +#define INTRO_SPECIES SPECIES_NIDORAN_F + enum { WIN_INTRO_TEXTBOX, @@ -751,9 +753,9 @@ static void Task_NewGameScene(u8 taskId) gPaletteFade.bufferTransferDisabled = TRUE; InitStandardTextBoxWindows(); InitTextBoxGfxAndPrinters(); - Menu_LoadStdPalAt(0xD0); - LoadPalette(sOakSpeech_Background_Pals, 0, 0x80); - LoadPalette(GetTextWindowPalette(2) + 15, 0, 2); + Menu_LoadStdPalAt(BG_PLTT_ID(13)); + LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals)); + LoadPalette(GetTextWindowPalette(2) + 15, BG_PLTT_ID(0), PLTT_SIZEOF(1)); break; case 5: sOakSpeechResources->textSpeed = GetTextSpeedSetting(); @@ -919,7 +921,7 @@ static void Task_ControlsGuide_Clear(u8 taskId) CopyBgTilemapBufferToVram(1); DestroyTextCursorSprite(gTasks[taskId].tTextCursorSpriteId); sOakSpeechResources->windowIds[0] = RGB_BLACK; - LoadPalette(sOakSpeechResources->windowIds, 0, 2); + LoadPalette(sOakSpeechResources->windowIds, BG_PLTT_ID(0), PLTT_SIZEOF(1)); gTasks[taskId].tTimer = 32; gTasks[taskId].func = Task_PikachuIntro_LoadPage1; } @@ -1191,7 +1193,7 @@ static void Task_OakSpeech_IsInhabitedFarAndWide(u8 taskId) if (gTasks[taskId].tTimer == 32) { OakSpeechPrintMessage(gOakSpeech_Text_IsInhabitedFarAndWide, sOakSpeechResources->textSpeed); - PlayCry_Normal(SPECIES_NIDORAN_F, 0); + PlayCry_Normal(INTRO_SPECIES, 0); } } } @@ -1737,7 +1739,7 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId) { if (tUnderflowingTimer <= 0 && tSecondaryTimer != 0) tSecondaryTimer--; - BlendPalette(0x40, 0x20, tBlendCoefficient, RGB_WHITE); + BlendPalette(BG_PLTT_ID(4), 0x20, tBlendCoefficient, RGB_WHITE); tBlendCoefficient++; tUnderflowingTimer--; tPlayerPicFadeWhiteTimer = tSecondaryTimer; @@ -1745,8 +1747,8 @@ static void Task_OakSpeech_FadePlayerPicWhite(u8 taskId) { for (i = 0; i < 32; i++) { - gPlttBufferFaded[i + 0x40] = RGB_WHITE; - gPlttBufferUnfaded[i + 0x40] = RGB_WHITE; + gPlttBufferFaded[i + BG_PLTT_ID(4)] = RGB_WHITE; + gPlttBufferUnfaded[i + BG_PLTT_ID(4)] = RGB_WHITE; } DestroyTask(taskId); } @@ -1823,7 +1825,13 @@ static void CB2_ReturnFromNamingScreen(void) FreeAllWindowBuffers(); InitStandardTextBoxWindows(); InitTextBoxGfxAndPrinters(); - LoadPalette(sOakSpeech_Background_Pals, 0, 0xE0); + // Below is reading 48 colors beyond the background palette (into the tiles that follow it). + // This color range is used by the player and rival pic, which will overwrite them with the correct colors. +#ifdef BUGFIX + LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals)); +#else + LoadPalette(sOakSpeech_Background_Pals, BG_PLTT_ID(0), sizeof(sOakSpeech_Background_Pals) + PLTT_SIZEOF(48)); +#endif break; case 4: DecompressAndCopyTileDataToVram(1, sOakSpeech_Background_Tiles, 0, 0, 0); @@ -1876,9 +1884,9 @@ static void CreateNidoranFSprite(u8 taskId) { u8 spriteId; - DecompressPicFromTable(&gMonFrontPicTable[SPECIES_NIDORAN_F], MonSpritesGfxManager_GetSpritePtr(0), SPECIES_NIDORAN_F); - LoadCompressedSpritePaletteUsingHeap(&gMonPaletteTable[SPECIES_NIDORAN_F]); - SetMultiuseSpriteTemplateToPokemon(SPECIES_NIDORAN_F, 0); + DecompressPicFromTable(&gMonFrontPicTable[INTRO_SPECIES], MonSpritesGfxManager_GetSpritePtr(0), INTRO_SPECIES); + LoadCompressedSpritePaletteUsingHeap(&gMonPaletteTable[INTRO_SPECIES]); + SetMultiuseSpriteTemplateToPokemon(INTRO_SPECIES, 0); spriteId = CreateSprite(&gMultiuseSpriteTemplate, 96, 96, 1); gSprites[spriteId].callback = SpriteCallbackDummy; gSprites[spriteId].oam.priority = 1; @@ -1962,19 +1970,19 @@ static void LoadTrainerPic(u16 whichPic, u16 tileOffset) switch (whichPic) { case MALE_PLAYER_PIC: - LoadPalette(sOakSpeech_Red_Pal, 0x40, 0x40); + LoadPalette(sOakSpeech_Red_Pal, BG_PLTT_ID(4), sizeof(sOakSpeech_Red_Pal)); LZ77UnCompVram(sOakSpeech_Red_Tiles, (void *)VRAM + 0x600 + tileOffset); break; case FEMALE_PLAYER_PIC: - LoadPalette(sOakSpeech_Leaf_Pal, 0x40, 0x40); + LoadPalette(sOakSpeech_Leaf_Pal, BG_PLTT_ID(4), sizeof(sOakSpeech_Leaf_Pal)); LZ77UnCompVram(sOakSpeech_Leaf_Tiles, (void *)VRAM + 0x600 + tileOffset); break; case RIVAL_PIC: - LoadPalette(sOakSpeech_Rival_Pal, 0x60, 0x40); + LoadPalette(sOakSpeech_Rival_Pal, BG_PLTT_ID(6), sizeof(sOakSpeech_Rival_Pal)); LZ77UnCompVram(sOakSpeech_Rival_Tiles, (void *)VRAM + 0x600 + tileOffset); break; case OAK_PIC: - LoadPalette(sOakSpeech_Oak_Pal, 0x60, 0x40); + LoadPalette(sOakSpeech_Oak_Pal, BG_PLTT_ID(6), sizeof(sOakSpeech_Oak_Pal)); LZ77UnCompVram(sOakSpeech_Oak_Tiles, (void *)VRAM + 0x600 + tileOffset); break; default: diff --git a/src/option_menu.c b/src/option_menu.c index 9a70614aa..0b55a34ff 100644 --- a/src/option_menu.c +++ b/src/option_menu.c @@ -93,7 +93,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] = .tilemapTop = 0, .width = 30, .height = 2, - .paletteNum = 0xF, + .paletteNum = 15, .baseBlock = 0x16e }, DUMMY_WIN_TEMPLATE @@ -340,14 +340,14 @@ static bool8 LoadOptionMenuPalette(void) LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA); break; case 1: - LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, 0x20, 0x20); + LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP); break; case 2: - LoadPalette(sOptionMenuPalette, 0x10, 0x20); - LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20); + LoadPalette(sOptionMenuPalette, BG_PLTT_ID(1), sizeof(sOptionMenuPalette)); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP); break; case 3: - LoadStdWindowGfxOnBg(1, 0x1B3, 0x30); + LoadStdWindowGfxOnBg(1, 0x1B3, BG_PLTT_ID(3)); break; default: return TRUE; @@ -382,7 +382,7 @@ static void Task_OptionMenu(u8 taskId) break; case 2: LoadBgTiles(1, GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->tiles, 0x120, 0x1AA); - LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, 0x20, 0x20); + LoadPalette(GetUserWindowGraphics(sOptionMenuPtr->option[MENUITEM_FRAMETYPE])->palette, BG_PLTT_ID(2), PLTT_SIZE_4BPP); BufferOptionMenuString(sOptionMenuPtr->cursorPos); break; case 3: diff --git a/src/palette.c b/src/palette.c index 08c6111b7..84f23428f 100644 --- a/src/palette.c +++ b/src/palette.c @@ -59,7 +59,7 @@ ALIGNED(4) EWRAM_DATA u16 gPlttBufferFaded[PLTT_BUFFER_SIZE] = {0}; static EWRAM_DATA struct PaletteStruct sPaletteStructs[NUM_PALETTE_STRUCTS] = {0}; EWRAM_DATA struct PaletteFadeControl gPaletteFade = {0}; static EWRAM_DATA u32 sPlttBufferTransferPending = 0; -EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_DECOMP_BUFFER_SIZE] = {0}; +EWRAM_DATA u8 gPaletteDecompressionBuffer[PLTT_SIZE] = {0}; static const struct PaletteStructTemplate sDummyPaletteStructTemplate = { @@ -141,7 +141,7 @@ void ReadPlttIntoBuffers(void) u16 i; u16 *pltt = (u16 *)PLTT; - for (i = 0; i < PLTT_SIZE / 2; ++i) + for (i = 0; i < PLTT_BUFFER_SIZE; ++i) { gPlttBufferUnfaded[i] = pltt[i]; gPlttBufferFaded[i] = pltt[i]; @@ -420,7 +420,7 @@ static u8 UpdateNormalPaletteFade(void) else { selectedPalettes = gPaletteFade_selectedPalettes >> 16; - paletteOffset = 256; + paletteOffset = OBJ_PLTT_OFFSET; } while (selectedPalettes) { @@ -559,13 +559,13 @@ static u8 UpdateFastPaletteFade(void) return gPaletteFade.active ? PALETTE_FADE_STATUS_ACTIVE : PALETTE_FADE_STATUS_DONE; if (gPaletteFade.objPaletteToggle) { - paletteOffsetStart = 256; - paletteOffsetEnd = 512; + paletteOffsetStart = OBJ_PLTT_OFFSET; + paletteOffsetEnd = PLTT_BUFFER_SIZE; } else { paletteOffsetStart = 0; - paletteOffsetEnd = 256; + paletteOffsetEnd = OBJ_PLTT_OFFSET; } switch (gPaletteFade_submode) { @@ -791,7 +791,7 @@ void BlendPalettes(u32 selectedPalettes, u8 coeff, u16 color) void BlendPalettesUnfaded(u32 selectedPalettes, u8 coeff, u16 color) { // This copy is done via DMA in both RUBY and EMERALD - CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, 0x400); + CpuFastCopy(gPlttBufferUnfaded, gPlttBufferFaded, PLTT_SIZE); BlendPalettes(selectedPalettes, coeff, color); } diff --git a/src/party_menu.c b/src/party_menu.c index a62fe442e..571dcf2c9 100644 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -670,8 +670,8 @@ static bool8 AllocPartyMenuBgGfx(void) } break; case 2: - LoadCompressedPalette(gPartyMenuBg_Pal, 0, 0x160); - CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 0x160); + LoadCompressedPalette(gPartyMenuBg_Pal, BG_PLTT_ID(0), 11 * PLTT_SIZE_4BPP); + CpuCopy16(gPlttBufferUnfaded, sPartyMenuInternal->palBuffer, 11 * PLTT_SIZE_4BPP); ++sPartyMenuInternal->data[0]; break; case 3: @@ -702,9 +702,9 @@ static bool8 AllocPartyMenuBgGfx(void) static void PartyPaletteBufferCopy(u8 offset) { - offset *= 16; - CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferUnfaded[offset], 32); - CpuCopy16(&gPlttBufferUnfaded[0x30], &gPlttBufferFaded[offset], 32); + offset = PLTT_ID(offset); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferUnfaded[offset], PLTT_SIZE_4BPP); + CpuCopy16(&gPlttBufferUnfaded[BG_PLTT_ID(3)], &gPlttBufferFaded[offset], PLTT_SIZE_4BPP); } static void FreePartyPointers(void) @@ -2006,8 +2006,8 @@ static void Task_FirstBattleEnterParty_WaitFadeNormal(u8 taskId) { if (!gPaletteFade.active) { - LoadUserWindowGfx(0, 0x4F, 0xD0); - LoadStdWindowGfx(0, 0x58, 0xF0); + LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13)); + LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15)); if (gPartyMenu.action == PARTY_ACTION_USE_ITEM) DisplayPartyMenuStdMessage(PARTY_MSG_USE_ON_WHICH_MON); else @@ -2117,10 +2117,10 @@ static void InitPartyMenuWindows(u8 layout) DeactivateAllTextPrinters(); for (i = 0; i < PARTY_SIZE; ++i) FillWindowPixelBuffer(i, PIXEL_FILL(0)); - LoadUserWindowGfx(0, 0x4F, 0xD0); - LoadStdWindowGfx(0, 0x58, 0xF0); - LoadPalette(GetTextWindowPalette(2), 0xC0, 0x20); - LoadPalette(GetTextWindowPalette(0), 0xE0, 0x20); + LoadUserWindowGfx(0, 0x4F, BG_PLTT_ID(13)); + LoadStdWindowGfx(0, 0x58, BG_PLTT_ID(15)); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(12), PLTT_SIZE_4BPP); + LoadPalette(GetTextWindowPalette(0), BG_PLTT_ID(14), PLTT_SIZE_4BPP); } static void CreateCancelConfirmWindows(bool8 chooseMultiple) @@ -2215,16 +2215,16 @@ static void DrawEmptySlot(u8 windowId) BlitBitmapToPartyWindow(windowId, sSlotTilemap_WideEmpty, 18, 0, 0, 18, 3); } -#define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \ -{ \ - LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palNum, 2); \ - LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palNum, 2); \ - LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palNum, 2); \ +#define LOAD_PARTY_BOX_PAL(paletteIds, paletteOffsets) \ +{ \ + LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[0]), paletteOffsets[0] + palOffset, PLTT_SIZEOF(1)); \ + LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[1]), paletteOffsets[1] + palOffset, PLTT_SIZEOF(1)); \ + LoadPalette(GetPartyMenuPalBufferPtr(paletteIds[2]), paletteOffsets[2] + palOffset, PLTT_SIZEOF(1)); \ } static void LoadPartyBoxPalette(struct PartyMenuBox *menuBox, u8 palFlags) { - u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16; + u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM)); if (palFlags & PARTY_PAL_TO_SOFTBOIL) { @@ -2349,7 +2349,7 @@ static void DisplayPartyPokemonGenderNidoranCheck(struct Pokemon *mon, struct Pa static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, struct PartyMenuBox *menuBox) { - u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16; + u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM)); if (species == SPECIES_NONE) return; @@ -2358,13 +2358,13 @@ static void DisplayPartyPokemonGender(u8 gender, u16 species, u8 *nickname, stru switch (gender) { case MON_MALE: - LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palNum, 2); - LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palNum, 2); + LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1)); + LoadPalette(GetPartyMenuPalBufferPtr(sGenderMalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1)); DisplayPartyPokemonBarDetail(menuBox->windowId, gText_MaleSymbol, 2, &menuBox->infoRects->dimensions[8]); break; case MON_FEMALE: - LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palNum, 2); - LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palNum, 2); + LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[0]), sGenderPalOffsets[0] + palOffset, PLTT_SIZEOF(1)); + LoadPalette(GetPartyMenuPalBufferPtr(sGenderFemalePalIds[1]), sGenderPalOffsets[1] + palOffset, PLTT_SIZEOF(1)); DisplayPartyPokemonBarDetail(menuBox->windowId, gText_FemaleSymbol, 2, &menuBox->infoRects->dimensions[8]); break; } @@ -2417,23 +2417,23 @@ static void DisplayPartyPokemonHPBarCheck(struct Pokemon *mon, struct PartyMenuB static void DisplayPartyPokemonHPBar(u16 hp, u16 maxhp, struct PartyMenuBox *menuBox) { - u8 palNum = GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM) * 16; + u8 palOffset = BG_PLTT_ID(GetWindowAttribute(menuBox->windowId, WINDOW_PALETTE_NUM)); u8 hpFraction; switch (GetHPBarLevel(hp, maxhp)) { case HP_BAR_GREEN: case HP_BAR_FULL: - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1)); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarGreenPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1)); break; case HP_BAR_YELLOW: - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1)); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarYellowPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1)); break; default: - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palNum, 2); - LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palNum, 2); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[0]), sHPBarPalOffsets[0] + palOffset, PLTT_SIZEOF(1)); + LoadPalette(GetPartyMenuPalBufferPtr(sHPBarRedPalIds[1]), sHPBarPalOffsets[1] + palOffset, PLTT_SIZEOF(1)); break; } hpFraction = GetScaledHPFraction(hp, maxhp, menuBox->infoRects->dimensions[22]); @@ -2503,7 +2503,7 @@ void DisplayPartyMenuStdMessage(u32 stringId) else if (!ShouldUseChooseMonText()) stringId = PARTY_MSG_CHOOSE_MON_OR_CANCEL; } - DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 0xF); + DrawStdFrameWithCustomTileAndPalette(*windowPtr, FALSE, 0x58, 15); StringExpandPlaceholders(gStringVar4, sActionStringTable[stringId]); AddTextPrinterParameterized(*windowPtr, FONT_NORMAL, gStringVar4, 0, 2, 0, 0); ScheduleBgCopyTilemapToVram(2); @@ -2603,7 +2603,7 @@ static bool8 FirstBattleEnterParty_CreateWindowAndMsg1Printer(void) { u8 windowId = AddWindow(&sWindowTemplate_FirstBattleOakVoiceover); - LoadMenuMessageWindowGfx(windowId, 0x4F, 0xE0); + LoadMenuMessageWindowGfx(windowId, 0x4F, BG_PLTT_ID(14)); DrawDialogFrameWithCustomTileAndPalette(windowId, 1, 0x4F, 0xE); PartyMenu_Oak_PrintText(windowId, gText_OakImportantToGetToKnowPokemonThroughly); return windowId; @@ -4285,7 +4285,7 @@ static void CB2_UseItem(void) { GiveMoveToMon(&gPlayerParty[gPartyMenu.slotId], ItemIdToBattleMoveId(gSpecialVar_ItemId)); AdjustFriendship(&gPlayerParty[gPartyMenu.slotId], FRIENDSHIP_EVENT_LEARN_TMHM); - if (gSpecialVar_ItemId <= ITEM_TM50) + if (gSpecialVar_ItemId < ITEM_HM01) RemoveBagItem(gSpecialVar_ItemId, 1); SetMainCallback2(gPartyMenu.exitCallback); } @@ -4305,7 +4305,7 @@ static void CB2_UseTMHMAfterForgettingMove(void) SetMonMoveSlot(mon, ItemIdToBattleMoveId(gSpecialVar_ItemId), moveIdx); AdjustFriendship(mon, FRIENDSHIP_EVENT_LEARN_TMHM); ItemUse_SetQuestLogEvent(QL_EVENT_USED_ITEM, mon, gSpecialVar_ItemId, move); - if (gSpecialVar_ItemId <= ITEM_TM50) + if (gSpecialVar_ItemId < ITEM_HM01) RemoveBagItem(gSpecialVar_ItemId, 1); SetMainCallback2(gPartyMenu.exitCallback); } @@ -4809,7 +4809,7 @@ static void Task_LearnedMove(u8 taskId) if (learnMoveMethod == LEARN_VIA_TMHM) { AdjustFriendship(mon, FRIENDSHIP_EVENT_LEARN_TMHM); - if (item <= ITEM_TM50) + if (item < ITEM_HM01) RemoveBagItem(item, 1); } GetMonNickname(mon, gStringVar1); diff --git a/src/pc_screen_effect.c b/src/pc_screen_effect.c index e7303a030..ee91b80a7 100644 --- a/src/pc_screen_effect.c +++ b/src/pc_screen_effect.c @@ -83,7 +83,7 @@ static void Task_PCScreenEffect_TurnOn(u8 taskId) SetGpuReg(REG_OFFSET_BLDY, 0); SetGpuReg(REG_OFFSET_BLDCNT, task->tBldCntBak); BlendPalettes(PALETTES_ALL, 0, RGB_BLACK); - gPlttBufferFaded[0] = 0; + gPlttBufferFaded[BG_PLTT_ID(0)] = 0; } SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right)); if (task->tWin0Left) @@ -117,7 +117,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId) switch (task->tState) { case 0: - gPlttBufferFaded[0] = 0; + gPlttBufferFaded[BG_PLTT_ID(0)] = 0; break; case 1: task->tWin0Left = 0; @@ -152,7 +152,7 @@ static void Task_PCScreenEffect_TurnOff(u8 taskId) task->tWin0Left = 120; task->tWin0Right = 120; BlendPalettes(PALETTES_ALL, 0x10, RGB_BLACK); - gPlttBufferFaded[0] = 0; + gPlttBufferFaded[BG_PLTT_ID(0)] = 0; } SetGpuReg(REG_OFFSET_WIN0H, WIN_RANGE(task->tWin0Left, task->tWin0Right)); if (task->tWin0Left != 120) diff --git a/src/pokedex_area_markers.c b/src/pokedex_area_markers.c index b98943b06..565911539 100644 --- a/src/pokedex_area_markers.c +++ b/src/pokedex_area_markers.c @@ -201,7 +201,7 @@ u8 CreatePokedexAreaMarkers(u16 species, u16 tilesTag, u8 palIdx, u8 y) spriteSheet.size = 0x4A0; spriteSheet.tag = tilesTag; LoadCompressedSpriteSheet(&spriteSheet); - LoadPalette(sMarkerPal, 0x100 + 16 * palIdx, 0x20); + LoadPalette(sMarkerPal, OBJ_PLTT_ID(palIdx), sizeof(sMarkerPal)); // Get marker subsprites taskId = CreateTask(Task_ShowAreaMarkers, 0); diff --git a/src/pokedex_screen.c b/src/pokedex_screen.c index 53a6485d8..01960d240 100644 --- a/src/pokedex_screen.c +++ b/src/pokedex_screen.c @@ -922,15 +922,15 @@ void DexScreen_LoadResources(void) ChangeBgY(3, 0, 0); gPaletteFade.bufferTransferDisabled = TRUE; if (natDex) - LoadPalette(sNationalDexPalette, 0, 0x200); + LoadPalette(sNationalDexPalette, BG_PLTT_ID(0), sizeof(sNationalDexPalette)); else - LoadPalette(sKantoDexPalette, 0, 0x200); - FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0x00); - FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); - FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 0x0F); - FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 0x11); - FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 0x0F); + LoadPalette(sKantoDexPalette, BG_PLTT_ID(0), sizeof(sKantoDexPalette)); + FillBgTilemapBufferRect(3, 0x001, 0, 0, 32, 32, 0); + FillBgTilemapBufferRect(2, 0x000, 0, 0, 32, 32, 17); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17); + FillBgTilemapBufferRect(0, 0x003, 0, 0, 32, 2, 15); + FillBgTilemapBufferRect(0, 0x000, 0, 2, 32, 16, 17); + FillBgTilemapBufferRect(0, 0x003, 0, 18, 32, 2, 15); } void CB2_OpenPokedexFromStartMenu(void) @@ -1124,9 +1124,9 @@ static void Task_PokedexScreen(u8 taskId) static void DexScreen_InitGfxForTopMenu(void) { struct ListMenuTemplate listMenuTemplate; - FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); - FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 0x11); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 0x11); + FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0); + FillBgTilemapBufferRect(2, 0x000, 0, 0, 30, 20, 17); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 30, 20, 17); sPokedexScreenData->modeSelectWindowId = AddWindow(&sWindowTemplate_ModeSelect); sPokedexScreenData->selectionIconWindowId = AddWindow(&sWindowTemplate_SelectionIcon); sPokedexScreenData->dexCountsWindowId = AddWindow(&sWindowTemplate_DexCounts); @@ -1177,12 +1177,12 @@ static void MoveCursorFunc_DexModeSelect(s32 itemIndex, bool8 onInit, struct Lis if (itemIndex == LIST_CANCEL) { CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconTiles_Cancel, 0x000, 0x000); - LoadPalette(sTopMenuSelectionIconPals_Cancel, 0x10, 0x20); + LoadPalette(sTopMenuSelectionIconPals_Cancel, BG_PLTT_ID(1), PLTT_SIZE_4BPP); } else { CopyToWindowPixelBuffer(sPokedexScreenData->selectionIconWindowId, sTopMenuSelectionIconGfxPtrs[itemIndex].tiles, 0x000, 0x000); - LoadPalette(sTopMenuSelectionIconGfxPtrs[itemIndex].pal, 0x10, 0x20); + LoadPalette(sTopMenuSelectionIconGfxPtrs[itemIndex].pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP); } PutWindowTilemap(sPokedexScreenData->selectionIconWindowId); CopyWindowToVram(sPokedexScreenData->selectionIconWindowId, COPYWIN_GFX); @@ -1201,8 +1201,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId) switch (sPokedexScreenData->state) { case 0: - ListMenuLoadStdPalAt(0x10, 0); - ListMenuLoadStdPalAt(0x20, 1); + ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0); + ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1); sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId); sPokedexScreenData->state = 2; break; @@ -1266,8 +1266,8 @@ static void Task_DexScreen_NumericalOrder(u8 taskId) static void DexScreen_InitGfxForNumericalOrderList(void) { struct ListMenuTemplate template; - FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17); sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu); template = sListMenuTemplate_OrderedListMenu; template.items = sPokedexScreenData->listItems; @@ -1287,8 +1287,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId) switch (sPokedexScreenData->state) { case 0: - ListMenuLoadStdPalAt(0x10, 0); - ListMenuLoadStdPalAt(0x20, 1); + ListMenuLoadStdPalAt(BG_PLTT_ID(1), 0); + ListMenuLoadStdPalAt(BG_PLTT_ID(2), 1); sPokedexScreenData->orderedDexCount = DexScreen_CountMonsInOrderedList(sPokedexScreenData->dexOrderId); sPokedexScreenData->state = 2; break; @@ -1352,8 +1352,8 @@ static void Task_DexScreen_CharacteristicOrder(u8 taskId) static void DexScreen_CreateCharacteristicListMenu(void) { struct ListMenuTemplate template; - FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0x00); - FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 0x11); + FillBgTilemapBufferRect(3, 0x00E, 0, 0, 30, 20, 0); + FillBgTilemapBufferRect(1, 0x000, 0, 0, 32, 32, 17); sPokedexScreenData->numericalOrderWindowId = AddWindow(&sWindowTemplate_OrderedListMenu); template = sListMenuTemplate_OrderedListMenu; template.items = sPokedexScreenData->listItems; @@ -1554,11 +1554,11 @@ static void ItemPrintFunc_OrderedListMenu(u8 windowId, u32 itemId, u8 y) DexScreen_PrintMonDexNo(sPokedexScreenData->numericalOrderWindowId, FONT_SMALL, species, 12, y); if (caught) { - BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, 0, 0x28, y); + BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, MENU_INFO_ICON_CAUGHT, 0x28, y); type1 = gSpeciesInfo[species].types[0]; - BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, type1 + 1, 0x78, y); + BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, type1 + 1, 0x78, y); if (type1 != gSpeciesInfo[species].types[1]) - BlitMoveInfoIcon(sPokedexScreenData->numericalOrderWindowId, gSpeciesInfo[species].types[1] + 1, 0x98, y); + BlitMenuInfoIcon(sPokedexScreenData->numericalOrderWindowId, gSpeciesInfo[species].types[1] + 1, 0x98, y); } } @@ -2405,10 +2405,10 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos) { for (i = 0; i < 4; i++) { - LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2); - LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2); + LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); + LoadPalette(&sDexScreen_CategoryCursorPals[1], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); } - LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x141, 2); + LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x141, PLTT_SIZEOF(1)); sPokedexScreenData->categoryPageSelectionCursorTimer = 0; } else @@ -2421,16 +2421,16 @@ static void DexScreen_CreateCategoryPageSelectionCursor(u8 cursorPos) { if (i == cursorPos) { - LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], 0x52 + 0x10 * i, 2); - LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 3], 0x58 + 0x10 * i, 2); + LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); + LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 3], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); } else { - LoadPalette(&sDexScreen_CategoryCursorPals[0], 0x52 + 0x10 * i, 2); - LoadPalette(&sDexScreen_CategoryCursorPals[1], 0x58 + 0x10 * i, 2); + LoadPalette(&sDexScreen_CategoryCursorPals[0], PLTT_ID(i) + PLTT_ID(5) + 2 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); + LoadPalette(&sDexScreen_CategoryCursorPals[1], PLTT_ID(i) + PLTT_ID(5) + 8 + BG_PLTT_OFFSET, PLTT_SIZEOF(1)); } } - LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], 0x141, 2); + LoadPalette(&sDexScreen_CategoryCursorPals[2 * palIdx + 2], OBJ_PLTT_ID(4) + 1, PLTT_SIZEOF(1)); } } @@ -3054,7 +3054,7 @@ u8 DexScreen_DrawMonAreaPage(void) // Draw the mon icon FillWindowPixelBuffer(sPokedexScreenData->windowIds[11], PIXEL_FILL(0)); - ListMenu_LoadMonIconPalette(160, species); + ListMenu_LoadMonIconPalette(BG_PLTT_ID(10), species); ListMenu_DrawMonIconGraphics(sPokedexScreenData->windowIds[11], species, DexScreen_GetDefaultPersonality(species), 0, 0); PutWindowTilemap(sPokedexScreenData->windowIds[11]); CopyWindowToVram(sPokedexScreenData->windowIds[11], COPYWIN_GFX); @@ -3087,20 +3087,20 @@ u8 DexScreen_DrawMonAreaPage(void) // Type icons FillWindowPixelBuffer(sPokedexScreenData->windowIds[12], PIXEL_FILL(0)); - ListMenuLoadStdPalAt(176, 1); + ListMenuLoadStdPalAt(BG_PLTT_ID(11), 1); if (monIsCaught) { - BlitMoveInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[0], 0, 1); + BlitMenuInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[0], 0, 1); if (gSpeciesInfo[species].types[0] != gSpeciesInfo[species].types[1]) - BlitMoveInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[1], 32, 1); + BlitMenuInfoIcon(sPokedexScreenData->windowIds[12], 1 + gSpeciesInfo[species].types[1], 32, 1); } PutWindowTilemap(sPokedexScreenData->windowIds[12]); CopyWindowToVram(sPokedexScreenData->windowIds[12], COPYWIN_GFX); // Show size comparison ResetAllPicSprites(); - LoadPalette(sPalette_Silhouette, 288, 32); + LoadPalette(sPalette_Silhouette, OBJ_PLTT_ID(2), PLTT_SIZE_4BPP); if (monIsCaught) { diff --git a/src/pokemon_icon.c b/src/pokemon_icon.c index 6385fe420..037b1bfa8 100644 --- a/src/pokemon_icon.c +++ b/src/pokemon_icon.c @@ -1126,7 +1126,7 @@ void DestroyMonIcon(struct Sprite *sprite) void LoadMonIconPalettes(void) { u8 i; - for (i = 0; i < NELEMS(gMonIconPaletteTable); i++) + for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++) LoadSpritePalette(&gMonIconPaletteTable[i]); } @@ -1151,7 +1151,7 @@ void LoadMonIconPalette(u16 species) void FreeMonIconPalettes(void) { u8 i; - for (i = 0; i < 6; i++) + for (i = 0; i < ARRAY_COUNT(gMonIconPaletteTable); i++) FreeSpritePaletteByTag(gMonIconPaletteTable[i].tag); } @@ -1179,12 +1179,12 @@ void SpriteCB_MonIcon(struct Sprite *sprite) void LoadMonIconPalettesAt(u16 offset) { int i; - if (offset <= 0x100 - 0x60) + if (offset <= BG_PLTT_ID(16 - ARRAY_COUNT(gMonIconPaletteTable))) { - for (i = 0; i < (int)NELEMS(gMonIconPaletteTable); i++) + for (i = 0; i < (int)ARRAY_COUNT(gMonIconPaletteTable); i++) { - LoadPalette(gMonIconPaletteTable[i].data, offset, 0x20); - offset += 0x10; + LoadPalette(gMonIconPaletteTable[i].data, offset, PLTT_SIZE_4BPP); + offset += 16; } } } diff --git a/src/pokemon_jump.c b/src/pokemon_jump.c index 49e94867b..fd695bef0 100644 --- a/src/pokemon_jump.c +++ b/src/pokemon_jump.c @@ -3039,22 +3039,22 @@ static void LoadPokeJumpGfx(void) ResetTempTileDataBuffers(); LoadSpriteSheetsAndPalettes(sPokemonJumpGfx); InitDigitPrinters(); - LoadPalette(sBg_Pal, 0, 0x20); + LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal)); DecompressAndCopyTileDataToVram(BG_SCENERY, sBg_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_SCENERY, sBg_Tilemap, 0, 0, 1); - LoadPalette(sVenusaur_Pal, 0x30, 0x20); + LoadPalette(sVenusaur_Pal, BG_PLTT_ID(3), sizeof(sVenusaur_Pal)); DecompressAndCopyTileDataToVram(BG_VENUSAUR, sVenusaur_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_VENUSAUR, sVenusaur_Tilemap, 0, 0, 1); - LoadPalette(sBonuses_Pal, 0x10, 0x20); + LoadPalette(sBonuses_Pal, BG_PLTT_ID(1), sizeof(sBonuses_Pal)); DecompressAndCopyTileDataToVram(BG_BONUSES, sBonuses_Gfx, 0, 0, 0); DecompressAndCopyTileDataToVram(BG_BONUSES, sBonuses_Tilemap, 0, 0, 1); - LoadPalette(sInterface_Pal, 0x20, 0x20); + LoadPalette(sInterface_Pal, BG_PLTT_ID(2), sizeof(sInterface_Pal)); SetBgTilemapBuffer(BG_INTERFACE, sPokemonJumpGfx->tilemapBuffer); FillBgTilemapBufferRect_Palette0(BG_INTERFACE, 0, 0, 0, 0x20, 0x20); PrintScoreSuffixes(); PrintScore(0); - LoadStdWindowGfxOnBg(0, 1, 0xE0); - LoadUserWindowGfx2(0, 0x00A, 0xD0); + LoadStdWindowGfxOnBg(0, 1, BG_PLTT_ID(14)); + LoadUserWindowGfx2(0, 0x00A, BG_PLTT_ID(13)); CopyBgTilemapBufferToVram(BG_INTERFACE); CopyBgTilemapBufferToVram(BG_VENUSAUR); CopyBgTilemapBufferToVram(BG_BONUSES); @@ -3472,7 +3472,7 @@ static u32 AddMessageWindow(u32 left, u32 top, u32 width, u32 height) window.tilemapTop = top; window.width = width; window.height = height; - window.paletteNum = 0xF; + window.paletteNum = 15; window.baseBlock = 0x43; windowId = AddWindow(&window); @@ -3493,7 +3493,7 @@ static void CreatePokeJumpYesNoMenu(u16 left, u16 top, u8 cursorPos) window.paletteNum = 2; window.baseBlock = 0x2B; - CreateYesNoMenu(&window, FONT_NORMAL, 0, 2, 0x00a, 0xD, a); + CreateYesNoMenu(&window, FONT_NORMAL, 0, 2, 0x00a, 13, a); } // "Points" for jump score and "times" for number of jumps in a row @@ -4554,8 +4554,8 @@ static void PrintRecordsText(u16 windowId) recordNums[1] = records->bestJumpScore; recordNums[2] = records->excellentsInRow; - LoadStdWindowGfx(windowId, 0x21D, 0xD0); - DrawTextBorderOuter(windowId, 0x21D, 0xD); + LoadStdWindowGfx(windowId, 0x21D, BG_PLTT_ID(13)); + DrawTextBorderOuter(windowId, 0x21D, 13); FillWindowPixelBuffer(windowId, PIXEL_FILL(1)); AddTextPrinterParameterized5(windowId, FONT_NORMAL, gText_PkmnJumpRecords, 0, 0, TEXT_SKIP_DRAW, NULL, 1, 0); for (i = 0; i < ARRAY_COUNT(sRecordsTexts); i++) diff --git a/src/pokemon_special_anim_scene.c b/src/pokemon_special_anim_scene.c index 216966921..164d936a1 100644 --- a/src/pokemon_special_anim_scene.c +++ b/src/pokemon_special_anim_scene.c @@ -341,7 +341,7 @@ void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 an FillBgTilemapBufferRect_Palette0(0, 0x000, 0, 0, 32, 32); LoadBgGfxByAnimType(animType); FillWindowPixelBuffer(0, PIXEL_FILL(0)); - LoadUserWindowGfx(0, 0x000, 0xe0); + LoadUserWindowGfx(0, 0x000, BG_PLTT_ID(14)); CopyWindowToVram(0, COPYWIN_FULL); ShowBg(0); ShowBg(3); @@ -370,7 +370,7 @@ void PSA_ShowMessageWindow(void) { PutWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - DrawTextBorderOuter(0, 0x001, 0xE); + DrawTextBorderOuter(0, 0x001, 14); CopyWindowToVram(0, COPYWIN_FULL); } @@ -612,7 +612,7 @@ bool8 PSA_LevelUpVerticalSpritesTaskIsRunning(void) // Unused void PSA_DrawLevelUpWindowPg1(u16 *statsBefore, u16 *statsAfter) { - DrawTextBorderOuter(1, 0x001, 0xE); + DrawTextBorderOuter(1, 0x001, 14); DrawLevelUpWindowPg1(1, statsBefore, statsAfter, TEXT_COLOR_WHITE, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY); PutWindowTilemap(1); CopyWindowToVram(1, COPYWIN_FULL); @@ -636,9 +636,9 @@ static void LoadBgGfxByAnimType(u16 animType) CopyToBgTilemapBuffer(3, sBg_Tilemap, 0, 0x000); DecompressAndCopyTileDataToVram(3, sBg_Gfx, 0, 0x000, 0); if (animType != 4) - LoadPalette(sBg_Pal, 0x00, 0x20); + LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal)); else - LoadPalette(sBg_TmHm_Pal, 0x00, 0x20); + LoadPalette(sBg_TmHm_Pal, BG_PLTT_ID(0), sizeof(sBg_TmHm_Pal)); } void PSA_CreateMonSpriteAtCloseness(u8 closeness) diff --git a/src/pokemon_storage_system_graphics.c b/src/pokemon_storage_system_graphics.c index 946b319d9..046f82d9c 100644 --- a/src/pokemon_storage_system_graphics.c +++ b/src/pokemon_storage_system_graphics.c @@ -1205,9 +1205,9 @@ static void LoadWallpaperGfx(u8 boxId, s8 direction) DrawWallpaper(gStorage->wallpaperBgTilemapBuffer, gStorage->wallpaperTilemap, gStorage->wallpaperLoadDir, gStorage->wallpaperOffset); if (gStorage->wallpaperLoadDir != 0) - LoadPalette(wallpaper->palettes, (gStorage->wallpaperOffset * 32) + 0x40, 0x40); + LoadPalette(wallpaper->palettes, BG_PLTT_ID(4) + BG_PLTT_ID(gStorage->wallpaperOffset * 2), 2 * PLTT_SIZE_4BPP); else - CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[(gStorage->wallpaperOffset * 32) + 0x40], 0x40); + CpuCopy16(wallpaper->palettes, &gPlttBufferUnfaded[BG_PLTT_ID(4) + BG_PLTT_ID(gStorage->wallpaperOffset * 2)], 2 * PLTT_SIZE_4BPP); DecompressAndLoadBgGfxUsingHeap(2, wallpaper->tiles, 0, 256 * gStorage->wallpaperOffset, 0); @@ -1281,12 +1281,12 @@ static void InitBoxTitle(u8 boxId) gStorage->wallpaperPalBits = 0x3F0; tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); - gStorage->boxTitlePalOffset = 0x10e + 16 * tagIndex; - gStorage->wallpaperPalBits |= 0x10000 << tagIndex; + gStorage->boxTitlePalOffset = OBJ_PLTT_ID(tagIndex) + 14; + gStorage->wallpaperPalBits |= (1 << 16) << tagIndex; tagIndex = IndexOfSpritePaletteTag(PALTAG_BOX_TITLE); - gStorage->boxTitleAltPalOffset = 0x10e + 16 * tagIndex; - gStorage->wallpaperPalBits |= 0x10000 << tagIndex; + gStorage->boxTitleAltPalOffset = OBJ_PLTT_ID(tagIndex) + 14; + gStorage->wallpaperPalBits |= (1 << 16) << tagIndex; StringCopyPadded(gStorage->boxTitleText, GetBoxNamePtr(boxId), 0, 8); DrawTextWindowAndBufferTiles(gStorage->boxTitleText, gStorage->boxTitleTiles, 0, 0, gStorage->boxTitleUnused, 2); @@ -1387,9 +1387,9 @@ static void CycleBoxTitleColor(void) u8 boxId = StorageGetCurrentBox(); u8 wallpaperId = GetBoxWallpaper(boxId); if (gStorage->boxTitleCycleId == 0) - CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitlePalOffset, 4); + CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitlePalOffset], PLTT_SIZEOF(2)); else - CpuCopy16(sBoxTitleColors[wallpaperId], gPlttBufferUnfaded + gStorage->boxTitleAltPalOffset, 4); + CpuCopy16(sBoxTitleColors[wallpaperId], &gPlttBufferUnfaded[gStorage->boxTitleAltPalOffset], PLTT_SIZEOF(2)); } static s16 GetBoxTitleBaseX(const u8 *string) diff --git a/src/pokemon_storage_system_misc.c b/src/pokemon_storage_system_misc.c index 9d219c7d2..c75359421 100644 --- a/src/pokemon_storage_system_misc.c +++ b/src/pokemon_storage_system_misc.c @@ -118,7 +118,7 @@ static bool8 MultiMove_Function_Start(void) { case 0: HideBg(0); - LoadMonIconPalettesAt(0x80); + LoadMonIconPalettesAt(BG_PLTT_ID(8)); sMultiMove->state++; break; case 1: @@ -167,7 +167,7 @@ static bool8 MultiMove_Function_Single(void) if (!IsDma3ManagerBusyWithBgCopy()) { SetCursorPriorityTo1(); - LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); + LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP); ShowBg(0); return FALSE; } @@ -273,7 +273,7 @@ static bool8 MultiMove_Function_PlaceMons(void) case 3: if (!IsDma3ManagerBusyWithBgCopy()) { - LoadPalette(GetTextWindowPalette(3), 0xD0, 0x20); + LoadPalette(GetTextWindowPalette(3), BG_PLTT_ID(13), PLTT_SIZE_4BPP); SetCursorPriorityTo1(); ShowBg(0); return FALSE; @@ -703,8 +703,7 @@ void CreateItemIconSprites(void) LoadCompressedSpriteSheet(&spriteSheet); gStorage->itemIcons[i].tiles = GetSpriteTileStartByTag(spriteSheet.tag) * TILE_SIZE_4BPP + (void *)(OBJ_VRAM0); gStorage->itemIcons[i].palIndex = AllocSpritePalette(PALTAG_ITEM_ICON_0 + i); - gStorage->itemIcons[i].palIndex *= 16; - gStorage->itemIcons[i].palIndex += 0x100; + gStorage->itemIcons[i].palIndex = OBJ_PLTT_ID(gStorage->itemIcons[i].palIndex); spriteTemplate.tileTag = GFXTAG_ITEM_ICON_0 + i; spriteTemplate.paletteTag = PALTAG_ITEM_ICON_0 + i; spriteId = CreateSprite(&spriteTemplate, 0, 0, 11); @@ -1060,7 +1059,7 @@ static void LoadItemIconGfx(u8 id, const u32 *itemTiles, const u32 *itemPal) CpuFastCopy(gStorage->itemIconBuffer, gStorage->itemIcons[id].tiles, 0x200); LZ77UnCompWram(itemPal, gStorage->itemIconBuffer); - LoadPalette(gStorage->itemIconBuffer, gStorage->itemIcons[id].palIndex, 0x20); + LoadPalette(gStorage->itemIconBuffer, gStorage->itemIcons[id].palIndex, PLTT_SIZE_4BPP); } static void SetItemIconAffineAnim(u8 id, u8 animNum) @@ -1129,12 +1128,12 @@ static void SetItemIconActive(u8 id, bool8 show) static const u32 *GetItemIconPic(u16 itemId) { - return GetItemIconGfxPtr(itemId, 0); + return GetItemIconGfxPtr(itemId, ITEMICON_TILES); } static const u32 *GetItemIconPalette(u16 itemId) { - return GetItemIconGfxPtr(itemId, 1); + return GetItemIconGfxPtr(itemId, ITEMICON_PAL); } void PrintItemDescription(void) diff --git a/src/pokemon_storage_system_tasks.c b/src/pokemon_storage_system_tasks.c index 06d0fb003..fdc5250c3 100644 --- a/src/pokemon_storage_system_tasks.c +++ b/src/pokemon_storage_system_tasks.c @@ -534,7 +534,7 @@ static void Task_InitPokeStorage(u8 taskId) PutWindowTilemap(0); ClearWindowTilemap(1); CpuFill32(0, (void *)VRAM, 0x200); - LoadUserWindowGfx(1, 0xB, 0xE0); + LoadUserWindowGfx(1, 0xB, BG_PLTT_ID(14)); break; case 3: ResetAllBgCoords(); @@ -2147,13 +2147,13 @@ static void LoadsMiscSpritePalette(void) static void InitPalettesAndSprites(void) { - LoadPalette(gPokeStorageInterface_Pal, 0, 0x20); - LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, 0x20, 0x20); - LoadPalette(sItemInfoFrame_Pal, 0xF0, 0x20); + LoadPalette(gPokeStorageInterface_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(gPokeStorageInterface_NoDisplayMon_Pal, BG_PLTT_ID(2), PLTT_SIZE_4BPP); + LoadPalette(sItemInfoFrame_Pal, BG_PLTT_ID(15), sizeof(sItemInfoFrame_Pal)); if (gStorage->boxOption != OPTION_MOVE_ITEMS) - LoadPalette(sScrollingBg_Pal, 0x30, sizeof(sScrollingBg_Pal)); + LoadPalette(sScrollingBg_Pal, BG_PLTT_ID(3), sizeof(sScrollingBg_Pal)); else - LoadPalette(sScrollingBgMoveItems_Pal, 0x30, sizeof(sScrollingBgMoveItems_Pal)); + LoadPalette(sScrollingBgMoveItems_Pal, BG_PLTT_ID(3), sizeof(sScrollingBgMoveItems_Pal)); SetGpuReg(REG_OFFSET_BG1CNT, BGCNT_PRIORITY(1) | BGCNT_CHARBASE(1) | BGCNT_16COLOR | BGCNT_SCREENBASE(30)); CreateDisplayMonSprite(); @@ -2256,7 +2256,7 @@ static void CreateDisplayMonSprite(void) break; gStorage->displayMonSprite = &gSprites[spriteId]; - gStorage->displayMonPalOffset = palSlot * 16 + 0x100; + gStorage->displayMonPalOffset = OBJ_PLTT_ID(palSlot); gStorage->displayMonTilePtr = (void *)OBJ_VRAM0 + tileStart * 32; } while (FALSE); @@ -2277,7 +2277,7 @@ static void LoadDisplayMonGfx(u16 species, u32 personality) HandleLoadSpecialPokePic(&gMonFrontPicTable[species], gStorage->tileBuffer, species, personality); LZ77UnCompWram(gStorage->displayMonPalette, gStorage->displayMonPalBuffer); CpuCopy32(gStorage->tileBuffer, gStorage->displayMonTilePtr, 0x800); - LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, 0x20); + LoadPalette(gStorage->displayMonPalBuffer, gStorage->displayMonPalOffset, PLTT_SIZE_4BPP); gStorage->displayMonSprite->invisible = FALSE; } else @@ -2337,7 +2337,7 @@ static void UpdateWaveformAnimation(void) static void InitSupplementalTilemaps(void) { LZ77UnCompWram(gPokeStoragePartyMenu_Tilemap, gStorage->partyMenuTilemapBuffer); - LoadPalette(gPokeStoragePartyMenu_Pal, 0x10, 0x20); + LoadPalette(gPokeStoragePartyMenu_Pal, BG_PLTT_ID(1), PLTT_SIZE_4BPP); TilemapUtil_SetTilemap(TILEMAP_PARTY_MENU, 1, gStorage->partyMenuTilemapBuffer, 12, 22); TilemapUtil_SetTilemap(TILEMAP_CLOSE_BUTTON, 1, sCloseBoxButton_Tilemap, 9, 4); TilemapUtil_SetPos(TILEMAP_PARTY_MENU, 10, 0); @@ -2545,7 +2545,7 @@ static bool8 DoShowPartyMenu(void) static void InitPokeStorageBg0(void) { SetGpuReg(REG_OFFSET_BG0CNT, BGCNT_PRIORITY(0) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(29)); - LoadStdWindowGfx(1, 2, 0xD0); + LoadStdWindowGfx(1, 2, BG_PLTT_ID(13)); FillBgTilemapBufferRect(0, 0, 0, 0, 32, 20, 17); CopyBgTilemapBufferToVram(0); } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index 3135621dc..2ff2483b1 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -2006,22 +2006,22 @@ static u8 PokeSum_HandleLoadBgGfx(void) switch (sMonSummaryScreen->loadBgGfxStep) { case 0: - LoadPalette(gSummaryScreen_Bg_Pal, 0, 0x20 * 5); + LoadPalette(gSummaryScreen_Bg_Pal, BG_PLTT_ID(0), 5 * PLTT_SIZE_4BPP); if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg) { - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20); - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP); } else { - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20); - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP); } break; case 1: - ListMenuLoadStdPalAt(0x60, 1); - LoadPalette(sTextHeaderPalette, 0x70, 0x20); + ListMenuLoadStdPalAt(BG_PLTT_ID(6), 1); + LoadPalette(sTextHeaderPalette, BG_PLTT_ID(7), PLTT_SIZE_4BPP); break; case 2: ResetTempTileDataBuffers(); @@ -2039,7 +2039,7 @@ static u8 PokeSum_HandleLoadBgGfx(void) break; default: - LoadPalette(sTextMovesPalette, 0x80, 0x20); + LoadPalette(sTextMovesPalette, BG_PLTT_ID(8), PLTT_SIZE_4BPP); return TRUE; } @@ -2919,11 +2919,11 @@ static void PokeSum_DrawMoveTypeIcons(void) if (sMonSummaryScreen->moveIds[i] == MOVE_NONE) continue; - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[i] + 1, 3, GetMoveNamePrinterYpos(i)); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[i] + 1, 3, GetMoveNamePrinterYpos(i)); } if (sMonSummaryScreen->mode == PSS_MODE_SELECT_MOVE) - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[4] + 1, 3, GetMoveNamePrinterYpos(4)); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[5], sMonSummaryScreen->moveTypes[4] + 1, 3, GetMoveNamePrinterYpos(4)); } static void PokeSum_PrintPageHeaderText(u8 curPageIndex) @@ -3362,10 +3362,10 @@ static void PokeSum_PrintMonTypeIcons(void) case PSS_PAGE_INFO: if (!sMonSummaryScreen->isEgg) { - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[0] + 1, 47, 35); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[0] + 1, 47, 35); if (sMonSummaryScreen->monTypes[0] != sMonSummaryScreen->monTypes[1]) - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[1] + 1, 83, 35); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[POKESUM_WIN_RIGHT_PANE], sMonSummaryScreen->monTypes[1] + 1, 83, 35); } break; case PSS_PAGE_SKILLS: @@ -3374,10 +3374,10 @@ static void PokeSum_PrintMonTypeIcons(void) break; case PSS_PAGE_MOVES_INFO: FillWindowPixelBuffer(sMonSummaryScreen->windowIds[6], 0); - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[0] + 1, 0, 3); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[0] + 1, 0, 3); if (sMonSummaryScreen->monTypes[0] != sMonSummaryScreen->monTypes[1]) - BlitMoveInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[1] + 1, 36, 3); + BlitMenuInfoIcon(sMonSummaryScreen->windowIds[6], sMonSummaryScreen->monTypes[1] + 1, 36, 3); PutWindowTilemap(sMonSummaryScreen->windowIds[6]); break; @@ -5078,13 +5078,13 @@ static void Task_PokeSum_SwitchDisplayedPokemon(u8 taskId) if (IsMonShiny(&sMonSummaryScreen->currentMon) == TRUE && !sMonSummaryScreen->isEgg) { - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], 0, 0x20); - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], 0x10, 0x20); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 6], BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 5], BG_PLTT_ID(1), PLTT_SIZE_4BPP); } else { - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], 0, 0x20); - LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], 0x10, 0x20); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 0], BG_PLTT_ID(0), PLTT_SIZE_4BPP); + LoadPalette(&gSummaryScreen_Bg_Pal[16 * 1], BG_PLTT_ID(1), PLTT_SIZE_4BPP); } sMonSummaryScreen->switchMonTaskState++; diff --git a/src/quest_log.c b/src/quest_log.c index d51d4a81a..2d87f8d88 100644 --- a/src/quest_log.c +++ b/src/quest_log.c @@ -512,7 +512,7 @@ void sub_8110FCC(void) static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void) { - LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20); + LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP); SetQuestLogState(QL_STATE_PLAYBACK); FieldCB_DefaultWarpExit(); sPlaybackControl = (struct PlaybackControl){}; @@ -522,7 +522,7 @@ static bool8 FieldCB2_QuestLogStartPlaybackWithWarpExit(void) static bool8 FieldCB2_QuestLogStartPlaybackStandingInPlace(void) { - LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20); + LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP); SetQuestLogState(QL_STATE_PLAYBACK); FieldCB_WarpExitFadeFromBlack(); sPlaybackControl = (struct PlaybackControl){}; @@ -1133,12 +1133,12 @@ void QuestLog_InitPalettesBackup(void) void QuestLog_BackUpPalette(u16 offset, u16 size) { - CpuCopy16(gPlttBufferUnfaded + offset, sPalettesBackup + offset, size * 2); + CpuCopy16(&gPlttBufferUnfaded[offset], &sPalettesBackup[offset], PLTT_SIZEOF(size)); } static bool8 FieldCB2_FinalScene(void) { - LoadPalette(GetTextWindowPalette(4), 0xF0, 0x20); + LoadPalette(GetTextWindowPalette(4), BG_PLTT_ID(15), PLTT_SIZE_4BPP); DrawPreviouslyOnQuestHeader(0); FieldCB_WarpExitFadeFromBlack(); CreateTask(Task_FinalScene_WaitFade, 0xFF); @@ -1264,13 +1264,12 @@ static bool8 sub_81121D8(u8 taskId) if (data[1] > 15) return TRUE; - CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x01, gPlttBufferFaded + 0x01, 0xDF, 0x0F - data[1]); - CopyPaletteInvertedTint(gPlttBufferUnfaded + 0x100, gPlttBufferFaded + 0x100, 0x100, 0x0F - data[1]); + CopyPaletteInvertedTint(&gPlttBufferUnfaded[BG_PLTT_ID(0) + 1], &gPlttBufferFaded[BG_PLTT_ID(0) + 1], 0xDF, 0x0F - data[1]); + CopyPaletteInvertedTint(&gPlttBufferUnfaded[OBJ_PLTT_ID(0)], &gPlttBufferFaded[OBJ_PLTT_ID(0)], 0x100, 0x0F - data[1]); FillWindowPixelRect(sWindowIds[WIN_TOP_BAR], 0x00, 0, sWindowTemplates[WIN_TOP_BAR].height * 8 - 1 - data[1], - sWindowTemplates[WIN_TOP_BAR].width * 8, - 1); + sWindowTemplates[WIN_TOP_BAR].width * 8, 1); FillWindowPixelRect(sWindowIds[WIN_BOTTOM_BAR], 0x00, 0, data[1], @@ -1286,9 +1285,9 @@ static void QL_SlightlyDarkenSomePals(void) u16 *buffer = Alloc(PLTT_SIZE); CpuCopy16(sPalettesBackup, buffer, PLTT_SIZE); SlightlyDarkenPalsInWeather(sPalettesBackup, sPalettesBackup, 13 * 16); - SlightlyDarkenPalsInWeather(sPalettesBackup + 17 * 16, sPalettesBackup + 17 * 16, 1 * 16); - SlightlyDarkenPalsInWeather(sPalettesBackup + 22 * 16, sPalettesBackup + 22 * 16, 4 * 16); - SlightlyDarkenPalsInWeather(sPalettesBackup + 27 * 16, sPalettesBackup + 27 * 16, 5 * 16); + SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(1)], &sPalettesBackup[OBJ_PLTT_ID(1)], 1 * 16); + SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(6)], &sPalettesBackup[OBJ_PLTT_ID(6)], 4 * 16); + SlightlyDarkenPalsInWeather(&sPalettesBackup[OBJ_PLTT_ID(11)], &sPalettesBackup[OBJ_PLTT_ID(11)], 5 * 16); CpuCopy16(sPalettesBackup, gPlttBufferUnfaded, PLTT_SIZE); CpuCopy16(buffer, sPalettesBackup, PLTT_SIZE); Free(buffer); diff --git a/src/region_map.c b/src/region_map.c index b73982834..8e640c405 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -961,8 +961,8 @@ static void TintMapEdgesPalette(void) u16 mapEdgesPal[16]; CpuCopy16(&sRegionMap_Pal[0x20], mapEdgesPal, sizeof(mapEdgesPal)); RegionMap_DarkenPalette(mapEdgesPal, NELEMS(mapEdgesPal), 95); - LoadPalette(mapEdgesPal, 0x20, sizeof(mapEdgesPal)); - LoadPalette(&sRegionMap_Pal[0x2F], 0x2F, sizeof(sRegionMap_Pal[0x2F])); + LoadPalette(mapEdgesPal, BG_PLTT_ID(2), sizeof(mapEdgesPal)); + LoadPalette(&sRegionMap_Pal[0x2F], BG_PLTT_ID(2) + 15, PLTT_SIZEOF(1)); } static void InitRegionMap(u8 type) @@ -1105,18 +1105,18 @@ static bool8 LoadRegionMapGfx(void) switch (sRegionMap->loadGfxState) { case 0: - LoadPalette(sTopBar_Pal, 0xC0, sizeof(sTopBar_Pal)); + LoadPalette(sTopBar_Pal, BG_PLTT_ID(12), sizeof(sTopBar_Pal)); break; case 1: LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal)); TintMapEdgesPalette(); if (sRegionMap->type != REGIONMAP_TYPE_NORMAL) { - LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15])); } break; case 2: @@ -1972,7 +1972,7 @@ static bool8 LoadMapPreviewGfx(void) LoadBgTiles(2, sDungeonMapPreview->tiles, sizeof(sDungeonMapPreview->tiles), 0); break; case 3: - LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, 0xD0, 0x60); + LoadPalette(sDungeonMapPreview->mapPreviewInfo->palptr, BG_PLTT_ID(13), 3 * PLTT_SIZE_4BPP); break; default: return TRUE; @@ -2073,7 +2073,7 @@ static void Task_DrawDungeonMapPreviewFlavorText(u8 taskId) sDungeonMapPreview->blue -= 5; CpuCopy16(sDungeonMapPreview->mapPreviewInfo->palptr, sDungeonMapPreview->palette, 0x60); TintPalette_CustomTone(sDungeonMapPreview->palette, 48, sDungeonMapPreview->red, sDungeonMapPreview->green, sDungeonMapPreview->blue); - LoadPalette(sDungeonMapPreview->palette, 0xD0, sizeof(sDungeonMapPreview->palette)); + LoadPalette(sDungeonMapPreview->palette, BG_PLTT_ID(13), sizeof(sDungeonMapPreview->palette)); } sDungeonMapPreview->timer++; break; @@ -2416,19 +2416,19 @@ static void Task_MapOpenAnim(u8 taskId) sMapOpenCloseAnim->openState++; break; case 10: - LoadPalette(&sTopBar_Pal[15], 16 * 0, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 1, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 2, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 3, sizeof(sTopBar_Pal[15])); - LoadPalette(&sTopBar_Pal[15], 16 * 4, sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(0), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(1), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(2), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(3), sizeof(sTopBar_Pal[15])); + LoadPalette(&sTopBar_Pal[15], BG_PLTT_ID(4), sizeof(sTopBar_Pal[15])); sMapOpenCloseAnim->openState++; break; case 11: - FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 0x2); - FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 0x2); - FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 0x2); - FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 0x2); - FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 0x2); + FillBgTilemapBufferRect(1, 0x002, 0, 1, 1, 1, 2); + FillBgTilemapBufferRect(1, 0x003, 1, 1, 1, 1, 2); + FillBgTilemapBufferRect(1, 0x03E, 28, 1, 1, 1, 2); + FillBgTilemapBufferRect(1, 0x03F, 29, 1, 1, 1, 2); + FillBgTilemapBufferRect(1, 0x03D, 2, 1, 26, 1, 2); CopyBgTilemapBufferToVram(1); m4aSongNumStop(SE_CARD_OPEN); PlaySE(SE_ROTATING_GATE); @@ -2569,7 +2569,7 @@ static void Task_MapCloseAnim(u8 taskId) sMapOpenCloseAnim->closeState++; break; case 2: - LoadPalette(sRegionMap_Pal, 0, sizeof(sRegionMap_Pal)); + LoadPalette(sRegionMap_Pal, BG_PLTT_ID(0), sizeof(sRegionMap_Pal)); sMapOpenCloseAnim->closeState++; break; case 3: diff --git a/src/script_menu.c b/src/script_menu.c index 7c0d83ab6..25991e775 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -1140,6 +1140,8 @@ void Task_WaitMuseumFossilPic(u8 taskId) } } +#define FOSSIL_PIC_PAL_NUM 13 + bool8 OpenMuseumFossilPic(void) { u8 spriteId; @@ -1151,19 +1153,19 @@ bool8 OpenMuseumFossilPic(void) if (gSpecialVar_0x8004 == SPECIES_KABUTOPS) { LoadSpriteSheets(sMuseumKabutopsSprSheets); - LoadPalette(sMuseumKabutopsSprPalette, 0x1D0, 0x20); + LoadPalette(sMuseumKabutopsSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumKabutopsSprPalette)); } else if (gSpecialVar_0x8004 == SPECIES_AERODACTYL) { LoadSpriteSheets(sMuseumAerodactylSprSheets); - LoadPalette(sMuseumAerodactylSprPalette, 0x1D0, 0x20); + LoadPalette(sMuseumAerodactylSprPalette, OBJ_PLTT_ID(FOSSIL_PIC_PAL_NUM), sizeof(sMuseumAerodactylSprPalette)); } else { return FALSE; } spriteId = CreateSprite(&sMuseumFossilSprTemplate, gSpecialVar_0x8005 * 8 + 40, gSpecialVar_0x8006 * 8 + 40, 0); - gSprites[spriteId].oam.paletteNum = 13; + gSprites[spriteId].oam.paletteNum = FOSSIL_PIC_PAL_NUM; taskId = CreateTask(Task_WaitMuseumFossilPic, 80); gTasks[taskId].tWindowId = CreateWindowFromRect(gSpecialVar_0x8005, gSpecialVar_0x8006, 8, 8); gTasks[taskId].tState = 0; diff --git a/src/seagallop.c b/src/seagallop.c index 73e580894..04e719085 100644 --- a/src/seagallop.c +++ b/src/seagallop.c @@ -204,15 +204,11 @@ static void CB2_SetUpSeagallopScene(void) case 3: LoadBgTiles(3, sWaterTiles, sizeof(sWaterTiles), 0); if (GetDirectionOfTravel() == DIRN_EASTBOUND) - { CopyToBgTilemapBufferRect(3, sWaterTilemap_EB, 0, 0, 32, 32); - } else - { CopyToBgTilemapBufferRect(3, sWaterTilemap_WB, 0, 0, 32, 32); - } - LoadPalette(sWaterPal, 0x40, 0x20); - LoadPalette(GetTextWindowPalette(2), 0xF0, 0x20); + LoadPalette(sWaterPal, BG_PLTT_ID(4), sizeof(sWaterPal)); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(15), PLTT_SIZE_4BPP); gMain.state++; break; case 4: diff --git a/src/shop.c b/src/shop.c index 4aaf92a23..754e33af3 100644 --- a/src/shop.c +++ b/src/shop.c @@ -462,7 +462,7 @@ static void BuyMenuInitBgs(void) static void BuyMenuDecompressBgGraphics(void) { - void *pal; + u16 *pal; DecompressAndCopyTileDataToVram(1, gBuyMenuFrame_Gfx, 0x480, 0x3DC, 0); if ((gShopData.martType) != MART_TYPE_TMHM) @@ -470,10 +470,10 @@ static void BuyMenuDecompressBgGraphics(void) else LZDecompressWram(gBuyMenuFrame_TmHmTilemap, gShopTilemapBuffer1); - pal = Alloc(0x40); + pal = Alloc(2 * PLTT_SIZE_4BPP); LZDecompressWram(gBuyMenuFrame_Pal, pal); - LoadPalette(pal, 0xB0, 0x20); - LoadPalette(pal + 0x20, 0x60, 0x20); + LoadPalette(&pal[0 * 16], BG_PLTT_ID(11), PLTT_SIZE_4BPP); + LoadPalette(&pal[1 * 16], BG_PLTT_ID(6), PLTT_SIZE_4BPP); Free(pal); } diff --git a/src/slot_machine.c b/src/slot_machine.c index 1b79bf9f8..aa5d4c67e 100644 --- a/src/slot_machine.c +++ b/src/slot_machine.c @@ -800,7 +800,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 15, .width = 20, .height = 4, - .paletteNum = 0x0f, + .paletteNum = 15, .baseBlock = 0x04f }, { .bg = 0, @@ -808,7 +808,7 @@ static const struct WindowTemplate sWindowTemplates[] = { .tilemapTop = 0, .width = 30, .height = 2, - .paletteNum = 0x0e, + .paletteNum = 14, .baseBlock = 0x013 }, DUMMY_WIN_TEMPLATE @@ -1998,10 +1998,10 @@ static bool32 IsSlotMachineSetupTaskActive(u8 taskId) return GetSlotMachineSetupTaskDataPtr()->tasks[taskId].active; } -static inline void LoadColor(u16 color, u16 *pal) +static inline void SetBackdropColor(u16 color, u16 *pal) { *pal = color; - LoadPalette(pal, 0x00, 0x02); + SetBackdropFromPalette(pal); } static bool8 SlotsTask_GraphicsInit(u8 * state, struct SlotMachineSetupTaskData * ptr) @@ -2039,12 +2039,12 @@ static bool8 SlotsTask_GraphicsInit(u8 * state, struct SlotMachineSetupTaskData SetBgTilemapBuffer(2, ptr->bg2TilemapBuffer); CopyToBgTilemapBuffer(2, sBg_Tilemap, 0, 0x00); CopyBgTilemapBufferToVram(2); - LoadPalette(sBg_Pal, 0x00, sizeof(sBg_Pal)); - LoadPalette(sBgPal_MatchLines, PALSLOT_LINE_BET * 16, sizeof(sBgPal_MatchLines)); - LoadPalette(sCombosWindow_Pal, 0x70, sizeof(sCombosWindow_Pal)); - LoadColor(RGB(30, 30, 31), pal); - LoadUserWindowGfx2(0, 0x00A, 0xD0); - LoadStdWindowGfxOnBg(0, 0x001, 0xF0); + LoadPalette(sBg_Pal, BG_PLTT_ID(0), sizeof(sBg_Pal)); + LoadPalette(sBgPal_MatchLines, BG_PLTT_ID(PALSLOT_LINE_BET), sizeof(sBgPal_MatchLines)); + LoadPalette(sCombosWindow_Pal, BG_PLTT_ID(7), sizeof(sCombosWindow_Pal)); + SetBackdropColor(RGB(30, 30, 31), pal); + LoadUserWindowGfx2(0, 0x00A, BG_PLTT_ID(13)); + LoadStdWindowGfxOnBg(0, 0x001, BG_PLTT_ID(15)); SetBgTilemapBuffer(0, ptr->bg0TilemapBuffer); FillBgTilemapBufferRect_Palette0(0, 0, 0, 2, 32, 30); @@ -2052,7 +2052,7 @@ static bool8 SlotsTask_GraphicsInit(u8 * state, struct SlotMachineSetupTaskData DecompressAndCopyTileDataToVram(1, sCombosWindow_Tilemap, 0, 0, 1); CopyBgTilemapBufferToVram(1); - LoadPalette(GetTextWindowPalette(2), 0xE0, 0x20); + LoadPalette(GetTextWindowPalette(2), BG_PLTT_ID(14), PLTT_SIZE_4BPP); FillWindowPixelBuffer(1, 0xFF); PutWindowTilemap(1); @@ -2386,7 +2386,7 @@ static void Task_FlashWinningLine(u8 taskId) switch (data[0]) { case 0: - LoadPalette(sBgPal_MatchLines, PALSLOT_LINE_MATCH * 16, sizeof(sBgPal_MatchLines)); + LoadPalette(sBgPal_MatchLines, BG_PLTT_ID(PALSLOT_LINE_MATCH), sizeof(sBgPal_MatchLines)); for (i = 0; i < NUM_MATCH_LINES; i++) { if (GetWinFlagByLine(i)) @@ -2399,7 +2399,7 @@ static void Task_FlashWinningLine(u8 taskId) if (data[1] == 0) { u16 y = gSineTable[data[2]] >> 7; - LoadPalette(&sBgPal_PayoutLight[y], 0x10, sizeof(sBgPal_PayoutLight[0])); + LoadPalette(&sBgPal_PayoutLight[y], BG_PLTT_ID(1), sizeof(sBgPal_PayoutLight[0])); data[2] += 32; data[2] &= 0x7F; data[1] = 8; @@ -2427,7 +2427,7 @@ static void Task_FlashWinningLine(u8 taskId) } for (i = 0; i < ARRAY_COUNT(sWinningLineFlashPalIdxs); i++) - gPlttBufferFaded[sWinningLineFlashPalIdxs[i] + PALSLOT_LINE_MATCH * 16] = gPlttBufferUnfaded[sWinningLineFlashPalIdxs[i] + PALSLOT_LINE_MATCH * 16]; + gPlttBufferFaded[sWinningLineFlashPalIdxs[i] + BG_PLTT_ID(PALSLOT_LINE_MATCH)] = gPlttBufferUnfaded[sWinningLineFlashPalIdxs[i] + BG_PLTT_ID(PALSLOT_LINE_MATCH)]; break; case 2: // Restore match lines to normal color @@ -2438,7 +2438,7 @@ static void Task_FlashWinningLine(u8 taskId) } // Restore payout lights to normal color - LoadPalette(&sBg_Pal[1], 0x10, sizeof(sBg_Pal[1])); + LoadPalette(&sBg_Pal[1], BG_PLTT_ID(1), sizeof(sBg_Pal[1])); CopyBgTilemapBufferToVram(2); data[0]++; diff --git a/src/sprite.c b/src/sprite.c index 5b1ea5e4b..afaa8e08d 100644 --- a/src/sprite.c +++ b/src/sprite.c @@ -551,7 +551,7 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y, CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode); - if (template->tileTag == 0xFFFF) + if (template->tileTag == TAG_NONE) { s16 tileNum; sprite->images = template->images; @@ -574,7 +574,7 @@ u8 CreateSpriteAt(u8 index, const struct SpriteTemplate *template, s16 x, s16 y, if (sprite->oam.affineMode & ST_OAM_AFFINE_ON_MASK) InitSpriteAffineAnim(sprite); - if (template->paletteTag != 0xFFFF) + if (template->paletteTag != TAG_NONE) sprite->oam.paletteNum = IndexOfSpritePaletteTag(template->paletteTag); return index; @@ -868,7 +868,7 @@ void ResetAllSprites(void) void FreeSpriteTiles(struct Sprite *sprite) { - if (sprite->template->tileTag != 0xFFFF) + if (sprite->template->tileTag != TAG_NONE) FreeSpriteTilesByTag(sprite->template->tileTag); } @@ -1514,7 +1514,7 @@ void FreeSpriteTilesByTag(u16 tag) for (i = start; i < start + count; i++) FREE_SPRITE_TILE(i); - sSpriteTileRangeTags[index] = 0xFFFF; + sSpriteTileRangeTags[index] = TAG_NONE; } } @@ -1524,7 +1524,7 @@ void FreeSpriteTileRanges(void) for (i = 0; i < MAX_SPRITES; i++) { - sSpriteTileRangeTags[i] = 0xFFFF; + sSpriteTileRangeTags[i] = TAG_NONE; SET_SPRITE_TILE_RANGE(i, 0, 0); } } @@ -1533,7 +1533,7 @@ u16 GetSpriteTileStartByTag(u16 tag) { u8 index = IndexOfSpriteTileTag(tag); if (index == 0xFF) - return 0xFFFF; + return TAG_NONE; return sSpriteTileRanges[index * 2]; } @@ -1554,16 +1554,16 @@ u16 GetSpriteTileTagByTileStart(u16 start) for (i = 0; i < MAX_SPRITES; i++) { - if (sSpriteTileRangeTags[i] != 0xFFFF && sSpriteTileRanges[i * 2] == start) + if (sSpriteTileRangeTags[i] != TAG_NONE && sSpriteTileRanges[i * 2] == start) return sSpriteTileRangeTags[i]; } - return 0xFFFF; + return TAG_NONE; } void AllocSpriteTileRange(u16 tag, u16 start, u16 count) { - u8 freeIndex = IndexOfSpriteTileTag(0xFFFF); + u8 freeIndex = IndexOfSpriteTileTag(TAG_NONE); sSpriteTileRangeTags[freeIndex] = tag; SET_SPRITE_TILE_RANGE(freeIndex, start, count); } @@ -1572,8 +1572,8 @@ void FreeAllSpritePalettes(void) { u8 i; gReservedSpritePaletteCount = 0; - for (i = 0; i < 16; i++) - sSpritePaletteTags[i] = 0xFFFF; + for (i = 0; i < ARRAY_COUNT(sSpritePaletteTags); i++) + sSpritePaletteTags[i] = TAG_NONE; } u8 LoadSpritePalette(const struct SpritePalette *palette) @@ -1583,7 +1583,7 @@ u8 LoadSpritePalette(const struct SpritePalette *palette) if (index != 0xFF) return index; - index = IndexOfSpritePaletteTag(0xFFFF); + index = IndexOfSpritePaletteTag(TAG_NONE); if (index == 0xFF) { @@ -1592,7 +1592,7 @@ u8 LoadSpritePalette(const struct SpritePalette *palette) else { sSpritePaletteTags[index] = palette->tag; - DoLoadSpritePalette(palette->data, index * 16); + DoLoadSpritePalette(palette->data, PLTT_ID(index)); return index; } } @@ -1605,14 +1605,14 @@ void LoadSpritePalettes(const struct SpritePalette *palettes) break; } -void DoLoadSpritePalette(const u16 *src, u16 paletteOffset) +static void DoLoadSpritePalette(const u16 *src, u16 paletteOffset) { - LoadPalette(src, paletteOffset + 0x100, 32); + LoadPalette(src, paletteOffset + OBJ_PLTT_OFFSET, PLTT_SIZE_4BPP); } u8 AllocSpritePalette(u16 tag) { - u8 index = IndexOfSpritePaletteTag(0xFFFF); + u8 index = IndexOfSpritePaletteTag(TAG_NONE); if (index == 0xFF) { return 0xFF; @@ -1643,7 +1643,7 @@ void FreeSpritePaletteByTag(u16 tag) { u8 index = IndexOfSpritePaletteTag(tag); if (index != 0xFF) - sSpritePaletteTags[index] = 0xFFFF; + sSpritePaletteTags[index] = TAG_NONE; } void SetSubspriteTables(struct Sprite *sprite, const struct SubspriteTable *subspriteTables) diff --git a/src/start_menu.c b/src/start_menu.c index 8085fdb56..f39176ccc 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -184,6 +184,13 @@ static ALIGNED(2) const u8 sTextColor_StatName[] = { 1, 2, 3 }; static ALIGNED(2) const u8 sTextColor_StatValue[] = { 1, 4, 5 }; static ALIGNED(2) const u8 sTextColor_LocationHeader[] = { 1, 6, 7 }; +// Unused +static void SetHasPokedexAndPokemon(void) +{ + FlagSet(FLAG_SYS_POKEDEX_GET); + FlagSet(FLAG_SYS_POKEMON_GET); +} + static void SetUpStartMenu(void) { sNumStartMenuItems = 0; @@ -870,7 +877,7 @@ bool32 DoSetUpSaveAfterLinkBattle(u8 *state) ResetBgsAndClearDma3BusyFlags(FALSE); InitBgsFromTemplates(0, sBGTemplates_AfterLinkSaveMessage, NELEMS(sBGTemplates_AfterLinkSaveMessage)); InitWindows(sWindowTemplates_AfterLinkSaveMessage); - LoadStdWindowGfx(0, 0x008, 0xF0); + LoadStdWindowGfx(0, 0x008, BG_PLTT_ID(15)); break; case 3: ShowBg(0); @@ -910,7 +917,7 @@ static void task50_after_link_battle_save(u8 taskId) case 0: FillWindowPixelBuffer(0, PIXEL_FILL(1)); AddTextPrinterParameterized2(0, FONT_NORMAL, gText_SavingDontTurnOffThePower2, 0xFF, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY); - DrawTextBorderOuter(0, 0x008, 0x0F); + DrawTextBorderOuter(0, 0x008, 15); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK); @@ -957,8 +964,8 @@ static void PrintSaveStats(void) u8 y; u8 x; sSaveStatsWindowId = AddWindow(&sSaveStatsWindowTemplate); - LoadStdWindowGfx(sSaveStatsWindowId, 0x21D, 0xD0); - DrawStdFrameWithCustomTileAndPalette(sSaveStatsWindowId, FALSE, 0x21D, 0x0D); + LoadStdWindowGfx(sSaveStatsWindowId, 0x21D, BG_PLTT_ID(13)); + DrawStdFrameWithCustomTileAndPalette(sSaveStatsWindowId, FALSE, 0x21D, 13); SaveStatToString(SAVE_STAT_LOCATION, gStringVar4, 8); x = (u32)(112 - GetStringWidth(FONT_NORMAL, gStringVar4, -1)) / 2; AddTextPrinterParameterized3(sSaveStatsWindowId, FONT_NORMAL, x, 0, sTextColor_LocationHeader, -1, gStringVar4); diff --git a/src/strings.c b/src/strings.c index c23f8d334..c09955503 100644 --- a/src/strings.c +++ b/src/strings.c @@ -955,7 +955,7 @@ const u8 gText_Battle[] = _("BATTLE"); const u8 gText_Lets[] = _("LET'S"); const u8 gText_Ok[] = _("OK!"); const u8 gText_Sorry[] = _("SORRY"); -const u8 gText_YaySmileEmoji[] = _("YAY{EXTRA 0xF9}"); +const u8 gText_YaySmileEmoji[] = _("YAY{EMOJI_BIGSMILE}"); const u8 gText_ThankYou[] = _("THANK YOU"); const u8 gText_ByeBye[] = _("BYE-BYE!"); const u8 gText_PlayerScurriedToCenter[] = _("{PLAYER} scurried to a POKéMON CENTER,\nprotecting the exhausted and fainted\nPOKéMON from further harm‥\p"); @@ -1008,7 +1008,7 @@ const u8 gText_BerriesPicked[] = _("BERRIES picked:"); const u8 gText_BestScore[] = _("Best score:"); const u8 gText_BerriesInRowFivePlayers[] = _("BERRIES picked in a row with\nfive players:"); const u8 gText_BerryPickingResults[] = _("Announcing BERRY-PICKING results!"); -const u8 gText_10P30P50P50P[] = _("10P 30P 50P {EXTRA 0xDD}50P"); +const u8 gText_10P30P50P50P[] = _("10P 30P 50P {EMOJI_MINUS}50P"); const u8 gText_AnnouncingRankings[] = _("Announcing rankings!"); const u8 gText_AnnouncingPrizes[] = _("Announcing prizes!"); const u8 gText_1Colon[] = _("1:"); diff --git a/src/teachy_tv.c b/src/teachy_tv.c index 0d4c31434..036633064 100644 --- a/src/teachy_tv.c +++ b/src/teachy_tv.c @@ -150,7 +150,7 @@ static const struct WindowTemplate sWindowTemplates[] = .tilemapTop = 15, .width = 26, .height = 4, - .paletteNum = 0x3, + .paletteNum = 3, .baseBlock = 0x0EA, }, { @@ -159,7 +159,7 @@ static const struct WindowTemplate sWindowTemplates[] = .tilemapTop = 1, .width = 22, .height = 12, - .paletteNum = 0x3, + .paletteNum = 3, .baseBlock = 0x152, }, DUMMY_WIN_TEMPLATE, @@ -530,8 +530,8 @@ static void TeachyTvLoadGraphic(void) DecompressAndCopyTileDataToVram(1, gTeachyTv_Gfx, 0, 0, 0); LZDecompressWram(gTeachyTvScreen_Tilemap, sResources->screenTilemap); LZDecompressWram(gTeachyTvTitle_Tilemap, sResources->titleTilemap); - LoadCompressedPalette(gTeachyTv_Pal, 0, 0x80); - LoadPalette(&src, 0, sizeof(src)); + LoadCompressedPalette(gTeachyTv_Pal, BG_PLTT_ID(0), 4 * PLTT_SIZE_4BPP); + LoadPalette(&src, BG_PLTT_ID(0), sizeof(src)); LoadSpritePalette(&gSpritePalette_GeneralFieldEffect1); TeachyTvLoadBg3Map(sResources->buffer3); } @@ -1395,6 +1395,6 @@ static void TeachyTvLoadMapPalette(const struct MapLayout * mStruct, const u8 * dest = mStruct->secondaryTileset->palettes[palIndexArray[i]]; else dest = mStruct->primaryTileset->palettes[palIndexArray[i]]; - LoadPalette(dest, 0x10 * (15 - i), 0x20); + LoadPalette(dest, BG_PLTT_ID(15 - i), PLTT_SIZE_4BPP); } } diff --git a/src/text_window.c b/src/text_window.c index ea2d61b86..431ac5520 100644 --- a/src/text_window.c +++ b/src/text_window.c @@ -5,37 +5,37 @@ #include "help_message.h" #include "new_menu_helpers.h" -static void LoadUserWindowGfxByFrame(u8 windowId, u8 frameType, u16 destOffset, u8 palIdx); +static void LoadUserWindowGfxByFrame(u8 windowId, u8 frameType, u16 destOffset, u8 palOffset); // Unused // Equivalent to LoadHelpMessageWindowGfx, but takes a bg id directly -static void LoadHelpMessageWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palIdx) +static void LoadHelpMessageWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palOffset) { LoadBgTiles(bgId, gHelpMessageWindow_Gfx, 0x280, destOffset); - LoadPalette(GetTextWindowPalette(2), palIdx, 32); + LoadPalette(GetTextWindowPalette(2), palOffset, PLTT_SIZE_4BPP); } // Unused // Equivalent to LoadMenuMessageWindowGfx, but takes a bg id directly -static void LoadMenuMessageWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palIdx) +static void LoadMenuMessageWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palOffset) { LoadBgTiles(bgId, gMenuMessageWindow_Gfx, 0x280, destOffset); - LoadPalette(GetTextWindowPalette(0), palIdx, 32); + LoadPalette(GetTextWindowPalette(0), palOffset, PLTT_SIZE_4BPP); } // Unused // Equivalent to LoadSignpostWindowGfx, but takes a bg id directly -static void LoadSignpostWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palIdx) +static void LoadSignpostWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palOffset) { LoadBgTiles(bgId, gSignpostWindow_Gfx, 0x260, destOffset); - LoadPalette(GetTextWindowPalette(1), palIdx, 32); + LoadPalette(GetTextWindowPalette(1), palOffset, PLTT_SIZE_4BPP); } // Equivalent to LoadStdWindowGfx, but takes a bg id directly -void LoadStdWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palIdx) +void LoadStdWindowGfxOnBg(u8 bgId, u16 destOffset, u8 palOffset) { LoadBgTiles(bgId, gStdTextWindow_Gfx, 0x120, destOffset); - LoadPalette(GetTextWindowPalette(3), palIdx, 32); + LoadPalette(GetTextWindowPalette(3), palOffset, PLTT_SIZE_4BPP); } // Unused @@ -47,40 +47,40 @@ static void LoadQuestLogWindowTilesOnBg(u8 bgId, u16 destOffset) // Unused // Equivalent to LoadUserWindowGfxByFrame, but takes a bg id directly -static void LoadUserWindowGfxByFrameOnBg(u8 bgId, u8 frameType, u16 destOffset, u8 palIdx) +static void LoadUserWindowGfxByFrameOnBg(u8 bgId, u8 frameType, u16 destOffset, u8 palOffset) { LoadBgTiles(bgId, gUserFrames[frameType].tiles, 0x120, destOffset); - LoadPalette(gUserFrames[frameType].palette, palIdx, 32); + LoadPalette(gUserFrames[frameType].palette, palOffset, PLTT_SIZE_4BPP); } // Identical to LoadUserWindowGfx -void LoadUserWindowGfx2(u8 windowId, u16 destOffset, u8 palIdx) +void LoadUserWindowGfx2(u8 windowId, u16 destOffset, u8 palOffset) { - LoadUserWindowGfxByFrame(windowId, gSaveBlock2Ptr->optionsWindowFrameType, destOffset, palIdx); + LoadUserWindowGfxByFrame(windowId, gSaveBlock2Ptr->optionsWindowFrameType, destOffset, palOffset); } -void LoadHelpMessageWindowGfx(u8 windowId, u16 destOffset, u8 palIdx) +void LoadHelpMessageWindowGfx(u8 windowId, u16 destOffset, u8 palOffset) { LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gHelpMessageWindow_Gfx, 0x280, destOffset); - LoadPalette(GetTextWindowPalette(2), palIdx, 32); + LoadPalette(GetTextWindowPalette(2), palOffset, PLTT_SIZE_4BPP); } -void LoadMenuMessageWindowGfx(u8 windowId, u16 destOffset, u8 palIdx) +void LoadMenuMessageWindowGfx(u8 windowId, u16 destOffset, u8 palOffset) { LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gMenuMessageWindow_Gfx, 0x280, destOffset); - LoadPalette(GetTextWindowPalette(0), palIdx, 32); + LoadPalette(GetTextWindowPalette(0), palOffset, PLTT_SIZE_4BPP); } -void LoadSignpostWindowGfx(u8 windowId, u16 destOffset, u8 palIdx) +void LoadSignpostWindowGfx(u8 windowId, u16 destOffset, u8 palOffset) { LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gSignpostWindow_Gfx, 0x260, destOffset); - LoadPalette(GetTextWindowPalette(1), palIdx, 32); + LoadPalette(GetTextWindowPalette(1), palOffset, PLTT_SIZE_4BPP); } -void LoadStdWindowGfx(u8 windowId, u16 destOffset, u8 palIdx) +void LoadStdWindowGfx(u8 windowId, u16 destOffset, u8 palOffset) { LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gStdTextWindow_Gfx, 0x120, destOffset); - LoadPalette(GetTextWindowPalette(3), palIdx, 32); + LoadPalette(GetTextWindowPalette(3), palOffset, PLTT_SIZE_4BPP); } void LoadStdWindowTiles(u8 windowId, u16 destOffset) @@ -93,15 +93,15 @@ void LoadQuestLogWindowTiles(u8 windowId, u16 destOffset) LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gQuestLogWindow_Gfx, 0x280, destOffset); } -static void LoadUserWindowGfxByFrame(u8 windowId, u8 frameType, u16 destOffset, u8 palIdx) +static void LoadUserWindowGfxByFrame(u8 windowId, u8 frameType, u16 destOffset, u8 palOffset) { LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gUserFrames[frameType].tiles, 0x120, destOffset); - LoadPalette(gUserFrames[frameType].palette, palIdx, 32); + LoadPalette(gUserFrames[frameType].palette, palOffset, PLTT_SIZE_4BPP); } -void LoadUserWindowGfx(u8 windowId, u16 destOffset, u8 palIdx) +void LoadUserWindowGfx(u8 windowId, u16 destOffset, u8 palOffset) { - LoadUserWindowGfxByFrame(windowId, gSaveBlock2Ptr->optionsWindowFrameType, destOffset, palIdx); + LoadUserWindowGfxByFrame(windowId, gSaveBlock2Ptr->optionsWindowFrameType, destOffset, palOffset); } void DrawTextBorderOuter(u8 windowId, u16 tileNum, u8 palNum) @@ -148,7 +148,7 @@ void rbox_fill_rectangle(u8 windowId) u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH); u16 height = GetWindowAttribute(windowId, WINDOW_HEIGHT); - FillBgTilemapBufferRect(bgLayer, 0, tilemapLeft - 1, tilemapTop - 1, width + 2, height + 2, 0x11); + FillBgTilemapBufferRect(bgLayer, 0, tilemapLeft - 1, tilemapTop - 1, width + 2, height + 2, 17); } const u16 *GetTextWindowPalette(u8 id) diff --git a/src/title_screen.c b/src/title_screen.c index 7c379bc34..334af1f0f 100644 --- a/src/title_screen.c +++ b/src/title_screen.c @@ -364,16 +364,16 @@ void CB2_InitTitleScreen(void) sTitleScreenTimerTaskId = TASK_NONE; break; case 1: - LoadPalette(gGraphics_TitleScreen_GameTitleLogoPals, 0, 0x1A0); + LoadPalette(gGraphics_TitleScreen_GameTitleLogoPals, BG_PLTT_ID(0), 13 * PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(0, gGraphics_TitleScreen_GameTitleLogoTiles, 0, 0, 0); DecompressAndCopyTileDataToVram(0, gGraphics_TitleScreen_GameTitleLogoMap, 0, 0, 1); - LoadPalette(gGraphics_TitleScreen_BoxArtMonPals, 0xD0, 0x20); + LoadPalette(gGraphics_TitleScreen_BoxArtMonPals, BG_PLTT_ID(13), PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(1, gGraphics_TitleScreen_BoxArtMonTiles, 0, 0, 0); DecompressAndCopyTileDataToVram(1, gGraphics_TitleScreen_BoxArtMonMap, 0, 0, 1); - LoadPalette(gGraphics_TitleScreen_BackgroundPals, 0xF0, 0x20); + LoadPalette(gGraphics_TitleScreen_BackgroundPals, BG_PLTT_ID(15), PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(2, gGraphics_TitleScreen_CopyrightPressStartTiles, 0, 0, 0); DecompressAndCopyTileDataToVram(2, gGraphics_TitleScreen_CopyrightPressStartMap, 0, 0, 1); - LoadPalette(gGraphics_TitleScreen_BackgroundPals, 0xE0, 0x20); + LoadPalette(gGraphics_TitleScreen_BackgroundPals, BG_PLTT_ID(14), PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(3, sBorderBgTiles, 0, 0, 0); DecompressAndCopyTileDataToVram(3, sBorderBgMap, 0, 0, 1); LoadSpriteGfxAndPals(); @@ -530,8 +530,8 @@ static void SetTitleScreenScene_FadeIn(s16 *data) data[2]++; if (data[2] > 10) { - TintPalette_GrayScale2(gPlttBufferUnfaded + 0xD0, 16); - BeginNormalPaletteFade(1 << 0xD, 9, 16, 0, RGB_BLACK); + TintPalette_GrayScale2(&gPlttBufferUnfaded[BG_PLTT_ID(13)], 16); + BeginNormalPaletteFade(1 << 13, 9, 16, 0, RGB_BLACK); tState++; } break; @@ -547,7 +547,7 @@ static void SetTitleScreenScene_FadeIn(s16 *data) if (data[2] > 36) { CreateTask(Task_TitleScreen_SlideWin0, 3); - BlendPalettesGradually(1 << 0xD, -4, 1, 16, RGB(30, 30, 31), 0, 0); + BlendPalettesGradually(1 << 13, -4, 1, 16, RGB(30, 30, 31), 0, 0); data[2] = 0; tState++; } @@ -555,7 +555,7 @@ static void SetTitleScreenScene_FadeIn(s16 *data) case 4: if (!IsBlendPalettesGraduallyTaskActive(0)) { - BlendPalettesGradually(1 << 0xD, -4, 15, 0, RGB(30, 30, 31), 0, 0); + BlendPalettesGradually(1 << 13, -4, 15, 0, RGB(30, 30, 31), 0, 0); tState++; } break; @@ -564,14 +564,14 @@ static void SetTitleScreenScene_FadeIn(s16 *data) if (data[2] > 20) { data[2] = 0; - BlendPalettesGradually(1 << 0xD, -4, 1, 16, RGB(30, 30, 31), 0, 0); + BlendPalettesGradually(1 << 13, -4, 1, 16, RGB(30, 30, 31), 0, 0); tState++; } break; case 6: if (!IsBlendPalettesGraduallyTaskActive(0)) { - BlendPalettesGradually(1 << 0xD, -4, 15, 0, RGB(30, 30, 31), 0, 0); + BlendPalettesGradually(1 << 13, -4, 15, 0, RGB(30, 30, 31), 0, 0); tState++; } break; @@ -580,7 +580,7 @@ static void SetTitleScreenScene_FadeIn(s16 *data) if (data[2] > 20) { data[2] = 0; - BlendPalettesGradually(1 << 0xD, -3, 0, 16, RGB(30, 30, 31), 0, 0); + BlendPalettesGradually(1 << 13, -3, 0, 16, RGB(30, 30, 31), 0, 0); tState++; } break; @@ -589,12 +589,12 @@ static void SetTitleScreenScene_FadeIn(s16 *data) { u32 palettes; tHasCreatedBlankSprite = TRUE; - palettes = (PALETTES_BG & ~(1 << 0xD) & ~(1 << 0xE) & ~(1 << 0xF)) | (0x10000 << CreateBlankSprite()); + palettes = (PALETTES_BG & ~(1 << 13) & ~(1 << 14) & ~(1 << 15)) | (0x10000 << CreateBlankSprite()); BlendPalettes(palettes, 16, RGB(30, 30, 31)); BeginNormalPaletteFade(palettes, 1, 16, 0, RGB(30, 30, 31)); ShowBg(0); - CpuCopy16(gGraphics_TitleScreen_BoxArtMonPals, gPlttBufferUnfaded + 0xD0, 32); - BlendPalettesGradually(1 << 0xD, 1, 15, 0, RGB(30, 30, 31), 0, 0); + CpuCopy16(gGraphics_TitleScreen_BoxArtMonPals, &gPlttBufferUnfaded[BG_PLTT_ID(13)], PLTT_SIZE_4BPP); + BlendPalettesGradually(1 << 13, 1, 15, 0, RGB(30, 30, 31), 0, 0); tState++; } break; @@ -832,16 +832,16 @@ static void Task_TitleScreen_BlinkPressStart(u8 taskId) { for (i = 0; i < 5; i++) { - gPlttBufferUnfaded[0xF1 + i] = gGraphics_TitleScreen_BackgroundPals[6]; - gPlttBufferFaded[0xF1 + i] = gGraphics_TitleScreen_BackgroundPals[6]; + gPlttBufferUnfaded[BG_PLTT_ID(15) + 1 + i] = gGraphics_TitleScreen_BackgroundPals[6]; + gPlttBufferFaded[BG_PLTT_ID(15) + 1 + i] = gGraphics_TitleScreen_BackgroundPals[6]; } } else { for (i = 0; i < 5; i++) { - gPlttBufferUnfaded[0xF1 + i] = gGraphics_TitleScreen_BackgroundPals[1 + i]; - gPlttBufferFaded[0xF1 + i] = gGraphics_TitleScreen_BackgroundPals[1 + i]; + gPlttBufferUnfaded[BG_PLTT_ID(15) + 1 + i] = gGraphics_TitleScreen_BackgroundPals[1 + i]; + gPlttBufferFaded[BG_PLTT_ID(15) + 1 + i] = gGraphics_TitleScreen_BackgroundPals[1 + i]; } } if (data[14]) @@ -906,10 +906,10 @@ static void LoadMainTitleScreenPalsAndResetBgs(void) DestroyBlendPalettesGraduallyTask(); ResetPaletteFadeControl(); - LoadPalette(gGraphics_TitleScreen_GameTitleLogoPals, 0x00, 0x1A0); - LoadPalette(gGraphics_TitleScreen_BoxArtMonPals, 0xD0, 0x20); - LoadPalette(gGraphics_TitleScreen_BackgroundPals, 0xF0, 0x20); - LoadPalette(gGraphics_TitleScreen_BackgroundPals, 0xE0, 0x20); + LoadPalette(gGraphics_TitleScreen_GameTitleLogoPals, BG_PLTT_ID(0), 13 * PLTT_SIZE_4BPP); + LoadPalette(gGraphics_TitleScreen_BoxArtMonPals, BG_PLTT_ID(13), PLTT_SIZE_4BPP); + LoadPalette(gGraphics_TitleScreen_BackgroundPals, BG_PLTT_ID(15), PLTT_SIZE_4BPP); + LoadPalette(gGraphics_TitleScreen_BackgroundPals, BG_PLTT_ID(14), PLTT_SIZE_4BPP); ResetBgPositions(); ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON | DISPCNT_WIN1_ON | DISPCNT_OBJWIN_ON); ShowBg(1); @@ -1228,7 +1228,7 @@ static void SetPalOnOrCreateBlankSprite(bool32 hasCreatedBlankSprite) if (hasCreatedBlankSprite) { palIdx = IndexOfSpritePaletteTag(PAL_TAG_SLASH); - LoadPalette(gTitleScreen_Slash_Pal, palIdx * 16 + 0x100, 0x20); + LoadPalette(gTitleScreen_Slash_Pal, OBJ_PLTT_ID(palIdx), PLTT_SIZE_4BPP); } else CreateBlankSprite(); diff --git a/src/tm_case.c b/src/tm_case.c index 6075d106c..8975761a5 100644 --- a/src/tm_case.c +++ b/src/tm_case.c @@ -616,9 +616,9 @@ static bool8 HandleLoadTMCaseGraphicsAndPalettes(void) break; case 3: if (gSaveBlock2Ptr->playerGender == MALE) - LoadCompressedPalette(gTMCaseMenu_Male_Pal, 0, 0x80); + LoadCompressedPalette(gTMCaseMenu_Male_Pal, BG_PLTT_ID(0), 4 * PLTT_SIZE_4BPP); else - LoadCompressedPalette(gTMCaseMenu_Female_Pal, 0, 0x80); + LoadCompressedPalette(gTMCaseMenu_Female_Pal, BG_PLTT_ID(0), 4 * PLTT_SIZE_4BPP); sTMCaseDynamicResources->seqId++; break; case 4: @@ -1459,7 +1459,7 @@ static void Task_Pokedude_Run(u8 taskId) sTMCaseStaticResources.selectedRow = sPokedudeBagBackup->selectedRow; sTMCaseStaticResources.scrollOffset = sPokedudeBagBackup->scrollOffset; Free(sPokedudeBagBackup); - CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, 0x400); + CpuFastCopy(gPlttBufferFaded, gPlttBufferUnfaded, PLTT_SIZE); CB2_SetUpReshowBattleScreenAfterMenu(); BeginNormalPaletteFade(PALETTES_ALL, -2, 0, 16, 0); tPokedudeState++; @@ -1483,14 +1483,14 @@ static void InitWindowTemplatesAndPals(void) InitWindows(sWindowTemplates); DeactivateAllTextPrinters(); - LoadUserWindowGfx(0, 0x5B, 0xE0); - LoadMenuMessageWindowGfx(0, 0x64, 0xB0); - LoadStdWindowGfx(0, 0x78, 0xD0); - LoadPalette(gStandardMenuPalette, 0xF0, 0x20); - LoadPalette(gStandardMenuPalette, 0xA0, 0x20); - LoadPalette(sPal3Override, 0xF6, 0x04); - LoadPalette(sPal3Override, 0xD6, 0x04); - ListMenuLoadStdPalAt(0xc0, 0x01); + LoadUserWindowGfx(0, 0x5B, BG_PLTT_ID(14)); + LoadMenuMessageWindowGfx(0, 0x64, BG_PLTT_ID(11)); + LoadStdWindowGfx(0, 0x78, BG_PLTT_ID(13)); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZE_4BPP); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(10), PLTT_SIZE_4BPP); + LoadPalette(sPal3Override, BG_PLTT_ID(15) + 6, sizeof(sPal3Override)); + LoadPalette(sPal3Override, BG_PLTT_ID(13) + 6, sizeof(sPal3Override)); + ListMenuLoadStdPalAt(BG_PLTT_ID(12), 1); for (i = 0; i < ARRAY_COUNT(sWindowTemplates) - 1; i++) FillWindowPixelBuffer(i, 0x00); PutWindowTilemap(WIN_LIST); @@ -1508,12 +1508,12 @@ static void TMCase_Print(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 static void TMCase_SetWindowBorder1(u8 windowId) { - DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x5B, 0x0E); + DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x5B, 14); } static void TMCase_SetWindowBorder2(u8 windowId) { - DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x78, 0x0D); + DrawStdFrameWithCustomTileAndPalette(windowId, FALSE, 0x78, 13); } static void PrintMessageWithFollowupTask(u8 taskId, u8 fontId, const u8 * str, TaskFunc func) @@ -1530,10 +1530,10 @@ static void PrintTitle(void) static void DrawMoveInfoLabels(void) { - BlitMoveInfoIcon(WIN_MOVE_INFO_LABELS, 19, 0, 0); - BlitMoveInfoIcon(WIN_MOVE_INFO_LABELS, 20, 0, 12); - BlitMoveInfoIcon(WIN_MOVE_INFO_LABELS, 21, 0, 24); - BlitMoveInfoIcon(WIN_MOVE_INFO_LABELS, 22, 0, 36); + BlitMenuInfoIcon(WIN_MOVE_INFO_LABELS, MENU_INFO_ICON_TYPE, 0, 0); + BlitMenuInfoIcon(WIN_MOVE_INFO_LABELS, MENU_INFO_ICON_POWER, 0, 12); + BlitMenuInfoIcon(WIN_MOVE_INFO_LABELS, MENU_INFO_ICON_ACCURACY, 0, 24); + BlitMenuInfoIcon(WIN_MOVE_INFO_LABELS, MENU_INFO_ICON_PP, 0, 36); CopyWindowToVram(WIN_MOVE_INFO_LABELS, COPYWIN_GFX); } @@ -1554,7 +1554,7 @@ static void PrintMoveInfo(u16 itemId) { // Draw type icon move = ItemIdToBattleMoveId(itemId); - BlitMoveInfoIcon(WIN_MOVE_INFO, gBattleMoves[move].type + 1, 0, 0); + BlitMenuInfoIcon(WIN_MOVE_INFO, gBattleMoves[move].type + 1, 0, 0); // Print power if (gBattleMoves[move].power < 2) @@ -1648,10 +1648,10 @@ static void SetDiscSpriteAnim(struct Sprite *sprite, u8 tmIdx) static void TintDiscpriteByType(u8 type) { - u8 palIndex = IndexOfSpritePaletteTag(TAG_DISC) << 4; - LoadPalette(sTMSpritePaletteBuffer + sTMSpritePaletteOffsetByType[type], 0x100 | palIndex, 0x20); + u8 palOffset = PLTT_ID(IndexOfSpritePaletteTag(TAG_DISC)); + LoadPalette(sTMSpritePaletteBuffer + sTMSpritePaletteOffsetByType[type], OBJ_PLTT_OFFSET + palOffset, PLTT_SIZE_4BPP); if (sTMCaseStaticResources.menuType == TMCASE_POKEDUDE) - BlendPalettes(1 << (0x10 + palIndex), 4, RGB_BLACK); + BlendPalettes(1 << (16 + palOffset), 4, RGB_BLACK); } static void SetDiscSpritePosition(struct Sprite *sprite, u8 tmIdx) diff --git a/src/trade.c b/src/trade.c index d3966b993..ea29aedc8 100644 --- a/src/trade.c +++ b/src/trade.c @@ -787,8 +787,8 @@ static void InitTradeMenu(void) gPaletteFade.bufferTransferDisabled = TRUE; SetVBlankCallback(VBlankCB_TradeMenu); - LoadPalette(gStandardMenuPalette, 0xF0, 0x14); - LoadPalette(gStandardMenuPalette, 0xD0, 0x14); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(15), PLTT_SIZEOF(10)); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(13), PLTT_SIZEOF(10)); ResetBgsAndClearDma3BusyFlags(FALSE); InitBgsFromTemplates(0, sBgTemplates, ARRAY_COUNT(sBgTemplates)); SetBgTilemapBuffer(1, sTradeMenu->tilemapBuffer); @@ -803,9 +803,9 @@ static void InitTradeMenu(void) ClearWindowTilemap(i); FillWindowPixelBuffer(i, PIXEL_FILL(0)); } - FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF); - LoadStdWindowGfx(0, 0x014, 0xC0); - LoadUserWindowGfx(2, 0x001, 0xE0); + FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 15); + LoadStdWindowGfx(0, 0x014, BG_PLTT_ID(12)); + LoadUserWindowGfx(2, 0x001, BG_PLTT_ID(14)); LoadMonIconPalettes(); sTradeMenu->bufferPartyState = 0; sTradeMenu->callbackId = CB_MAIN_MENU; @@ -1372,7 +1372,7 @@ static void LoadTradeBgGfx(u8 state) switch (state) { case 0: - LoadPalette(gTradeMenu_Pal, 0x00, 0x60); + LoadPalette(gTradeMenu_Pal, BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); LoadBgTiles(1, gTradeMenu_Gfx, 0x1280, 0); CopyToBgTilemapBufferRect_ChangePalette(1, gTradeMenu_Tilemap, 0, 0, 32, 20, 0); LoadBgTilemap(2, sTradeStripesBG2Tilemap, 0x800, 0); diff --git a/src/trade_scene.c b/src/trade_scene.c index de99e5366..2c3a0801d 100644 --- a/src/trade_scene.c +++ b/src/trade_scene.c @@ -625,7 +625,7 @@ static void SpriteCB_LinkMonShadow(struct Sprite *sprite) { if (++sprite->data[0] == 12) sprite->data[0] = 0; - LoadPalette(&sLinkMonShadow_Pal[sprite->data[0]], 16 * (sprite->oam.paletteNum + 16) + 4, 2); + LoadPalette(&sLinkMonShadow_Pal[sprite->data[0]], OBJ_PLTT_ID2(sprite->oam.paletteNum) + 4, PLTT_SIZEOF(1)); } } @@ -938,13 +938,13 @@ static void TradeAnimInit_LoadGfx(void) DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0); LZDecompressWram(gBattleInterface_Textbox_Tilemap, gDecompressionBuffer); CopyToBgTilemapBuffer(0, gDecompressionBuffer, BG_SCREEN_SIZE, 0); - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x000, 0x20); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); InitWindows(sTradeMessageWindowTemplates); // ... and doing the same load again DecompressAndLoadBgGfxUsingHeap(0, gBattleInterface_Textbox_Gfx, 0, 0, 0); LZDecompressWram(gBattleInterface_Textbox_Tilemap, gDecompressionBuffer); CopyToBgTilemapBuffer(0, gDecompressionBuffer, BG_SCREEN_SIZE, 0); - LoadCompressedPalette(gBattleInterface_Textbox_Pal, 0x000, 0x20); + LoadCompressedPalette(gBattleInterface_Textbox_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); } static void CB2_InitInGameTrade(void) @@ -1118,7 +1118,7 @@ static void SetTradeSequenceBgGpuRegs(u8 state) sTradeAnim->bg2hofs = 0xB4; SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(1) | BGCNT_SCREENBASE(18) | BGCNT_TXT512x256); - LoadPalette(gTradeGba2_Pal, 0x10, 0x60); + LoadPalette(gTradeGba2_Pal, BG_PLTT_ID(1), 3 * PLTT_SIZE_4BPP); DmaCopyLarge16(3, gTradeGba_Gfx, (void *)BG_CHAR_ADDR(1), 0x1420, 0x1000); DmaCopy16Defvars(3, gTradeOrHatchMonShadowTilemap, (void *)BG_SCREEN_ADDR(18), 0x1000); break; @@ -1156,7 +1156,7 @@ static void SetTradeSequenceBgGpuRegs(u8 state) } break; case 3: - LoadPalette(sWirelessSignalAnimPals_Off, 0x30, 0x20); + LoadPalette(sWirelessSignalAnimPals_Off, BG_PLTT_ID(3), PLTT_SIZE_4BPP); LZ77UnCompVram(sWirelessSignal4bpp, BG_CHAR_ADDR(1)); LZ77UnCompVram(sWirelessSignalTilemap, BG_SCREEN_ADDR(18)); sTradeAnim->bg2vofs = 0x50; @@ -1209,7 +1209,7 @@ static void SetTradeSequenceBgGpuRegs(u8 state) sTradeAnim->bg2hofs = 0; SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BG2CNT, BGCNT_PRIORITY(2) | BGCNT_CHARBASE(1) | BGCNT_SCREENBASE(18) | BGCNT_TXT512x256); - LoadPalette(gTradeGba2_Pal, 0x10, 0x60); + LoadPalette(gTradeGba2_Pal, BG_PLTT_ID(1), 3 * PLTT_SIZE_4BPP); DmaCopyLarge16(3, gTradeGba_Gfx, (void *)BG_CHAR_ADDR(1), 0x1420, 0x1000); DmaCopy16Defvars(3, gTradeOrHatchMonShadowTilemap, (void *)BG_SCREEN_ADDR(18), 0x1000); break; @@ -2789,16 +2789,16 @@ static void Task_AnimateWirelessSignal(u8 taskId) if (!tSignalComingBack) { if (paletteIdx == 0x100) - LoadPalette(sWirelessSignalAnimPals_Off, 0x30, 0x20); + LoadPalette(sWirelessSignalAnimPals_Off, BG_PLTT_ID(3), PLTT_SIZE_4BPP); else - LoadPalette(&sWirelessSignalAnimPals_Outbound[paletteIdx], 0x30, 0x20); + LoadPalette(&sWirelessSignalAnimPals_Outbound[paletteIdx], BG_PLTT_ID(3), PLTT_SIZE_4BPP); } else { if (paletteIdx == 0x100) - LoadPalette(sWirelessSignalAnimPals_Off, 0x30, 0x20); + LoadPalette(sWirelessSignalAnimPals_Off, BG_PLTT_ID(3), PLTT_SIZE_4BPP); else - LoadPalette(&sWirelessSignalAnimPals_Inbound[paletteIdx], 0x30, 0x20); + LoadPalette(&sWirelessSignalAnimPals_Inbound[paletteIdx], BG_PLTT_ID(3), PLTT_SIZE_4BPP); } if (sWirelessSignalAnimParams[tIdx][0] == 0 && tCounter == 0) diff --git a/src/trainer_card.c b/src/trainer_card.c index 765c48cd3..ab959d6c4 100644 --- a/src/trainer_card.c +++ b/src/trainer_card.c @@ -151,35 +151,35 @@ static void InitTrainerCardData(void); static u8 GetCardType(void); static void CreateTrainerCardTrainerPic(void); -// Data -static const u32 sTrainerCardStickers_Gfx[] = INCBIN_U32("graphics/trainer_card/stickers.4bpp.lz"); -static const u32 sHoennTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_hoenn.bin"); -static const u32 sKantoTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/front.bin"); -static const u32 sHoennTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/back_hoenn.bin"); -static const u32 sKantoTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/back.bin"); -static const u32 sHoennTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_hoenn_link.bin"); -static const u32 sKantoTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_link.bin"); -static const u32 sHoennTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/bg_hoenn.bin"); -static const u32 sKantoTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/bg.bin"); -static const u16 sHoennTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_1stars_pals.gbapal"); -static const u16 sKantoTrainerCard1Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_1stars_pals.gbapal"); -static const u16 sHoennTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_2stars_pals.gbapal"); -static const u16 sKantoTrainerCard2Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_2stars_pals.gbapal"); -static const u16 sHoennTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_3stars_pals.gbapal"); -static const u16 sKantoTrainerCard3Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_3stars_pals.gbapal"); -static const u16 sHoennTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/em_4stars_pals.gbapal"); -static const u16 sKantoTrainerCard4Stars_Pals[] = INCBIN_U16("graphics/trainer_card/fr_4stars_pals.gbapal"); -static const u16 sHoennTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/em_female_bg.gbapal"); -static const u16 sKantoTrainerCardFemaleBackground_Pal[] = INCBIN_U16("graphics/trainer_card/fr_female_bg.gbapal"); -static const u16 sHoennTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/em_badges.gbapal"); -static const u16 sKantoTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/fr_badges.gbapal"); -static const u16 sTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/gold.gbapal"); -static const u16 sTrainerCardStickerPal1[] = INCBIN_U16("graphics/trainer_card/sticker1.gbapal"); -static const u16 sTrainerCardStickerPal2[] = INCBIN_U16("graphics/trainer_card/sticker2.gbapal"); -static const u16 sTrainerCardStickerPal3[] = INCBIN_U16("graphics/trainer_card/sticker3.gbapal"); -static const u16 sTrainerCardStickerPal4[] = INCBIN_U16("graphics/trainer_card/sticker4.gbapal"); -static const u32 sHoennTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/em_badges.4bpp.lz"); -static const u32 sKantoTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz"); +static const u32 sTrainerCardStickers_Gfx[] = INCBIN_U32("graphics/trainer_card/stickers.4bpp.lz"); +static const u32 sHoennTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/rse/front.bin.lz"); +static const u32 sKantoTrainerCardFront_Tilemap[] = INCBIN_U32("graphics/trainer_card/front.bin.lz"); +static const u32 sHoennTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/rse/back.bin.lz"); +static const u32 sKantoTrainerCardBack_Tilemap[] = INCBIN_U32("graphics/trainer_card/back.bin.lz"); +static const u32 sHoennTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/rse/front_link.bin.lz"); +static const u32 sKantoTrainerCardFrontLink_Tilemap[] = INCBIN_U32("graphics/trainer_card/front_link.bin.lz"); +static const u32 sHoennTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/rse/bg.bin.lz"); +static const u32 sKantoTrainerCardBg_Tilemap[] = INCBIN_U32("graphics/trainer_card/bg.bin.lz"); +static const u16 sUnused_Pal[] = INCBIN_U16("graphics/trainer_card/unused.gbapal"); +static const u16 sHoennTrainerCardBronze_Pal[] = INCBIN_U16("graphics/trainer_card/rse/bronze.gbapal"); +static const u16 sKantoTrainerCardGreen_Pal[] = INCBIN_U16("graphics/trainer_card/green.gbapal"); +static const u16 sHoennTrainerCardCopper_Pal[] = INCBIN_U16("graphics/trainer_card/rse/copper.gbapal"); +static const u16 sKantoTrainerCardBronze_Pal[] = INCBIN_U16("graphics/trainer_card/bronze.gbapal"); +static const u16 sHoennTrainerCardSilver_Pal[] = INCBIN_U16("graphics/trainer_card/rse/silver.gbapal"); +static const u16 sKantoTrainerCardSilver_Pal[] = INCBIN_U16("graphics/trainer_card/silver.gbapal"); +static const u16 sHoennTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/rse/gold.gbapal"); +static const u16 sKantoTrainerCardGold_Pal[] = INCBIN_U16("graphics/trainer_card/gold.gbapal"); +static const u16 sHoennTrainerCardFemaleBg_Pal[] = INCBIN_U16("graphics/trainer_card/rse/female_bg.gbapal"); +static const u16 sKantoTrainerCardFemaleBg_Pal[] = INCBIN_U16("graphics/trainer_card/female_bg.gbapal"); +static const u16 sHoennTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/rse/badges.gbapal"); +static const u16 sKantoTrainerCardBadges_Pal[] = INCBIN_U16("graphics/trainer_card/badges.gbapal"); +static const u16 sTrainerCardStar_Pal[] = INCBIN_U16("graphics/trainer_card/star.gbapal"); +static const u16 sTrainerCardStickerPal1[] = INCBIN_U16("graphics/trainer_card/stickers1.gbapal"); +static const u16 sTrainerCardStickerPal2[] = INCBIN_U16("graphics/trainer_card/stickers2.gbapal"); +static const u16 sTrainerCardStickerPal3[] = INCBIN_U16("graphics/trainer_card/stickers3.gbapal"); +static const u16 sTrainerCardStickerPal4[] = INCBIN_U16("graphics/trainer_card/stickers4.gbapal"); +static const u32 sHoennTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/rse/badges.4bpp.lz"); +static const u32 sKantoTrainerCardBadges_Gfx[] = INCBIN_U32("graphics/trainer_card/badges.4bpp.lz"); static const struct BgTemplate sTrainerCardBgTemplates[4] = { @@ -253,22 +253,22 @@ static const struct WindowTemplate sTrainerCardWindowTemplates[4] = DUMMY_WIN_TEMPLATE }; -static const u16 *const sHoennTrainerCardStarPals[] = +static const u16 *const sHoennTrainerCardPals[] = { - gHoennTrainerCard_Pal, - sHoennTrainerCard1Stars_Pals, - sHoennTrainerCard2Stars_Pals, - sHoennTrainerCard3Stars_Pals, - sHoennTrainerCard4Stars_Pals + gHoennTrainerCardGreen_Pal, // Default (0 stars) + sHoennTrainerCardBronze_Pal, // 1 star + sHoennTrainerCardCopper_Pal, // 2 stars + sHoennTrainerCardSilver_Pal, // 3 stars + sHoennTrainerCardGold_Pal, // 4 stars }; -static const u16 *const sKantoTrainerCardStarPals[] = +static const u16 *const sKantoTrainerCardPals[] = { - gKantoTrainerCard_Pal, - sKantoTrainerCard1Stars_Pals, - sKantoTrainerCard2Stars_Pals, - sKantoTrainerCard3Stars_Pals, - sKantoTrainerCard4Stars_Pals + gKantoTrainerCardBlue_Pal, // Default (0 stars) + sKantoTrainerCardGreen_Pal, // 1 star + sKantoTrainerCardBronze_Pal, // 2 stars + sKantoTrainerCardSilver_Pal, // 3 stars + sKantoTrainerCardGold_Pal, // 4 stars }; static const u8 sTrainerCardTextColors[] = {TEXT_COLOR_TRANSPARENT, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_LIGHT_GRAY}; @@ -1428,7 +1428,7 @@ static void LoadMonIconGfx(void) break; } - LoadPalette(sTrainerCardDataPtr->monIconPals, 80, 192); + LoadPalette(sTrainerCardDataPtr->monIconPals, BG_PLTT_ID(5), sizeof(sTrainerCardDataPtr->monIconPals)); for (i = 0; i < PARTY_SIZE; i++) { LoadBgTiles(3, GetMonIconTiles(sTrainerCardDataPtr->trainerCard.monSpecies[i], 0), 512, 16 * i + 32); @@ -1454,10 +1454,10 @@ static void PrintStickersOnCard(void) static void LoadStickerGfx(void) { - LoadPalette(sTrainerCardStickerPal1, 176, 32); - LoadPalette(sTrainerCardStickerPal2, 192, 32); - LoadPalette(sTrainerCardStickerPal3, 208, 32); - LoadPalette(sTrainerCardStickerPal4, 224, 32); + LoadPalette(sTrainerCardStickerPal1, BG_PLTT_ID(11), sizeof(sTrainerCardStickerPal1)); + LoadPalette(sTrainerCardStickerPal2, BG_PLTT_ID(12), sizeof(sTrainerCardStickerPal2)); + LoadPalette(sTrainerCardStickerPal3, BG_PLTT_ID(13), sizeof(sTrainerCardStickerPal3)); + LoadPalette(sTrainerCardStickerPal4, BG_PLTT_ID(14), sizeof(sTrainerCardStickerPal4)); LoadBgTiles(3, sTrainerCardDataPtr->stickerTiles, 1024, 128); } @@ -1479,24 +1479,24 @@ static bool8 SetTrainerCardBgsAndPals(void) break; case 2: if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE) - LoadPalette(sHoennTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.rse.stars], 0, 96); + LoadPalette(sHoennTrainerCardPals[sTrainerCardDataPtr->trainerCard.rse.stars], BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); else - LoadPalette(sKantoTrainerCardStarPals[sTrainerCardDataPtr->trainerCard.rse.stars], 0, 96); + LoadPalette(sKantoTrainerCardPals[sTrainerCardDataPtr->trainerCard.rse.stars], BG_PLTT_ID(0), 3 * PLTT_SIZE_4BPP); break; case 3: if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE) - LoadPalette(sHoennTrainerCardBadges_Pal, 48, 32); + LoadPalette(sHoennTrainerCardBadges_Pal, BG_PLTT_ID(3), sizeof(sHoennTrainerCardBadges_Pal)); else - LoadPalette(sKantoTrainerCardBadges_Pal, 48, 32); + LoadPalette(sKantoTrainerCardBadges_Pal, BG_PLTT_ID(3), sizeof(sKantoTrainerCardBadges_Pal)); break; case 4: if (sTrainerCardDataPtr->cardType == CARD_TYPE_RSE && sTrainerCardDataPtr->trainerCard.rse.gender != MALE) - LoadPalette(sHoennTrainerCardFemaleBackground_Pal, 16, 32); + LoadPalette(sHoennTrainerCardFemaleBg_Pal, BG_PLTT_ID(1), sizeof(sHoennTrainerCardFemaleBg_Pal)); else if (sTrainerCardDataPtr->trainerCard.rse.gender != MALE) - LoadPalette(sKantoTrainerCardFemaleBackground_Pal, 16, 32); + LoadPalette(sKantoTrainerCardFemaleBg_Pal, BG_PLTT_ID(1), sizeof(sKantoTrainerCardFemaleBg_Pal)); break; case 5: - LoadPalette(sTrainerCardGold_Pal, 64, 32); + LoadPalette(sTrainerCardStar_Pal, BG_PLTT_ID(4), sizeof(sTrainerCardStar_Pal)); break; case 6: SetBgTilemapBuffer(0, sTrainerCardDataPtr->cardTilemapBuffer); diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c index a17502b63..a6622d8fc 100644 --- a/src/trainer_pokemon_sprites.c +++ b/src/trainer_pokemon_sprites.c @@ -81,7 +81,7 @@ void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8 palett if (paletteTag == TAG_NONE) { sCreatingSpriteTemplate.paletteTag = TAG_NONE; - LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), 0x100 + paletteSlot * 0x10, 0x20); + LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), OBJ_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP); } else { @@ -94,7 +94,7 @@ void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8 palett if (paletteTag == TAG_NONE) { sCreatingSpriteTemplate.paletteTag = TAG_NONE; - LoadCompressedPalette(gTrainerFrontPicPaletteTable[species].data, 0x100 + paletteSlot * 0x10, 0x20); + LoadCompressedPalette(gTrainerFrontPicPaletteTable[species].data, OBJ_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP); } else { @@ -107,9 +107,9 @@ void LoadPicPaletteByTagOrSlot(u16 species, u32 otId, u32 personality, u8 palett void LoadPicPaletteBySlot(u16 species, u32 otId, u32 personality, u8 paletteSlot, bool8 isTrainer) { if (!isTrainer) - LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), paletteSlot * 0x10, 0x20); + LoadCompressedPalette(GetMonSpritePalFromSpeciesAndPersonality(species, otId, personality), BG_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP); else - LoadCompressedPalette(gTrainerFrontPicPaletteTable[species].data, paletteSlot * 0x10, 0x20); + LoadCompressedPalette(gTrainerFrontPicPaletteTable[species].data, BG_PLTT_ID(paletteSlot), PLTT_SIZE_4BPP); } void AssignSpriteAnimsTable(bool8 isTrainer) diff --git a/src/union_room.c b/src/union_room.c index 59a090f98..172c41f33 100644 --- a/src/union_room.c +++ b/src/union_room.c @@ -2258,7 +2258,7 @@ void RunUnionRoom(void) uroom->unreadPlayerId = 0; gSpecialVar_Result = 0; - ListMenuLoadStdPalAt(0xD0, 1); + ListMenuLoadStdPalAt(BG_PLTT_ID(13), 1); } static u16 ReadAsU16(const u8 *ptr) @@ -3934,7 +3934,7 @@ static void TradeBoardPrintItemInfo(u8 windowId, u8 y, struct RfuGameData * data } else { - BlitMoveInfoIcon(windowId, type + 1, 68, y); + BlitMenuInfoIcon(windowId, type + 1, 68, y); PrintUnionRoomText(windowId, FONT_NORMAL, gSpeciesNames[species], 118, y, colorIdx); ConvertIntToDecimalStringN(levelStr, level, STR_CONV_MODE_LEFT_ALIGN, 3); PrintUnionRoomText(windowId, FONT_NORMAL, levelStr, GetStringRightAlignXOffset(2, levelStr, 218), y, colorIdx); diff --git a/src/union_room_battle.c b/src/union_room_battle.c index 453e31097..5c31746a9 100644 --- a/src/union_room_battle.c +++ b/src/union_room_battle.c @@ -75,7 +75,7 @@ static bool32 UnionRoomBattle_PrintTextOnWindow0(s16 * state, const u8 * str, s3 switch (*state) { case 0: - DrawTextBorderOuter(0, 0x001, 0xD); + DrawTextBorderOuter(0, 0x001, 13); UnionRoomBattle_CreateTextPrinter(0, str, 0, 2, speed); PutWindowTilemap(0); CopyWindowToVram(0, COPYWIN_FULL); @@ -120,8 +120,8 @@ void CB2_UnionRoomBattle(void) ClearWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(0)); FillWindowPixelBuffer(0, PIXEL_FILL(1)); - FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 0xF); - LoadStdWindowGfx(0, 1, 0xD0); + FillBgTilemapBufferRect(0, 0, 0, 0, 30, 20, 15); + LoadStdWindowGfx(0, 1, BG_PLTT_ID(13)); Menu_LoadStdPal(); SetVBlankCallback(VBlankCB_UnionRoomBattle); gMain.state++; diff --git a/src/union_room_chat_display.c b/src/union_room_chat_display.c index 6ded7d3af..9588fed93 100644 --- a/src/union_room_chat_display.c +++ b/src/union_room_chat_display.c @@ -1259,8 +1259,8 @@ static void ClearBg0(void) static void LoadUnionRoomChatPanelGfx(void) { - LoadPalette(gUnionRoomChat_Panel_Pal, 0x70, 0x20); - LoadPalette(sUnionRoomChat_TextEntry_Pal, 0xC0, 0x20); + LoadPalette(gUnionRoomChat_Panel_Pal, BG_PLTT_ID(7), PLTT_SIZE_4BPP); + LoadPalette(sUnionRoomChat_TextEntry_Pal, BG_PLTT_ID(12), PLTT_SIZE_4BPP); DecompressAndCopyTileDataToVram(1, gUnionRoomChat_Panel_Gfx, 0, 0, 0); CopyToBgTilemapBuffer(1, gUnionRoomChat_Panel_Tilemap, 0, 0); CopyBgTilemapBufferToVram(1); @@ -1270,7 +1270,7 @@ static void LoadLinkMiscMenuGfx(void) { u8 *ptr; - LoadPalette(gUnionRoomChat_Bg_Pal, 0, 0x20); + LoadPalette(gUnionRoomChat_Bg_Pal, BG_PLTT_ID(0), PLTT_SIZE_4BPP); ptr = DecompressAndCopyTileDataToVram(2, gUnionRoomChat_Bg_Gfx, 0, 0, 0); CopyToBgTilemapBuffer(2, gUnionRoomChat_Bg_Tilemap, 0, 0); CopyBgTilemapBufferToVram(2); @@ -1278,13 +1278,13 @@ static void LoadLinkMiscMenuGfx(void) static void LoadBg1Pal8(void) { - LoadPalette(gUnionRoomChat_Unused_Pal, 0x80, 0x20); + LoadPalette(gUnionRoomChat_Unused_Pal, BG_PLTT_ID(8), PLTT_SIZE_4BPP); RequestDma3Fill(0, (void *)BG_CHAR_ADDR(1) + 0x20, 0x20, DMA3_32BIT); } static void LoadWin0(void) { - LoadPalette(sUnionRoomChat_Messages_Pal, 0xF0, 0x20); + LoadPalette(sUnionRoomChat_Messages_Pal, BG_PLTT_ID(15), PLTT_SIZE_4BPP); PutWindowTilemap(0); FillWindowPixelBuffer(0, PIXEL_FILL(1)); CopyWindowToVram(0, COPYWIN_FULL); @@ -1307,9 +1307,9 @@ static void LoadWin1(void) static void LoadWin3(void) { FillWindowPixelBuffer(3, PIXEL_FILL(1)); - LoadUserWindowGfx(3, 1, 0xD0); - LoadStdWindowGfx(3, 0xA, 0x20); - LoadPalette(gStandardMenuPalette, 0xE0, 0x20); + LoadUserWindowGfx(3, 1, BG_PLTT_ID(13)); + LoadStdWindowGfx(3, 0xA, BG_PLTT_ID(2)); + LoadPalette(gStandardMenuPalette, BG_PLTT_ID(14), PLTT_SIZE_4BPP); } static void InitScanlineEffect(void) diff --git a/src/union_room_chat_objects.c b/src/union_room_chat_objects.c index 23837d2e3..d7e26a46a 100644 --- a/src/union_room_chat_objects.c +++ b/src/union_room_chat_objects.c @@ -242,7 +242,7 @@ void UnionRoomChat_UpdateObjPalCycle(int arg0) { const u16 *palette = &sUnionRoomChatInterfacePal[arg0 * 2 + 1]; u8 index = IndexOfSpritePaletteTag(0); - LoadPalette(palette, index * 16 + 0x101, 4); + LoadPalette(palette, OBJ_PLTT_ID(index) + 1, PLTT_SIZEOF(2)); } void UnionRoomChat_SetSelectorCursorClosedImage(void) diff --git a/src/union_room_message.c b/src/union_room_message.c index a1368e9fa..90b481a33 100644 --- a/src/union_room_message.c +++ b/src/union_room_message.c @@ -546,17 +546,17 @@ const u8 *const gTexts_UR_CardColor[] = { sText_ItsGoldCard }; -ALIGNED(4) const u8 gText_UR_TrainerCardInfoPage1[] = _("This is {SPECIAL_F7 0x00} {SPECIAL_F7 0x01}'s\nTRAINER CARD…\l{SPECIAL_F7 0x02}\pPOKéDEX: {SPECIAL_F7 0x03}\nTIME: {SPECIAL_F7 0x04}:{SPECIAL_F7 0x05}\p"); -ALIGNED(4) const u8 gText_UR_TrainerCardInfoPage2[] = _("BATTLES: {SPECIAL_F7 0x00} WINS {SPECIAL_F7 0x02} LOSSES\nTRADES: {SPECIAL_F7 0x03} TIMES\p“{SPECIAL_F7 0x04} {SPECIAL_F7 0x05}\n{SPECIAL_F7 0x06} {SPECIAL_F7 0x07}”\p"); -ALIGNED(4) static const u8 sText_GladToMeetYouMale[] = _("{SPECIAL_F7 0x01}: Glad to have met you!{PAUSE 60}"); -ALIGNED(4) static const u8 sText_GladToMeetYouFemale[] = _("{SPECIAL_F7 0x01}: Glad to meet you!{PAUSE 60}"); +ALIGNED(4) const u8 gText_UR_TrainerCardInfoPage1[] = _("This is {DYNAMIC 0} {DYNAMIC 1}'s\nTRAINER CARD…\l{DYNAMIC 2}\pPOKéDEX: {DYNAMIC 3}\nTIME: {DYNAMIC 4}:{DYNAMIC 5}\p"); +ALIGNED(4) const u8 gText_UR_TrainerCardInfoPage2[] = _("BATTLES: {DYNAMIC 0} WINS {DYNAMIC 2} LOSSES\nTRADES: {DYNAMIC 3} TIMES\p“{DYNAMIC 4} {DYNAMIC 5}\n{DYNAMIC 6} {DYNAMIC 7}”\p"); +ALIGNED(4) static const u8 sText_GladToMeetYouMale[] = _("{DYNAMIC 1}: Glad to have met you!{PAUSE 60}"); +ALIGNED(4) static const u8 sText_GladToMeetYouFemale[] = _("{DYNAMIC 1}: Glad to meet you!{PAUSE 60}"); const u8 *const gTexts_UR_GladToMeetYou[GENDER_COUNT] = { sText_GladToMeetYouMale, sText_GladToMeetYouFemale }; -ALIGNED(4) const u8 gText_UR_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {SPECIAL_F7 0x01}'s\nTRAINER CARD.{PAUSE 60}"); +ALIGNED(4) const u8 gText_UR_FinishedCheckingPlayersTrainerCard[] = _("Finished checking {DYNAMIC 1}'s\nTRAINER CARD.{PAUSE 60}"); ALIGNED(4) static const u8 sText_CanceledReadingCard[] = _("Canceled reading the Card."); static const struct MysteryGiftClientCmd sClientScript_DynamicError[] = { diff --git a/src/wild_encounter.c b/src/wild_encounter.c index a49b48910..125cdac6a 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -17,6 +17,10 @@ #include "constants/abilities.h" #include "constants/items.h" +#define MAX_ENCOUNTER_RATE 1600 + +#define HEADER_NONE 0xFFFF + struct WildEncounterData { u32 rngState; @@ -42,7 +46,7 @@ static void AddToWildEncounterRateBuff(u8 encouterRate); #include "data/wild_encounters.h" -static const u8 sUnownLetterSlots[][12] = { +static const u8 sUnownLetterSlots[][LAND_WILD_COUNT] = { // A A A A A A A A A A A ? { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27}, // C C C D D D H H H U U O @@ -198,7 +202,7 @@ static u16 GetCurrentMapWildMonHeaderId(void) } } - return -1; + return HEADER_NONE; } static bool8 UnlockedTanobyOrAreNotInTanoby(void) @@ -226,13 +230,13 @@ static void GenerateWildMon(u16 species, u8 level, u8 slot) ZeroEnemyPartyMons(); if (species != SPECIES_UNOWN) { - CreateMonWithNature(&gEnemyParty[0], species, level, 32, Random() % 25); + CreateMonWithNature(&gEnemyParty[0], species, level, USE_RANDOM_IVS, Random() % NUM_NATURES); } else { chamber = gSaveBlock1Ptr->location.mapNum - MAP_NUM(SEVEN_ISLAND_TANOBY_RUINS_MONEAN_CHAMBER); personality = GenerateUnownPersonalityByLetter(sUnownLetterSlots[chamber][slot]); - CreateMon(&gEnemyParty[0], species, level, 32, TRUE, personality, FALSE, 0); + CreateMon(&gEnemyParty[0], species, level, USE_RANDOM_IVS, TRUE, personality, FALSE, 0); } } @@ -248,7 +252,7 @@ static u32 GenerateUnownPersonalityByLetter(u8 letter) u8 GetUnownLetterByPersonalityLoByte(u32 personality) { - return (((personality & 0x3000000) >> 18) | ((personality & 0x30000) >> 12) | ((personality & 0x300) >> 6) | (personality & 0x3)) % 0x1C; + return GET_UNOWN_LETTER(personality); } enum @@ -295,9 +299,9 @@ static u16 GenerateFishingEncounter(const struct WildPokemonInfo * info, u8 rod) return info->wildPokemon[slot].species; } -static bool8 DoWildEncounterRateDiceRoll(u16 a0) +static bool8 DoWildEncounterRateDiceRoll(u16 encounterRate) { - if (WildEncounterRandom() % 1600 < a0) + if (WildEncounterRandom() % MAX_ENCOUNTER_RATE < encounterRate) return TRUE; return FALSE; } @@ -322,8 +326,8 @@ static bool8 DoWildEncounterRateTest(u32 encounterRate, bool8 ignoreAbility) break; } } - if (encounterRate > 1600) - encounterRate = 1600; + if (encounterRate > MAX_ENCOUNTER_RATE) + encounterRate = MAX_ENCOUNTER_RATE; return DoWildEncounterRateDiceRoll(encounterRate); } @@ -357,7 +361,7 @@ bool8 StandardWildEncounter(u32 currMetatileAttrs, u16 previousMetatileBehavior) return FALSE; headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF) + if (headerId != HEADER_NONE) { if (ExtractMetatileAttribute(currMetatileAttrs, METATILE_ATTRIBUTE_ENCOUNTER_TYPE) == TILE_ENCOUNTER_LAND) { @@ -442,7 +446,7 @@ bool8 StandardWildEncounter(u32 currMetatileAttrs, u16 previousMetatileBehavior) void RockSmashWildEncounter(void) { u16 headerIdx = GetCurrentMapWildMonHeaderId(); - if (headerIdx == 0xFFFF) + if (headerIdx == HEADER_NONE) gSpecialVar_Result = FALSE; else if (gWildMonHeaders[headerIdx].rockSmashMonsInfo == NULL) gSpecialVar_Result = FALSE; @@ -464,7 +468,7 @@ bool8 SweetScentWildEncounter(void) PlayerGetDestCoords(&x, &y); headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF) + if (headerId != HEADER_NONE) { if (MapGridGetMetatileAttributeAt(x, y, METATILE_ATTRIBUTE_ENCOUNTER_TYPE) == TILE_ENCOUNTER_LAND) { @@ -505,7 +509,7 @@ bool8 SweetScentWildEncounter(void) bool8 DoesCurrentMapHaveFishingMons(void) { u16 headerIdx = GetCurrentMapWildMonHeaderId(); - if (headerIdx == 0xFFFF) + if (headerIdx == HEADER_NONE) return FALSE; if (gWildMonHeaders[headerIdx].fishingMonsInfo == NULL) return FALSE; @@ -527,7 +531,7 @@ u16 GetLocalWildMon(bool8 *isWaterMon) *isWaterMon = FALSE; headerId = GetCurrentMapWildMonHeaderId(); - if (headerId == 0xFFFF) + if (headerId == HEADER_NONE) return SPECIES_NONE; landMonsInfo = gWildMonHeaders[headerId].landMonsInfo; waterMonsInfo = gWildMonHeaders[headerId].waterMonsInfo; @@ -559,7 +563,7 @@ u16 GetLocalWaterMon(void) { u16 headerId = GetCurrentMapWildMonHeaderId(); - if (headerId != 0xFFFF) + if (headerId != HEADER_NONE) { const struct WildPokemonInfo * waterMonsInfo = gWildMonHeaders[headerId].waterMonsInfo; @@ -669,7 +673,7 @@ static u16 WildEncounterRandom(void) static u8 GetMapBaseEncounterCooldown(u8 encounterType) { u16 headerIdx = GetCurrentMapWildMonHeaderId(); - if (headerIdx == 0xFFFF) + if (headerIdx == HEADER_NONE) return 0xFF; if (encounterType == TILE_ENCOUNTER_LAND) { diff --git a/src/wireless_communication_status_screen.c b/src/wireless_communication_status_screen.c index eb4ef03f9..693e22052 100644 --- a/src/wireless_communication_status_screen.c +++ b/src/wireless_communication_status_screen.c @@ -212,10 +212,10 @@ static void CB2_InitWirelessCommunicationScreen(void) ChangeBgY(0, 0, BG_COORD_SET); ChangeBgX(1, 0, BG_COORD_SET); ChangeBgY(1, 0, BG_COORD_SET); - LoadPalette(sPalettes, 0, 0x20); - Menu_LoadStdPalAt(0xf0); + LoadPalette(sPalettes, BG_PLTT_ID(0), PLTT_SIZE_4BPP); + Menu_LoadStdPalAt(BG_PLTT_ID(15)); DynamicPlaceholderTextUtil_Reset(); - FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 0xF); + FillBgTilemapBufferRect(0, 0x000, 0, 0, 32, 32, 15); CopyBgTilemapBufferToVram(1); SetMainCallback2(CB2_RunWirelessCommunicationScreen); RunTasks(); @@ -247,7 +247,7 @@ static void CyclePalette(s16 * counter, s16 * palIdx) *counter = 0; } idx = *palIdx + 2; // +2 skips over default.pal and the empty black palette after it - LoadPalette(sPalettes[idx], 0, 16); + LoadPalette(sPalettes[idx], BG_PLTT_ID(0), PLTT_SIZEOF(8)); } static void PrintHeaderTexts(void) diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index 0edb1579f..53fb61f44 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -1,8 +1,10 @@ CC = gcc CFLAGS = -Wall -Wextra -Werror -Wno-sign-compare -std=c11 -O3 -flto -DPNG_SKIP_SETJMP_CHECK +CFLAGS += $(shell pkg-config --cflags libpng) LIBS = -lpng -lz +LDFLAGS += $(shell pkg-config --libs-only-L libpng) SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c huff.c diff --git a/tools/mapjson/mapjson.cpp b/tools/mapjson/mapjson.cpp index cfe95c485..e53ac7924 100644 --- a/tools/mapjson/mapjson.cpp +++ b/tools/mapjson/mapjson.cpp @@ -75,6 +75,9 @@ string json_to_string(const Json &data, const string &field = "", bool silent = case Json::Type::BOOL: output = value.bool_value() ? "TRUE" : "FALSE"; break; + case Json::Type::NUL: + output = ""; + break; default:{ if (!silent) { string s = !field.empty() ? ("Value for '" + field + "'") : "JSON field"; @@ -459,23 +462,24 @@ string generate_map_constants_text(string groups_filepath, Json groups_data) { for (auto &group : groups_data["group_order"].array_items()) { string groupName = json_to_string(group); text << "// " << groupName << "\n"; - vector map_ids; + vector map_ids; size_t max_length = 0; for (auto &map_name : groups_data[groupName].array_items()) { - string header_filepath = file_dir + json_to_string(map_name) + dir_separator + "map.json"; + string map_filepath = file_dir + json_to_string(map_name) + dir_separator + "map.json"; string err_str; - Json map_data = Json::parse(read_text_file(header_filepath), err_str); - map_ids.push_back(map_data["id"]); - string id = json_to_string(map_data, "id"); + Json map_data = Json::parse(read_text_file(map_filepath), err_str); + if (map_data == Json()) + FATAL_ERROR("%s: %s\n", map_filepath.c_str(), err_str.c_str()); + string id = json_to_string(map_data, "id", true); + map_ids.push_back(id); if (id.length() > max_length) max_length = id.length(); } int map_id_num = 0; - for (Json map_id : map_ids) { - string id = json_to_string(map_id); - text << "#define " << id << string((max_length - id.length() + 1), ' ') + for (string map_id : map_ids) { + text << "#define " << map_id << string((max_length - map_id.length() + 1), ' ') << "(" << map_id_num++ << " | (" << group_num << " << 8))\n"; } text << "\n"; diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index abe1cab51..55b2e8ab2 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -1,8 +1,10 @@ CC = gcc CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 -DPNG_SKIP_SETJMP_CHECK +CFLAGS += $(shell pkg-config --cflags libpng) LIBS = -lpng -lz +LDFLAGS += $(shell pkg-config --libs-only-L libpng) SRCS = main.c convert_png.c util.c font.c