summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/battle_anim.c1269
-rw-r--r--src/battle_anim_80A9C70.c8
-rw-r--r--src/battle_anim_utility_funcs.c10
-rw-r--r--src/battle_bg.c98
-rw-r--r--src/battle_dome.c42
-rw-r--r--src/battle_factory.c30
-rw-r--r--src/battle_intro.c21
-rw-r--r--src/battle_pyramid_bag.c18
-rw-r--r--src/battle_records.c4
-rw-r--r--src/berry_blender.c16
-rw-r--r--src/berry_tag_screen.c8
-rw-r--r--src/bug.c189
-rw-r--r--src/cable_club.c6
-rw-r--r--src/clear_save_data_screen.c8
-rw-r--r--src/credits.c16
-rw-r--r--src/dark.c169
-rw-r--r--src/daycare.c2
-rw-r--r--src/decoration.c8
-rw-r--r--src/diploma.c19
-rw-r--r--src/dragon.c180
-rw-r--r--src/effects_1.c2093
-rw-r--r--src/effects_2.c1197
-rw-r--r--src/egg_hatch.c16
-rw-r--r--src/electric.c438
-rw-r--r--src/field_region_map.c4
-rw-r--r--src/field_specials.c8
-rw-r--r--src/fight.c398
-rw-r--r--src/fire.c438
-rw-r--r--src/flying.c328
-rw-r--r--src/ghost.c186
-rw-r--r--src/ground.c121
-rw-r--r--src/ice.c491
-rw-r--r--src/intro.c4
-rwxr-xr-xsrc/item_menu.c32
-rw-r--r--src/mail.c2
-rw-r--r--src/main_menu.c46
-rw-r--r--src/map_name_popup.c2
-rw-r--r--src/menu.c10
-rw-r--r--src/mystery_event_menu.c4
-rw-r--r--src/naming_screen.c10
-rw-r--r--src/normal.c233
-rw-r--r--src/option_menu.c4
-rw-r--r--src/player_pc.c18
-rw-r--r--src/poison.c185
-rw-r--r--src/pokeblock.c24
-rw-r--r--src/pokemon_animation.c800
-rw-r--r--src/pokemon_summary_screen.c64
-rw-r--r--src/psychic.c405
-rw-r--r--src/rock.c293
-rw-r--r--src/save_failed_screen.c6
-rwxr-xr-xsrc/shop.c32
-rw-r--r--src/starter_choose.c12
-rw-r--r--src/text_window.c10
-rw-r--r--src/wallclock.c8
-rw-r--r--src/water.c442
-rw-r--r--src/window.c66
56 files changed, 9802 insertions, 749 deletions
diff --git a/src/battle_anim.c b/src/battle_anim.c
index 590e34cb6..09df12c3e 100644
--- a/src/battle_anim.c
+++ b/src/battle_anim.c
@@ -10,6 +10,7 @@
#include "task.h"
#include "decompress.h"
#include "sound.h"
+#include "graphics.h"
#include "dma3.h"
#include "bg.h"
#include "gpu_regs.h"
@@ -123,7 +124,1273 @@ EWRAM_DATA u8 gBattleAnimTarget = 0;
EWRAM_DATA u16 gAnimBattlerSpecies[MAX_BATTLERS_COUNT] = {0};
EWRAM_DATA u8 gUnknown_02038440 = 0;
-// const rom data
+const struct OamData gUnknown_08524904 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+
+const struct OamData gUnknown_0852490C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524914 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852491C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524924 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852492C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524934 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852493C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524944 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852494C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524954 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852495C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524964 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852496C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524974 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852497C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524984 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852498C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524994 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_0852499C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249A4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249AC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249B4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249BC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249C4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249CC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249D4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249DC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249E4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249EC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249F4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_085249FC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A04 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A0C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A14 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A1C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A24 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A2C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A34 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A3C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A44 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A4C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A54 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A5C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A64 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A6C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A74 =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A7C =
+{
+ .affineMode = ST_OAM_AFFINE_OFF,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A84 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A8C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A94 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524A9C =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AA4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AAC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AB4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524ABC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AC4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524ACC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AD4 =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524ADC =
+{
+ .affineMode = ST_OAM_AFFINE_NORMAL,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AE4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AEC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AF4 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524AFC =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_SQUARE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B04 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B0C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B14 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B1C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_H_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B24 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 0,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B2C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 1,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B34 =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 2,
+ .priority = 2,
+};
+
+const struct OamData gUnknown_08524B3C =
+{
+ .affineMode = ST_OAM_AFFINE_DOUBLE,
+ .objMode = ST_OAM_OBJ_BLEND,
+ .shape = ST_OAM_V_RECTANGLE,
+ .size = 3,
+ .priority = 2,
+};
+
+const struct CompressedSpriteSheet gBattleAnimPicTable[] =
+{
+ {gBattleAnimSpriteSheet_000, 0x0200, ANIM_TAG_BONE},
+ {gBattleAnimSpriteSheet_001, 0x0300, ANIM_TAG_SPARK},
+ {gBattleAnimSpriteSheet_002, 0x0200, ANIM_TAG_PENCIL},
+ {gBattleAnimSpriteSheet_003, 0x0100, ANIM_TAG_AIR_WAVE},
+ {gBattleAnimSpriteSheet_004, 0x0200, ANIM_TAG_UNUSED_ORB},
+ {gBattleAnimSpriteSheet_005, 0x0400, ANIM_TAG_SWORD},
+ {gBattleAnimSpriteSheet_006, 0x0180, ANIM_TAG_SEED},
+ {gBattleAnimSpriteSheet_007, 0x0800, ANIM_TAG_UNUSED_EXPLOSION},
+ {gBattleAnimSpriteSheet_008, 0x0020, ANIM_TAG_UNUSED_PINK_ORB},
+ {gBattleAnimSpriteSheet_009, 0x0400, ANIM_TAG_GUST},
+ {gBattleAnimSpriteSheet_010, 0x1200, ANIM_TAG_ICE_CUBE},
+ {gBattleAnimSpriteSheet_011, 0x0180, ANIM_TAG_SPARK_2},
+ {gBattleAnimSpriteSheet_012, 0x0080, ANIM_TAG_UNUSED_ORANGE},
+ {gBattleAnimSpriteSheet_013, 0x0080, ANIM_TAG_YELLOW_BALL},
+ {gBattleAnimSpriteSheet_014, 0x0280, ANIM_TAG_LOCK_ON},
+ {gBattleAnimSpriteSheet_015, 0x0080, ANIM_TAG_TIED_BAG},
+ {gBattleAnimSpriteSheet_016, 0x0100, ANIM_TAG_BLACK_SMOKE},
+ {gBattleAnimSpriteSheet_017, 0x0020, ANIM_TAG_BLACK_BALL},
+ {gBattleAnimSpriteSheet_018, 0x0080, ANIM_TAG_CONVERSION},
+ {gBattleAnimSpriteSheet_019, 0x0400, ANIM_TAG_UNUSED_GLASS},
+ {gBattleAnimSpriteSheet_020, 0x0200, ANIM_TAG_HORN_HIT},
+ {gBattleAnimSpriteSheet_021, 0x0A00, ANIM_TAG_UNUSED_HIT},
+ {gBattleAnimSpriteSheet_021, 0x0A00, ANIM_TAG_UNUSED_HIT_2},
+ {gBattleAnimSpriteSheet_023, 0x0380, ANIM_TAG_UNUSED_BLUE_SHARDS},
+ {gBattleAnimSpriteSheet_024, 0x0300, ANIM_TAG_UNUSED_CLOSING_EYE},
+ {gBattleAnimSpriteSheet_025, 0x0A00, ANIM_TAG_UNUSED_WAVING_HAND},
+ {gBattleAnimSpriteSheet_026, 0x0A00, ANIM_TAG_UNUSED_HIT_DUPLICATE},
+ {gBattleAnimSpriteSheet_027, 0x0A00, ANIM_TAG_LEER},
+ {gBattleAnimSpriteSheet_028, 0x0A00, ANIM_TAG_UNUSED_BLUE_BURST},
+ {gBattleAnimSpriteSheet_029, 0x0A00, ANIM_TAG_SMALL_EMBER},
+ {gBattleAnimSpriteSheet_030, 0x0A00, ANIM_TAG_GRAY_SMOKE},
+ {gBattleAnimSpriteSheet_031, 0x0E00, ANIM_TAG_BLUE_STAR},
+ {gBattleAnimSpriteSheet_032, 0x0380, ANIM_TAG_UNUSED_BUBBLE_BURST},
+ {gBattleAnimSpriteSheet_033, 0x1000, ANIM_TAG_FIRE},
+ {gBattleAnimSpriteSheet_034, 0x0800, ANIM_TAG_UNUSED_SPINNING_FIRE},
+ {gBattleAnimSpriteSheet_035, 0x0A00, ANIM_TAG_FIRE_PLUME},
+ {gBattleAnimSpriteSheet_036, 0x0800, ANIM_TAG_UNUSED_LIGHTNING},
+ {gBattleAnimSpriteSheet_037, 0x0A00, ANIM_TAG_LIGHTNING},
+ {gBattleAnimSpriteSheet_038, 0x0A00, ANIM_TAG_UNUSED_CLAW_SLASH},
+ {gBattleAnimSpriteSheet_039, 0x0A00, ANIM_TAG_CLAW_SLASH},
+ {gBattleAnimSpriteSheet_040, 0x0A00, ANIM_TAG_UNUSED_SCRATCH},
+ {gBattleAnimSpriteSheet_041, 0x0A00, ANIM_TAG_UNUSED_SCRATCH_2},
+ {gBattleAnimSpriteSheet_042, 0x0A00, ANIM_TAG_UNUSED_BUBBLE_BURST_2},
+ {gBattleAnimSpriteSheet_043, 0x0A00, ANIM_TAG_ICE_CHUNK},
+ {gBattleAnimSpriteSheet_044, 0x0A00, ANIM_TAG_UNUSED_GLASS_2},
+ {gBattleAnimSpriteSheet_045, 0x0A00, ANIM_TAG_UNUSED_PINK_HEART},
+ {gBattleAnimSpriteSheet_046, 0x1000, ANIM_TAG_UNUSED_SAP_DRIP},
+ {gBattleAnimSpriteSheet_046, 0x1000, ANIM_TAG_UNUSED_SAP_DRIP_2},
+ {gBattleAnimSpriteSheet_048, 0x1000, ANIM_TAG_SPARKLE_1},
+ {gBattleAnimSpriteSheet_048, 0x1000, ANIM_TAG_SPARKLE_2},
+ {gBattleAnimSpriteSheet_050, 0x0200, ANIM_TAG_HUMANOID_FOOT},
+ {gBattleAnimSpriteSheet_051, 0x0200, ANIM_TAG_UNUSED_MONSTER_FOOT},
+ {gBattleAnimSpriteSheet_052, 0x0200, ANIM_TAG_UNUSED_HUMANOID_HAND},
+ {gBattleAnimSpriteSheet_053, 0x0800, ANIM_TAG_NOISE_LINE},
+ {gBattleAnimSpriteSheet_054, 0x0080, ANIM_TAG_UNUSED_YELLOW_UNK},
+ {gBattleAnimSpriteSheet_055, 0x0200, ANIM_TAG_UNUSED_RED_FIST},
+ {gBattleAnimSpriteSheet_056, 0x1000, ANIM_TAG_SLAM_HIT},
+ {gBattleAnimSpriteSheet_057, 0x0180, ANIM_TAG_UNUSED_RING},
+ {gBattleAnimSpriteSheet_058, 0x0C00, ANIM_TAG_ROCKS},
+ {gBattleAnimSpriteSheet_059, 0x0100, ANIM_TAG_UNUSED_Z},
+ {gBattleAnimSpriteSheet_060, 0x0040, ANIM_TAG_UNUSED_YELLOW_UNK_2},
+ {gBattleAnimSpriteSheet_061, 0x0180, ANIM_TAG_UNUSED_AIR_SLASH},
+ {gBattleAnimSpriteSheet_062, 0x0800, ANIM_TAG_UNUSED_SPINNING_GREEN_ORBS},
+ {gBattleAnimSpriteSheet_063, 0x0480, ANIM_TAG_LEAF},
+ {gBattleAnimSpriteSheet_064, 0x0200, ANIM_TAG_FINGER},
+ {gBattleAnimSpriteSheet_065, 0x0200, ANIM_TAG_POISON_POWDER},
+ {gBattleAnimSpriteSheet_066, 0x0100, ANIM_TAG_UNUSED_BROWN_TRIANGLE},
+ {gBattleAnimSpriteSheet_065, 0x0200, ANIM_TAG_SLEEP_POWDER},
+ {gBattleAnimSpriteSheet_065, 0x0200, ANIM_TAG_STUN_SPORE},
+ {gBattleAnimSpriteSheet_065, 0x0200, ANIM_TAG_UNUSED_POWDER},
+ {gBattleAnimSpriteSheet_070, 0x0200, ANIM_TAG_SPARKLE_3},
+ {gBattleAnimSpriteSheet_071, 0x0A00, ANIM_TAG_SPARKLE_4},
+ {gBattleAnimSpriteSheet_072, 0x0300, ANIM_TAG_MUSIC_NOTES},
+ {gBattleAnimSpriteSheet_073, 0x0180, ANIM_TAG_DUCK},
+ {gBattleAnimSpriteSheet_074, 0x00A0, ANIM_TAG_MUD_SAND},
+ {gBattleAnimSpriteSheet_075, 0x0700, ANIM_TAG_ALERT},
+ {gBattleAnimSpriteSheet_076, 0x0400, ANIM_TAG_UNUSED_BLUE_FLAMES},
+ {gBattleAnimSpriteSheet_077, 0x0200, ANIM_TAG_UNUSED_BLUE_FLAMES_2},
+ {gBattleAnimSpriteSheet_078, 0x0300, ANIM_TAG_UNUSED_SHOCK},
+ {gBattleAnimSpriteSheet_079, 0x0C00, ANIM_TAG_SHOCK},
+ {gBattleAnimSpriteSheet_080, 0x0A00, ANIM_TAG_UNUSED_BELL},
+ {gBattleAnimSpriteSheet_081, 0x0080, ANIM_TAG_UNUSED_PINK_GLOVE},
+ {gBattleAnimSpriteSheet_082, 0x0040, ANIM_TAG_UNUSED_BLUE_LINES},
+ {gBattleAnimSpriteSheet_083, 0x0E00, ANIM_TAG_UNUSED_IMPACT},
+ {gBattleAnimSpriteSheet_084, 0x0E00, ANIM_TAG_UNUSED_IMPACT_2},
+ {gBattleAnimSpriteSheet_085, 0x0280, ANIM_TAG_UNUSED_RETICLE},
+ {gBattleAnimSpriteSheet_086, 0x0200, ANIM_TAG_BREATH},
+ {gBattleAnimSpriteSheet_087, 0x0080, ANIM_TAG_ANGER},
+ {gBattleAnimSpriteSheet_088, 0x00C0, ANIM_TAG_UNUSED_SNOWBALL},
+ {gBattleAnimSpriteSheet_089, 0x0A00, ANIM_TAG_UNUSED_VINE},
+ {gBattleAnimSpriteSheet_090, 0x0200, ANIM_TAG_UNUSED_SWORD},
+ {gBattleAnimSpriteSheet_091, 0x0180, ANIM_TAG_UNUSED_CLAPPING},
+ {gBattleAnimSpriteSheet_092, 0x0080, ANIM_TAG_UNUSED_RED_TUBE},
+ {gBattleAnimSpriteSheet_093, 0x1000, ANIM_TAG_AMNESIA},
+ {gBattleAnimSpriteSheet_094, 0x0A00, ANIM_TAG_UNUSED_STRING},
+ {gBattleAnimSpriteSheet_095, 0x0180, ANIM_TAG_UNUSED_PENCIL},
+ {gBattleAnimSpriteSheet_096, 0x0380, ANIM_TAG_UNUSED_PETAL},
+ {gBattleAnimSpriteSheet_097, 0x0C00, ANIM_TAG_BENT_SPOON},
+ {gBattleAnimSpriteSheet_098, 0x0200, ANIM_TAG_UNUSED_WEB},
+ {gBattleAnimSpriteSheet_099, 0x0200, ANIM_TAG_MILK_BOTTLE},
+ {gBattleAnimSpriteSheet_100, 0x0200, ANIM_TAG_COIN},
+ {gBattleAnimSpriteSheet_101, 0x0200, ANIM_TAG_UNUSED_CRACKED_EGG},
+ {gBattleAnimSpriteSheet_102, 0x0400, ANIM_TAG_UNUSED_HATCHED_EGG},
+ {gBattleAnimSpriteSheet_103, 0x0080, ANIM_TAG_UNUSED_FRESH_EGG},
+ {gBattleAnimSpriteSheet_104, 0x0400, ANIM_TAG_UNUSED_FANGS},
+ {gBattleAnimSpriteSheet_105, 0x0c00, ANIM_TAG_UNUSED_EXPLOSION_2},
+ {gBattleAnimSpriteSheet_106, 0x0200, ANIM_TAG_UNUSED_EXPLOSION_3},
+ {gBattleAnimSpriteSheet_107, 0x1000, ANIM_TAG_UNUSED_WATER_DROPLET},
+ {gBattleAnimSpriteSheet_108, 0x0a00, ANIM_TAG_UNUSED_WATER_DROPLET_2},
+ {gBattleAnimSpriteSheet_109, 0x0020, ANIM_TAG_UNUSED_SEED},
+ {gBattleAnimSpriteSheet_110, 0x0e00, ANIM_TAG_UNUSED_SPROUT},
+ {gBattleAnimSpriteSheet_111, 0x0080, ANIM_TAG_UNUSED_RED_WAND},
+ {gBattleAnimSpriteSheet_112, 0x0a00, ANIM_TAG_UNUSED_PURPLE_GREEN_UNK},
+ {gBattleAnimSpriteSheet_113, 0x0400, ANIM_TAG_UNUSED_WATER_COLUMN},
+ {gBattleAnimSpriteSheet_114, 0x0200, ANIM_TAG_UNUSED_MUD_UNK},
+ {gBattleAnimSpriteSheet_115, 0x0700, ANIM_TAG_RAIN_DROPS},
+ {gBattleAnimSpriteSheet_116, 0x0800, ANIM_TAG_UNUSED_FURY_SWIPES},
+ {gBattleAnimSpriteSheet_117, 0x0a00, ANIM_TAG_UNUSED_VINE_2},
+ {gBattleAnimSpriteSheet_118, 0x0600, ANIM_TAG_UNUSED_TEETH},
+ {gBattleAnimSpriteSheet_119, 0x0800, ANIM_TAG_UNUSED_BONE},
+ {gBattleAnimSpriteSheet_120, 0x0200, ANIM_TAG_UNUSED_WHITE_BAG},
+ {gBattleAnimSpriteSheet_121, 0x0040, ANIM_TAG_UNUSED_UNKNOWN},
+ {gBattleAnimSpriteSheet_122, 0x0180, ANIM_TAG_UNUSED_PURPLE_CORAL},
+ {gBattleAnimSpriteSheet_123, 0x0600, ANIM_TAG_UNUSED_PURPLE_DROPLET},
+ {gBattleAnimSpriteSheet_124, 0x0600, ANIM_TAG_UNUSED_SHOCK_2},
+ {gBattleAnimSpriteSheet_125, 0x0200, ANIM_TAG_UNUSED_CLOSING_EYE_2},
+ {gBattleAnimSpriteSheet_126, 0x0080, ANIM_TAG_UNUSED_METAL_BALL},
+ {gBattleAnimSpriteSheet_127, 0x0200, ANIM_TAG_UNUSED_MONSTER_DOLL},
+ {gBattleAnimSpriteSheet_128, 0x0800, ANIM_TAG_UNUSED_WHIRLWIND},
+ {gBattleAnimSpriteSheet_129, 0x0080, ANIM_TAG_UNUSED_WHIRLWIND_2},
+ {gBattleAnimSpriteSheet_130, 0x0a00, ANIM_TAG_UNUSED_EXPLOSION_4},
+ {gBattleAnimSpriteSheet_131, 0x0280, ANIM_TAG_UNUSED_EXPLOSION_5},
+ {gBattleAnimSpriteSheet_132, 0x0280, ANIM_TAG_UNUSED_TONGUE},
+ {gBattleAnimSpriteSheet_133, 0x0100, ANIM_TAG_UNUSED_SMOKE},
+ {gBattleAnimSpriteSheet_134, 0x0200, ANIM_TAG_UNUSED_SMOKE_2},
+ {gBattleAnimSpriteSheet_135, 0x0200, ANIM_TAG_IMPACT},
+ {gBattleAnimSpriteSheet_136, 0x0020, ANIM_TAG_CIRCLE_IMPACT},
+ {gBattleAnimSpriteSheet_137, 0x0a00, ANIM_TAG_SCRATCH},
+ {gBattleAnimSpriteSheet_138, 0x0800, ANIM_TAG_CUT},
+ {gBattleAnimSpriteSheet_139, 0x0800, ANIM_TAG_SHARP_TEETH},
+ {gBattleAnimSpriteSheet_140, 0x00c0, ANIM_TAG_RAINBOW_RINGS},
+ {gBattleAnimSpriteSheet_141, 0x01c0, ANIM_TAG_ICE_CRYSTALS},
+ {gBattleAnimSpriteSheet_142, 0x0100, ANIM_TAG_ICE_SPIKES},
+ {gBattleAnimSpriteSheet_143, 0x0800, ANIM_TAG_HANDS_AND_FEET},
+ {gBattleAnimSpriteSheet_144, 0x0200, ANIM_TAG_MIST_CLOUD},
+ {gBattleAnimSpriteSheet_145, 0x0800, ANIM_TAG_CLAMP},
+ {gBattleAnimSpriteSheet_146, 0x0180, ANIM_TAG_BUBBLE},
+ {gBattleAnimSpriteSheet_147, 0x0180, ANIM_TAG_ORBS},
+ {gBattleAnimSpriteSheet_148, 0x0200, ANIM_TAG_WATER_IMPACT},
+ {gBattleAnimSpriteSheet_149, 0x0200, ANIM_TAG_WATER_ORB},
+ {gBattleAnimSpriteSheet_150, 0x0180, ANIM_TAG_POISON_BUBBLE},
+ {gBattleAnimSpriteSheet_151, 0x0400, ANIM_TAG_TOXIC_BUBBLE},
+ {gBattleAnimSpriteSheet_152, 0x0080, ANIM_TAG_SPIKES},
+ {gBattleAnimSpriteSheet_153, 0x0100, ANIM_TAG_HORN_HIT_2},
+ {gBattleAnimSpriteSheet_154, 0x0100, ANIM_TAG_AIR_WAVE_2},
+ {gBattleAnimSpriteSheet_155, 0x0140, ANIM_TAG_SMALL_BUBBLES},
+ {gBattleAnimSpriteSheet_156, 0x0800, ANIM_TAG_ROUND_SHADOW},
+ {gBattleAnimSpriteSheet_157, 0x0200, ANIM_TAG_SUNLIGHT},
+ {gBattleAnimSpriteSheet_158, 0x0100, ANIM_TAG_SPORE},
+ {gBattleAnimSpriteSheet_159, 0x00a0, ANIM_TAG_FLOWER},
+ {gBattleAnimSpriteSheet_160, 0x0100, ANIM_TAG_RAZOR_LEAF},
+ {gBattleAnimSpriteSheet_161, 0x0080, ANIM_TAG_NEEDLE},
+ {gBattleAnimSpriteSheet_162, 0x0300, ANIM_TAG_WHIRLWIND_LINES},
+ {gBattleAnimSpriteSheet_163, 0x0100, ANIM_TAG_GOLD_RING},
+ {gBattleAnimSpriteSheet_163, 0x0100, ANIM_TAG_PURPLE_RING},
+ {gBattleAnimSpriteSheet_163, 0x0100, ANIM_TAG_BLUE_RING},
+ {gBattleAnimSpriteSheet_166, 0x0800, ANIM_TAG_GREEN_LIGHT_WALL},
+ {gBattleAnimSpriteSheet_166, 0x0800, ANIM_TAG_BLUE_LIGHT_WALL},
+ {gBattleAnimSpriteSheet_166, 0x0800, ANIM_TAG_RED_LIGHT_WALL},
+ {gBattleAnimSpriteSheet_166, 0x0800, ANIM_TAG_GRAY_LIGHT_WALL},
+ {gBattleAnimSpriteSheet_166, 0x0800, ANIM_TAG_ORANGE_LIGHT_WALL},
+ {gBattleAnimSpriteSheet_171, 0x0080, ANIM_TAG_BLACK_BALL_2},
+ {gBattleAnimSpriteSheet_144, 0x0200, ANIM_TAG_PURPLE_GAS_CLOUD},
+ {gBattleAnimSpriteSheet_173, 0x0200, ANIM_TAG_SPARK_H},
+ {gBattleAnimSpriteSheet_174, 0x0200, ANIM_TAG_YELLOW_STAR},
+ {gBattleAnimSpriteSheet_175, 0x0080, ANIM_TAG_LARGE_FRESH_EGG},
+ {gBattleAnimSpriteSheet_176, 0x0200, ANIM_TAG_SHADOW_BALL},
+ {gBattleAnimSpriteSheet_177, 0x0500, ANIM_TAG_LICK},
+ {gBattleAnimSpriteSheet_178, 0x0800, ANIM_TAG_UNUSED_VOID_LINES},
+ {gBattleAnimSpriteSheet_179, 0x0400, ANIM_TAG_STRING},
+ {gBattleAnimSpriteSheet_180, 0x0020, ANIM_TAG_WEB_THREAD},
+ {gBattleAnimSpriteSheet_181, 0x0800, ANIM_TAG_SPIDER_WEB},
+ {gBattleAnimSpriteSheet_182, 0x0100, ANIM_TAG_UNUSED_LIGHTBULB},
+ {gBattleAnimSpriteSheet_183, 0x0800, ANIM_TAG_SLASH},
+ {gBattleAnimSpriteSheet_184, 0x0400, ANIM_TAG_FOCUS_ENERGY},
+ {gBattleAnimSpriteSheet_185, 0x0a00, ANIM_TAG_SPHERE_TO_CUBE},
+ {gBattleAnimSpriteSheet_186, 0x1000, ANIM_TAG_TENDRILS},
+ {gBattleAnimSpriteSheet_187, 0x0800, ANIM_TAG_EYE},
+ {gBattleAnimSpriteSheet_188, 0x0400, ANIM_TAG_WHITE_SHADOW},
+ {gBattleAnimSpriteSheet_189, 0x0200, ANIM_TAG_TEAL_ALERT},
+ {gBattleAnimSpriteSheet_190, 0x0800, ANIM_TAG_OPENING_EYE},
+ {gBattleAnimSpriteSheet_191, 0x0800, ANIM_TAG_ROUND_WHITE_HALO},
+ {gBattleAnimSpriteSheet_192, 0x0800, ANIM_TAG_FANG_ATTACK},
+ {gBattleAnimSpriteSheet_193, 0x0200, ANIM_TAG_PURPLE_HAND_OUTLINE},
+ {gBattleAnimSpriteSheet_194, 0x0800, ANIM_TAG_MOON},
+ {gBattleAnimSpriteSheet_195, 0x0200, ANIM_TAG_GREEN_SPARKLE},
+ {gBattleAnimSpriteSheet_196, 0x0800, ANIM_TAG_SPIRAL},
+ {gBattleAnimSpriteSheet_197, 0x0200, ANIM_TAG_SNORE_Z},
+ {gBattleAnimSpriteSheet_198, 0x0800, ANIM_TAG_EXPLOSION},
+ {gBattleAnimSpriteSheet_199, 0x0400, ANIM_TAG_NAIL},
+ {gBattleAnimSpriteSheet_200, 0x0200, ANIM_TAG_GHOSTLY_SPIRIT},
+ {gBattleAnimSpriteSheet_201, 0x0a80, ANIM_TAG_WARM_ROCK},
+ {gBattleAnimSpriteSheet_202, 0x0600, ANIM_TAG_BREAKING_EGG},
+ {gBattleAnimSpriteSheet_203, 0x0800, ANIM_TAG_THIN_RING},
+ {gBattleAnimSpriteSheet_204, 0x0200, ANIM_TAG_UNUSED_PUNCH_IMPACT},
+ {gBattleAnimSpriteSheet_205, 0x0600, ANIM_TAG_BELL},
+ {gBattleAnimSpriteSheet_206, 0x0800, ANIM_TAG_MUSIC_NOTES_2},
+ {gBattleAnimSpriteSheet_207, 0x0180, ANIM_TAG_SPEED_DUST},
+ {gBattleAnimSpriteSheet_208, 0x0800, ANIM_TAG_TORN_METAL},
+ {gBattleAnimSpriteSheet_209, 0x0800, ANIM_TAG_THOUGHT_BUBBLE},
+ {gBattleAnimSpriteSheet_210, 0x0080, ANIM_TAG_MAGENTA_HEART},
+ {gBattleAnimSpriteSheet_211, 0x0080, ANIM_TAG_ELECTRIC_ORBS},
+ {gBattleAnimSpriteSheet_212, 0x0800, ANIM_TAG_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpriteSheet_213, 0x0800, ANIM_TAG_ELECTRICITY},
+ {gBattleAnimSpriteSheet_214, 0x0600, ANIM_TAG_FINGER_2},
+ {gBattleAnimSpriteSheet_215, 0x0600, ANIM_TAG_MOVEMENT_WAVES},
+ {gBattleAnimSpriteSheet_210, 0x0080, ANIM_TAG_RED_HEART},
+ {gBattleAnimSpriteSheet_217, 0x0080, ANIM_TAG_RED_ORB},
+ {gBattleAnimSpriteSheet_218, 0x0180, ANIM_TAG_EYE_SPARKLE},
+ {gBattleAnimSpriteSheet_210, 0x0080, ANIM_TAG_PINK_HEART},
+ {gBattleAnimSpriteSheet_220, 0x0200, ANIM_TAG_ANGEL},
+ {gBattleAnimSpriteSheet_221, 0x0400, ANIM_TAG_DEVIL},
+ {gBattleAnimSpriteSheet_222, 0x0a00, ANIM_TAG_SWIPE},
+ {gBattleAnimSpriteSheet_223, 0x0800, ANIM_TAG_ROOTS},
+ {gBattleAnimSpriteSheet_224, 0x0200, ANIM_TAG_ITEM_BAG},
+ {gBattleAnimSpriteSheet_225, 0x0400, ANIM_TAG_JAGGED_MUSIC_NOTE},
+ {gBattleAnimSpriteSheet_226, 0x0080, ANIM_TAG_POKEBALL},
+ {gBattleAnimSpriteSheet_227, 0x0800, ANIM_TAG_SPOTLIGHT},
+ {gBattleAnimSpriteSheet_228, 0x0200, ANIM_TAG_LETTER_Z},
+ {gBattleAnimSpriteSheet_229, 0x0300, ANIM_TAG_RAPID_SPIN},
+ {gBattleAnimSpriteSheet_230, 0x0800, ANIM_TAG_TRI_FORCE_TRIANGLE},
+ {gBattleAnimSpriteSheet_231, 0x0380, ANIM_TAG_WISP_ORB},
+ {gBattleAnimSpriteSheet_232, 0x0800, ANIM_TAG_WISP_FIRE},
+ {gBattleAnimSpriteSheet_233, 0x00c0, ANIM_TAG_GOLD_STARS},
+ {gBattleAnimSpriteSheet_234, 0x0800, ANIM_TAG_ECLIPSING_ORB},
+ {gBattleAnimSpriteSheet_235, 0x0060, ANIM_TAG_GRAY_ORB},
+ {gBattleAnimSpriteSheet_235, 0x0060, ANIM_TAG_BLUE_ORB},
+ {gBattleAnimSpriteSheet_235, 0x0060, ANIM_TAG_RED_ORB_2},
+ {gBattleAnimSpriteSheet_238, 0x0080, ANIM_TAG_PINK_PETAL},
+ {gBattleAnimSpriteSheet_239, 0x0180, ANIM_TAG_PAIN_SPLIT},
+ {gBattleAnimSpriteSheet_240, 0x0180, ANIM_TAG_CONFETTI},
+ {gBattleAnimSpriteSheet_241, 0x0200, ANIM_TAG_GREEN_STAR},
+ {gBattleAnimSpriteSheet_242, 0x0200, ANIM_TAG_PINK_CLOUD},
+ {gBattleAnimSpriteSheet_243, 0x0020, ANIM_TAG_SWEAT_DROP},
+ {gBattleAnimSpriteSheet_244, 0x0400, ANIM_TAG_GUARD_RING},
+ {gBattleAnimSpriteSheet_245, 0x0600, ANIM_TAG_PURPLE_SCRATCH},
+ {gBattleAnimSpriteSheet_246, 0x1000, ANIM_TAG_PURPLE_SWIPE},
+ {gBattleAnimSpriteSheet_247, 0x0400, ANIM_TAG_TAG_HAND},
+ {gBattleAnimSpriteSheet_248, 0x0020, ANIM_TAG_SMALL_RED_EYE},
+ {gBattleAnimSpriteSheet_249, 0x0080, ANIM_TAG_HOLLOW_ORB},
+ {gBattleAnimSpriteSheet_250, 0x0800, ANIM_TAG_X_SIGN},
+ {gBattleAnimSpriteSheet_251, 0x0080, ANIM_TAG_BLUEGREEN_ORB},
+ {gBattleAnimSpriteSheet_252, 0x0200, ANIM_TAG_PAW_PRINT},
+ {gBattleAnimSpriteSheet_253, 0x0400, ANIM_TAG_PURPLE_FLAME},
+ {gBattleAnimSpriteSheet_254, 0x0200, ANIM_TAG_RED_BALL},
+ {gBattleAnimSpriteSheet_255, 0x0200, ANIM_TAG_SMELLINGSALT_EFFECT},
+ {gBattleAnimSpriteSheet_256, 0x0800, ANIM_TAG_METEOR},
+ {gBattleAnimSpriteSheet_257, 0x0280, ANIM_TAG_FLAT_ROCK},
+ {gBattleAnimSpriteSheet_258, 0x0200, ANIM_TAG_MAGNIFYING_GLASS},
+ {gBattleAnimSpriteSheet_149, 0x0200, ANIM_TAG_BROWN_ORB},
+ {gBattleAnimSpriteSheet_260, 0x0400, ANIM_TAG_METAL_SOUND_WAVES},
+ {gBattleAnimSpriteSheet_261, 0x0200, ANIM_TAG_FLYING_DIRT},
+ {gBattleAnimSpriteSheet_262, 0x0200, ANIM_TAG_ICICLE_SPEAR},
+ {gBattleAnimSpriteSheet_263, 0x0080, ANIM_TAG_HAIL},
+ {gBattleAnimSpriteSheet_264, 0x0020, ANIM_TAG_GLOWY_RED_ORB},
+ {gBattleAnimSpriteSheet_264, 0x0020, ANIM_TAG_GLOWY_GREEN_ORB},
+ {gBattleAnimSpriteSheet_266, 0x0080, ANIM_TAG_GREEN_SPIKE},
+ {gBattleAnimSpriteSheet_212, 0x0800, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpriteSheet_264, 0x0020, ANIM_TAG_GLOWY_BLUE_ORB},
+ {gBattleAnimSpriteSheet_269, 0x0080, ANIM_TAG_UNUSED_RED_BRICK},
+ {gBattleAnimSpriteSheet_270, 0x0400, ANIM_TAG_WHITE_FEATHER},
+ {gBattleAnimSpriteSheet_271, 0x0080, ANIM_TAG_SPARKLE_6},
+ {gBattleAnimSpriteSheet_272, 0x0800, ANIM_TAG_SPLASH},
+ {gBattleAnimSpriteSheet_273, 0x0020, ANIM_TAG_SWEAT_BEAD},
+ {gBattleAnimSpriteSheet_274, 0x0800, ANIM_TAG_UNUSED_GEM_1},
+ {gBattleAnimSpriteSheet_275, 0x0800, ANIM_TAG_UNUSED_GEM_2},
+ {gBattleAnimSpriteSheet_276, 0x0800, ANIM_TAG_UNUSED_GEM_3},
+ {gBattleAnimSpriteSheet_277, 0x1000, ANIM_TAG_SLAM_HIT_2},
+ {gBattleAnimSpriteSheet_278, 0x0800, ANIM_TAG_RECYCLE},
+ {gBattleAnimSpriteSheet_279, 0x00a0, ANIM_TAG_UNUSED_RED_PARTICLES},
+ {gBattleAnimSpriteSheet_280, 0x0800, ANIM_TAG_PROTECT},
+ {gBattleAnimSpriteSheet_281, 0x0200, ANIM_TAG_DIRT_MOUND},
+ {gBattleAnimSpriteSheet_282, 0x0600, ANIM_TAG_SHOCK_3},
+ {gBattleAnimSpriteSheet_283, 0x0200, ANIM_TAG_WEATHER_BALL},
+ {gBattleAnimSpriteSheet_284, 0x0800, ANIM_TAG_BIRD},
+ {gBattleAnimSpriteSheet_285, 0x0200, ANIM_TAG_CROSS_IMPACT},
+ {gBattleAnimSpriteSheet_183, 0x0800, ANIM_TAG_SLASH_2},
+ {gBattleAnimSpriteSheet_056, 0x1000, ANIM_TAG_WHIP_HIT},
+ {gBattleAnimSpriteSheet_163, 0x0100, ANIM_TAG_BLUE_RING_2},
+};
+
+
+const struct CompressedSpritePalette gBattleAnimPaletteTable[] =
+{
+ {gBattleAnimSpritePalette_000, ANIM_TAG_BONE},
+ {gBattleAnimSpritePalette_001, ANIM_TAG_SPARK},
+ {gBattleAnimSpritePalette_002, ANIM_TAG_PENCIL},
+ {gBattleAnimSpritePalette_003, ANIM_TAG_AIR_WAVE},
+ {gBattleAnimSpritePalette_004, ANIM_TAG_UNUSED_ORB},
+ {gBattleAnimSpritePalette_005, ANIM_TAG_SWORD},
+ {gBattleAnimSpritePalette_006, ANIM_TAG_SEED},
+ {gBattleAnimSpritePalette_007, ANIM_TAG_UNUSED_EXPLOSION},
+ {gBattleAnimSpritePalette_008, ANIM_TAG_UNUSED_PINK_ORB},
+ {gBattleAnimSpritePalette_009, ANIM_TAG_GUST},
+ {gBattleAnimSpritePalette_010, ANIM_TAG_ICE_CUBE},
+ {gBattleAnimSpritePalette_011, ANIM_TAG_SPARK_2},
+ {gBattleAnimSpritePalette_012, ANIM_TAG_UNUSED_ORANGE},
+ {gBattleAnimSpritePalette_013, ANIM_TAG_YELLOW_BALL},
+ {gBattleAnimSpritePalette_014, ANIM_TAG_LOCK_ON},
+ {gBattleAnimSpritePalette_015, ANIM_TAG_TIED_BAG},
+ {gBattleAnimSpritePalette_016, ANIM_TAG_BLACK_SMOKE},
+ {gBattleAnimSpritePalette_016, ANIM_TAG_BLACK_BALL},
+ {gBattleAnimSpritePalette_018, ANIM_TAG_CONVERSION},
+ {gBattleAnimSpritePalette_019, ANIM_TAG_UNUSED_GLASS},
+ {gBattleAnimSpritePalette_020, ANIM_TAG_HORN_HIT},
+ {gBattleAnimSpritePalette_021, ANIM_TAG_UNUSED_HIT},
+ {gBattleAnimSpritePalette_022, ANIM_TAG_UNUSED_HIT_2},
+ {gBattleAnimSpritePalette_023, ANIM_TAG_UNUSED_BLUE_SHARDS},
+ {gBattleAnimSpritePalette_024, ANIM_TAG_UNUSED_CLOSING_EYE},
+ {gBattleAnimSpritePalette_025, ANIM_TAG_UNUSED_WAVING_HAND},
+ {gBattleAnimSpritePalette_026, ANIM_TAG_UNUSED_HIT_DUPLICATE},
+ {gBattleAnimSpritePalette_027, ANIM_TAG_LEER},
+ {gBattleAnimSpritePalette_028, ANIM_TAG_UNUSED_BLUE_BURST},
+ {gBattleAnimSpritePalette_029, ANIM_TAG_SMALL_EMBER},
+ {gBattleAnimSpritePalette_030, ANIM_TAG_GRAY_SMOKE},
+ {gBattleAnimSpritePalette_031, ANIM_TAG_BLUE_STAR},
+ {gBattleAnimSpritePalette_032, ANIM_TAG_UNUSED_BUBBLE_BURST},
+ {gBattleAnimSpritePalette_033, ANIM_TAG_FIRE},
+ {gBattleAnimSpritePalette_033, ANIM_TAG_UNUSED_SPINNING_FIRE},
+ {gBattleAnimSpritePalette_033, ANIM_TAG_FIRE_PLUME},
+ {gBattleAnimSpritePalette_036, ANIM_TAG_UNUSED_LIGHTNING},
+ {gBattleAnimSpritePalette_036, ANIM_TAG_LIGHTNING},
+ {gBattleAnimSpritePalette_038, ANIM_TAG_UNUSED_CLAW_SLASH},
+ {gBattleAnimSpritePalette_039, ANIM_TAG_CLAW_SLASH},
+ {gBattleAnimSpritePalette_038, ANIM_TAG_UNUSED_SCRATCH},
+ {gBattleAnimSpritePalette_038, ANIM_TAG_UNUSED_SCRATCH_2},
+ {gBattleAnimSpritePalette_042, ANIM_TAG_UNUSED_BUBBLE_BURST_2},
+ {gBattleAnimSpritePalette_043, ANIM_TAG_ICE_CHUNK},
+ {gBattleAnimSpritePalette_044, ANIM_TAG_UNUSED_GLASS_2},
+ {gBattleAnimSpritePalette_045, ANIM_TAG_UNUSED_PINK_HEART},
+ {gBattleAnimSpritePalette_046, ANIM_TAG_UNUSED_SAP_DRIP},
+ {gBattleAnimSpritePalette_047, ANIM_TAG_UNUSED_SAP_DRIP},
+ {gBattleAnimSpritePalette_048, ANIM_TAG_SPARKLE_1},
+ {gBattleAnimSpritePalette_049, ANIM_TAG_SPARKLE_2},
+ {gBattleAnimSpritePalette_050, ANIM_TAG_HUMANOID_FOOT},
+ {gBattleAnimSpritePalette_050, ANIM_TAG_UNUSED_MONSTER_FOOT},
+ {gBattleAnimSpritePalette_050, ANIM_TAG_UNUSED_HUMANOID_HAND},
+ {gBattleAnimSpritePalette_026, ANIM_TAG_NOISE_LINE},
+ {gBattleAnimSpritePalette_054, ANIM_TAG_UNUSED_YELLOW_UNK},
+ {gBattleAnimSpritePalette_050, ANIM_TAG_UNUSED_RED_FIST},
+ {gBattleAnimSpritePalette_056, ANIM_TAG_SLAM_HIT},
+ {gBattleAnimSpritePalette_057, ANIM_TAG_UNUSED_RING},
+ {gBattleAnimSpritePalette_058, ANIM_TAG_ROCKS},
+ {gBattleAnimSpritePalette_059, ANIM_TAG_UNUSED_Z},
+ {gBattleAnimSpritePalette_060, ANIM_TAG_UNUSED_YELLOW_UNK_2},
+ {gBattleAnimSpritePalette_061, ANIM_TAG_UNUSED_AIR_SLASH},
+ {gBattleAnimSpritePalette_062, ANIM_TAG_UNUSED_SPINNING_GREEN_ORBS},
+ {gBattleAnimSpritePalette_063, ANIM_TAG_LEAF},
+ {gBattleAnimSpritePalette_064, ANIM_TAG_FINGER},
+ {gBattleAnimSpritePalette_065, ANIM_TAG_POISON_POWDER},
+ {gBattleAnimSpritePalette_066, ANIM_TAG_UNUSED_BROWN_TRIANGLE},
+ {gBattleAnimSpritePalette_067, ANIM_TAG_SLEEP_POWDER},
+ {gBattleAnimSpritePalette_068, ANIM_TAG_STUN_SPORE},
+ {gBattleAnimSpritePalette_065, ANIM_TAG_UNUSED_POWDER},
+ {gBattleAnimSpritePalette_070, ANIM_TAG_SPARKLE_3},
+ {gBattleAnimSpritePalette_070, ANIM_TAG_SPARKLE_4},
+ {gBattleAnimSpritePalette_072, ANIM_TAG_MUSIC_NOTES},
+ {gBattleAnimSpritePalette_073, ANIM_TAG_DUCK},
+ {gBattleAnimSpritePalette_074, ANIM_TAG_MUD_SAND},
+ {gBattleAnimSpritePalette_075, ANIM_TAG_ALERT},
+ {gBattleAnimSpritePalette_076, ANIM_TAG_UNUSED_BLUE_FLAMES},
+ {gBattleAnimSpritePalette_076, ANIM_TAG_UNUSED_BLUE_FLAMES_2},
+ {gBattleAnimSpritePalette_078, ANIM_TAG_UNUSED_SHOCK},
+ {gBattleAnimSpritePalette_078, ANIM_TAG_SHOCK},
+ {gBattleAnimSpritePalette_080, ANIM_TAG_UNUSED_BELL},
+ {gBattleAnimSpritePalette_081, ANIM_TAG_UNUSED_PINK_GLOVE},
+ {gBattleAnimSpritePalette_082, ANIM_TAG_UNUSED_BLUE_LINES},
+ {gBattleAnimSpritePalette_083, ANIM_TAG_UNUSED_IMPACT},
+ {gBattleAnimSpritePalette_084, ANIM_TAG_UNUSED_IMPACT_2},
+ {gBattleAnimSpritePalette_085, ANIM_TAG_UNUSED_RETICLE},
+ {gBattleAnimSpritePalette_086, ANIM_TAG_BREATH},
+ {gBattleAnimSpritePalette_087, ANIM_TAG_ANGER},
+ {gBattleAnimSpritePalette_088, ANIM_TAG_UNUSED_SNOWBALL},
+ {gBattleAnimSpritePalette_089, ANIM_TAG_UNUSED_VINE},
+ {gBattleAnimSpritePalette_090, ANIM_TAG_UNUSED_SWORD},
+ {gBattleAnimSpritePalette_091, ANIM_TAG_UNUSED_CLAPPING},
+ {gBattleAnimSpritePalette_092, ANIM_TAG_UNUSED_RED_TUBE},
+ {gBattleAnimSpritePalette_093, ANIM_TAG_AMNESIA},
+ {gBattleAnimSpritePalette_094, ANIM_TAG_UNUSED_STRING},
+ {gBattleAnimSpritePalette_095, ANIM_TAG_UNUSED_PENCIL},
+ {gBattleAnimSpritePalette_096, ANIM_TAG_UNUSED_PETAL},
+ {gBattleAnimSpritePalette_097, ANIM_TAG_BENT_SPOON},
+ {gBattleAnimSpritePalette_094, ANIM_TAG_UNUSED_WEB},
+ {gBattleAnimSpritePalette_099, ANIM_TAG_MILK_BOTTLE},
+ {gBattleAnimSpritePalette_100, ANIM_TAG_COIN},
+ {gBattleAnimSpritePalette_101, ANIM_TAG_UNUSED_CRACKED_EGG},
+ {gBattleAnimSpritePalette_101, ANIM_TAG_UNUSED_HATCHED_EGG},
+ {gBattleAnimSpritePalette_103, ANIM_TAG_UNUSED_FRESH_EGG},
+ {gBattleAnimSpritePalette_104, ANIM_TAG_UNUSED_FANGS},
+ {gBattleAnimSpritePalette_105, ANIM_TAG_UNUSED_EXPLOSION_2},
+ {gBattleAnimSpritePalette_105, ANIM_TAG_UNUSED_EXPLOSION_3},
+ {gBattleAnimSpritePalette_107, ANIM_TAG_UNUSED_WATER_DROPLET},
+ {gBattleAnimSpritePalette_107, ANIM_TAG_UNUSED_WATER_DROPLET_2},
+ {gBattleAnimSpritePalette_109, ANIM_TAG_UNUSED_SEED},
+ {gBattleAnimSpritePalette_109, ANIM_TAG_UNUSED_SPROUT},
+ {gBattleAnimSpritePalette_111, ANIM_TAG_UNUSED_RED_WAND},
+ {gBattleAnimSpritePalette_112, ANIM_TAG_UNUSED_PURPLE_GREEN_UNK},
+ {gBattleAnimSpritePalette_113, ANIM_TAG_UNUSED_WATER_COLUMN},
+ {gBattleAnimSpritePalette_114, ANIM_TAG_UNUSED_MUD_UNK},
+ {gBattleAnimSpritePalette_115, ANIM_TAG_RAIN_DROPS},
+ {gBattleAnimSpritePalette_116, ANIM_TAG_UNUSED_FURY_SWIPES},
+ {gBattleAnimSpritePalette_117, ANIM_TAG_UNUSED_VINE_2},
+ {gBattleAnimSpritePalette_118, ANIM_TAG_UNUSED_TEETH},
+ {gBattleAnimSpritePalette_119, ANIM_TAG_UNUSED_BONE},
+ {gBattleAnimSpritePalette_120, ANIM_TAG_UNUSED_WHITE_BAG},
+ {gBattleAnimSpritePalette_121, ANIM_TAG_UNUSED_UNKNOWN},
+ {gBattleAnimSpritePalette_122, ANIM_TAG_UNUSED_PURPLE_CORAL},
+ {gBattleAnimSpritePalette_122, ANIM_TAG_UNUSED_PURPLE_DROPLET},
+ {gBattleAnimSpritePalette_124, ANIM_TAG_UNUSED_SHOCK_2},
+ {gBattleAnimSpritePalette_125, ANIM_TAG_UNUSED_CLOSING_EYE_2},
+ {gBattleAnimSpritePalette_126, ANIM_TAG_UNUSED_METAL_BALL},
+ {gBattleAnimSpritePalette_127, ANIM_TAG_UNUSED_MONSTER_DOLL},
+ {gBattleAnimSpritePalette_128, ANIM_TAG_UNUSED_WHIRLWIND},
+ {gBattleAnimSpritePalette_128, ANIM_TAG_UNUSED_WHIRLWIND_2},
+ {gBattleAnimSpritePalette_130, ANIM_TAG_UNUSED_EXPLOSION_4},
+ {gBattleAnimSpritePalette_130, ANIM_TAG_UNUSED_EXPLOSION_5},
+ {gBattleAnimSpritePalette_132, ANIM_TAG_UNUSED_TONGUE},
+ {gBattleAnimSpritePalette_133, ANIM_TAG_UNUSED_SMOKE},
+ {gBattleAnimSpritePalette_133, ANIM_TAG_UNUSED_SMOKE_2},
+ {gBattleAnimSpritePalette_135, ANIM_TAG_IMPACT},
+ {gBattleAnimSpritePalette_136, ANIM_TAG_CIRCLE_IMPACT},
+ {gBattleAnimSpritePalette_135, ANIM_TAG_SCRATCH},
+ {gBattleAnimSpritePalette_135, ANIM_TAG_CUT},
+ {gBattleAnimSpritePalette_139, ANIM_TAG_SHARP_TEETH},
+ {gBattleAnimSpritePalette_140, ANIM_TAG_RAINBOW_RINGS},
+ {gBattleAnimSpritePalette_141, ANIM_TAG_ICE_CRYSTALS},
+ {gBattleAnimSpritePalette_141, ANIM_TAG_ICE_SPIKES},
+ {gBattleAnimSpritePalette_143, ANIM_TAG_HANDS_AND_FEET},
+ {gBattleAnimSpritePalette_144, ANIM_TAG_MIST_CLOUD},
+ {gBattleAnimSpritePalette_139, ANIM_TAG_CLAMP},
+ {gBattleAnimSpritePalette_115, ANIM_TAG_BUBBLE},
+ {gBattleAnimSpritePalette_147, ANIM_TAG_ORBS},
+ {gBattleAnimSpritePalette_148, ANIM_TAG_WATER_IMPACT},
+ {gBattleAnimSpritePalette_148, ANIM_TAG_WATER_ORB},
+ {gBattleAnimSpritePalette_150, ANIM_TAG_POISON_BUBBLE},
+ {gBattleAnimSpritePalette_150, ANIM_TAG_TOXIC_BUBBLE},
+ {gBattleAnimSpritePalette_152, ANIM_TAG_SPIKES},
+ {gBattleAnimSpritePalette_153, ANIM_TAG_HORN_HIT_2},
+ {gBattleAnimSpritePalette_154, ANIM_TAG_AIR_WAVE_2},
+ {gBattleAnimSpritePalette_155, ANIM_TAG_SMALL_BUBBLES},
+ {gBattleAnimSpritePalette_156, ANIM_TAG_ROUND_SHADOW},
+ {gBattleAnimSpritePalette_157, ANIM_TAG_SUNLIGHT},
+ {gBattleAnimSpritePalette_158, ANIM_TAG_SPORE},
+ {gBattleAnimSpritePalette_159, ANIM_TAG_FLOWER},
+ {gBattleAnimSpritePalette_160, ANIM_TAG_RAZOR_LEAF},
+ {gBattleAnimSpritePalette_161, ANIM_TAG_NEEDLE},
+ {gBattleAnimSpritePalette_162, ANIM_TAG_WHIRLWIND_LINES},
+ {gBattleAnimSpritePalette_163, ANIM_TAG_GOLD_RING},
+ {gBattleAnimSpritePalette_164, ANIM_TAG_PURPLE_RING},
+ {gBattleAnimSpritePalette_165, ANIM_TAG_BLUE_RING},
+ {gBattleAnimSpritePalette_166, ANIM_TAG_GREEN_LIGHT_WALL},
+ {gBattleAnimSpritePalette_167, ANIM_TAG_BLUE_LIGHT_WALL},
+ {gBattleAnimSpritePalette_168, ANIM_TAG_RED_LIGHT_WALL},
+ {gBattleAnimSpritePalette_169, ANIM_TAG_GRAY_LIGHT_WALL},
+ {gBattleAnimSpritePalette_170, ANIM_TAG_ORANGE_LIGHT_WALL},
+ {gBattleAnimSpritePalette_171, ANIM_TAG_BLACK_BALL_2},
+ {gBattleAnimSpritePalette_172, ANIM_TAG_PURPLE_GAS_CLOUD},
+ {gBattleAnimSpritePalette_001, ANIM_TAG_SPARK_H},
+ {gBattleAnimSpritePalette_174, ANIM_TAG_YELLOW_STAR},
+ {gBattleAnimSpritePalette_175, ANIM_TAG_LARGE_FRESH_EGG},
+ {gBattleAnimSpritePalette_176, ANIM_TAG_SHADOW_BALL},
+ {gBattleAnimSpritePalette_177, ANIM_TAG_LICK},
+ {gBattleAnimSpritePalette_178, ANIM_TAG_UNUSED_VOID_LINES},
+ {gBattleAnimSpritePalette_179, ANIM_TAG_STRING},
+ {gBattleAnimSpritePalette_179, ANIM_TAG_WEB_THREAD},
+ {gBattleAnimSpritePalette_179, ANIM_TAG_SPIDER_WEB},
+ {gBattleAnimSpritePalette_182, ANIM_TAG_UNUSED_LIGHTBULB},
+ {gBattleAnimSpritePalette_183, ANIM_TAG_SLASH},
+ {gBattleAnimSpritePalette_184, ANIM_TAG_FOCUS_ENERGY},
+ {gBattleAnimSpritePalette_185, ANIM_TAG_SPHERE_TO_CUBE},
+ {gBattleAnimSpritePalette_186, ANIM_TAG_TENDRILS},
+ {gBattleAnimSpritePalette_187, ANIM_TAG_EYE},
+ {gBattleAnimSpritePalette_188, ANIM_TAG_WHITE_SHADOW},
+ {gBattleAnimSpritePalette_189, ANIM_TAG_TEAL_ALERT},
+ {gBattleAnimSpritePalette_190, ANIM_TAG_OPENING_EYE},
+ {gBattleAnimSpritePalette_191, ANIM_TAG_ROUND_WHITE_HALO},
+ {gBattleAnimSpritePalette_192, ANIM_TAG_FANG_ATTACK},
+ {gBattleAnimSpritePalette_193, ANIM_TAG_PURPLE_HAND_OUTLINE},
+ {gBattleAnimSpritePalette_194, ANIM_TAG_MOON},
+ {gBattleAnimSpritePalette_195, ANIM_TAG_GREEN_SPARKLE},
+ {gBattleAnimSpritePalette_196, ANIM_TAG_SPIRAL},
+ {gBattleAnimSpritePalette_197, ANIM_TAG_SNORE_Z},
+ {gBattleAnimSpritePalette_198, ANIM_TAG_EXPLOSION},
+ {gBattleAnimSpritePalette_199, ANIM_TAG_NAIL},
+ {gBattleAnimSpritePalette_200, ANIM_TAG_GHOSTLY_SPIRIT},
+ {gBattleAnimSpritePalette_201, ANIM_TAG_WARM_ROCK},
+ {gBattleAnimSpritePalette_202, ANIM_TAG_BREAKING_EGG},
+ {gBattleAnimSpritePalette_203, ANIM_TAG_THIN_RING},
+ {gBattleAnimSpritePalette_204, ANIM_TAG_UNUSED_PUNCH_IMPACT},
+ {gBattleAnimSpritePalette_205, ANIM_TAG_BELL},
+ {gBattleAnimSpritePalette_206, ANIM_TAG_MUSIC_NOTES_2},
+ {gBattleAnimSpritePalette_207, ANIM_TAG_SPEED_DUST},
+ {gBattleAnimSpritePalette_167, ANIM_TAG_TORN_METAL},
+ {gBattleAnimSpritePalette_209, ANIM_TAG_THOUGHT_BUBBLE},
+ {gBattleAnimSpritePalette_210, ANIM_TAG_MAGENTA_HEART},
+ {gBattleAnimSpritePalette_211, ANIM_TAG_ELECTRIC_ORBS},
+ {gBattleAnimSpritePalette_211, ANIM_TAG_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpritePalette_211, ANIM_TAG_ELECTRICITY},
+ {gBattleAnimSpritePalette_064, ANIM_TAG_FINGER_2},
+ {gBattleAnimSpritePalette_215, ANIM_TAG_MOVEMENT_WAVES},
+ {gBattleAnimSpritePalette_216, ANIM_TAG_RED_HEART},
+ {gBattleAnimSpritePalette_217, ANIM_TAG_RED_ORB},
+ {gBattleAnimSpritePalette_218, ANIM_TAG_EYE_SPARKLE},
+ {gBattleAnimSpritePalette_219, ANIM_TAG_PINK_HEART},
+ {gBattleAnimSpritePalette_220, ANIM_TAG_ANGEL},
+ {gBattleAnimSpritePalette_221, ANIM_TAG_DEVIL},
+ {gBattleAnimSpritePalette_222, ANIM_TAG_SWIPE},
+ {gBattleAnimSpritePalette_223, ANIM_TAG_ROOTS},
+ {gBattleAnimSpritePalette_224, ANIM_TAG_ITEM_BAG},
+ {gBattleAnimSpritePalette_225, ANIM_TAG_JAGGED_MUSIC_NOTE},
+ {gBattleAnimSpritePalette_226, ANIM_TAG_POKEBALL},
+ {gBattleAnimSpritePalette_226, ANIM_TAG_SPOTLIGHT},
+ {gBattleAnimSpritePalette_228, ANIM_TAG_LETTER_Z},
+ {gBattleAnimSpritePalette_229, ANIM_TAG_RAPID_SPIN},
+ {gBattleAnimSpritePalette_230, ANIM_TAG_TRI_FORCE_TRIANGLE},
+ {gBattleAnimSpritePalette_231, ANIM_TAG_WISP_ORB},
+ {gBattleAnimSpritePalette_231, ANIM_TAG_WISP_FIRE},
+ {gBattleAnimSpritePalette_233, ANIM_TAG_GOLD_STARS},
+ {gBattleAnimSpritePalette_234, ANIM_TAG_ECLIPSING_ORB},
+ {gBattleAnimSpritePalette_235, ANIM_TAG_GRAY_ORB},
+ {gBattleAnimSpritePalette_236, ANIM_TAG_BLUE_ORB},
+ {gBattleAnimSpritePalette_237, ANIM_TAG_RED_ORB_2},
+ {gBattleAnimSpritePalette_238, ANIM_TAG_PINK_PETAL},
+ {gBattleAnimSpritePalette_239, ANIM_TAG_PAIN_SPLIT},
+ {gBattleAnimSpritePalette_240, ANIM_TAG_CONFETTI},
+ {gBattleAnimSpritePalette_241, ANIM_TAG_GREEN_STAR},
+ {gBattleAnimSpritePalette_242, ANIM_TAG_PINK_CLOUD},
+ {gBattleAnimSpritePalette_243, ANIM_TAG_SWEAT_DROP},
+ {gBattleAnimSpritePalette_244, ANIM_TAG_GUARD_RING},
+ {gBattleAnimSpritePalette_245, ANIM_TAG_PURPLE_SCRATCH},
+ {gBattleAnimSpritePalette_245, ANIM_TAG_PURPLE_SWIPE},
+ {gBattleAnimSpritePalette_064, ANIM_TAG_TAG_HAND},
+ {gBattleAnimSpritePalette_248, ANIM_TAG_SMALL_RED_EYE},
+ {gBattleAnimSpritePalette_249, ANIM_TAG_HOLLOW_ORB},
+ {gBattleAnimSpritePalette_249, ANIM_TAG_X_SIGN},
+ {gBattleAnimSpritePalette_251, ANIM_TAG_BLUEGREEN_ORB},
+ {gBattleAnimSpritePalette_252, ANIM_TAG_PAW_PRINT},
+ {gBattleAnimSpritePalette_253, ANIM_TAG_PURPLE_FLAME},
+ {gBattleAnimSpritePalette_254, ANIM_TAG_RED_BALL},
+ {gBattleAnimSpritePalette_255, ANIM_TAG_SMELLINGSALT_EFFECT},
+ {gBattleAnimSpritePalette_256, ANIM_TAG_METEOR},
+ {gBattleAnimSpritePalette_257, ANIM_TAG_FLAT_ROCK},
+ {gBattleAnimSpritePalette_258, ANIM_TAG_MAGNIFYING_GLASS},
+ {gBattleAnimSpritePalette_259, ANIM_TAG_BROWN_ORB},
+ {gBattleAnimSpritePalette_260, ANIM_TAG_METAL_SOUND_WAVES},
+ {gBattleAnimSpritePalette_261, ANIM_TAG_FLYING_DIRT},
+ {gBattleAnimSpritePalette_262, ANIM_TAG_ICICLE_SPEAR},
+ {gBattleAnimSpritePalette_263, ANIM_TAG_HAIL},
+ {gBattleAnimSpritePalette_264, ANIM_TAG_GLOWY_RED_ORB},
+ {gBattleAnimSpritePalette_265, ANIM_TAG_GLOWY_GREEN_ORB},
+ {gBattleAnimSpritePalette_266, ANIM_TAG_GREEN_SPIKE},
+ {gBattleAnimSpritePalette_267, ANIM_TAG_WHITE_CIRCLE_OF_LIGHT},
+ {gBattleAnimSpritePalette_268, ANIM_TAG_GLOWY_BLUE_ORB},
+ {gBattleAnimSpritePalette_269, ANIM_TAG_UNUSED_RED_BRICK},
+ {gBattleAnimSpritePalette_270, ANIM_TAG_WHITE_FEATHER},
+ {gBattleAnimSpritePalette_271, ANIM_TAG_SPARKLE_6},
+ {gBattleAnimSpritePalette_272, ANIM_TAG_SPLASH},
+ {gBattleAnimSpritePalette_272, ANIM_TAG_SWEAT_BEAD},
+ {gBattleAnimSpritePalette_274, ANIM_TAG_UNUSED_GEM_1},
+ {gBattleAnimSpritePalette_274, ANIM_TAG_UNUSED_GEM_2},
+ {gBattleAnimSpritePalette_274, ANIM_TAG_UNUSED_GEM_3},
+ {gBattleAnimSpritePalette_277, ANIM_TAG_SLAM_HIT_2},
+ {gBattleAnimSpritePalette_278, ANIM_TAG_RECYCLE},
+ {gBattleAnimSpritePalette_279, ANIM_TAG_UNUSED_RED_PARTICLES},
+ {gBattleAnimSpritePalette_280, ANIM_TAG_PROTECT},
+ {gBattleAnimSpritePalette_281, ANIM_TAG_DIRT_MOUND},
+ {gBattleAnimSpritePalette_282, ANIM_TAG_SHOCK_3},
+ {gBattleAnimSpritePalette_283, ANIM_TAG_WEATHER_BALL},
+ {gBattleAnimSpritePalette_284, ANIM_TAG_BIRD},
+ {gBattleAnimSpritePalette_285, ANIM_TAG_CROSS_IMPACT},
+ {gBattleAnimSpritePalette_286, ANIM_TAG_SLASH_2},
+ {gBattleAnimSpritePalette_287, ANIM_TAG_WHIP_HIT},
+ {gBattleAnimSpritePalette_288, ANIM_TAG_BLUE_RING_2},
+};
+
+const struct BattleAnimBackground gBattleAnimBackgroundTable[] =
+{
+ &gBattleAnimBackgroundImage_00, &gBattleAnimBackgroundPalette_00, &gBattleAnimBackgroundTilemap_00,
+ &gBattleAnimBackgroundImage_00, &gBattleAnimBackgroundPalette_00, &gBattleAnimBackgroundTilemap_00,
+ &gBattleAnimBackgroundImage_02, &gBattleAnimBackgroundPalette_02, &gBattleAnimBackgroundTilemap_02,
+ &gBattleAnimBackgroundImage_03, &gBattleAnimBackgroundPalette_03, &gBattleAnimBackgroundTilemap_03,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_04, &gBattleAnimBackgroundTilemap_04,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_04, &gBattleAnimBackgroundTilemap_05,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_04, &gBattleAnimBackgroundTilemap_06,
+ &gBattleAnimBackgroundImage_07, &gBattleAnimBackgroundPalette_07, &gBattleAnimBackgroundTilemap_07,
+ &gBattleAnimBackgroundImage_07, &gBattleAnimBackgroundPalette_07, &gBattleAnimBackgroundTilemap_08,
+ &gBattleAnimBackgroundImage_09, &gBattleAnimBackgroundPalette_09, &gBattleAnimBackgroundTilemap_09,
+ &gBattleAnimBackgroundImage_09, &gBattleAnimBackgroundPalette_09, &gBattleAnimBackgroundTilemap_10,
+ &gBattleAnimBackgroundImage_11, &gBattleAnimBackgroundPalette_11, &gBattleAnimBackgroundTilemap_11,
+ &gBattleAnimBackgroundImage_12, &gBattleAnimBackgroundPalette_12, &gBattleAnimBackgroundTilemap_12,
+ &gBattleAnimBackgroundImage_12, &gBattleAnimBackgroundPalette_12, &gBattleAnimBackgroundTilemap_13,
+ &gBattleAnimBackgroundImage_12, &gBattleAnimBackgroundPalette_12, &gBattleAnimBackgroundTilemap_14,
+ &gBattleAnimBackgroundImage_15, &gBattleAnimBackgroundPalette_15, &gBattleAnimBackgroundTilemap_15,
+ &gBattleAnimBackgroundImage_16, &gBattleAnimBackgroundPalette_16, &gBattleAnimBackgroundTilemap_16,
+ &gBattleAnimBackgroundImage_17, &gBattleAnimBackgroundPalette_17, &gBattleAnimBackgroundTilemap_17,
+ &gBattleAnimBackgroundImage_07, &gBattleAnimBackgroundPalette_18, &gBattleAnimBackgroundTilemap_07,
+ &gBattleAnimBackgroundImage_07, &gBattleAnimBackgroundPalette_18, &gBattleAnimBackgroundTilemap_08,
+ &gBattleAnimBackgroundImage_20, &gBattleAnimBackgroundPalette_20, &gBattleAnimBackgroundTilemap_20,
+ &gBattleAnimBackgroundImage_21, &gBattleAnimBackgroundPalette_21, &gBattleAnimBackgroundTilemap_21,
+ &gBattleAnimBackgroundImage_09, &gBattleAnimBackgroundPalette_22, &gBattleAnimBackgroundTilemap_09,
+ &gBattleAnimBackgroundImage_09, &gBattleAnimBackgroundPalette_22, &gBattleAnimBackgroundTilemap_10,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_24, &gBattleAnimBackgroundTilemap_04,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_24, &gBattleAnimBackgroundTilemap_05,
+ &gBattleAnimBackgroundImage_04, &gBattleAnimBackgroundPalette_24, &gBattleAnimBackgroundTilemap_06,
+};
+
static void (* const sScriptCmdTable[])(void) =
{
ScriptCmd_loadspritegfx,
diff --git a/src/battle_anim_80A9C70.c b/src/battle_anim_80A9C70.c
index 9b9218b1c..89c945ca4 100644
--- a/src/battle_anim_80A9C70.c
+++ b/src/battle_anim_80A9C70.c
@@ -56,8 +56,8 @@ static const struct SpriteTemplate gUnknown_0853EF48 =
static const struct SpriteTemplate gUnknown_0853EF60 =
{
- .tileTag = ANIM_TAG_136,
- .paletteTag = ANIM_TAG_136,
+ .tileTag = ANIM_TAG_CIRCLE_IMPACT,
+ .paletteTag = ANIM_TAG_CIRCLE_IMPACT,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
@@ -73,8 +73,8 @@ u8 sub_80A9C70(u8 battlerId, bool8 b)
u8 spriteId2;
u8 i;
- LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
+ LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
+ LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
gTasks[taskId].data[0] = battlerId;
if (b)
{
diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c
new file mode 100644
index 000000000..d9c574e73
--- /dev/null
+++ b/src/battle_anim_utility_funcs.c
@@ -0,0 +1,10 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+const u16 gUnknown_08597418 = RGB(31, 31, 31);
+
+// no clue what these are...
+// possibly some register offsets
+const u8 gUnknown_0859741A[] = {0x08, 0x0a, 0x0c, 0x0e};
+const u8 gUnknown_0859741E[] = {0x08, 0x0a, 0x0c, 0x0e};
diff --git a/src/battle_bg.c b/src/battle_bg.c
index a6c66b3c4..bbe50cc70 100644
--- a/src/battle_bg.c
+++ b/src/battle_bg.c
@@ -162,10 +162,10 @@ const struct BgTemplate gBattleBgTemplates[] =
},
};
-static const struct WindowTemplate gUnknown_0831AA18[] =
+static const struct WindowTemplate gUnknown_0831AA18[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -174,7 +174,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0090,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@@ -183,7 +183,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x01c0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@@ -192,7 +192,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0190,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@@ -201,7 +201,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0300,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@@ -210,7 +210,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0310,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@@ -219,7 +219,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0320,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@@ -228,7 +228,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0330,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@@ -237,7 +237,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0290,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@@ -246,7 +246,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@@ -255,7 +255,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@@ -264,7 +264,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02a0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@@ -273,7 +273,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02b0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@@ -282,7 +282,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@@ -300,7 +300,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x016e,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@@ -309,7 +309,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@@ -318,7 +318,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@@ -327,7 +327,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@@ -336,7 +336,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@@ -345,7 +345,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0060,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@@ -354,7 +354,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0080,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 12,
.tilemapTop = 2,
.width = 6,
@@ -363,7 +363,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 4,
.tilemapTop = 2,
.width = 7,
@@ -372,7 +372,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 7,
@@ -383,10 +383,10 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
DUMMY_WIN_TEMPLATE
};
-static const struct WindowTemplate gUnknown_0831AAE0[] =
+static const struct WindowTemplate gUnknown_0831AAE0[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0090,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x01c0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0190,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0300,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0310,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0320,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0330,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0290,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02a0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@@ -494,7 +494,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02b0,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@@ -503,7 +503,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@@ -512,7 +512,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@@ -521,7 +521,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x016e,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 6,
.tilemapTop = 1,
.width = 8,
@@ -530,7 +530,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 14,
.tilemapTop = 1,
.width = 2,
@@ -539,7 +539,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0110,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 8,
@@ -548,7 +548,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0114,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 12,
.tilemapTop = 4,
.width = 6,
@@ -557,7 +557,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0124,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 12,
.tilemapTop = 6,
.width = 6,
@@ -566,7 +566,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0130,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 12,
.tilemapTop = 8,
.width = 6,
@@ -575,7 +575,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x013c,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 8,
.tilemapTop = 11,
.width = 14,
@@ -584,7 +584,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0148,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
diff --git a/src/battle_dome.c b/src/battle_dome.c
index 4a12d64a3..3677131ab 100644
--- a/src/battle_dome.c
+++ b/src/battle_dome.c
@@ -786,7 +786,7 @@ static const struct BgTemplate gUnknown_0860CE84[4] =
static const struct WindowTemplate gUnknown_0860CE94[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 3,
.width = 8,
@@ -795,7 +795,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 16,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 3,
.width = 8,
@@ -804,7 +804,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 144,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 8,
.tilemapTop = 1,
.width = 14,
@@ -818,7 +818,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
static const struct WindowTemplate gUnknown_0860CEB4[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@@ -827,7 +827,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@@ -836,7 +836,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@@ -845,7 +845,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@@ -854,7 +854,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@@ -863,7 +863,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@@ -872,7 +872,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@@ -881,7 +881,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@@ -890,7 +890,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,
@@ -899,7 +899,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 372,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@@ -908,7 +908,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@@ -917,7 +917,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@@ -926,7 +926,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@@ -935,7 +935,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@@ -944,7 +944,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@@ -953,7 +953,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@@ -962,7 +962,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@@ -971,7 +971,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,
diff --git a/src/battle_factory.c b/src/battle_factory.c
index 7ebcfe8b3..c2a3207a6 100644
--- a/src/battle_factory.c
+++ b/src/battle_factory.c
@@ -323,7 +323,7 @@ static const struct BgTemplate sSelect_BgTemplates[] =
static const struct WindowTemplate sSelect_WindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@@ -332,7 +332,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -341,7 +341,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@@ -350,7 +350,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -359,7 +359,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -368,7 +368,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x009b,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,
@@ -907,7 +907,7 @@ static const struct BgTemplate sSwap_BgTemplates[4] =
static const struct WindowTemplate sSwap_WindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@@ -916,7 +916,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -925,7 +925,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@@ -934,7 +934,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 14,
.width = 9,
@@ -943,7 +943,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@@ -952,7 +952,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00a1,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 21,
.tilemapTop = 15,
.width = 9,
@@ -961,7 +961,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 10,
.tilemapTop = 2,
.width = 4,
@@ -970,7 +970,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c1,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@@ -979,7 +979,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c9,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,
diff --git a/src/battle_intro.c b/src/battle_intro.c
new file mode 100644
index 000000000..0ccc7e828
--- /dev/null
+++ b/src/battle_intro.c
@@ -0,0 +1,21 @@
+#include "global.h"
+#include "task.h"
+
+extern void task_battle_intro_80BC47C(u8);
+extern void task00_battle_intro_80BC6C8(u8);
+extern void task_battle_intro_80BC47C(u8);
+extern void task_battle_intro_anim(u8);
+
+const TaskFunc gUnknown_08597424[] =
+{
+ task_battle_intro_80BC47C,
+ task_battle_intro_80BC47C,
+ task00_battle_intro_80BC6C8,
+ task00_battle_intro_80BC6C8,
+ task00_battle_intro_80BC6C8,
+ task_battle_intro_80BC47C,
+ task_battle_intro_80BC47C,
+ task_battle_intro_80BC47C,
+ task_battle_intro_anim,
+ task_battle_intro_anim,
+};
diff --git a/src/battle_pyramid_bag.c b/src/battle_pyramid_bag.c
index 94099aee8..fce8c9e2a 100644
--- a/src/battle_pyramid_bag.c
+++ b/src/battle_pyramid_bag.c
@@ -188,7 +188,7 @@ static const u8 sColorTable[][3] =
static const struct WindowTemplate gUnknown_0861F328[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -197,7 +197,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 30
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -206,7 +206,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 270
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -215,7 +215,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 354
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@@ -229,7 +229,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
static const struct WindowTemplate gUnknown_0861F350[] =
{
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@@ -238,7 +238,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@@ -247,7 +247,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@@ -256,7 +256,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@@ -265,7 +265,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,
diff --git a/src/battle_records.c b/src/battle_records.c
index feaec74db..f64b5f494 100644
--- a/src/battle_records.c
+++ b/src/battle_records.c
@@ -65,7 +65,7 @@ static const struct BgTemplate sTrainerHillRecordsBgTemplates[] =
static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@@ -78,7 +78,7 @@ static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
static const struct WindowTemplate sLinkBattleRecordsWindow =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
diff --git a/src/berry_blender.c b/src/berry_blender.c
index 8e0bc8043..643bd2e30 100644
--- a/src/berry_blender.c
+++ b/src/berry_blender.c
@@ -323,7 +323,7 @@ static const struct BgTemplate sBerryBlenderBgTemplates[3] =
static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 6,
.width = 7,
@@ -332,7 +332,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x28,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 6,
.width = 7,
@@ -341,7 +341,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x36,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 7,
@@ -350,7 +350,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x44,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 12,
.width = 7,
@@ -359,7 +359,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x52,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -368,7 +368,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x60,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 5,
.tilemapTop = 3,
.width = 21,
@@ -381,7 +381,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
static const struct WindowTemplate sBlender_YesNoWindowTemplate =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -846,7 +846,7 @@ static const u8 sUnknown_08339CD2[] =
static const struct WindowTemplate sBlenderRecordWindowTemplate =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 6,
.tilemapTop = 4,
.width = 18,
diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c
index 07fb6bd9e..39927ab99 100644
--- a/src/berry_tag_screen.c
+++ b/src/berry_tag_screen.c
@@ -102,7 +102,7 @@ static const u8 sTextColors[2][3] =
static const struct WindowTemplate sWindowTemplates[] =
{
{ // WIN_BERRY_NAME
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 8,
@@ -111,7 +111,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 69,
},
{ // WIN_SIZE_FIRM
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 11,
.tilemapTop = 7,
.width = 18,
@@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 85,
},
{ // WIN_DESC
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 4,
.tilemapTop = 14,
.width = 25,
@@ -129,7 +129,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 157,
},
{ // WIN_BERRY_TAG
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 0,
.width = 8,
diff --git a/src/bug.c b/src/bug.c
new file mode 100644
index 000000000..a14ec2226
--- /dev/null
+++ b/src/bug.c
@@ -0,0 +1,189 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_8110368(struct Sprite *);
+extern void sub_8110438(struct Sprite *);
+extern void sub_81104E4(struct Sprite *);
+extern void sub_81105B4(struct Sprite *);
+extern void sub_811067C(struct Sprite *);
+extern void sub_8110720(struct Sprite *);
+extern void sub_8110850(struct Sprite *);
+extern void sub_8110994(struct Sprite *);
+
+const union AffineAnimCmd gUnknown_08596938[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 30, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596948[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, -99, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596958[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 94, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596968[] =
+{
+ gUnknown_08596938,
+ gUnknown_08596948,
+ gUnknown_08596958,
+};
+
+const struct SpriteTemplate gUnknown_08596974 =
+{
+ .tileTag = ANIM_TAG_HORN_HIT_2,
+ .paletteTag = ANIM_TAG_HORN_HIT_2,
+ .oam = &gUnknown_085249F4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596968,
+ .callback = sub_8110368,
+};
+
+const union AffineAnimCmd gUnknown_0859698C[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -33, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859699C[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085969AC[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085969BC[] =
+{
+ gUnknown_0859698C,
+ gUnknown_0859699C,
+ gUnknown_085969AC,
+};
+
+const struct SpriteTemplate gUnknown_085969C8 =
+{
+ .tileTag = ANIM_TAG_NEEDLE,
+ .paletteTag = ANIM_TAG_NEEDLE,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085969BC,
+ .callback = sub_8110438,
+};
+
+const struct SpriteTemplate gUnknown_085969E0 =
+{
+ .tileTag = ANIM_TAG_WEB_THREAD,
+ .paletteTag = ANIM_TAG_WEB_THREAD,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81104E4,
+};
+
+const struct SpriteTemplate gUnknown_085969F8 =
+{
+ .tileTag = ANIM_TAG_STRING,
+ .paletteTag = ANIM_TAG_STRING,
+ .oam = &gUnknown_0852493C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81105B4,
+};
+
+const union AffineAnimCmd gUnknown_08596A10[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08596A28[] =
+{
+ gUnknown_08596A10,
+};
+
+const struct SpriteTemplate gUnknown_08596A2C =
+{
+ .tileTag = ANIM_TAG_SPIDER_WEB,
+ .paletteTag = ANIM_TAG_SPIDER_WEB,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596A28,
+ .callback = sub_811067C,
+};
+
+const struct SpriteTemplate gLinearStingerSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_NEEDLE,
+ .paletteTag = ANIM_TAG_NEEDLE,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110720,
+};
+
+const struct SpriteTemplate gPinMissileSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_NEEDLE,
+ .paletteTag = ANIM_TAG_NEEDLE,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110850,
+};
+
+const struct SpriteTemplate gIcicleSpearSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_ICICLE_SPEAR,
+ .paletteTag = ANIM_TAG_ICICLE_SPEAR,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110850,
+};
+
+const union AffineAnimCmd gUnknown_08596A8C[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 18),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 8),
+ AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 8),
+ AFFINEANIMCMD_LOOP(5),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596AC4[] =
+{
+ gUnknown_08596A8C,
+};
+
+const struct SpriteTemplate gUnknown_08596AC8 =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596AC4,
+ .callback = sub_8110994,
+};
diff --git a/src/cable_club.c b/src/cable_club.c
index c54df5f24..b0e5f0500 100644
--- a/src/cable_club.c
+++ b/src/cable_club.c
@@ -34,7 +34,7 @@ extern u8 gUnknown_02032298[2];
extern u8 gUnknown_0203CEF8[];
static const struct WindowTemplate gUnknown_08550594 = {
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 11,
.width = 11,
@@ -421,7 +421,7 @@ bool32 sub_80B2AF4(u16 *arg0, u16 *arg1)
gStringVar1[0] = EOS;
gStringVar2[0] = EOS;
-
+
for (i = 0; i < 2; i++)
{
for (j = 0; j < 2; j++)
@@ -1151,7 +1151,7 @@ static void sub_80B3950(void)
void nullsub_37(void)
{
-
+
}
void sub_80B3968(void)
diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c
index 839a77e4a..51f3bd291 100644
--- a/src/clear_save_data_screen.c
+++ b/src/clear_save_data_screen.c
@@ -11,8 +11,8 @@
#include "text_window.h"
#include "constants/songs.h"
-extern u8 gText_ClearAllSaveData[];
-extern u8 gText_ClearingData[];
+extern const u8 gText_ClearAllSaveData[];
+extern const u8 gText_ClearingData[];
static void Task_DoClearSaveDataScreenYesNo(u8);
static void Task_ClearSaveDataScreenYesNoChoice(u8);
@@ -46,7 +46,7 @@ static const struct BgTemplate sClearSaveBgTemplates[2] =
static const struct WindowTemplate sClearSaveTextWindow[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 26,
@@ -60,7 +60,7 @@ static const struct WindowTemplate sClearSaveTextWindow[] =
static const struct WindowTemplate sClearSaveYesNo[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 5,
diff --git a/src/credits.c b/src/credits.c
index 608c17cc6..df17ec70b 100644
--- a/src/credits.c
+++ b/src/credits.c
@@ -949,7 +949,7 @@ static const struct BgTemplate gUnknown_085E6F68[] =
static const struct WindowTemplate gUnknown_085E6F6C[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 9,
.width = 30,
@@ -1142,7 +1142,7 @@ static void sub_81754DC(void)
{
RunTasks();
AnimateSprites();
-
+
if ((gMain.heldKeys & B_BUTTON)
&& gHasHallOfFameRecords != 0
&& gTasks[gUnknown_0203BCE2].func == sub_8175774)
@@ -1182,9 +1182,9 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
{
u8 x;
u8 color[3];
-
+
color[0] = 0;
-
+
if (a2 == 1)
{
color[1] = 3;
@@ -1195,7 +1195,7 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
color[1] = 1;
color[2] = 2;
}
-
+
x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, 0xF0, 1);
AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string);
}
@@ -1230,7 +1230,7 @@ void sub_8175620(void)
gTasks[taskIdC].data[TDC_0] = 40;
SetGpuReg(REG_OFFSET_BG0VOFS, 0xFFFC);
-
+
taskIdB = CreateTask(sub_8175DA0, 0);
gTasks[taskIdB].data[TDB_TASK_A_ID] = taskIdA;
@@ -1546,9 +1546,9 @@ static void sub_8175DA0(u8 taskIdB)
{
for (i = 0; i < 5; i++)
sub_81755BC(gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, 5 + i * 16, gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->var_1);
-
+
CopyWindowToVram(0, 2);
-
+
gTasks[taskIdB].data[TDB_CURRENT_PAGE] += 1;
gTasks[taskIdB].data[TDB_0] += 1;
diff --git a/src/dark.c b/src/dark.c
new file mode 100644
index 000000000..d4a4f0b8a
--- /dev/null
+++ b/src/dark.c
@@ -0,0 +1,169 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_81138D4(struct Sprite *);
+extern void sub_81139DC(struct Sprite *);
+extern void sub_8113A90(struct Sprite *);
+extern void sub_81144BC(struct Sprite *);
+
+const struct SpriteTemplate gUnknown_08596FC8 =
+{
+ .tileTag = ANIM_TAG_TIED_BAG,
+ .paletteTag = ANIM_TAG_TIED_BAG,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81138D4,
+};
+
+const union AffineAnimCmd gUnknown_08596FE0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596FF0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 32, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597000[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 64, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597010[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597020[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -128, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597030[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597040[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -64, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597050[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -32, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08597060[] =
+{
+ gUnknown_08596FE0,
+ gUnknown_08596FF0,
+ gUnknown_08597000,
+ gUnknown_08597010,
+ gUnknown_08597020,
+ gUnknown_08597030,
+ gUnknown_08597040,
+ gUnknown_08597050,
+};
+
+const struct SpriteTemplate gUnknown_08597080 =
+{
+ .tileTag = ANIM_TAG_SHARP_TEETH,
+ .paletteTag = ANIM_TAG_SHARP_TEETH,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597060,
+ .callback = sub_81139DC,
+};
+
+const struct SpriteTemplate gUnknown_08597098 =
+{
+ .tileTag = ANIM_TAG_CLAMP,
+ .paletteTag = ANIM_TAG_CLAMP,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597060,
+ .callback = sub_81139DC,
+};
+
+const union AffineAnimCmd gUnknown_085970B0[] =
+{
+ AFFINEANIMCMD_FRAME(0xC0, 0xC0, 80, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -2, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085970C8[] =
+{
+ AFFINEANIMCMD_FRAME(0xC0, 0xC0, -80, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085970E0[] =
+{
+ gUnknown_085970B0,
+ gUnknown_085970C8,
+};
+
+const struct SpriteTemplate gUnknown_085970E8 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085970E0,
+ .callback = sub_8113A90,
+};
+
+const union AnimCmd gUnknown_08597100[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08597118[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(64, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08597130[] =
+{
+ gUnknown_08597100,
+ gUnknown_08597118,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8597138 =
+{
+ .tileTag = ANIM_TAG_CLAW_SLASH,
+ .paletteTag = ANIM_TAG_CLAW_SLASH,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08597130,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81144BC,
+};
diff --git a/src/daycare.c b/src/daycare.c
index c80a8b743..db46b3a4f 100644
--- a/src/daycare.c
+++ b/src/daycare.c
@@ -63,7 +63,7 @@ EWRAM_DATA static u16 sHatchedEggMotherMoves[4] = {0};
static const struct WindowTemplate sDaycareLevelMenuWindowTemplate =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,
diff --git a/src/decoration.c b/src/decoration.c
index 0cafad800..8bbe11039 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -217,7 +217,7 @@ void (*const SecretBasePC_SelectedDecorActions[][2])(u8 taskId) = {
const struct WindowTemplate gUnknown_085A6B90[4] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 18,
@@ -226,7 +226,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0001
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@@ -235,7 +235,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0091
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 17,
.tilemapTop = 1,
.width = 12,
@@ -244,7 +244,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x017b
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 13,
.width = 13,
diff --git a/src/diploma.c b/src/diploma.c
index a1d37a70d..e2f2c6d07 100644
--- a/src/diploma.c
+++ b/src/diploma.c
@@ -11,19 +11,14 @@
#include "window.h"
#include "string_util.h"
#include "text.h"
+#include "overworld.h"
+#include "menu.h"
-extern void reset_temp_tile_data_buffers(void);
-extern int decompress_and_copy_tile_data_to_vram(u8 bg_id, void *src, int size, u16 offset, u8 mode);
-extern bool8 free_temp_tile_data_buffers_if_possible(void);
-extern void sub_80861E8(void); // rom4
extern bool16 sub_80C0944(void);
-extern void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 *color, s8 speed, u8 *str);
-extern u16 gUnknown_0860F074[];
-
-extern u8 gText_DexNational[];
-extern u8 gText_DexHoenn[];
-extern u8 gText_PokedexDiploma[];
+extern const u8 gText_DexNational[];
+extern const u8 gText_DexHoenn[];
+extern const u8 gText_PokedexDiploma[];
static void MainCB2(void);
static void Task_DiplomaFadeIn(u8);
@@ -34,7 +29,7 @@ static void InitDiplomaBg(void);
static void InitDiplomaWindow(void);
static void PrintDiplomaText(u8 *, u8, u8);
-EWRAM_DATA static void **sDiplomaTilemapPtr = {NULL};
+EWRAM_DATA static u8 *sDiplomaTilemapPtr = NULL;
static void VBlankCB(void)
{
@@ -186,7 +181,7 @@ static void InitDiplomaBg(void)
static const struct WindowTemplate sDiplomaWinTemplates[2] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 20,
diff --git a/src/dragon.c b/src/dragon.c
new file mode 100644
index 000000000..20ef357a0
--- /dev/null
+++ b/src/dragon.c
@@ -0,0 +1,180 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_8113064(struct Sprite *);
+extern void sub_8113224(struct Sprite *);
+extern void sub_81131B4(struct Sprite *);
+extern void sub_8113224(struct Sprite *);
+extern void sub_8113250(struct Sprite *);
+extern void sub_81135EC(struct Sprite *);
+
+const union AnimCmd gUnknown_08596E60[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08596E78[] =
+{
+ gUnknown_08596E60,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E7C =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596E78,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8113064,
+};
+
+const union AnimCmd gUnknown_08596E94[] =
+{
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08596EA4[] =
+{
+ ANIMCMD_FRAME(16, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08596EB4[] =
+{
+ gUnknown_08596E94,
+ gUnknown_08596EA4,
+};
+
+const union AffineAnimCmd gUnknown_08596EBC[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 127, 0),
+ AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596ED4[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
+ AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596EEC[] =
+{
+ gUnknown_08596EBC,
+ gUnknown_08596ED4,
+};
+
+const struct SpriteTemplate gUnknown_08596EF4 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08596EB4,
+ .images = NULL,
+ .affineAnims = gUnknown_08596EEC,
+ .callback = sub_8113224,
+};
+
+const union AnimCmd gUnknown_08596F0C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596F24[] =
+{
+ gUnknown_08596F0C,
+};
+
+const struct SpriteTemplate gUnknown_08596F28 =
+{
+ .tileTag = ANIM_TAG_FIRE_PLUME,
+ .paletteTag = ANIM_TAG_FIRE_PLUME,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596F24,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81131B4,
+};
+
+const union AnimCmd gUnknown_08596F40[] =
+{
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08596F50[] =
+{
+ gUnknown_08596F40,
+ gUnknown_08596F40,
+};
+
+const union AffineAnimCmd gUnknown_08596F58[] =
+{
+ AFFINEANIMCMD_FRAME(0x64, 0x64, 127, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596F68[] =
+{
+ AFFINEANIMCMD_FRAME(0x64, 0x64, 0, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596F78[] =
+{
+ gUnknown_08596F58,
+ gUnknown_08596F68,
+};
+
+const struct SpriteTemplate gUnknown_08596F80 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08596F50,
+ .images = NULL,
+ .affineAnims = gUnknown_08596F78,
+ .callback = sub_8113224,
+};
+
+const struct SpriteTemplate gUnknown_08596F98 =
+{
+ .tileTag = ANIM_TAG_HOLLOW_ORB,
+ .paletteTag = ANIM_TAG_HOLLOW_ORB,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8113250,
+};
+
+const struct SpriteTemplate gUnknown_08596FB0 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596E78,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81135EC,
+};
diff --git a/src/effects_1.c b/src/effects_1.c
new file mode 100644
index 000000000..36676b70d
--- /dev/null
+++ b/src/effects_1.c
@@ -0,0 +1,2093 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_80FE840(struct Sprite *);
+extern void sub_80FE8E0(struct Sprite *);
+extern void sub_80FE930(struct Sprite *);
+extern void sub_80FE988(struct Sprite *);
+extern void sub_80FEAD8(struct Sprite *);
+extern void sub_80FEB44(struct Sprite *);
+extern void sub_80FEC48(struct Sprite *);
+extern void sub_80FED28(struct Sprite *);
+extern void sub_80FEE78(struct Sprite *);
+extern void sub_80FEF44(struct Sprite *);
+extern void sub_80FEFFC(struct Sprite *);
+extern void sub_80FF268(struct Sprite *);
+extern void sub_80FF0F4(struct Sprite *);
+extern void sub_80FF374(struct Sprite *);
+extern void sub_80FF698(struct Sprite *);
+extern void sub_80FF768(struct Sprite *);
+extern void sub_80FF7EC(struct Sprite *);
+extern void sub_80FF934(struct Sprite *);
+extern void sub_80FFB18(struct Sprite *);
+extern void sub_80FFBF4(struct Sprite *);
+extern void sub_80FFC70(struct Sprite *);
+extern void sub_80FFCB4(struct Sprite *);
+extern void sub_80FFDBC(struct Sprite *);
+extern void sub_8100640(struct Sprite *);
+extern void sub_8100898(struct Sprite *);
+extern void sub_8100A50(struct Sprite *);
+extern void sub_81009F8(struct Sprite *);
+extern void sub_8100A94(struct Sprite *);
+extern void sub_8100AE0(struct Sprite *);
+extern void sub_8100B88(struct Sprite *);
+extern void sub_8100E1C(struct Sprite *);
+extern void sub_8100EF0(struct Sprite *);
+extern void sub_81010CC(struct Sprite *);
+extern void sub_810130C(struct Sprite *);
+extern void sub_810135C(struct Sprite *);
+extern void sub_8101440(struct Sprite *);
+extern void sub_81014F4(struct Sprite *);
+extern void sub_81015AC(struct Sprite *);
+extern void sub_8101898(struct Sprite *);
+extern void sub_8101940(struct Sprite *);
+extern void sub_8101B90(struct Sprite *);
+extern void sub_8101F40(struct Sprite *);
+extern void sub_8101FA8(struct Sprite *);
+extern void sub_8101FF0(struct Sprite *);
+extern void sub_81020D8(struct Sprite *);
+extern void sub_810217C(struct Sprite *);
+extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite);
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_8102268(struct Sprite *);
+extern void sub_810234C(struct Sprite *);
+extern void sub_81024E0(struct Sprite *);
+extern void sub_8102540(struct Sprite *);
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_8102844(struct Sprite *);
+extern void sub_8102BCC(struct Sprite *);
+extern void sub_8102CD4(struct Sprite *);
+extern void sub_8102EB0(struct Sprite *);
+extern void sub_8102FB8(struct Sprite *);
+extern void sub_8103028(struct Sprite *);
+extern void sub_8103164(struct Sprite *);
+extern void sub_8103208(struct Sprite *);
+extern void sub_8103284(struct Sprite *);
+extern void sub_8103390(struct Sprite *);
+
+const union AnimCmd gUnknown_085920F0[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(6, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(10, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_FRAME(14, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08592114[] =
+{
+ gUnknown_085920F0,
+};
+
+const struct SpriteTemplate gSleepPowderParticleSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SLEEP_POWDER,
+ .paletteTag = ANIM_TAG_SLEEP_POWDER,
+ .oam = &gUnknown_08524944,
+ .anims = gUnknown_08592114,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FE840,
+};
+
+const struct SpriteTemplate gStunSporeParticleSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_STUN_SPORE,
+ .paletteTag = ANIM_TAG_STUN_SPORE,
+ .oam = &gUnknown_08524944,
+ .anims = gUnknown_08592114,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FE840,
+};
+
+const struct SpriteTemplate gPoisonPowderParticleSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_POISON_POWDER,
+ .paletteTag = ANIM_TAG_POISON_POWDER,
+ .oam = &gUnknown_08524944,
+ .anims = gUnknown_08592114,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FE840,
+};
+
+const union AnimCmd gUnknown_08592160[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592168[] =
+{
+ ANIMCMD_FRAME(1, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592170[] =
+{
+ ANIMCMD_FRAME(2, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592178[] =
+{
+ ANIMCMD_FRAME(3, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592180[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592188[] =
+{
+ ANIMCMD_FRAME(5, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592190[] =
+{
+ ANIMCMD_FRAME(6, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592198[] =
+{
+ ANIMCMD_FRAME(7, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085921A0[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085921A8[] =
+{
+ gUnknown_08592160,
+ gUnknown_08592168,
+ gUnknown_08592170,
+ gUnknown_08592178,
+ gUnknown_08592180,
+ gUnknown_08592188,
+ gUnknown_08592190,
+};
+
+const union AnimCmd *const gUnknown_085921C4[] =
+{
+ gUnknown_08592198,
+};
+
+const union AnimCmd *const gUnknown_085921C8[] =
+{
+ gUnknown_085921A0,
+};
+
+const union AffineAnimCmd gUnknown_085921CC[] = {
+ AFFINEANIMCMD_FRAME(-5, -5, 0, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_085921DC[] = {
+ gUnknown_085921CC,
+};
+
+const struct SpriteTemplate gUnknown_085921E0 =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524A8C,
+ .anims = gUnknown_085921C8,
+ .images = NULL,
+ .affineAnims = gUnknown_085921DC,
+ .callback = sub_80FE8E0,
+};
+
+const struct SpriteTemplate gUnknown_085921F8 =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_085921A8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FE930,
+};
+
+const struct SpriteTemplate gUnknown_08592210 =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_085921C4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FE988,
+};
+
+const union AffineAnimCmd gUnknown_08592228[] = {
+ AFFINEANIMCMD_FRAME(320, 320, 0, 0),
+ AFFINEANIMCMD_FRAME(-14, -14, 0, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08592240[] = {
+ gUnknown_08592228,
+};
+
+const struct SpriteTemplate gUnknown_08592244 =
+{
+ .tileTag = ANIM_TAG_GRAY_ORB,
+ .paletteTag = ANIM_TAG_GRAY_ORB,
+ .oam = &gUnknown_085249C4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08592240,
+ .callback = sub_80FE8E0,
+};
+
+const union AffineAnimCmd gUnknown_0859225C[] = {
+ AFFINEANIMCMD_FRAME(-5, -5, 0, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_0859226C[] = {
+ gUnknown_0859225C,
+};
+
+const struct SpriteTemplate gUnknown_08592270 =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524A8C,
+ .anims = gUnknown_085921C8,
+ .images = NULL,
+ .affineAnims = gUnknown_0859226C,
+ .callback = sub_80FEAD8,
+};
+
+const struct SpriteTemplate gUnknown_08592288 =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_085921A8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FEB44,
+};
+
+const union AnimCmd gUnknown_085922A0[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085922A8[] =
+{
+ ANIMCMD_FRAME(4, 7),
+ ANIMCMD_FRAME(8, 7),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085922B4[] =
+{
+ gUnknown_085922A0,
+ gUnknown_085922A8,
+};
+
+const struct SpriteTemplate gLeechSeedSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SEED,
+ .paletteTag = ANIM_TAG_SEED,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_085922B4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FEC48,
+};
+
+const union AnimCmd gUnknown_085922D4[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085922DC[] =
+{
+ ANIMCMD_FRAME(4, 7),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085922E4[] =
+{
+ gUnknown_085922D4,
+ gUnknown_085922DC,
+};
+
+const struct SpriteTemplate gUnknown_085922EC =
+{
+ .tileTag = ANIM_TAG_SPORE,
+ .paletteTag = ANIM_TAG_SPORE,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_085922E4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FED28,
+};
+
+const union AnimCmd gUnknown_08592304[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859230C[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592314[] =
+{
+ gUnknown_08592304,
+};
+
+const union AnimCmd *const gUnknown_08592318[] =
+{
+ gUnknown_0859230C,
+};
+
+const struct SpriteTemplate gUnknown_0859231C =
+{
+ .tileTag = ANIM_TAG_FLOWER,
+ .paletteTag = ANIM_TAG_FLOWER,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592314,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FEE78,
+};
+
+const struct SpriteTemplate gUnknown_08592334 =
+{
+ .tileTag = ANIM_TAG_FLOWER,
+ .paletteTag = ANIM_TAG_FLOWER,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08592318,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FEF44,
+};
+
+const union AnimCmd gUnknown_0859234C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(20, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08592378[] =
+{
+ ANIMCMD_FRAME(24, 5),
+ ANIMCMD_FRAME(28, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592388[] =
+{
+ gUnknown_0859234C,
+ gUnknown_08592378,
+};
+
+const struct SpriteTemplate gUnknown_08592390 =
+{
+ .tileTag = ANIM_TAG_LEAF,
+ .paletteTag = ANIM_TAG_LEAF,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592388,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FEFFC,
+};
+
+const struct SpriteTemplate gUnknown_085923A8 =
+{
+ .tileTag = ANIM_TAG_LEAF,
+ .paletteTag = ANIM_TAG_LEAF,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592388,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FF268,
+};
+
+const union AnimCmd gUnknown_085923C0[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 3, .vFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085923D4[] =
+{
+ gUnknown_085923C0,
+};
+
+const struct SpriteTemplate gUnknown_085923D8 =
+{
+ .tileTag = ANIM_TAG_RAZOR_LEAF,
+ .paletteTag = ANIM_TAG_RAZOR_LEAF,
+ .oam = &gUnknown_08524934,
+ .anims = gUnknown_085923D4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FF0F4,
+};
+
+const union AffineAnimCmd gUnknown_085923F0[] = {
+ AFFINEANIMCMD_FRAME(0, 0, 0, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08592400[] = {
+ gUnknown_085923F0,
+};
+
+const struct SpriteTemplate gSwiftStarSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_YELLOW_STAR,
+ .paletteTag = ANIM_TAG_YELLOW_STAR,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08592400,
+ .callback = sub_80FF0F4,
+};
+
+const union AnimCmd gUnknown_0859241C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_FRAME(96, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592430[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(64, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(96, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592444[] =
+{
+ gUnknown_0859241C,
+ gUnknown_08592430,
+};
+
+const union AffineAnimCmd gUnknown_0859244C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(-11, 0, 0, 6),
+ AFFINEANIMCMD_FRAME(11, 0, 0, 6),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859246C[] = {
+ AFFINEANIMCMD_FRAME(-256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(11, 0, 0, 6),
+ AFFINEANIMCMD_FRAME(-11, 0, 0, 6),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859248C[] = {
+ gUnknown_0859244C,
+ gUnknown_0859246C,
+};
+
+const struct SpriteTemplate gUnknown_08592494 =
+{
+ .tileTag = ANIM_TAG_TENDRILS,
+ .paletteTag = ANIM_TAG_TENDRILS,
+ .oam = &gUnknown_0852499C,
+ .anims = gUnknown_08592444,
+ .images = NULL,
+ .affineAnims = gUnknown_0859248C,
+ .callback = sub_80FF374,
+};
+
+const union AffineAnimCmd gUnknown_085924AC[] = {
+ AFFINEANIMCMD_FRAME(0, 0, 0, 0),
+ AFFINEANIMCMD_FRAME(48, 48, 0, 14),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085924C4[] = {
+ AFFINEANIMCMD_FRAME(-16, -16, 0, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_085924D4[] = {
+ gUnknown_085924AC,
+ gUnknown_085924C4,
+};
+
+const struct SpriteTemplate gUnknown_085924DC =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_085921C8,
+ .images = NULL,
+ .affineAnims = gUnknown_085924D4,
+ .callback = sub_80FF698,
+};
+
+const union AnimCmd gUnknown_085924F4[] =
+{
+ ANIMCMD_FRAME(0, 7),
+ ANIMCMD_FRAME(16, 7),
+ ANIMCMD_FRAME(32, 7),
+ ANIMCMD_FRAME(48, 7),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592508[] =
+{
+ ANIMCMD_FRAME(0, 7, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 7, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 7, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 7, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859251C[] =
+{
+ ANIMCMD_FRAME(0, 7),
+ ANIMCMD_FRAME(16, 7),
+ ANIMCMD_FRAME(32, 7),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859252C[] =
+{
+ ANIMCMD_FRAME(0, 7, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 7, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 7, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859253C[] =
+{
+ gUnknown_085924F4,
+ gUnknown_08592508,
+ gUnknown_0859251C,
+ gUnknown_0859252C,
+};
+
+const struct SpriteTemplate gUnknown_0859254C =
+{
+ .tileTag = ANIM_TAG_ROOTS,
+ .paletteTag = ANIM_TAG_ROOTS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_0859253C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FF768,
+};
+
+const struct SpriteTemplate gUnknown_08592564 =
+{
+ .tileTag = ANIM_TAG_ROOTS,
+ .paletteTag = ANIM_TAG_ROOTS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_0859253C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FF7EC,
+};
+
+const union AnimCmd gUnknown_0859257C[] =
+{
+ ANIMCMD_FRAME(3, 3),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08592588[] =
+{
+ gUnknown_0859257C,
+};
+
+const struct SpriteTemplate gUnknown_0859258C =
+{
+ .tileTag = ANIM_TAG_ORBS,
+ .paletteTag = ANIM_TAG_ORBS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08592588,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FF934,
+};
+
+const union AnimCmd gUnknown_085925A4[] =
+{
+ ANIMCMD_FRAME(0, 30),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085925AC[] =
+{
+ gUnknown_085925A4,
+};
+
+const union AffineAnimCmd gUnknown_085925B0[] = {
+ AFFINEANIMCMD_FRAME(0, 0, -4, 10),
+ AFFINEANIMCMD_FRAME(0, 0, 4, 20),
+ AFFINEANIMCMD_FRAME(0, 0, -4, 10),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085925D0[] = {
+ AFFINEANIMCMD_FRAME(0, 0, -1, 2),
+ AFFINEANIMCMD_FRAME(0, 0, 1, 4),
+ AFFINEANIMCMD_FRAME(0, 0, -1, 4),
+ AFFINEANIMCMD_FRAME(0, 0, 1, 4),
+ AFFINEANIMCMD_FRAME(0, 0, -1, 4),
+ AFFINEANIMCMD_FRAME(0, 0, 1, 2),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08592608[] = {
+ gUnknown_085925B0,
+ gUnknown_085925D0,
+};
+
+const struct SpriteTemplate gUnknown_08592610 =
+{
+ .tileTag = ANIM_TAG_ITEM_BAG,
+ .paletteTag = ANIM_TAG_ITEM_BAG,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085925AC,
+ .images = NULL,
+ .affineAnims = gUnknown_08592608,
+ .callback = sub_80FFB18,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8592628 =
+{
+ .tileTag = ANIM_TAG_ITEM_BAG,
+ .paletteTag = ANIM_TAG_ITEM_BAG,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085925AC,
+ .images = NULL,
+ .affineAnims = gUnknown_08592608,
+ .callback = sub_80FFBF4,
+};
+
+const union AnimCmd gUnknown_08592640[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(4, 4),
+ ANIMCMD_FRAME(8, 4),
+ ANIMCMD_FRAME(12, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592654[] =
+{
+ gUnknown_08592640,
+};
+
+const struct SpriteTemplate gUnknown_08592658 =
+{
+ .tileTag = ANIM_TAG_GREEN_SPARKLE,
+ .paletteTag = ANIM_TAG_GREEN_SPARKLE,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592654,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80FFC70,
+};
+
+const struct SpriteTemplate gUnknown_08592670 =
+{
+ .tileTag = ANIM_TAG_ITEM_BAG,
+ .paletteTag = ANIM_TAG_ITEM_BAG,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085925AC,
+ .images = NULL,
+ .affineAnims = gUnknown_08592608,
+ .callback = sub_80FFCB4,
+};
+
+const union AffineAnimCmd gUnknown_08592688[] = {
+ AFFINEANIMCMD_FRAME(0, 0, 0, 3),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08592698[] = {
+ AFFINEANIMCMD_FRAME(0, -10, 0, 3),
+ AFFINEANIMCMD_FRAME(0, -6, 0, 3),
+ AFFINEANIMCMD_FRAME(0, -2, 0, 3),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 3),
+ AFFINEANIMCMD_FRAME(0, 2, 0, 3),
+ AFFINEANIMCMD_FRAME(0, 6, 0, 3),
+ AFFINEANIMCMD_FRAME(0, 10, 0, 3),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085926D8[] = {
+ gUnknown_08592688,
+ gUnknown_08592698,
+ gUnknown_085925B0,
+ gUnknown_085925D0,
+};
+
+const struct SpriteTemplate gUnknown_085926E8 =
+{
+ .tileTag = ANIM_TAG_ITEM_BAG,
+ .paletteTag = ANIM_TAG_ITEM_BAG,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085925AC,
+ .images = NULL,
+ .affineAnims = gUnknown_085926D8,
+ .callback = sub_80FFDBC,
+};
+
+const s8 gUnknown_08592700[][3] =
+{
+ {5, 24, 1},
+ {0, 4, 0},
+ {8, 16, -1},
+ {0, 2, 0},
+ {8, 16, 1},
+ {0, 2, 0},
+ {8, 16, 1},
+ {0, 2, 0},
+ {8, 16, 1},
+ {0, 16, 0},
+ {0, 0, 127},
+};
+
+const union AnimCmd gUnknown_08592724[] =
+{
+ ANIMCMD_FRAME(28, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859272C[] =
+{
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592734[] =
+{
+ ANIMCMD_FRAME(20, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859273C[] =
+{
+ ANIMCMD_FRAME(28, 1, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592744[] =
+{
+ ANIMCMD_FRAME(16, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859274C[] =
+{
+ ANIMCMD_FRAME(16, 1, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592754[] =
+{
+ ANIMCMD_FRAME(28, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859275C[] =
+{
+ gUnknown_08592724,
+ gUnknown_0859272C,
+ gUnknown_08592734,
+ gUnknown_0859273C,
+ gUnknown_08592744,
+ gUnknown_0859274C,
+ gUnknown_08592754,
+};
+
+const struct SpriteTemplate gUnknown_08592778 =
+{
+ .tileTag = ANIM_TAG_LEAF,
+ .paletteTag = ANIM_TAG_LEAF,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_0859275C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+const union AffineAnimCmd gUnknown_08592790[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(0, 0, 4, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_085927A8[] = {
+ gUnknown_08592790,
+};
+
+const struct SpriteTemplate gUnknown_085927AC =
+{
+ .tileTag = ANIM_TAG_FLOWER,
+ .paletteTag = ANIM_TAG_FLOWER,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08592318,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100640,
+};
+
+const struct SpriteTemplate gUnknown_085927C4 =
+{
+ .tileTag = ANIM_TAG_FLOWER,
+ .paletteTag = ANIM_TAG_FLOWER,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_08592314,
+ .images = NULL,
+ .affineAnims = gUnknown_085927A8,
+ .callback = sub_8100640,
+};
+
+const union AffineAnimCmd gUnknown_085927DC[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_FRAME(0, 0, -10, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd gUnknown_085927F4[] = {
+ AFFINEANIMCMD_FRAME(192, 192, 0, 0),
+ AFFINEANIMCMD_FRAME(0, 0, -12, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd gUnknown_0859280C[] = {
+ AFFINEANIMCMD_FRAME(143, 143, 0, 0),
+ AFFINEANIMCMD_FRAME(0, 0, -15, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08592824[] = {
+ gUnknown_085927DC,
+};
+
+const union AffineAnimCmd *const gUnknown_08592828[] = {
+ gUnknown_085927F4,
+};
+
+const union AffineAnimCmd *const gUnknown_0859282C[] = {
+ gUnknown_0859280C,
+};
+
+const struct SpriteTemplate gUnknown_08592830 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_6,
+ .paletteTag = ANIM_TAG_SPARKLE_6,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08592824,
+ .callback = sub_8100640,
+};
+
+const struct SpriteTemplate gUnknown_08592848 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_6,
+ .paletteTag = ANIM_TAG_SPARKLE_6,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08592828,
+ .callback = sub_8100640,
+};
+
+const struct SpriteTemplate gUnknown_08592860 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_6,
+ .paletteTag = ANIM_TAG_SPARKLE_6,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859282C,
+ .callback = sub_8100640,
+};
+
+// sMagicalLeafBlendColors
+const u16 gUnknown_08592878[] =
+{
+ RGB(31, 0, 0),
+ RGB(31, 19, 0),
+ RGB(31, 31, 0),
+ RGB(0, 31, 0),
+ RGB(5, 14, 31),
+ RGB(22, 10, 31),
+ RGB(22, 21, 31),
+};
+
+const struct SpriteTemplate gUnknown_08592888 =
+{
+ .tileTag = ANIM_TAG_GREEN_SPIKE,
+ .paletteTag = ANIM_TAG_GREEN_SPIKE,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100898,
+};
+
+const union AnimCmd gUnknown_085928A0[] =
+{
+ ANIMCMD_FRAME(64, 3),
+ ANIMCMD_FRAME(80, 3),
+ ANIMCMD_FRAME(96, 3),
+ ANIMCMD_FRAME(112, 6),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085928B4[] =
+{
+ ANIMCMD_FRAME(64, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(80, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(96, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(112, 6, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085928C8[] =
+{
+ gUnknown_085928A0,
+ gUnknown_085928B4,
+};
+
+const struct SpriteTemplate gUnknown_085928D0 =
+{
+ .tileTag = ANIM_TAG_SLAM_HIT,
+ .paletteTag = ANIM_TAG_SLAM_HIT,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085928C8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100A50,
+};
+
+const struct SpriteTemplate gUnknown_085928E8 =
+{
+ .tileTag = ANIM_TAG_WHIP_HIT,
+ .paletteTag = ANIM_TAG_WHIP_HIT,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085928C8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100A50,
+};
+
+const union AnimCmd gUnknown_08592900[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592918[] =
+{
+ gUnknown_08592900,
+};
+
+const struct SpriteTemplate gUnknown_0859291C =
+{
+ .tileTag = ANIM_TAG_UNUSED_HIT,
+ .paletteTag = ANIM_TAG_UNUSED_HIT,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592918,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81009F8,
+};
+
+const struct SpriteTemplate gUnknown_08592934 =
+{
+ .tileTag = ANIM_TAG_UNUSED_HIT_2,
+ .paletteTag = ANIM_TAG_UNUSED_HIT_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592918,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81009F8,
+};
+
+const union AffineAnimCmd gUnknown_0859294C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859295C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 32, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859296C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 64, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859297C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, 96, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859298C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, -128, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859299C[] = {
+ AFFINEANIMCMD_FRAME(256, 256, -96, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085929AC[] = {
+ AFFINEANIMCMD_FRAME(256, 256, -64, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085929BC[] = {
+ AFFINEANIMCMD_FRAME(256, 256, -32, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085929CC[] = {
+ gUnknown_0859294C,
+ gUnknown_0859295C,
+ gUnknown_0859296C,
+ gUnknown_0859297C,
+ gUnknown_0859298C,
+ gUnknown_0859299C,
+ gUnknown_085929AC,
+ gUnknown_085929BC,
+};
+
+const struct SpriteTemplate gUnknown_085929EC =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085929CC,
+ .callback = sub_8100A94,
+};
+
+const union AnimCmd gUnknown_08592A04[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592A18[] =
+{
+ gUnknown_08592A04,
+};
+
+const struct SpriteTemplate gCuttingSliceSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_CUT,
+ .paletteTag = ANIM_TAG_CUT,
+ .oam = &gUnknown_08524A34,
+ .anims = gUnknown_08592A18,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100AE0,
+};
+
+const struct SpriteTemplate gUnknown_08592A34 =
+{
+ .tileTag = ANIM_TAG_CUT,
+ .paletteTag = ANIM_TAG_CUT,
+ .oam = &gUnknown_08524A34,
+ .anims = gUnknown_08592A18,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100B88,
+};
+
+const union AnimCmd gUnknown_08592A4C[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A54[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A5C[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A64[] =
+{
+ ANIMCMD_FRAME(12, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A6C[] =
+{
+ ANIMCMD_FRAME(16, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A74[] =
+{
+ ANIMCMD_FRAME(20, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A7C[] =
+{
+ ANIMCMD_FRAME(0, 1, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A84[] =
+{
+ ANIMCMD_FRAME(4, 1, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A8C[] =
+{
+ ANIMCMD_FRAME(8, 1, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592A94[] =
+{
+ ANIMCMD_FRAME(12, 1, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592A9C[] =
+{
+ gUnknown_08592A4C,
+ gUnknown_08592A54,
+ gUnknown_08592A5C,
+ gUnknown_08592A64,
+ gUnknown_08592A6C,
+ gUnknown_08592A74,
+ gUnknown_08592A7C,
+ gUnknown_08592A84,
+ gUnknown_08592A8C,
+ gUnknown_08592A94,
+};
+
+const struct SpriteTemplate gUnknown_08592AC4 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592A9C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100E1C,
+};
+
+const struct SpriteTemplate gUnknown_08592ADC =
+{
+ .tileTag = ANIM_TAG_PROTECT,
+ .paletteTag = ANIM_TAG_PROTECT,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8100EF0,
+};
+
+const union AffineAnimCmd gUnknown_08592AF4[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08592B04[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 12),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 6),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -2, 24),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 6),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 12),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08592B34[] =
+{
+ gUnknown_08592AF4,
+ gUnknown_08592B04,
+};
+
+const struct SpriteTemplate gUnknown_08592B3C =
+{
+ .tileTag = ANIM_TAG_MILK_BOTTLE,
+ .paletteTag = ANIM_TAG_MILK_BOTTLE,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08592B34,
+ .callback = sub_81010CC,
+};
+
+const union AnimCmd gUnknown_08592B54[] =
+{
+ ANIMCMD_FRAME(0, 7),
+ ANIMCMD_FRAME(16, 7),
+ ANIMCMD_FRAME(32, 7),
+ ANIMCMD_FRAME(48, 7),
+ ANIMCMD_FRAME(64, 7),
+ ANIMCMD_FRAME(80, 7),
+ ANIMCMD_FRAME(96, 7),
+ ANIMCMD_FRAME(112, 7),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08592B78[] =
+{
+ gUnknown_08592B54,
+};
+
+const struct SpriteTemplate gUnknown_08592B7C =
+{
+ .tileTag = ANIM_TAG_SPARKLE_2,
+ .paletteTag = ANIM_TAG_SPARKLE_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592B78,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810130C,
+};
+
+const struct SpriteTemplate gUnknown_08592B94 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_2,
+ .paletteTag = ANIM_TAG_SPARKLE_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592B78,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810135C,
+};
+
+const union AnimCmd gUnknown_08592BAC[] =
+{
+ ANIMCMD_FRAME(0, 10),
+ ANIMCMD_FRAME(4, 10),
+ ANIMCMD_FRAME(8, 10),
+ ANIMCMD_FRAME(12, 10),
+ ANIMCMD_FRAME(16, 26),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(20, 5),
+ ANIMCMD_FRAME(24, 15),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592BD0[] =
+{
+ ANIMCMD_FRAME(0, 10, .hFlip = TRUE),
+ ANIMCMD_FRAME(4, 10, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 10, .hFlip = TRUE),
+ ANIMCMD_FRAME(12, 10, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 26, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(20, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(24, 15, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592BF4[] =
+{
+ gUnknown_08592BAC,
+ gUnknown_08592BD0,
+};
+
+const struct SpriteTemplate gUnknown_08592BFC =
+{
+ .tileTag = ANIM_TAG_UNUSED_BUBBLE_BURST,
+ .paletteTag = ANIM_TAG_UNUSED_BUBBLE_BURST,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592BF4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101440,
+};
+
+const union AnimCmd gUnknown_08592C14[] =
+{
+ ANIMCMD_FRAME(0, 40),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592C1C[] =
+{
+ gUnknown_08592C14,
+};
+
+const union AffineAnimCmd gUnknown_08592C20[] =
+{
+ AFFINEANIMCMD_FRAME(0x14, 0x14, -30, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 1, 24),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08592C20_2[] =
+{
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 1, 24),
+ AFFINEANIMCMD_LOOP(10),
+};
+
+const union AffineAnimCmd gUnknown_08592C50[] =
+{
+ AFFINEANIMCMD_FRAME(0x14, 0x14, 30, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, -1, 24),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08592C50_2[] =
+{
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -1, 24),
+ AFFINEANIMCMD_LOOP(10),
+};
+
+const union AffineAnimCmd *const gUnknown_08592C80[] =
+{
+ gUnknown_08592C20,
+ gUnknown_08592C50,
+};
+
+const struct SpriteTemplate gUnknown_08592C88 =
+{
+ .tileTag = ANIM_TAG_LETTER_Z,
+ .paletteTag = ANIM_TAG_LETTER_Z,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_08592C1C,
+ .images = NULL,
+ .affineAnims = gUnknown_08592C80,
+ .callback = sub_81014F4,
+};
+
+const struct SpriteTemplate gUnknown_08592CA0 =
+{
+ .tileTag = ANIM_TAG_LOCK_ON,
+ .paletteTag = ANIM_TAG_LOCK_ON,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81015AC,
+};
+
+const struct SpriteTemplate gUnknown_08592CB8 =
+{
+ .tileTag = ANIM_TAG_LOCK_ON,
+ .paletteTag = ANIM_TAG_LOCK_ON,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101898,
+};
+
+const s8 gUnknown_08592CD0[][2] =
+{
+ { 64, 64},
+ { 0, -64},
+ {-64, 64},
+ { 32, -32},
+};
+
+const struct SpriteTemplate gUnknown_08592CD8 =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101940,
+};
+
+const struct SpriteTemplate gUnknown_08592CF0 =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101B90,
+};
+
+const union AnimCmd gUnknown_08592D08[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592D1C[] =
+{
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592D24[] =
+{
+ gUnknown_08592D08,
+ gUnknown_08592D1C,
+};
+
+const struct SpriteTemplate gUnknown_08592D2C =
+{
+ .tileTag = ANIM_TAG_SLASH,
+ .paletteTag = ANIM_TAG_SLASH,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592D24,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101F40,
+};
+
+const struct SpriteTemplate gUnknown_08592D44 =
+{
+ .tileTag = ANIM_TAG_SLASH_2,
+ .paletteTag = ANIM_TAG_SLASH_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592D24,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101FA8,
+};
+
+const struct SpriteTemplate gUnknown_08592D5C =
+{
+ .tileTag = ANIM_TAG_SLASH_2,
+ .paletteTag = ANIM_TAG_SLASH_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592D24,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101FF0,
+};
+
+const union AnimCmd gUnknown_08592D74[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(8, 12),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(24, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592D88[] =
+{
+ gUnknown_08592D74,
+};
+
+const struct SpriteTemplate gUnknown_08592D8C =
+{
+ .tileTag = ANIM_TAG_FOCUS_ENERGY,
+ .paletteTag = ANIM_TAG_FOCUS_ENERGY,
+ .oam = &gUnknown_08524954,
+ .anims = gUnknown_08592D88,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81020D8,
+};
+
+const union AnimCmd gUnknown_08592DA4[] =
+{
+ ANIMCMD_FRAME(0, 18),
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 18),
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 18),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 18),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_FRAME(64, 18),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_FRAME(64, 54),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592DE0[] =
+{
+ gUnknown_08592DA4,
+};
+
+const struct SpriteTemplate gUnknown_08592DE4 =
+{
+ .tileTag = ANIM_TAG_SPHERE_TO_CUBE,
+ .paletteTag = ANIM_TAG_SPHERE_TO_CUBE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592DE0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810217C,
+};
+
+const struct SpriteTemplate gUnknown_08592DFC =
+{
+ .tileTag = ANIM_TAG_BLACK_BALL,
+ .paletteTag = ANIM_TAG_BLACK_BALL,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const union AnimCmd gUnknown_08592E14[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(64, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592E2C[] =
+{
+ gUnknown_08592E14,
+};
+
+const struct SpriteTemplate gUnknown_08592E30 =
+{
+ .tileTag = ANIM_TAG_GRAY_SMOKE,
+ .paletteTag = ANIM_TAG_GRAY_SMOKE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592E2C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A77C8,
+};
+
+const union AnimCmd gUnknown_08592E48[] =
+{
+ ANIMCMD_FRAME(3, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592E5C[] =
+{
+ gUnknown_08592E48,
+};
+
+const union AffineAnimCmd gUnknown_08592E60[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08592E70[] =
+{
+ gUnknown_08592E60,
+};
+
+const struct SpriteTemplate gUnknown_08592E74 =
+{
+ .tileTag = ANIM_TAG_CONVERSION,
+ .paletteTag = ANIM_TAG_CONVERSION,
+ .oam = &gUnknown_08524AE4,
+ .anims = gUnknown_08592E5C,
+ .images = NULL,
+ .affineAnims = gUnknown_08592E70,
+ .callback = sub_8102268,
+};
+
+const union AnimCmd gUnknown_08592E8C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(3, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592EA0[] =
+{
+ gUnknown_08592E8C,
+};
+
+const struct SpriteTemplate gUnknown_08592EA4 =
+{
+ .tileTag = ANIM_TAG_CONVERSION,
+ .paletteTag = ANIM_TAG_CONVERSION,
+ .oam = &gUnknown_08524AE4,
+ .anims = gUnknown_08592EA0,
+ .images = NULL,
+ .affineAnims = gUnknown_08592E70,
+ .callback = sub_810234C,
+};
+
+const struct SpriteTemplate gUnknown_08592EBC =
+{
+ .tileTag = ANIM_TAG_MOON,
+ .paletteTag = ANIM_TAG_MOON,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81024E0,
+};
+
+const union AnimCmd gUnknown_08592ED4[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(4, 8),
+ ANIMCMD_FRAME(8, 8),
+ ANIMCMD_FRAME(12, 8),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08592EE8[] =
+{
+ gUnknown_08592ED4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8592EEC =
+{
+ .tileTag = ANIM_TAG_GREEN_SPARKLE,
+ .paletteTag = ANIM_TAG_GREEN_SPARKLE,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08592EE8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8102540,
+};
+
+const union AnimCmd gUnknown_08592F04[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_FRAME(80, 3),
+ ANIMCMD_FRAME(96, 2),
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592F28[] =
+{
+ gUnknown_08592F04,
+};
+
+const struct SpriteTemplate gUnknown_08592F2C =
+{
+ .tileTag = ANIM_TAG_BLUE_STAR,
+ .paletteTag = ANIM_TAG_BLUE_STAR,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592F28,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A77C8,
+};
+
+const struct SpriteTemplate gUnknown_08592F44 =
+{
+ .tileTag = ANIM_TAG_HORN_HIT,
+ .paletteTag = ANIM_TAG_HORN_HIT,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8102844,
+};
+
+const union AnimCmd gUnknown_08592F5C[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(48, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592F70[] =
+{
+ gUnknown_08592F5C,
+};
+
+const struct SpriteTemplate gUnknown_08592F74 =
+{
+ .tileTag = ANIM_TAG_FANG_ATTACK,
+ .paletteTag = ANIM_TAG_FANG_ATTACK,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08592F70,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8102BCC,
+};
+
+const union AnimCmd gUnknown_08592F8C[] =
+{
+ ANIMCMD_FRAME(0, 10),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592F94[] =
+{
+ ANIMCMD_FRAME(4, 10),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592F9C[] =
+{
+ ANIMCMD_FRAME(8, 41),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592FA4[] =
+{
+ ANIMCMD_FRAME(12, 10),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592FAC[] =
+{
+ ANIMCMD_FRAME(16, 10),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592FB4[] =
+{
+ ANIMCMD_FRAME(20, 10),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592FBC[] =
+{
+ ANIMCMD_FRAME(0, 10, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08592FC4[] =
+{
+ ANIMCMD_FRAME(4, 10, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08592FCC[] =
+{
+ gUnknown_08592F8C,
+ gUnknown_08592F94,
+ gUnknown_08592F9C,
+ gUnknown_08592FA4,
+ gUnknown_08592FAC,
+ gUnknown_08592FB4,
+ gUnknown_08592FBC,
+ gUnknown_08592FC4,
+};
+
+const union AffineAnimCmd gUnknown_08592FEC[] =
+{
+ AFFINEANIMCMD_FRAME(0xC, 0xC, 0, 16),
+ AFFINEANIMCMD_FRAME(0xFFF4, 0xFFF4, 0, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08593004[] =
+{
+ gUnknown_08592FEC,
+};
+
+const struct SpriteTemplate gUnknown_08593008 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08592FCC,
+ .images = NULL,
+ .affineAnims = gUnknown_08593004,
+ .callback = sub_8102CD4,
+};
+
+const u16 gUnknown_08593020[][6] =
+{
+ {10072, RGB(31, 31, 31), RGB(31, 26, 28), RGB(31, 22, 26), RGB(31, 17, 24), RGB(31, 13, 22)},
+ {10097, RGB(31, 31, 31), RGB(25, 31, 26), RGB(20, 31, 21), RGB(15, 31, 16), RGB(10, 31, 12)},
+ {10185, RGB(31, 31, 31), RGB(31, 31, 24), RGB(31, 31, 17), RGB(31, 31, 10), RGB(31, 31, 3)},
+ {10175, RGB(31, 31, 31), RGB(26, 28, 31), RGB(21, 26, 31), RGB(16, 24, 31), RGB(12, 22, 31)},
+};
+
+const struct SpriteTemplate gUnknown_08593050 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08592FCC,
+ .images = NULL,
+ .affineAnims = gUnknown_08593004,
+ .callback = sub_8102EB0,
+};
+
+const struct SpriteTemplate gUnknown_08593068 =
+{
+ .tileTag = ANIM_TAG_PURPLE_HAND_OUTLINE,
+ .paletteTag = ANIM_TAG_PURPLE_HAND_OUTLINE,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8102FB8,
+};
+
+const union AffineAnimCmd gUnknown_08593080[] =
+{
+ AFFINEANIMCMD_FRAME(0xA0, 0xA0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08593098[] =
+{
+ gUnknown_08593080,
+};
+
+const struct SpriteTemplate gUnknown_0859309C =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08592FCC,
+ .images = NULL,
+ .affineAnims = gUnknown_08593098,
+ .callback = sub_8103028,
+};
+
+const union AnimCmd gUnknown_085930B4[] =
+{
+ ANIMCMD_FRAME(0, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 2, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085930C8[] =
+{
+ ANIMCMD_FRAME(48, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 2, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 2, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085930DC[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(48, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085930F0[] =
+{
+ ANIMCMD_FRAME(48, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593104[] =
+{
+ gUnknown_085930B4,
+ gUnknown_085930DC,
+ gUnknown_085930C8,
+ gUnknown_085930F0,
+};
+
+const struct SpriteTemplate gUnknown_08593114 =
+{
+ .tileTag = ANIM_TAG_THOUGHT_BUBBLE,
+ .paletteTag = ANIM_TAG_THOUGHT_BUBBLE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593104,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103164,
+};
+
+const union AffineAnimCmd gUnknown_0859312C[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x1E, 0x1E, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593144[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 4, 11),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -4, 11),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_FRAME(0xFFE2, 0xFFE2, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593144_2[] =
+{
+ AFFINEANIMCMD_FRAME(16, 16, 0, 0),
+ AFFINEANIMCMD_FRAME(30, 30, 0, 8),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 16),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0, 0, 4, 11),
+ AFFINEANIMCMD_FRAME(0, 0, -4, 11),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_FRAME(-30, -30, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085931B4[] =
+{
+ gUnknown_0859312C,
+ gUnknown_08593144,
+};
+
+const struct SpriteTemplate gUnknown_085931BC =
+{
+ .tileTag = ANIM_TAG_FINGER,
+ .paletteTag = ANIM_TAG_FINGER,
+ .oam = &gUnknown_085249D4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085931B4,
+ .callback = sub_8103208,
+};
+
+const struct SpriteTemplate gUnknown_085931D4 =
+{
+ .tileTag = ANIM_TAG_FINGER,
+ .paletteTag = ANIM_TAG_FINGER,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085931B4,
+ .callback = sub_8103284,
+};
+
+const union AnimCmd gUnknown_085931EC[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085931F4[] =
+{
+ ANIMCMD_FRAME(0, 1, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085931FC[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859321C[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859323C[] =
+{
+ gUnknown_085931EC,
+ gUnknown_085931F4,
+ gUnknown_085931FC,
+ gUnknown_0859321C,
+};
+
+const struct SpriteTemplate gUnknown_0859324C =
+{
+ .tileTag = ANIM_TAG_FINGER_2,
+ .paletteTag = ANIM_TAG_FINGER_2,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_0859323C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103390,
+};
diff --git a/src/effects_2.c b/src/effects_2.c
new file mode 100644
index 000000000..82336be5c
--- /dev/null
+++ b/src/effects_2.c
@@ -0,0 +1,1197 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_8103448(struct Sprite *);
+extern void sub_8103498(struct Sprite *);
+extern void sub_810358C(struct Sprite *);
+extern void sub_8103620(struct Sprite *);
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_81037D8(struct Sprite *);
+extern void sub_810387C(struct Sprite *);
+extern void sub_81038C8(struct Sprite *);
+extern void sub_8103AA4(struct Sprite *);
+extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
+extern void sub_8108C94(struct Sprite *);
+extern void sub_80A78AC(struct Sprite *);
+extern void sub_8103FE8(struct Sprite *);
+extern void sub_8104088(struct Sprite *);
+extern void sub_810413C(struct Sprite *);
+extern void sub_81041C4(struct Sprite *);
+extern void sub_8104304(struct Sprite *);
+extern void sub_8104364(struct Sprite *);
+extern void sub_8104414(struct Sprite *);
+extern void sub_8104B1C(struct Sprite *);
+extern void sub_8104BAC(struct Sprite *);
+extern void sub_810501C(struct Sprite *);
+extern void sub_80A7938(struct Sprite *);
+extern void sub_8105538(struct Sprite *);
+extern void sub_81051C4(struct Sprite *);
+extern void sub_81052A4(struct Sprite *);
+extern void sub_81054E8(struct Sprite *);
+extern void sub_8105C48(struct Sprite *);
+extern void sub_8105DE8(struct Sprite *);
+extern void sub_8105E60(struct Sprite *);
+extern void sub_8106140(struct Sprite *);
+extern void sub_81061C4(struct Sprite *);
+extern void sub_810624C(struct Sprite *);
+extern void sub_810673C(struct Sprite *);
+extern void sub_8106878(struct Sprite *);
+extern void sub_8106944(struct Sprite *);
+extern void sub_81069B8(struct Sprite *);
+extern void sub_81069D0(struct Sprite *);
+extern void sub_8106AD0(struct Sprite *);
+extern void sub_8106B54(struct Sprite *);
+extern void sub_8106C80(struct Sprite *);
+extern void sub_8106CD0(struct Sprite *);
+extern void sub_8106E00(struct Sprite *);
+extern void sub_8106F60(struct Sprite *);
+extern void sub_8106F00(struct Sprite *);
+extern void sub_81070AC(struct Sprite *);
+
+const struct SpriteTemplate gUnknown_08593264 =
+{
+ .tileTag = ANIM_TAG_FINGER,
+ .paletteTag = ANIM_TAG_FINGER,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103448,
+};
+
+const union AnimCmd gUnknown_0859327C[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593284[] =
+{
+ gUnknown_0859327C,
+};
+
+const struct SpriteTemplate gUnknown_08593288 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103498,
+};
+
+const struct SpriteTemplate gUnknown_085932A0 =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810358C,
+};
+
+extern const union AffineAnimCmd *const gUnknown_08597060[];
+const struct SpriteTemplate gUnknown_085932B8 =
+{
+ .tileTag = ANIM_TAG_CLAMP,
+ .paletteTag = ANIM_TAG_CLAMP,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597060,
+ .callback = sub_8103620,
+};
+
+const union AnimCmd gUnknown_085932D0[] =
+{
+ ANIMCMD_FRAME(0, 9),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085932E4[] =
+{
+ gUnknown_085932D0,
+};
+
+const union AffineAnimCmd gUnknown_085932E8[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
+ AFFINEANIMCMD_FRAME(0x9, 0x9, 0, 18),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08593300[] =
+{
+ gUnknown_085932E8,
+};
+
+const struct SpriteTemplate gUnknown_08593304 =
+{
+ .tileTag = ANIM_TAG_UNUSED_EXPLOSION,
+ .paletteTag = ANIM_TAG_UNUSED_EXPLOSION,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085932E4,
+ .images = NULL,
+ .affineAnims = gUnknown_08593300,
+ .callback = sub_80A77C8,
+};
+
+const union AnimCmd gUnknown_0859331C[] =
+{
+ ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(24, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(40, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 3, .hFlip = TRUE),
+ ANIMCMD_LOOP(1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593340[] =
+{
+ gUnknown_0859331C,
+};
+
+const struct SpriteTemplate gUnknown_08593344 =
+{
+ .tileTag = ANIM_TAG_ALERT,
+ .paletteTag = ANIM_TAG_ALERT,
+ .oam = &gUnknown_08524934,
+ .anims = gUnknown_08593340,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81037D8,
+};
+
+const union AffineAnimCmd gUnknown_0859335C[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x14, 0x0, 0, 12),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 32),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859337C[] =
+{
+ gUnknown_0859335C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8593380 =
+{
+ .tileTag = ANIM_TAG_SWORD,
+ .paletteTag = ANIM_TAG_SWORD,
+ .oam = &gUnknown_08524ADC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859337C,
+ .callback = sub_810387C,
+};
+
+const struct SpriteTemplate gSonicBoomSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_AIR_WAVE,
+ .paletteTag = ANIM_TAG_AIR_WAVE,
+ .oam = &gUnknown_08524B14,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81038C8,
+};
+
+const struct SpriteTemplate gUnknown_085933B0 =
+{
+ .tileTag = ANIM_TAG_AIR_WAVE,
+ .paletteTag = ANIM_TAG_AIR_WAVE,
+ .oam = &gUnknown_08524A54,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103AA4,
+};
+
+const union AffineAnimCmd gUnknown_085933C8[] =
+{
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
+ AFFINEANIMCMD_FRAME(0x7, 0x7, 0, -56),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085933E0[] =
+{
+ AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
+ AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
+ AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
+ AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08593420[] =
+{
+ gUnknown_085933C8,
+};
+
+const union AffineAnimCmd *const gUnknown_08593424[] =
+{
+ gUnknown_085933E0,
+};
+
+const struct SpriteTemplate gSupersonicWaveSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_GOLD_RING,
+ .paletteTag = ANIM_TAG_GOLD_RING,
+ .oam = &gUnknown_08524A14,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593420,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const struct SpriteTemplate gScreechWaveSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_PURPLE_RING,
+ .paletteTag = ANIM_TAG_PURPLE_RING,
+ .oam = &gUnknown_08524A14,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593420,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const struct SpriteTemplate gUnknown_08593458 =
+{
+ .tileTag = ANIM_TAG_METAL_SOUND_WAVES,
+ .paletteTag = ANIM_TAG_METAL_SOUND_WAVES,
+ .oam = &gUnknown_08524A1C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593420,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const struct SpriteTemplate gUnknown_08593470 =
+{
+ .tileTag = ANIM_TAG_BLUE_RING_2,
+ .paletteTag = ANIM_TAG_BLUE_RING_2,
+ .oam = &gUnknown_08524A14,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593424,
+ .callback = sub_8108C94,
+};
+
+const struct SpriteTemplate gUnknown_08593488 =
+{
+ .tileTag = ANIM_TAG_LARGE_FRESH_EGG,
+ .paletteTag = ANIM_TAG_LARGE_FRESH_EGG,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A78AC,
+};
+
+const struct SpriteTemplate gUnknown_085934A0 =
+{
+ .tileTag = ANIM_TAG_UNUSED_VOID_LINES,
+ .paletteTag = ANIM_TAG_UNUSED_VOID_LINES,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8103FE8,
+};
+
+const union AnimCmd gUnknown_085934B8[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085934C0[] =
+{
+ gUnknown_085934B8,
+};
+
+const union AffineAnimCmd gUnknown_085934C4[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_085934D4[] =
+{
+ gUnknown_085934C4,
+};
+
+const struct SpriteTemplate gUnknown_085934D8 =
+{
+ .tileTag = ANIM_TAG_COIN,
+ .paletteTag = ANIM_TAG_COIN,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_085934C0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8104088,
+};
+
+const struct SpriteTemplate gUnknown_085934F0 =
+{
+ .tileTag = ANIM_TAG_COIN,
+ .paletteTag = ANIM_TAG_COIN,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_085934C0,
+ .images = NULL,
+ .affineAnims = gUnknown_085934D4,
+ .callback = sub_810413C,
+};
+
+const union AffineAnimCmd gUnknown_08593508[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08593518[] =
+{
+ gUnknown_08593508,
+};
+
+const struct SpriteTemplate gUnknown_0859351C =
+{
+ .tileTag = ANIM_TAG_SEED,
+ .paletteTag = ANIM_TAG_SEED,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593518,
+ .callback = sub_81041C4,
+};
+
+const union AffineAnimCmd gUnknown_08593534[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x0, 0, 40),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859354C[] =
+{
+ gUnknown_08593534,
+};
+
+const struct SpriteTemplate gUnknown_08593550 =
+{
+ .tileTag = ANIM_TAG_GUST,
+ .paletteTag = ANIM_TAG_GUST,
+ .oam = &gUnknown_085249BC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859354C,
+ .callback = sub_8104304,
+};
+
+const union AnimCmd gUnknown_08593568[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 20),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08593578[] =
+{
+ ANIMCMD_FRAME(0, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 20, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593588[] =
+{
+ gUnknown_08593568,
+ gUnknown_08593578,
+};
+
+const struct SpriteTemplate gUnknown_08593590 =
+{
+ .tileTag = ANIM_TAG_CUT,
+ .paletteTag = ANIM_TAG_CUT,
+ .oam = &gUnknown_08524A34,
+ .anims = gUnknown_08593588,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8104364,
+};
+
+const union AnimCmd gUnknown_085935A8[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085935B8[] =
+{
+ ANIMCMD_FRAME(0, 2, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 2, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 1, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085935C8[] =
+{
+ gUnknown_085935A8,
+ gUnknown_085935B8,
+};
+
+const struct SpriteTemplate gUnknown_085935D0 =
+{
+ .tileTag = ANIM_TAG_CUT,
+ .paletteTag = ANIM_TAG_CUT,
+ .oam = &gUnknown_08524A34,
+ .anims = gUnknown_085935C8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8104414,
+};
+
+const union AffineAnimCmd gUnknown_085935E8[] =
+{
+ AFFINEANIMCMD_FRAME(-6, 4, 0, 8),
+ AFFINEANIMCMD_FRAME(10, -10, 0, 8),
+ AFFINEANIMCMD_FRAME(-4, 6, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593608[] =
+{
+ AFFINEANIMCMD_FRAME(-4, -5, 0, 12),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 24),
+ AFFINEANIMCMD_FRAME(4, 5, 0, 12),
+ AFFINEANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08593628[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(4, 40, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(12, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859363C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(4, 40),
+ ANIMCMD_FRAME(8, 4),
+ ANIMCMD_FRAME(12, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593650[] =
+{
+ gUnknown_08593628,
+ gUnknown_0859363C,
+};
+
+const struct SpriteTemplate gUnknown_08593658 =
+{
+ .tileTag = ANIM_TAG_BREATH,
+ .paletteTag = ANIM_TAG_BREATH,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08593650,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8104B1C,
+};
+
+const union AffineAnimCmd gUnknown_08593670[] =
+{
+ AFFINEANIMCMD_FRAME(0xB, 0xB, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF5, 0xFFF5, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08593688[] =
+{
+ gUnknown_08593670,
+};
+
+const struct SpriteTemplate gUnknown_0859368C =
+{
+ .tileTag = ANIM_TAG_ANGER,
+ .paletteTag = ANIM_TAG_ANGER,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593688,
+ .callback = sub_8104BAC,
+};
+
+const union AffineAnimCmd gUnknown_085936A4[] =
+{
+ AFFINEANIMCMD_FRAME(-10, 9, 0, 7),
+ AFFINEANIMCMD_FRAME(20, -20, 0, 7),
+ AFFINEANIMCMD_FRAME(-20, 20, 0, 7),
+ AFFINEANIMCMD_FRAME(10, -9, 0, 7),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_END,
+};
+
+const struct SpriteTemplate gUnknown_085936D4 =
+{
+ .tileTag = ANIM_TAG_PENCIL,
+ .paletteTag = ANIM_TAG_PENCIL,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810501C,
+};
+
+const struct SpriteTemplate gUnknown_085936EC =
+{
+ .tileTag = ANIM_TAG_SNORE_Z,
+ .paletteTag = ANIM_TAG_SNORE_Z,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A7938,
+};
+
+const union AnimCmd gUnknown_08593704[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593718[] =
+{
+ gUnknown_08593704,
+};
+//*
+const struct SpriteTemplate gBattleAnimSpriteTemplate_859371C =
+{
+ .tileTag = ANIM_TAG_EXPLOSION,
+ .paletteTag = ANIM_TAG_EXPLOSION,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593718,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A77C8,
+};
+
+const union AffineAnimCmd gUnknown_08593734[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 2),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 4),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 2),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gUnknown_08593754[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593764[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFF8, 0x4, 0, 8),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0x10, 0xFFF8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0x8, 0, 8),
+ AFFINEANIMCMD_LOOP(1),
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 15),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085937A4[] =
+{
+ gUnknown_08593734,
+ gUnknown_08593754,
+ gUnknown_08593764,
+};
+//*
+const struct SpriteTemplate gUnknown_085937B0 =
+{
+ .tileTag = ANIM_TAG_BREAKING_EGG,
+ .paletteTag = ANIM_TAG_BREAKING_EGG,
+ .oam = &gUnknown_08524AF4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085937A4,
+ .callback = sub_8105538,
+};
+
+const union AffineAnimCmd gUnknown_085937C8[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 30),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd gUnknown_085937E0[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 15),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd gUnknown_085937F8[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0xB, 0xB, 0, 45),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08593810[] =
+{
+ gUnknown_085937C8,
+ gUnknown_085937E0,
+};
+
+const union AffineAnimCmd *const gUnknown_08593818[] =
+{
+ gUnknown_085937F8,
+};
+
+const struct SpriteTemplate gUnknown_0859381C =
+{
+ .tileTag = ANIM_TAG_THIN_RING,
+ .paletteTag = ANIM_TAG_THIN_RING,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593810,
+ .callback = sub_80A77C8,
+};
+//*
+const union AffineAnimCmd gUnknown_08593834[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 30),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd *const gUnknown_0859384C[] =
+{
+ gUnknown_08593834,
+};
+
+const struct SpriteTemplate gUnknown_08593850 =
+{
+ .tileTag = ANIM_TAG_THIN_RING,
+ .paletteTag = ANIM_TAG_THIN_RING,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859384C,
+ .callback = sub_80A77C8,
+};
+
+const struct SpriteTemplate gUnknown_08593868 =
+{
+ .tileTag = ANIM_TAG_THIN_RING,
+ .paletteTag = ANIM_TAG_THIN_RING,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593810,
+ .callback = sub_81051C4,
+};
+
+const struct SpriteTemplate gUnknown_08593880 =
+{
+ .tileTag = ANIM_TAG_THIN_RING,
+ .paletteTag = ANIM_TAG_THIN_RING,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593818,
+ .callback = sub_81052A4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8593898 =
+{
+ .tileTag = ANIM_TAG_THIN_RING,
+ .paletteTag = ANIM_TAG_THIN_RING,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593810,
+ .callback = sub_81054E8,
+};
+
+const union AffineAnimCmd gUnknown_085938B0[] =
+{
+ AFFINEANIMCMD_FRAME(96, -13, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085938C0[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(4, 3),
+ ANIMCMD_FRAME(8, 3),
+ ANIMCMD_FRAME(4, 3),
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085938D8[] =
+{
+ gUnknown_085938C0,
+};
+
+const struct SpriteTemplate gUnknown_085938DC =
+{
+ .tileTag = ANIM_TAG_SPEED_DUST,
+ .paletteTag = ANIM_TAG_SPEED_DUST,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_085938D8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8105C48,
+};
+
+const s8 gUnknown_085938F4[][2] =
+{
+ {30, 28},
+ {-20, 24},
+ {16, 26},
+ {-10, 28},
+};
+
+const union AnimCmd gUnknown_085938FC[] =
+{
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 15),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 15, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 6, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 15),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593934[] =
+{
+ gUnknown_085938FC,
+};
+
+const struct SpriteTemplate gUnknown_08593938 =
+{
+ .tileTag = ANIM_TAG_BELL,
+ .paletteTag = ANIM_TAG_BELL,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593934,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A77C8,
+};
+
+const u16 gUnknown_08593950[] =
+{
+ 10206,
+ 9999,
+ 9998,
+ 0,
+};
+
+const struct SpriteTemplate gUnknown_08593958 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES_2,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES_2,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8105DE8,
+};
+
+const struct SpriteTemplate gUnknown_08593970 =
+{
+ .tileTag = ANIM_TAG_MAGENTA_HEART,
+ .paletteTag = ANIM_TAG_MAGENTA_HEART,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8105E60,
+};
+
+const union AffineAnimCmd gUnknown_08593988[] =
+{
+ AFFINEANIMCMD_FRAME(0x000A, 0xFFF3, 0x00, 0x0A),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0x000D, 0x00, 0x0A),
+ AFFINEANIMCMD_END,
+};
+
+const struct SpriteTemplate gUnknown_085939A0 =
+{
+ .tileTag = ANIM_TAG_RED_HEART,
+ .paletteTag = ANIM_TAG_RED_HEART,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106140,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85939B8 =
+{
+ .tileTag = ANIM_TAG_RED_HEART,
+ .paletteTag = ANIM_TAG_RED_HEART,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81061C4,
+};
+
+const struct SpriteTemplate gUnknown_085939D0 =
+{
+ .tileTag = ANIM_TAG_RED_HEART,
+ .paletteTag = ANIM_TAG_RED_HEART,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810624C,
+};
+
+const union AffineAnimCmd gUnknown_085939E8[] =
+{
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08593A00[] =
+{
+ gUnknown_085939E8,
+};
+
+const struct SpriteTemplate gHiddenPowerOrbSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_RED_ORB,
+ .paletteTag = ANIM_TAG_RED_ORB,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593A00,
+ .callback = sub_810673C,
+};
+
+const struct SpriteTemplate gHiddenPowerOrbScatterSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_RED_ORB,
+ .paletteTag = ANIM_TAG_RED_ORB,
+ .oam = &gUnknown_085249CC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593A00,
+ .callback = sub_8106878,
+};
+
+const union AffineAnimCmd gUnknown_08593A34[] =
+{
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08593A4C[] =
+{
+ gUnknown_08593A34,
+};
+
+const struct SpriteTemplate gUnknown_08593A50 =
+{
+ .tileTag = ANIM_TAG_RED_ORB_2,
+ .paletteTag = ANIM_TAG_RED_ORB_2,
+ .oam = &gUnknown_085249C4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593A4C,
+ .callback = sub_8106944,
+};
+
+const union AnimCmd gUnknown_08593A68[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(4, 4),
+ ANIMCMD_FRAME(8, 4),
+ ANIMCMD_FRAME(4, 4),
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593A80[] =
+{
+ gUnknown_08593A68,
+};
+
+const struct SpriteTemplate gUnknown_08593A84 =
+{
+ .tileTag = ANIM_TAG_EYE_SPARKLE,
+ .paletteTag = ANIM_TAG_EYE_SPARKLE,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08593A80,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81069B8,
+};
+
+const union AnimCmd gUnknown_08593A9C[] =
+{
+ ANIMCMD_FRAME(0, 24),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593AA4[] =
+{
+ gUnknown_08593A9C,
+};
+
+const struct SpriteTemplate gUnknown_08593AA8 =
+{
+ .tileTag = ANIM_TAG_ANGEL,
+ .paletteTag = ANIM_TAG_ANGEL,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593AA4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81069D0,
+};
+
+const struct SpriteTemplate gUnknown_08593AC0 =
+{
+ .tileTag = ANIM_TAG_PINK_HEART,
+ .paletteTag = ANIM_TAG_PINK_HEART,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106AD0,
+};
+
+const union AnimCmd gUnknown_08593AD8[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08593AE0[] =
+{
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08593AE8[] =
+{
+ gUnknown_08593AD8,
+ gUnknown_08593AE0,
+};
+
+const struct SpriteTemplate gUnknown_08593AF0 =
+{
+ .tileTag = ANIM_TAG_DEVIL,
+ .paletteTag = ANIM_TAG_DEVIL,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593AE8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106B54,
+};
+
+const union AnimCmd gUnknown_08593B08[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08593B1C[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593B30[] =
+{
+ gUnknown_08593B08,
+ gUnknown_08593B1C,
+};
+
+const struct SpriteTemplate gUnknown_08593B38 =
+{
+ .tileTag = ANIM_TAG_SWIPE,
+ .paletteTag = ANIM_TAG_SWIPE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593B30,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106C80,
+};
+
+const union AnimCmd gUnknown_08593B50[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(16, 8),
+ ANIMCMD_FRAME(32, 8),
+ ANIMCMD_FRAME(16, 8),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08593B64[] =
+{
+ ANIMCMD_FRAME(16, 8, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 8, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 8, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08593B78[] =
+{
+ gUnknown_08593B50,
+ gUnknown_08593B64,
+};
+
+const struct SpriteTemplate gUnknown_08593B80 =
+{
+ .tileTag = ANIM_TAG_MOVEMENT_WAVES,
+ .paletteTag = ANIM_TAG_MOVEMENT_WAVES,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08593B78,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106CD0,
+};
+
+const union AffineAnimCmd gUnknown_08593B98[] =
+{
+ AFFINEANIMCMD_FRAME(-12, 8, 0, 4),
+ AFFINEANIMCMD_FRAME(20, -20, 0, 4),
+ AFFINEANIMCMD_FRAME(-8, 12, 0, 4),
+ AFFINEANIMCMD_END,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8593BB8 =
+{
+ .tileTag = ANIM_TAG_JAGGED_MUSIC_NOTE,
+ .paletteTag = ANIM_TAG_JAGGED_MUSIC_NOTE,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8106E00,
+};
+
+const union AffineAnimCmd gUnknown_08593BD0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 5),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593BE0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 16),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd gUnknown_08593BF0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 16),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08593C00[] =
+{
+ gUnknown_08593BD0,
+ gUnknown_08593BE0,
+ gUnknown_08593BF0,
+};
+
+extern const union AnimCmd *const gUnknown_08592FCC[];
+const struct SpriteTemplate gUnknown_08593C0C =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES_2,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES_2,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_08592FCC,
+ .images = NULL,
+ .affineAnims = gUnknown_08593C00,
+ .callback = sub_8106F60,
+};
+
+const struct SpriteTemplate gUnknown_08593C24 =
+{
+ .tileTag = ANIM_TAG_MUSIC_NOTES_2,
+ .paletteTag = ANIM_TAG_MUSIC_NOTES_2,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_08592FCC,
+ .images = NULL,
+ .affineAnims = gUnknown_08593C00,
+ .callback = sub_8106F00,
+};
+
+const union AffineAnimCmd gUnknown_08593C3C[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08593C4C[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08593C5C[] =
+{
+ gUnknown_08593C3C,
+ gUnknown_08593C4C,
+};
+
+const struct SpriteTemplate gUnknown_08593C64 =
+{
+ .tileTag = ANIM_TAG_GUARD_RING,
+ .paletteTag = ANIM_TAG_GUARD_RING,
+ .oam = &gUnknown_08524B1C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593C5C,
+ .callback = sub_81070AC,
+};
diff --git a/src/egg_hatch.c b/src/egg_hatch.c
index 9f2526295..eeae72f36 100644
--- a/src/egg_hatch.c
+++ b/src/egg_hatch.c
@@ -26,6 +26,11 @@
#include "constants/abilities.h"
#include "daycare.h"
#include "overworld.h"
+#include "scanline_effect.h"
+#include "field_weather.h"
+#include "international_string_util.h"
+#include "naming_screen.h"
+#include "field_screen.h"
#include "battle.h" // to get rid of later
struct EggHatchData
@@ -55,14 +60,7 @@ extern const u32 gUnknown_08331F60[]; // tilemap gameboy circle
extern const u8 gText_HatchedFromEgg[];
extern const u8 gText_NickHatchPrompt[];
-extern u8 sav1_map_get_name(void);
-extern void TVShowConvertInternationalString(u8* str1, u8* str2, u8);
-extern void FadeScreen(u8, u8);
-extern void overworld_free_bg_tilemaps(void);
-extern void sub_80AF168(void);
-extern void ScanlineEffect_Stop(void);
extern void play_some_sound(void);
-extern void DoNamingScreen(u8, const u8*, u16, u8, u32, MainCallback);
extern u16 sub_80D22D0(void);
extern u8 CountPartyAliveNonEggMonsExcept(u8);
@@ -254,7 +252,7 @@ static const struct BgTemplate sBgTemplates_EggHatch[2] =
static const struct WindowTemplate sWinTemplates_EggHatch[2] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@@ -267,7 +265,7 @@ static const struct WindowTemplate sWinTemplates_EggHatch[2] =
static const struct WindowTemplate sYesNoWinTemplate =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
diff --git a/src/electric.c b/src/electric.c
new file mode 100644
index 000000000..5d65915b2
--- /dev/null
+++ b/src/electric.c
@@ -0,0 +1,438 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_810A1A8(struct Sprite *);
+extern void sub_810A214(struct Sprite *);
+extern void sub_810A274(struct Sprite *);
+extern void sub_810A308(struct Sprite *);
+extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
+extern void sub_810A46C(struct Sprite *);
+extern void sub_810A5BC(struct Sprite *);
+extern void sub_810A628(struct Sprite *);
+extern void sub_810A75C(struct Sprite *);
+extern void sub_810A9DC(struct Sprite *);
+extern void sub_810AA2C(struct Sprite *);
+extern void sub_810ACD8(struct Sprite *);
+extern void sub_810AD30(struct Sprite *);
+extern void sub_810AD98(struct Sprite *);
+extern void sub_810B1F0(struct Sprite *);
+extern void sub_810B23C(struct Sprite *);
+extern void sub_810B51C(struct Sprite *);
+
+const union AnimCmd gUnknown_085956A4[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 8),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085956BC[] =
+{
+ gUnknown_085956A4,
+};
+
+const struct SpriteTemplate gUnknown_085956C0 =
+{
+ .tileTag = ANIM_TAG_LIGHTNING,
+ .paletteTag = ANIM_TAG_LIGHTNING,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085956BC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A1A8,
+};
+
+const union AffineAnimCmd gUnknown_085956D8[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -16, 60),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085956F8[] =
+{
+ gUnknown_085956D8,
+};
+
+const struct SpriteTemplate gUnknown_085956FC =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085956F8,
+ .callback = sub_810A214,
+};
+
+const union AnimCmd gUnknown_08595714[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_FRAME(80, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595730[] =
+{
+ gUnknown_08595714,
+};
+
+const struct SpriteTemplate gUnknown_08595734 =
+{
+ .tileTag = ANIM_TAG_SHOCK,
+ .paletteTag = ANIM_TAG_SHOCK,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595730,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A274,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_859574C =
+{
+ .tileTag = ANIM_TAG_SPARK_2,
+ .paletteTag = ANIM_TAG_SPARK_2,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A308,
+};
+
+const struct SpriteTemplate gUnknown_08595764 =
+{
+ .tileTag = ANIM_TAG_BLACK_BALL_2,
+ .paletteTag = ANIM_TAG_BLACK_BALL_2,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const union AffineAnimCmd gUnknown_0859577C[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_0859578C[] =
+{
+ gUnknown_0859577C,
+};
+
+const struct SpriteTemplate gUnknown_08595790 =
+{
+ .tileTag = ANIM_TAG_SPARK_2,
+ .paletteTag = ANIM_TAG_SPARK_2,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859578C,
+ .callback = sub_810A46C,
+};
+
+const union AnimCmd gUnknown_085957A8[] =
+{
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085957B8[] =
+{
+ gUnknown_085957A8,
+};
+
+const union AffineAnimCmd gUnknown_085957BC[] =
+{
+ AFFINEANIMCMD_FRAME(0xE8, 0xE8, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_085957DC[] =
+{
+ gUnknown_085957BC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85957E0 =
+{
+ .tileTag = ANIM_TAG_SHOCK_3,
+ .paletteTag = ANIM_TAG_SHOCK_3,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085957B8,
+ .images = NULL,
+ .affineAnims = gUnknown_085957DC,
+ .callback = sub_810A5BC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85957F8 =
+{
+ .tileTag = ANIM_TAG_SPARK_2,
+ .paletteTag = ANIM_TAG_SPARK_2,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859578C,
+ .callback = sub_810A628,
+};
+
+const struct SpriteTemplate gElectricitySpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SPARK_2,
+ .paletteTag = ANIM_TAG_SPARK_2,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A75C,
+};
+
+const struct SpriteTemplate gUnknown_08595828 =
+{
+ .tileTag = ANIM_TAG_SPARK,
+ .paletteTag = ANIM_TAG_SPARK,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810A9DC,
+};
+
+const struct SpriteTemplate gUnknown_08595840 =
+{
+ .tileTag = ANIM_TAG_SPARK_H,
+ .paletteTag = ANIM_TAG_SPARK_H,
+ .oam = &gUnknown_08524934,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810AA2C,
+};
+
+const s8 gUnknown_08595858[][2] =
+{
+ { 58, -60},
+ {-56, -36},
+ { 8, -56},
+ {-16, 56},
+ { 58, -10},
+ {-58, 10},
+ { 48, -18},
+ {-8, 56},
+ { 16, -56},
+ {-58, -42},
+ { 58, 30},
+ {-48, 40},
+ { 12, -48},
+ { 48, -12},
+ {-56, 18},
+ { 48, 48},
+};
+
+const union AnimCmd gUnknown_08595878[] =
+{
+ ANIMCMD_FRAME(3, 1),
+ ANIMCMD_FRAME(2, 1),
+ ANIMCMD_FRAME(1, 1),
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859588C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(3, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085958A0[] =
+{
+ gUnknown_08595878,
+ gUnknown_0859588C,
+};
+
+const struct SpriteTemplate gUnknown_085958A8 =
+{
+ .tileTag = ANIM_TAG_ELECTRIC_ORBS,
+ .paletteTag = ANIM_TAG_ELECTRIC_ORBS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_085958A0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+const union AffineAnimCmd gUnknown_085958C0[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 60),
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
+ AFFINEANIMCMD_LOOP(10),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595900[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
+ AFFINEANIMCMD_JUMP(3),
+};
+
+const union AffineAnimCmd gUnknown_08595930[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 30),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08595950[] =
+{
+ gUnknown_085958C0,
+ gUnknown_08595900,
+ gUnknown_08595930,
+};
+
+const struct SpriteTemplate gUnknown_0859595C =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595950,
+ .callback = sub_810ACD8,
+};
+
+const union AnimCmd gUnknown_08595974[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595988[] =
+{
+ gUnknown_08595974,
+};
+
+const struct SpriteTemplate gUnknown_0859598C =
+{
+ .tileTag = ANIM_TAG_ELECTRICITY,
+ .paletteTag = ANIM_TAG_ELECTRICITY,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595988,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810AD30,
+};
+
+const struct SpriteTemplate gUnknown_085959A4 =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595950,
+ .callback = sub_810AD98,
+};
+
+const union AnimCmd gUnknown_085959BC[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085959C4[] =
+{
+ ANIMCMD_FRAME(2, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085959CC[] =
+{
+ ANIMCMD_FRAME(4, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085959D4[] =
+{
+ ANIMCMD_FRAME(6, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085959DC[] =
+{
+ gUnknown_085959BC,
+ gUnknown_085959C4,
+ gUnknown_085959CC,
+ gUnknown_085959D4,
+};
+
+const union AffineAnimCmd gUnknown_085959EC[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 64, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085959FC[] =
+{
+ gUnknown_085959EC,
+};
+
+const struct SpriteTemplate gUnknown_08595A00 =
+{
+ .tileTag = ANIM_TAG_SPARK,
+ .paletteTag = ANIM_TAG_SPARK,
+ .oam = &gUnknown_08524A04,
+ .anims = gUnknown_085959DC,
+ .images = NULL,
+ .affineAnims = gUnknown_085959FC,
+ .callback = sub_810B1F0,
+};
+
+const struct SpriteTemplate gUnknown_08595A18 =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595950,
+ .callback = sub_810B23C,
+};
+
+const struct SpriteTemplate gUnknown_08595A30 =
+{
+ .tileTag = ANIM_TAG_SPARK,
+ .paletteTag = ANIM_TAG_SPARK,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810B51C,
+};
diff --git a/src/field_region_map.c b/src/field_region_map.c
index 7e8794cab..c15959afc 100644
--- a/src/field_region_map.c
+++ b/src/field_region_map.c
@@ -58,7 +58,7 @@ static const struct BgTemplate gUnknown_085E5068[] = {
static const struct WindowTemplate gUnknown_085E5070[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 17,
.tilemapTop = 17,
.width = 12,
@@ -67,7 +67,7 @@ static const struct WindowTemplate gUnknown_085E5070[] =
.baseBlock = 1
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 1,
.width = 7,
diff --git a/src/field_specials.c b/src/field_specials.c
index a3308f872..e2e069d28 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -1680,7 +1680,7 @@ void sub_8139980(void)
}
const struct WindowTemplate gUnknown_085B2BAC = {
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 1,
.width = 8,
@@ -3005,7 +3005,7 @@ void sub_813A8FC(void)
void sub_813A958(void)
{
static const struct WindowTemplate gUnknown_085B311C = {
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 6,
@@ -3058,7 +3058,7 @@ u16 sub_813AA04(void)
void sub_813AA18(void)
{
static const struct WindowTemplate gUnknown_085B3124 = {
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 9,
.width = 4,
@@ -3220,7 +3220,7 @@ void sub_813AC7C(void)
static void sub_813ACE8(u8 a0, u16 a1)
{
static const struct WindowTemplate gUnknown_085B3220 = {
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 7,
.width = 12,
diff --git a/src/fight.c b/src/fight.c
new file mode 100644
index 000000000..89fe5900b
--- /dev/null
+++ b/src/fight.c
@@ -0,0 +1,398 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void unc_080B08A0(struct Sprite *);
+extern void sub_810CE68(struct Sprite *);
+extern void sub_810CEB4(struct Sprite *);
+extern void sub_810CEE0(struct Sprite *);
+extern void sub_810CF30(struct Sprite *);
+extern void sub_810D10C(struct Sprite *);
+extern void sub_810D1B4(struct Sprite *);
+extern void sub_810D278(struct Sprite *);
+extern void sub_810D2E4(struct Sprite *);
+extern void sub_810D37C(struct Sprite *);
+extern void sub_810D40C(struct Sprite *);
+extern void sub_810D4F4(struct Sprite *);
+extern void sub_810D608(struct Sprite *);
+extern void sub_810D714(struct Sprite *);
+extern void sub_810D874(struct Sprite *);
+extern void sub_810D984(struct Sprite *);
+extern void sub_810DA10(struct Sprite *);
+extern void sub_810DA7C(struct Sprite *);
+
+const struct SpriteTemplate gUnknown_08595E14 =
+{
+ .tileTag = ANIM_TAG_HUMANOID_FOOT,
+ .paletteTag = ANIM_TAG_HUMANOID_FOOT,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = unc_080B08A0,
+};
+
+const union AnimCmd gUnknown_08595E2C[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595E34[] =
+{
+ ANIMCMD_FRAME(16, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595E3C[] =
+{
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595E44[] =
+{
+ ANIMCMD_FRAME(48, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595E4C[] =
+{
+ ANIMCMD_FRAME(48, 1, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595E54[] =
+{
+ gUnknown_08595E2C,
+};
+
+const union AnimCmd *const gUnknown_08595E58[] =
+{
+ gUnknown_08595E34,
+ gUnknown_08595E3C,
+};
+
+const union AnimCmd *const gUnknown_08595E60[] =
+{
+ gUnknown_08595E44,
+ gUnknown_08595E4C,
+};
+
+const struct SpriteTemplate gUnknown_08595E68 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810CE68,
+};
+
+const struct SpriteTemplate gUnknown_08595E80 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810CEB4,
+};
+
+const struct SpriteTemplate gFistFootSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810CEE0,
+};
+
+const struct SpriteTemplate gUnknown_08595EB0 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810CF30,
+};
+
+const struct SpriteTemplate gUnknown_08595EC8 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E60,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D10C,
+};
+
+const struct SpriteTemplate gUnknown_08595EE0 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E58,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D1B4,
+};
+
+const union AffineAnimCmd gUnknown_08595EF8[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 20, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08595F10[] =
+{
+ gUnknown_08595EF8,
+};
+
+const struct SpriteTemplate gUnknown_08595F14 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gUnknown_08595F10,
+ .callback = sub_810D278,
+};
+
+const union AffineAnimCmd gUnknown_08595F2C[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 20, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08595F44[] =
+{
+ gUnknown_08595F2C,
+};
+
+const struct SpriteTemplate gMegaPunchKickSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gUnknown_08595F44,
+ .callback = sub_810D278,
+};
+
+const struct SpriteTemplate gUnknown_08595F60 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E58,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D2E4,
+};
+
+const struct SpriteTemplate gUnknown_08595F78 =
+{
+ .tileTag = ANIM_TAG_DUCK,
+ .paletteTag = ANIM_TAG_DUCK,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D37C,
+};
+
+const struct SpriteTemplate gUnknown_08595F90 =
+{
+ .tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D40C,
+};
+
+const struct SpriteTemplate gUnknown_08595FA8 =
+{
+ .tileTag = ANIM_TAG_TORN_METAL,
+ .paletteTag = ANIM_TAG_TORN_METAL,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D4F4,
+};
+
+const union AffineAnimCmd gUnknown_08595FC0[] =
+{
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 64),
+ AFFINEANIMCMD_FRAME(0xFFFA, 0xFFFA, 0, 8),
+ AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 8),
+ AFFINEANIMCMD_JUMP(2),
+};
+
+const union AffineAnimCmd *const gUnknown_08595FE8[] =
+{
+ gUnknown_08595FC0,
+};
+
+const struct SpriteTemplate gUnknown_08595FEC =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595FE8,
+ .callback = sub_810D608,
+};
+
+const struct SpriteTemplate gUnknown_08596004 =
+{
+ .tileTag = ANIM_TAG_FLAT_ROCK,
+ .paletteTag = ANIM_TAG_FLAT_ROCK,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D714,
+};
+
+const struct SpriteTemplate gUnknown_0859601C =
+{
+ .tileTag = ANIM_TAG_METEOR,
+ .paletteTag = ANIM_TAG_METEOR,
+ .oam = &gUnknown_0852491C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D874,
+};
+
+const struct SpriteTemplate gUnknown_08596034 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810D984,
+};
+
+const union AnimCmd gUnknown_0859604C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859605C[] =
+{
+ ANIMCMD_FRAME(0, 4, .vFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .vFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .vFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859606C[] =
+{
+ ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859607C[] =
+{
+ gUnknown_0859604C,
+ gUnknown_0859605C,
+ gUnknown_0859606C,
+};
+
+const struct SpriteTemplate gUnknown_08596088 =
+{
+ .tileTag = ANIM_TAG_PURPLE_SCRATCH,
+ .paletteTag = ANIM_TAG_PURPLE_SCRATCH,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_0859607C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810DA10,
+};
+
+const union AnimCmd gUnknown_085960A0[] =
+{
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(64, 6),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085960AC[] =
+{
+ ANIMCMD_FRAME(0, 6, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(64, 6, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085960B8[] =
+{
+ ANIMCMD_FRAME(0, 6, .hFlip = TRUE),
+ ANIMCMD_FRAME(64, 6, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085960C4[] =
+{
+ gUnknown_085960A0,
+ gUnknown_085960AC,
+ gUnknown_085960B8,
+};
+
+const struct SpriteTemplate gUnknown_085960D0 =
+{
+ .tileTag = ANIM_TAG_PURPLE_SWIPE,
+ .paletteTag = ANIM_TAG_PURPLE_SWIPE,
+ .oam = &gUnknown_0852491C,
+ .anims = gUnknown_085960C4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810DA10,
+};
+
+const union AffineAnimCmd gUnknown_085960E8[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFE0, 0xFFE0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596100[] =
+{
+ gUnknown_085960E8,
+};
+
+const struct SpriteTemplate gUnknown_08596104 =
+{
+ .tileTag = ANIM_TAG_HANDS_AND_FEET,
+ .paletteTag = ANIM_TAG_HANDS_AND_FEET,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08595E54,
+ .images = NULL,
+ .affineAnims = gUnknown_08596100,
+ .callback = sub_810DA7C,
+};
diff --git a/src/fire.c b/src/fire.c
new file mode 100644
index 000000000..02c0db81c
--- /dev/null
+++ b/src/fire.c
@@ -0,0 +1,438 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_8108EC8(struct Sprite *);
+extern void sub_8108F08(struct Sprite *);
+extern void sub_8108FBC(struct Sprite *);
+extern void sub_8108F4C(struct Sprite *);
+extern void sub_8109064(struct Sprite *);
+extern void sub_810916C(struct Sprite *);
+extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
+extern void sub_8109198(struct Sprite *);
+extern void sub_8109200(struct Sprite *);
+extern void sub_810921C(struct Sprite *);
+extern void sub_8109364(struct Sprite *);
+extern void sub_81093A4(struct Sprite *);
+extern void sub_80A8EE4(struct Sprite *);
+extern void sub_81098EC(struct Sprite *);
+extern void sub_8109A10(struct Sprite *);
+extern void sub_8109AFC(struct Sprite *);
+extern void sub_8109CB0(struct Sprite *);
+
+const union AnimCmd gUnknown_08595340[] =
+{
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08595350[] =
+{
+ ANIMCMD_FRAME(16, 4, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 4, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_FRAME(48, 4, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595360[] =
+{
+ gUnknown_08595340,
+ gUnknown_08595350,
+};
+
+const struct SpriteTemplate gUnknown_08595368 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595360,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108EC8,
+};
+
+const struct SpriteTemplate gUnknown_08595380 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595360,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108F08,
+};
+
+const union AnimCmd gUnknown_08595398[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(64, 3),
+ ANIMCMD_FRAME(80, 3),
+ ANIMCMD_FRAME(96, 3),
+ ANIMCMD_FRAME(112, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085953BC[] =
+{
+ gUnknown_08595398,
+};
+
+const union AnimCmd gUnknown_085953C0[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085953D8[] =
+{
+ gUnknown_085953C0,
+};
+
+const union AffineAnimCmd gUnknown_085953DC[] =
+{
+ AFFINEANIMCMD_FRAME(0x32, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x20, 0x0, 0, 7),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085953F4[] =
+{
+ gUnknown_085953DC,
+};
+
+const struct SpriteTemplate gUnknown_085953F8 =
+{
+ .tileTag = ANIM_TAG_FIRE,
+ .paletteTag = ANIM_TAG_FIRE,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_085953BC,
+ .images = NULL,
+ .affineAnims = gUnknown_085953F4,
+ .callback = sub_8108FBC,
+};
+
+const struct SpriteTemplate gUnknown_08595410 =
+{
+ .tileTag = ANIM_TAG_FIRE,
+ .paletteTag = ANIM_TAG_FIRE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085953BC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108FBC,
+};
+
+const struct SpriteTemplate gUnknown_08595428 =
+{
+ .tileTag = ANIM_TAG_FIRE_PLUME,
+ .paletteTag = ANIM_TAG_FIRE_PLUME,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085953D8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108F4C,
+};
+
+const struct SpriteTemplate gUnknown_08595440 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085953D8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108F4C,
+};
+
+const union AnimCmd gUnknown_08595458[] =
+{
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595468[] =
+{
+ gUnknown_08595458,
+};
+
+const struct SpriteTemplate gUnknown_0859546C =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595468,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109064,
+};
+
+const union AffineAnimCmd gUnknown_08595484[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
+ AFFINEANIMCMD_FRAME(0x2, 0x2, 10, 1),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_0859549C[] =
+{
+ gUnknown_08595484,
+};
+
+const struct SpriteTemplate gUnknown_085954A0 =
+{
+ .tileTag = ANIM_TAG_SUNLIGHT,
+ .paletteTag = ANIM_TAG_SUNLIGHT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859549C,
+ .callback = sub_810916C,
+};
+
+const union AnimCmd gUnknown_085954B8[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085954D0[] =
+{
+ gUnknown_085954B8,
+};
+
+const struct SpriteTemplate gEmberSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const struct SpriteTemplate gEmberFlareSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109198,
+};
+
+const struct SpriteTemplate gUnknown_08595504 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109200,
+};
+
+const struct SpriteTemplate gUnknown_0859551C =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810921C,
+};
+
+const union AnimCmd gUnknown_08595534[] =
+{
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595540[] =
+{
+ gUnknown_08595534,
+};
+
+const union AffineAnimCmd gUnknown_08595544[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595554[] =
+{
+ AFFINEANIMCMD_FRAME(0xA0, 0xA0, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08595564[] =
+{
+ gUnknown_08595544,
+ gUnknown_08595554,
+};
+
+const struct SpriteTemplate gUnknown_0859556C =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595540,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109364,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8595584 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81093A4,
+};
+
+const struct SpriteTemplate gUnknown_0859559C =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A8EE4,
+};
+
+const struct SpriteTemplate gUnknown_085955B4 =
+{
+ .tileTag = ANIM_TAG_WARM_ROCK,
+ .paletteTag = ANIM_TAG_WARM_ROCK,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81098EC,
+};
+
+// gHeatedRockCoords
+const s16 gUnknown_085955CC[][2] =
+{
+ {-2, -5},
+ {-1, -1},
+ { 3, -6},
+ { 4, -2},
+ { 2, -8},
+ {-5, -5},
+ { 4, -7},
+};
+
+const struct SpriteTemplate gUnknown_085955E8 =
+{
+ .tileTag = ANIM_TAG_WARM_ROCK,
+ .paletteTag = ANIM_TAG_WARM_ROCK,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109A10,
+};
+
+const union AnimCmd gUnknown_08595600[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08595614[] =
+{
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859561C[] =
+{
+ ANIMCMD_FRAME(20, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595624[] =
+{
+ ANIMCMD_FRAME(20, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859562C[] =
+{
+ gUnknown_08595600,
+ gUnknown_08595614,
+ gUnknown_0859561C,
+ gUnknown_08595624,
+};
+
+const struct SpriteTemplate gUnknown_0859563C =
+{
+ .tileTag = ANIM_TAG_WISP_ORB,
+ .paletteTag = ANIM_TAG_WISP_ORB,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_0859562C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109AFC,
+};
+
+const union AnimCmd gUnknown_08595654[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595668[] =
+{
+ gUnknown_08595654,
+};
+
+const struct SpriteTemplate gUnknown_0859566C =
+{
+ .tileTag = ANIM_TAG_WISP_FIRE,
+ .paletteTag = ANIM_TAG_WISP_FIRE,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595668,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8109CB0,
+};
+
+const s8 gUnknown_08595684[16] =
+{
+ -1, -1, 0, 1, 1, 0, 0, -1, -1, 1, 1, 0, 0, -1, 0, 1,
+};
+
+const s8 gUnknown_08595694[16] =
+{
+ -1, 0, 1, 0, -1, 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1,
+};
diff --git a/src/flying.c b/src/flying.c
new file mode 100644
index 000000000..d3ea3f11b
--- /dev/null
+++ b/src/flying.c
@@ -0,0 +1,328 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_810DE70(struct Sprite *);
+extern void sub_810DFA8(struct Sprite *);
+extern void sub_810E044(struct Sprite *);
+extern void sub_810E13C(struct Sprite *);
+extern void sub_810E1C8(struct Sprite *);
+extern void sub_810E314(struct Sprite *);
+extern void sub_810EA4C(struct Sprite *);
+extern void sub_810EAA0(struct Sprite *);
+extern void sub_810EC34(struct Sprite *);
+extern void sub_810EC94(struct Sprite *);
+extern void sub_810ED28(struct Sprite *);
+extern void sub_810EE14(struct Sprite *);
+extern void sub_810EEF8(struct Sprite *);
+extern void sub_810F004(struct Sprite *);
+extern void sub_810F084(struct Sprite *);
+
+const struct SpriteTemplate gUnknown_08596270 =
+{
+ .tileTag = ANIM_TAG_GUST,
+ .paletteTag = ANIM_TAG_GUST,
+ .oam = &gUnknown_0852495C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810DE70,
+};
+
+const union AffineAnimCmd gUnknown_08596288[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xA, 0x0, 0, 24),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085962A0[] =
+{
+ gUnknown_08596288,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85962A4 =
+{
+ .tileTag = ANIM_TAG_GUST,
+ .paletteTag = ANIM_TAG_GUST,
+ .oam = &gUnknown_085249BC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_085962A0,
+ .callback = sub_810DFA8,
+};
+
+const union AnimCmd gUnknown_085962BC[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 3, .vFlip = TRUE),
+ ANIMCMD_FRAME(0, 3, .vFlip = TRUE, .hFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085962D0[] =
+{
+ gUnknown_085962BC,
+};
+
+const struct SpriteTemplate gUnknown_085962D4 =
+{
+ .tileTag = ANIM_TAG_AIR_WAVE_2,
+ .paletteTag = ANIM_TAG_AIR_WAVE_2,
+ .oam = &gUnknown_08524934,
+ .anims = gUnknown_085962D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810E044,
+};
+
+const union AffineAnimCmd gUnknown_085962EC[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
+ AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596314[] =
+{
+ gUnknown_085962EC,
+};
+
+const union AffineAnimCmd gUnknown_08596318[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 50, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596328[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -40, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596338[] =
+{
+ gUnknown_08596318,
+ gUnknown_08596328,
+};
+
+const struct SpriteTemplate gUnknown_08596340 =
+{
+ .tileTag = ANIM_TAG_ROUND_SHADOW,
+ .paletteTag = ANIM_TAG_ROUND_SHADOW,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596314,
+ .callback = sub_810E13C,
+};
+
+const struct SpriteTemplate gUnknown_08596358 =
+{
+ .tileTag = ANIM_TAG_ROUND_SHADOW,
+ .paletteTag = ANIM_TAG_ROUND_SHADOW,
+ .oam = &gUnknown_0852497C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596338,
+ .callback = sub_810E1C8,
+};
+
+const union AnimCmd gUnknown_08596370[] =
+{
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596378[] =
+{
+ ANIMCMD_FRAME(16, 0, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596380[] =
+{
+ gUnknown_08596370,
+ gUnknown_08596378,
+};
+
+const struct SpriteTemplate gUnknown_08596388 =
+{
+ .tileTag = ANIM_TAG_WHITE_FEATHER,
+ .paletteTag = ANIM_TAG_WHITE_FEATHER,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_08596380,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810E314,
+};
+
+const struct SpriteTemplate gUnknown_085963A0 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810EA4C,
+};
+
+const union AnimCmd gUnknown_085963B8[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_FRAME(16, 1),
+ ANIMCMD_FRAME(8, 1, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 1, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085963D0[] =
+{
+ gUnknown_085963B8,
+};
+
+const struct SpriteTemplate gUnknown_085963D4 =
+{
+ .tileTag = ANIM_TAG_WHIRLWIND_LINES,
+ .paletteTag = ANIM_TAG_WHIRLWIND_LINES,
+ .oam = &gUnknown_08524934,
+ .anims = gUnknown_085963D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810EAA0,
+};
+
+const union AffineAnimCmd gUnknown_085963EC[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
+ AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
+ AFFINEANIMCMD_FRAME(0xFFEC, 0x0, 0, 7),
+ AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, 0, 5),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859641C[] =
+{
+ gUnknown_085963EC,
+};
+
+const struct SpriteTemplate gUnknown_08596420 =
+{
+ .tileTag = ANIM_TAG_ROUND_SHADOW,
+ .paletteTag = ANIM_TAG_ROUND_SHADOW,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859641C,
+ .callback = sub_810EC34,
+};
+
+const union AffineAnimCmd gUnknown_08596438[] =
+{
+ AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596448[] =
+{
+ gUnknown_08596438,
+};
+
+const struct SpriteTemplate gUnknown_0859644C =
+{
+ .tileTag = ANIM_TAG_ROUND_SHADOW,
+ .paletteTag = ANIM_TAG_ROUND_SHADOW,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596448,
+ .callback = sub_810EC94,
+};
+
+const union AffineAnimCmd gUnknown_08596464[] =
+{
+ AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
+ AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859648C[] =
+{
+ gUnknown_08596464,
+};
+
+const struct SpriteTemplate gUnknown_08596490 =
+{
+ .tileTag = ANIM_TAG_ROUND_SHADOW,
+ .paletteTag = ANIM_TAG_ROUND_SHADOW,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_0859648C,
+ .callback = sub_810ED28,
+};
+
+const union AffineAnimCmd gUnknown_085964A8[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x20, 0, 12),
+ AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 11),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085964C8[] =
+{
+ gUnknown_085964A8,
+};
+
+const struct SpriteTemplate gUnknown_085964CC =
+{
+ .tileTag = ANIM_TAG_SPLASH,
+ .paletteTag = ANIM_TAG_SPLASH,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810EE14,
+};
+
+const struct SpriteTemplate gUnknown_085964E4 =
+{
+ .tileTag = ANIM_TAG_SWEAT_BEAD,
+ .paletteTag = ANIM_TAG_SWEAT_BEAD,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810EEF8,
+};
+
+const struct SpriteTemplate gUnknown_085964FC =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F004,
+};
+
+const struct SpriteTemplate gUnknown_08596514 =
+{
+ .tileTag = ANIM_TAG_BIRD,
+ .paletteTag = ANIM_TAG_BIRD,
+ .oam = &gUnknown_085249DC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F084,
+};
diff --git a/src/ghost.c b/src/ghost.c
new file mode 100644
index 000000000..ce57df7e8
--- /dev/null
+++ b/src/ghost.c
@@ -0,0 +1,186 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_811160C(struct Sprite *);
+extern void sub_81117F4(struct Sprite *);
+extern void sub_81119E0(struct Sprite *);
+extern void sub_8111B9C(struct Sprite *);
+extern void sub_8112264(struct Sprite *);
+extern void sub_81129F0(struct Sprite *);
+extern void sub_8112B78(struct Sprite *);
+extern void sub_8112E9C(struct Sprite *);
+extern void sub_8112F60(struct Sprite *);
+
+const union AffineAnimCmd gUnknown_08596CF8[] =
+{
+ AFFINEANIMCMD_FRAME(0x1E, 0x1E, 10, 5),
+ AFFINEANIMCMD_FRAME(0xFFE2, 0xFFE2, 10, 5),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08596D10[] =
+{
+ gUnknown_08596CF8,
+};
+
+const struct SpriteTemplate gUnknown_08596D14 =
+{
+ .tileTag = ANIM_TAG_YELLOW_BALL,
+ .paletteTag = ANIM_TAG_YELLOW_BALL,
+ .oam = &gUnknown_085249CC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596D10,
+ .callback = sub_811160C,
+};
+
+const struct SpriteTemplate gUnknown_08596D2C =
+{
+ .tileTag = ANIM_TAG_YELLOW_BALL,
+ .paletteTag = ANIM_TAG_YELLOW_BALL,
+ .oam = &gUnknown_08524A2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81117F4,
+};
+
+const union AffineAnimCmd gUnknown_08596D44[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08596D54[] =
+{
+ gUnknown_08596D44,
+};
+
+const struct SpriteTemplate gUnknown_08596D58 =
+{
+ .tileTag = ANIM_TAG_SHADOW_BALL,
+ .paletteTag = ANIM_TAG_SHADOW_BALL,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596D54,
+ .callback = sub_81119E0,
+};
+
+const union AnimCmd gUnknown_08596D70[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(8, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(24, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596D88[] =
+{
+ gUnknown_08596D70,
+};
+
+const struct SpriteTemplate gUnknown_08596D8C =
+{
+ .tileTag = ANIM_TAG_LICK,
+ .paletteTag = ANIM_TAG_LICK,
+ .oam = &gUnknown_08524954,
+ .anims = gUnknown_08596D88,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8111B9C,
+};
+
+const union AffineAnimCmd gUnknown_08596DA4[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596DB4[] =
+{
+ gUnknown_08596DA4,
+};
+
+const struct SpriteTemplate gUnknown_08596DB8 =
+{
+ .tileTag = ANIM_TAG_WHITE_SHADOW,
+ .paletteTag = ANIM_TAG_WHITE_SHADOW,
+ .oam = &gUnknown_08524A5C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8112264,
+};
+
+const struct SpriteTemplate gUnknown_08596DD0 =
+{
+ .tileTag = ANIM_TAG_NAIL,
+ .paletteTag = ANIM_TAG_NAIL,
+ .oam = &gUnknown_08524A54,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81129F0,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8596DE8 =
+{
+ .tileTag = ANIM_TAG_GHOSTLY_SPIRIT,
+ .paletteTag = ANIM_TAG_GHOSTLY_SPIRIT,
+ .oam = &gUnknown_08524A34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8112B78,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E00 =
+{
+ .tileTag = ANIM_TAG_DEVIL,
+ .paletteTag = ANIM_TAG_DEVIL,
+ .oam = &gUnknown_08524A34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8112B78,
+};
+
+const union AnimCmd gUnknown_08596E18[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(8, 4),
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(24, 4),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08596E2C[] =
+{
+ gUnknown_08596E18,
+};
+
+const struct SpriteTemplate gUnknown_08596E30 =
+{
+ .tileTag = ANIM_TAG_PURPLE_FLAME,
+ .paletteTag = ANIM_TAG_PURPLE_FLAME,
+ .oam = &gUnknown_08524A74,
+ .anims = gUnknown_08596E2C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8112E9C,
+};
+
+const struct SpriteTemplate gUnknown_08596E48 =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8112F60,
+};
diff --git a/src/ground.c b/src/ground.c
new file mode 100644
index 000000000..33eb3660a
--- /dev/null
+++ b/src/ground.c
@@ -0,0 +1,121 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_8114994(struct Sprite *);
+extern void sub_8114A7C(struct Sprite *);
+extern void sub_8114AF0(struct Sprite *);
+extern void sub_8114AF0(struct Sprite *);
+extern void sub_8114B80(struct Sprite *);
+extern void sub_81151A0(struct Sprite *);
+extern void sub_8115244(struct Sprite *);
+
+const union AffineAnimCmd gUnknown_08597150[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 15, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gUnknown_08597160[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08597170[] =
+{
+ gUnknown_08597150,
+};
+
+const union AffineAnimCmd *const gUnknown_08597174[] =
+{
+ gUnknown_08597160,
+};
+
+const struct SpriteTemplate gUnknown_08597178 =
+{
+ .tileTag = ANIM_TAG_BONE,
+ .paletteTag = ANIM_TAG_BONE,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597170,
+ .callback = sub_8114994,
+};
+
+const struct SpriteTemplate gUnknown_08597190 =
+{
+ .tileTag = ANIM_TAG_BONE,
+ .paletteTag = ANIM_TAG_BONE,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597174,
+ .callback = sub_8114A7C,
+};
+
+const struct SpriteTemplate gUnknown_085971A8 =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8114AF0,
+};
+
+const union AnimCmd gUnknown_085971C0[] =
+{
+ ANIMCMD_FRAME(1, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085971C8[] =
+{
+ gUnknown_085971C0,
+};
+
+const struct SpriteTemplate gUnknown_085971CC =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_085971C8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8114AF0,
+};
+
+const struct SpriteTemplate gUnknown_085971E4 =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8114B80,
+};
+
+const struct SpriteTemplate gUnknown_085971FC =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81151A0,
+};
+
+const struct SpriteTemplate gUnknown_08597214 =
+{
+ .tileTag = ANIM_TAG_DIRT_MOUND,
+ .paletteTag = ANIM_TAG_DIRT_MOUND,
+ .oam = &gUnknown_08524934,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8115244,
+};
diff --git a/src/ice.c b/src/ice.c
new file mode 100644
index 000000000..ebd0d3cf6
--- /dev/null
+++ b/src/ice.c
@@ -0,0 +1,491 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_810B6C4(struct Sprite *);
+extern void sub_810B8AC(struct Sprite *);
+extern void sub_810B8EC(struct Sprite *);
+extern void sub_810B974(struct Sprite *);
+extern void sub_810BA24(struct Sprite *);
+extern void sub_810BC94(struct Sprite *);
+extern void sub_810BE48(struct Sprite *);
+extern void sub_810BED0(struct Sprite *);
+extern void sub_810C2F0(struct Sprite *);
+extern void sub_810C560(struct Sprite *);
+extern void sub_810CB58(struct Sprite *);
+extern void sub_80A8EE4(struct Sprite *);
+extern void unc_080B06FC(struct Sprite *);
+extern void sub_810CD4C(struct Sprite *);
+
+const union AnimCmd gUnknown_08595A48[] =
+{
+ ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(1, 5, .hFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595A54[] =
+{
+ gUnknown_08595A48,
+};
+
+// unknown sprite template
+const struct SpriteTemplate gUnknown_08595A58 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810B6C4,
+};
+
+const union AnimCmd gUnknown_08595A70[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595A78[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595A80[] =
+{
+ ANIMCMD_FRAME(6, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595A88[] =
+{
+ ANIMCMD_FRAME(7, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595A90[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595A98[] =
+{
+ ANIMCMD_FRAME(12, 6),
+ ANIMCMD_FRAME(13, 6),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595AA4[] =
+{
+ gUnknown_08595A70,
+};
+
+const union AnimCmd *const gUnknown_08595AA8[] =
+{
+ gUnknown_08595A78,
+};
+
+const union AnimCmd *const gUnknown_08595AAC[] =
+{
+ gUnknown_08595A80,
+};
+
+const union AnimCmd *const gUnknown_08595AB0[] =
+{
+ gUnknown_08595A88,
+};
+
+const union AnimCmd *const gUnknown_08595AB4[] =
+{
+ gUnknown_08595A90,
+};
+
+const union AnimCmd *const gUnknown_08595AB8[] =
+{
+ gUnknown_08595A98,
+};
+
+const union AffineAnimCmd gUnknown_08595ABC[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 40, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08595ACC[] =
+{
+ gUnknown_08595ABC,
+};
+
+const struct SpriteTemplate gUnknown_08595AD0 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524B24,
+ .anims = gUnknown_08595AA8,
+ .images = NULL,
+ .affineAnims = gUnknown_08595ACC,
+ .callback = sub_810B8AC,
+};
+
+const struct SpriteTemplate gUnknown_08595AE8 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524A24,
+ .anims = gUnknown_08595AAC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810B8AC,
+};
+
+const union AffineAnimCmd gUnknown_08595B00[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08595B10[] =
+{
+ gUnknown_08595B00,
+};
+
+const struct SpriteTemplate gUnknown_08595B14 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524AC4,
+ .anims = gUnknown_08595AA8,
+ .images = NULL,
+ .affineAnims = gUnknown_08595B10,
+ .callback = sub_810B8EC,
+};
+
+const struct SpriteTemplate gUnknown_08595B2C =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524A24,
+ .anims = gUnknown_08595AAC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810B8EC,
+};
+
+const union AffineAnimCmd gUnknown_08595B44[] =
+{
+ AFFINEANIMCMD_FRAME(0xCE, 0xCE, 0, 0),
+ AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 6),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08595B64[] =
+{
+ gUnknown_08595B44,
+};
+
+const struct SpriteTemplate gUnknown_08595B68 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524AC4,
+ .anims = gUnknown_08595AA8,
+ .images = NULL,
+ .affineAnims = gUnknown_08595B64,
+ .callback = sub_810B974,
+};
+
+const struct SpriteTemplate gUnknown_08595B80 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524A84,
+ .anims = gUnknown_08595AAC,
+ .images = NULL,
+ .affineAnims = gUnknown_08595B64,
+ .callback = sub_810B974,
+};
+
+const struct SpriteTemplate gUnknown_08595B98 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08595AB0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BA24,
+};
+
+const struct SpriteTemplate gUnknown_08595BB0 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08595AB4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BC94,
+};
+
+const struct SpriteTemplate gUnknown_08595BC8 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08595AB0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BC94,
+};
+
+const union AnimCmd gUnknown_08595BE0[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(6, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595C00[] =
+{
+ gUnknown_08595BE0,
+};
+
+const struct SpriteTemplate gUnknown_08595C04 =
+{
+ .tileTag = ANIM_TAG_ICE_SPIKES,
+ .paletteTag = ANIM_TAG_ICE_SPIKES,
+ .oam = &gUnknown_08524A64,
+ .anims = gUnknown_08595C00,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BE48,
+};
+
+const union AnimCmd gUnknown_08595C1C[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(8, 8),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595C28[] =
+{
+ gUnknown_08595C1C,
+};
+
+const struct SpriteTemplate gUnknown_08595C2C =
+{
+ .tileTag = ANIM_TAG_MIST_CLOUD,
+ .paletteTag = ANIM_TAG_MIST_CLOUD,
+ .oam = &gUnknown_08524A54,
+ .anims = gUnknown_08595C28,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BED0,
+};
+
+const struct SpriteTemplate gUnknown_08595C44 =
+{
+ .tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
+ .paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
+ .oam = &gUnknown_08524A54,
+ .anims = gUnknown_08595C28,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810BED0,
+};
+
+const u8 gUnknown_08595C5C[] =
+{
+ 0, 1, 2, 2, 2, 2, 3, 4, 4, 4, 5, 6, 6, 6, 6, 7, 8, 8, 8, 9,
+};
+
+const struct SpriteTemplate gUnknown_08595C70 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_0852490C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810C2F0,
+};
+
+const u8 gUnknown_08595C88[] =
+{
+ 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5,
+};
+
+const struct SpriteTemplate gUnknown_08595C9C =
+{
+ .tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
+ .paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
+ .oam = &gUnknown_08524A54,
+ .anims = gUnknown_08595C28,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810C560,
+};
+
+const u8 gUnknown_08595CB4[][4] =
+{
+ {0x64, 0xE0, 0x01, 0x20},
+ {0x55, 0xE0, 0x01, 0x00},
+ {0xF2, 0xE0, 0x11, 0x10},
+ {0x42, 0xE0, 0x21, 0x10},
+ {0xB6, 0xE0, 0x31, 0x00},
+ {0x3C, 0xE0, 0x01, 0x20},
+ {0xD6, 0xE0, 0x11, 0x00},
+ {0x71, 0xE0, 0x01, 0x10},
+ {0xD2, 0xE0, 0x31, 0x10},
+ {0x26, 0xE0, 0x21, 0x00},
+};
+
+const union AffineAnimCmd gUnknown_08595CDC[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595CEC[] =
+{
+ AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595CFC[] =
+{
+ AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595D0C[] =
+{
+ AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08595D1C[] =
+{
+ gUnknown_08595CDC,
+ gUnknown_08595CEC,
+ gUnknown_08595CFC,
+};
+
+const union AffineAnimCmd *const gUnknown_08595D28[] =
+{
+ gUnknown_08595D0C,
+};
+
+const struct SpriteTemplate gUnknown_08595D2C =
+{
+ .tileTag = ANIM_TAG_HAIL,
+ .paletteTag = ANIM_TAG_HAIL,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595D1C,
+ .callback = sub_810CB58,
+};
+
+const struct SpriteTemplate gUnknown_08595D44 =
+{
+ .tileTag = ANIM_TAG_HAIL,
+ .paletteTag = ANIM_TAG_HAIL,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08595D28,
+ .callback = sub_80A8EE4,
+};
+
+const union AnimCmd gUnknown_08595D5C[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595D64[] =
+{
+ ANIMCMD_FRAME(16, 4),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595D78[] =
+{
+ gUnknown_08595D5C,
+ gUnknown_08595D64,
+};
+
+const union AffineAnimCmd gUnknown_08595D80[] =
+{
+ AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595D90[] =
+{
+ AFFINEANIMCMD_FRAME(0x118, 0x118, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595DA0[] =
+{
+ AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595DB0[] =
+{
+ AFFINEANIMCMD_FRAME(0x180, 0x180, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08595DC0[] =
+{
+ AFFINEANIMCMD_FRAME(0x1C0, 0x1C0, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08595DD0[] =
+{
+ gUnknown_08595D80,
+ gUnknown_08595D90,
+ gUnknown_08595DA0,
+ gUnknown_08595DB0,
+ gUnknown_08595DC0,
+};
+
+const struct SpriteTemplate gUnknown_08595DE4 =
+{
+ .tileTag = ANIM_TAG_ICE_CHUNK,
+ .paletteTag = ANIM_TAG_ICE_CHUNK,
+ .oam = &gUnknown_085249D4,
+ .anims = gUnknown_08595D78,
+ .images = NULL,
+ .affineAnims = gUnknown_08595DD0,
+ .callback = unc_080B06FC,
+};
+
+const struct SpriteTemplate gUnknown_08595DFC =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08595AAC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810CD4C,
+};
diff --git a/src/intro.c b/src/intro.c
index b79834c58..5a0e13869 100644
--- a/src/intro.c
+++ b/src/intro.c
@@ -1542,8 +1542,8 @@ static void Task_IntroLoadPart1Graphics3(u8 taskId)
LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000));
LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000));
- LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
+ LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
+ LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
}
diff --git a/src/item_menu.c b/src/item_menu.c
index bb619cac8..7dbdf716f 100755
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -268,7 +268,7 @@ const u8 gUnknown_08614164[][3] = {
const struct WindowTemplate gUnknown_08614174[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -277,7 +277,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x27,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -286,7 +286,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x117,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 4,
.tilemapTop = 1,
.width = 8,
@@ -295,7 +295,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x1A1,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 5,
@@ -304,7 +304,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x16B,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 7,
.tilemapTop = 13,
.width = 4,
@@ -313,7 +313,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x189,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -327,7 +327,7 @@ const struct WindowTemplate gUnknown_08614174[] =
const struct WindowTemplate gUnknown_086141AC[] =
{
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@@ -336,7 +336,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@@ -345,7 +345,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@@ -354,7 +354,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@@ -363,7 +363,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -372,7 +372,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x1B1,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,
@@ -381,7 +381,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -390,7 +390,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@@ -399,7 +399,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@@ -408,7 +408,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x245,
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
diff --git a/src/mail.c b/src/mail.c
index 3c12bed3f..513900746 100644
--- a/src/mail.c
+++ b/src/mail.c
@@ -146,7 +146,7 @@ static const struct BgTemplate sUnknown_0859F290[] = {
static const struct WindowTemplate sUnknown_0859F29C[] = {
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 26,
diff --git a/src/main_menu.c b/src/main_menu.c
index 521b92b35..8539ab027 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -165,7 +165,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// No saved game
// NEW GAME
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN0,
.width = MENU_WIDTH,
@@ -175,7 +175,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTIONS
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN1,
.width = MENU_WIDTH,
@@ -186,7 +186,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// Has saved game
// CONTINUE
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN2,
.width = MENU_WIDTH,
@@ -196,7 +196,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// NEW GAME
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN3,
.width = MENU_WIDTH,
@@ -206,7 +206,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY GIFT
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN4,
.width = MENU_WIDTH,
@@ -216,7 +216,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY EVENTS
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN5,
.width = MENU_WIDTH,
@@ -226,7 +226,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN6,
.width = MENU_WIDTH,
@@ -236,7 +236,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// Error message window
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = MENU_LEFT_ERROR,
.tilemapTop = MENU_TOP_ERROR,
.width = MENU_WIDTH_ERROR,
@@ -250,7 +250,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
static const struct WindowTemplate gUnknown_082FF080[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -259,7 +259,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 1
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 5,
.width = 6,
@@ -268,7 +268,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 0x6D
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 9,
@@ -323,7 +323,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_PlayerShrink[] = {
AFFINEANIMCMD_END
};
-static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
+static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
{
sSpriteAffineAnim_PlayerShrink
};
@@ -2083,21 +2083,21 @@ static void DrawMainMenuWindowBorder(const struct WindowTemplate *template, u16
u16 sp14 = 7 + baseTileNum;
u16 r6 = 8 + baseTileNum;
- FillBgTilemapBufferRect(template->priority, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
- FillBgTilemapBufferRect(template->priority, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
- FillBgTilemapBufferRect(template->priority, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
- FillBgTilemapBufferRect(template->priority, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
- FillBgTilemapBufferRect(template->priority, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
- FillBgTilemapBufferRect(template->priority, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
- FillBgTilemapBufferRect(template->priority, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
- FillBgTilemapBufferRect(template->priority, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
- CopyBgTilemapBufferToVram(template->priority);
+ FillBgTilemapBufferRect(template->bg, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
+ FillBgTilemapBufferRect(template->bg, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
+ FillBgTilemapBufferRect(template->bg, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
+ FillBgTilemapBufferRect(template->bg, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
+ FillBgTilemapBufferRect(template->bg, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
+ FillBgTilemapBufferRect(template->bg, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
+ FillBgTilemapBufferRect(template->bg, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
+ FillBgTilemapBufferRect(template->bg, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
+ CopyBgTilemapBufferToVram(template->bg);
}
static void ClearMainMenuWindowTilemap(const struct WindowTemplate *template)
{
- FillBgTilemapBufferRect(template->priority, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
- CopyBgTilemapBufferToVram(template->priority);
+ FillBgTilemapBufferRect(template->bg, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
+ CopyBgTilemapBufferToVram(template->bg);
}
static void NewGameBirchSpeech_ClearGenderWindowTilemap(u8 a, u8 b, u8 c, u8 d, u8 e, u8 unused)
diff --git a/src/map_name_popup.c b/src/map_name_popup.c
index 94628f9c4..172fcc723 100644
--- a/src/map_name_popup.c
+++ b/src/map_name_popup.c
@@ -541,7 +541,7 @@ static void LoadMapNamePopUpWindowBg(void)
}
popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId];
- LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_PRIORITY), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
+ LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
CallWindowFunction(popupWindowId, sub_80D4A78);
PutWindowTilemap(popupWindowId);
if(gMapHeader.weather == WEATHER_BUBBLES)
diff --git a/src/menu.c b/src/menu.c
index 0e5d1b856..e5dce2ee0 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -66,7 +66,7 @@ static const u8 gUnknown_0860F094[] = { 8, 4, 1 };
static const struct WindowTemplate gUnknown_0860F098[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -79,7 +79,7 @@ static const struct WindowTemplate gUnknown_0860F098[] =
static const struct WindowTemplate gUnknown_0860F0A8 =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -782,9 +782,9 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile)
memset(&window, 0, sizeof(window));
if (bg > 3)
- window.priority = 0;
+ window.bg = 0;
else
- window.priority = bg;
+ window.bg = bg;
window.tilemapTop = yPos;
window.height = 2;
@@ -1147,7 +1147,7 @@ void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const stru
void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock)
{
- template->priority = bg;
+ template->bg = bg;
template->tilemapLeft = left;
template->tilemapTop = top;
template->width = width;
diff --git a/src/mystery_event_menu.c b/src/mystery_event_menu.c
index 7e09a4d70..0de4675d9 100644
--- a/src/mystery_event_menu.c
+++ b/src/mystery_event_menu.c
@@ -43,7 +43,7 @@ static const struct BgTemplate sBgTemplates[] =
static const struct WindowTemplate sWindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 4,
.tilemapTop = 15,
.width = 22,
@@ -52,7 +52,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 20
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 7,
.tilemapTop = 6,
.width = 16,
diff --git a/src/naming_screen.c b/src/naming_screen.c
index ee1e78c60..a67516602 100644
--- a/src/naming_screen.c
+++ b/src/naming_screen.c
@@ -103,7 +103,7 @@ static const struct BgTemplate gUnknown_0858BE00[] =
static const struct WindowTemplate gUnknown_0858BE10[] =
{
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@@ -112,7 +112,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x0C8
},
{
- .priority = 3,
+ .bg = 3,
.tilemapLeft = 8,
.tilemapTop = 6,
.width = 17,
@@ -130,7 +130,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
- .priority = 3,
+ .bg = 3,
.tilemapLeft = 8,
.tilemapTop = 4,
.width = 17,
@@ -139,7 +139,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x052
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 30,
diff --git a/src/normal.c b/src/normal.c
new file mode 100644
index 000000000..a4ed5edca
--- /dev/null
+++ b/src/normal.c
@@ -0,0 +1,233 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_811572C(struct Sprite *);
+extern void sub_81157FC(struct Sprite *);
+extern void sub_81158A4(struct Sprite *);
+extern void sub_81159B4(struct Sprite *);
+extern void sub_81160A4(struct Sprite *);
+extern void sub_8116388(struct Sprite *);
+extern void sub_8116420(struct Sprite *);
+extern void sub_8116458(struct Sprite *);
+extern void sub_81164F0(struct Sprite *);
+extern void sub_8116560(struct Sprite *);
+extern void sub_81165A8(struct Sprite *);
+extern void sub_81163D0(struct Sprite *);
+
+const union AnimCmd gUnknown_0859722C[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(4, 8),
+ ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 8),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gUnknown_08597240[] =
+{
+ ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
+ ANIMCMD_FRAME(4, 8),
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(8, 8),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08597254[] =
+{
+ gUnknown_0859722C,
+ gUnknown_08597240,
+};
+
+const struct SpriteTemplate gConfusionDuckSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_DUCK,
+ .paletteTag = ANIM_TAG_DUCK,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08597254,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_811572C,
+};
+
+const struct SpriteTemplate gSimplePaletteBlendSpriteTemplate =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81157FC,
+};
+
+const struct SpriteTemplate gComplexPaletteBlendSpriteTemplate =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81158A4,
+};
+
+const union AnimCmd gUnknown_085972A4[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(64, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085972BC[] =
+{
+ gUnknown_085972A4,
+};
+
+const struct SpriteTemplate gUnknown_085972C0 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_4,
+ .paletteTag = ANIM_TAG_SPARKLE_4,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085972BC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81159B4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85972D8 =
+{
+ .tileTag = 0,
+ .paletteTag = 0,
+ .oam = &gDummyOamData,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81160A4,
+};
+
+const union AffineAnimCmd gUnknown_085972F0[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597300[] =
+{
+ AFFINEANIMCMD_FRAME(0xD8, 0xD8, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597318[] =
+{
+ AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08597330[] =
+{
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08597348[] =
+{
+ gUnknown_085972F0,
+ gUnknown_08597300,
+ gUnknown_08597318,
+ gUnknown_08597330,
+};
+
+const struct SpriteTemplate gBasicHitSplatSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_8116388,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8597370 =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_8116420,
+};
+
+const struct SpriteTemplate gUnknown_08597388 =
+{
+ .tileTag = ANIM_TAG_WATER_IMPACT,
+ .paletteTag = ANIM_TAG_WATER_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_8116388,
+};
+
+const struct SpriteTemplate gUnknown_085973A0 =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_8116458,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_85973B8 =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_81164F0,
+};
+
+const struct SpriteTemplate gUnknown_085973D0 =
+{
+ .tileTag = ANIM_TAG_CROSS_IMPACT,
+ .paletteTag = ANIM_TAG_CROSS_IMPACT,
+ .oam = &gUnknown_08524A34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8116560,
+};
+
+const struct SpriteTemplate gUnknown_085973E8 =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524974,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_81165A8,
+};
+
+const struct SpriteTemplate gUnknown_08597400 =
+{
+ .tileTag = ANIM_TAG_IMPACT,
+ .paletteTag = ANIM_TAG_IMPACT,
+ .oam = &gUnknown_08524A94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08597348,
+ .callback = sub_81163D0,
+};
diff --git a/src/option_menu.c b/src/option_menu.c
index 6cb208c63..122ba8d8a 100644
--- a/src/option_menu.c
+++ b/src/option_menu.c
@@ -92,7 +92,7 @@ static const u8 *const sOptionMenuItemsNames[MENUITEM_COUNT] =
static const struct WindowTemplate sOptionMenuWinTemplates[] =
{
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@@ -101,7 +101,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
.baseBlock = 2
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 26,
diff --git a/src/player_pc.c b/src/player_pc.c
index bdbef1b43..7a8b4192b 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -185,7 +185,7 @@ const struct MenuAction gMailboxMailOptions[] =
static const struct WindowTemplate gUnknown_085DFF24[3] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@@ -194,7 +194,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@@ -203,7 +203,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@@ -243,7 +243,7 @@ static const struct ListMenuTemplate gUnknown_085DFF44 =
static const struct WindowTemplate gUnknown_085DFF5C[5] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 13,
@@ -252,7 +252,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0001
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 13,
@@ -261,7 +261,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x00EB
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 8,
.width = 3,
@@ -270,7 +270,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0153
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@@ -279,7 +279,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0139
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 8,
.tilemapTop = 9,
.width = 6,
@@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
static const struct WindowTemplate gUnknown_085DFF84 =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 9,
.tilemapTop = 7,
.width = 5,
diff --git a/src/poison.c b/src/poison.c
new file mode 100644
index 000000000..f0d8ec553
--- /dev/null
+++ b/src/poison.c
@@ -0,0 +1,185 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_810DBAC(struct Sprite *);
+extern void sub_810DC2C(struct Sprite *);
+extern void sub_810DCD0(struct Sprite *);
+extern void sub_810DD50(struct Sprite *);
+extern void sub_810DDC4(struct Sprite *);
+extern void sub_810DDC4(struct Sprite *);
+
+extern const union AnimCmd *const gUnknown_08595200[];
+
+const union AnimCmd gUnknown_0859611C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(24, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596130[] =
+{
+ gUnknown_0859611C,
+};
+
+const struct SpriteTemplate gUnknown_08596134 =
+{
+ .tileTag = ANIM_TAG_TOXIC_BUBBLE,
+ .paletteTag = ANIM_TAG_TOXIC_BUBBLE,
+ .oam = &gUnknown_08524954,
+ .anims = gUnknown_08596130,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A77C8,
+};
+
+const union AnimCmd gUnknown_0859614C[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596154[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_0859615C[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596164[] =
+{
+ gUnknown_0859614C,
+};
+
+const union AnimCmd *const gUnknown_08596168[] =
+{
+ gUnknown_08596154,
+};
+
+const union AnimCmd *const gUnknown_0859616C[] =
+{
+ gUnknown_0859615C,
+};
+
+const union AffineAnimCmd gUnknown_08596170[] =
+{
+ AFFINEANIMCMD_FRAME(0x160, 0x160, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
+ AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gUnknown_08596190[] =
+{
+ AFFINEANIMCMD_FRAME(0xEC, 0xEC, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085961A0[] =
+{
+ gUnknown_08596170,
+};
+
+const union AffineAnimCmd *const gUnknown_085961A4[] =
+{
+ gUnknown_08596190,
+};
+
+const struct SpriteTemplate gUnknown_085961A8 =
+{
+ .tileTag = ANIM_TAG_POISON_BUBBLE,
+ .paletteTag = ANIM_TAG_POISON_BUBBLE,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08596164,
+ .images = NULL,
+ .affineAnims = gUnknown_085961A0,
+ .callback = sub_810DBAC,
+};
+
+const struct SpriteTemplate gUnknown_085961C0 =
+{
+ .tileTag = ANIM_TAG_POISON_BUBBLE,
+ .paletteTag = ANIM_TAG_POISON_BUBBLE,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08596164,
+ .images = NULL,
+ .affineAnims = gUnknown_085961A0,
+ .callback = sub_810DC2C,
+};
+
+const struct SpriteTemplate gUnknown_085961D8 =
+{
+ .tileTag = ANIM_TAG_POISON_BUBBLE,
+ .paletteTag = ANIM_TAG_POISON_BUBBLE,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_0859616C,
+ .images = NULL,
+ .affineAnims = gUnknown_085961A4,
+ .callback = sub_810DCD0,
+};
+
+const union AffineAnimCmd gUnknown_085961F0[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFF0, 0x10, 0, 6),
+ AFFINEANIMCMD_FRAME(0x10, 0xFFF0, 0, 6),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08596208[] =
+{
+ gUnknown_085961F0,
+};
+
+const struct SpriteTemplate gUnknown_0859620C =
+{
+ .tileTag = ANIM_TAG_POISON_BUBBLE,
+ .paletteTag = ANIM_TAG_POISON_BUBBLE,
+ .oam = &gUnknown_085249CC,
+ .anims = gUnknown_08596168,
+ .images = NULL,
+ .affineAnims = gUnknown_08596208,
+ .callback = sub_810DD50,
+};
+
+const union AffineAnimCmd gUnknown_08596224[] =
+{
+ AFFINEANIMCMD_FRAME(0x9C, 0x9C, 0, 0),
+ AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 20),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_0859623C[] =
+{
+ gUnknown_08596224,
+};
+
+const struct SpriteTemplate gPoisonBubbleSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_POISON_BUBBLE,
+ .paletteTag = ANIM_TAG_POISON_BUBBLE,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_08596164,
+ .images = NULL,
+ .affineAnims = gUnknown_0859623C,
+ .callback = sub_810DDC4,
+};
+
+const struct SpriteTemplate gWaterBubbleSpriteTemplate =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524A8C,
+ .anims = gUnknown_08595200,
+ .images = NULL,
+ .affineAnims = gUnknown_0859623C,
+ .callback = sub_810DDC4,
+};
diff --git a/src/pokeblock.c b/src/pokeblock.c
index d0a867b3a..1382ff6a7 100644
--- a/src/pokeblock.c
+++ b/src/pokeblock.c
@@ -295,7 +295,7 @@ static const struct Pokeblock sFavoritePokeblocksTable[] =
static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -304,7 +304,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x1E
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,
@@ -313,7 +313,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x30
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 13,
.width = 5,
@@ -322,7 +322,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x12C
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 5,
@@ -331,7 +331,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x136
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 17,
.width = 5,
@@ -340,7 +340,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x140
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 8,
.tilemapTop = 13,
.width = 5,
@@ -349,7 +349,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x14A
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 8,
.tilemapTop = 15,
.width = 5,
@@ -358,7 +358,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x154
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 17,
.width = 2,
@@ -367,7 +367,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x15E
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 7,
.tilemapTop = 5,
.width = 6,
@@ -376,7 +376,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x162
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 7,
.tilemapTop = 7,
.width = 6,
@@ -385,7 +385,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x186
},
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -398,7 +398,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
static const struct WindowTemplate sTossPkblockWindowTemplate =
{
- .priority = 1,
+ .bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c
index 6734fce06..90bba702e 100644
--- a/src/pokemon_animation.c
+++ b/src/pokemon_animation.c
@@ -6,6 +6,8 @@
#include "task.h"
#include "util.h"
#include "constants/rgb.h"
+#include "constants/battle_anim.h"
+#include "constants/species.h"
struct UnkAnimStruct
{
@@ -183,418 +185,392 @@ static IWRAM_DATA bool32 sUnknown_03001274;
// const rom data
static const u8 sSpeciesToBackAnimSet[] =
{
- 0x00, // SPECIES_NONE
- 0x13, // SPECIES_BULBASAUR
- 0x02, // SPECIES_IVYSAUR
- 0x08, // SPECIES_VENUSAUR
- 0x12, // SPECIES_CHARMANDER
- 0x15, // SPECIES_CHARMELEON
- 0x17, // SPECIES_CHARIZARD
- 0x12, // SPECIES_SQUIRTLE
- 0x12, // SPECIES_WARTORTLE
- 0x19, // SPECIES_BLASTOISE
- 0x02, // SPECIES_CATERPIE
- 0x13, // SPECIES_METAPOD
- 0x11, // SPECIES_BUTTERFREE
- 0x02, // SPECIES_WEEDLE
- 0x13, // SPECIES_KAKUNA
- 0x01, // SPECIES_BEEDRILL
- 0x0f, // SPECIES_PIDGEY
- 0x15, // SPECIES_PIDGEOTTO
- 0x0f, // SPECIES_PIDGEOT
- 0x0a, // SPECIES_RATTATA
- 0x0a, // SPECIES_RATICATE
- 0x0f, // SPECIES_SPEAROW
- 0x15, // SPECIES_FEAROW
- 0x0f, // SPECIES_EKANS
- 0x09, // SPECIES_ARBOK
- 0x16, // SPECIES_PIKACHU
- 0x16, // SPECIES_RAICHU
- 0x12, // SPECIES_SANDSHREW
- 0x10, // SPECIES_SANDSLASH
- 0x12, // SPECIES_NIDORAN_F
- 0x15, // SPECIES_NIDORINA
- 0x09, // SPECIES_NIDOQUEEN
- 0x12, // SPECIES_NIDORAN_M
- 0x15, // SPECIES_NIDORINO
- 0x09, // SPECIES_NIDOKING
- 0x13, // SPECIES_CLEFAIRY
- 0x13, // SPECIES_CLEFABLE
- 0x10, // SPECIES_VULPIX
- 0x01, // SPECIES_NINETALES
- 0x13, // SPECIES_JIGGLYPUFF
- 0x06, // SPECIES_WIGGLYTUFF
- 0x11, // SPECIES_ZUBAT
- 0x09, // SPECIES_GOLBAT
- 0x02, // SPECIES_ODDISH
- 0x02, // SPECIES_GLOOM
- 0x14, // SPECIES_VILEPLUME
- 0x02, // SPECIES_PARAS
- 0x08, // SPECIES_PARASECT
- 0x0a, // SPECIES_VENONAT
- 0x11, // SPECIES_VENOMOTH
- 0x09, // SPECIES_DIGLETT
- 0x09, // SPECIES_DUGTRIO
- 0x10, // SPECIES_MEOWTH
- 0x0f, // SPECIES_PERSIAN
- 0x02, // SPECIES_PSYDUCK
- 0x14, // SPECIES_GOLDUCK
- 0x10, // SPECIES_MANKEY
- 0x10, // SPECIES_PRIMEAPE
- 0x15, // SPECIES_GROWLITHE
- 0x15, // SPECIES_ARCANINE
- 0x12, // SPECIES_POLIWAG
- 0x09, // SPECIES_POLIWHIRL
- 0x0e, // SPECIES_POLIWRATH
- 0x14, // SPECIES_ABRA
- 0x14, // SPECIES_KADABRA
- 0x0d, // SPECIES_ALAKAZAM
- 0x15, // SPECIES_MACHOP
- 0x09, // SPECIES_MACHOKE
- 0x09, // SPECIES_MACHAMP
- 0x0b, // SPECIES_BELLSPROUT
- 0x0b, // SPECIES_WEEPINBELL
- 0x0b, // SPECIES_VICTREEBEL
- 0x02, // SPECIES_TENTACOOL
- 0x02, // SPECIES_TENTACRUEL
- 0x0e, // SPECIES_GEODUDE
- 0x08, // SPECIES_GRAVELER
- 0x08, // SPECIES_GOLEM
- 0x17, // SPECIES_PONYTA
- 0x15, // SPECIES_RAPIDASH
- 0x02, // SPECIES_SLOWPOKE
- 0x13, // SPECIES_SLOWBRO
- 0x0f, // SPECIES_MAGNEMITE
- 0x0f, // SPECIES_MAGNETON
- 0x02, // SPECIES_FARFETCHD
- 0x0f, // SPECIES_DODUO
- 0x15, // SPECIES_DODRIO
- 0x13, // SPECIES_SEEL
- 0x02, // SPECIES_DEWGONG
- 0x0b, // SPECIES_GRIMER
- 0x0c, // SPECIES_MUK
- 0x13, // SPECIES_SHELLDER
- 0x0f, // SPECIES_CLOYSTER
- 0x01, // SPECIES_GASTLY
- 0x01, // SPECIES_HAUNTER
- 0x14, // SPECIES_GENGAR
- 0x09, // SPECIES_ONIX
- 0x13, // SPECIES_DROWZEE
- 0x14, // SPECIES_HYPNO
- 0x0a, // SPECIES_KRABBY
- 0x09, // SPECIES_KINGLER
- 0x15, // SPECIES_VOLTORB
- 0x15, // SPECIES_ELECTRODE
- 0x02, // SPECIES_EXEGGCUTE
- 0x10, // SPECIES_EXEGGUTOR
- 0x15, // SPECIES_CUBONE
- 0x10, // SPECIES_MAROWAK
- 0x02, // SPECIES_HITMONLEE
- 0x0f, // SPECIES_HITMONCHAN
- 0x02, // SPECIES_LICKITUNG
- 0x06, // SPECIES_KOFFING
- 0x06, // SPECIES_WEEZING
- 0x0e, // SPECIES_RHYHORN
- 0x0e, // SPECIES_RHYDON
- 0x12, // SPECIES_CHANSEY
- 0x0b, // SPECIES_TANGELA
- 0x12, // SPECIES_KANGASKHAN
- 0x13, // SPECIES_HORSEA
- 0x11, // SPECIES_SEADRA
- 0x11, // SPECIES_GOLDEEN
- 0x11, // SPECIES_SEAKING
- 0x13, // SPECIES_STARYU
- 0x19, // SPECIES_STARMIE
- 0x14, // SPECIES_MR_MIME
- 0x0f, // SPECIES_SCYTHER
- 0x13, // SPECIES_JYNX
- 0x16, // SPECIES_ELECTABUZZ
- 0x17, // SPECIES_MAGMAR
- 0x0e, // SPECIES_PINSIR
- 0x0e, // SPECIES_TAUROS
- 0x10, // SPECIES_MAGIKARP
- 0x09, // SPECIES_GYARADOS
- 0x19, // SPECIES_LAPRAS
- 0x05, // SPECIES_DITTO
- 0x12, // SPECIES_EEVEE
- 0x19, // SPECIES_VAPOREON
- 0x16, // SPECIES_JOLTEON
- 0x17, // SPECIES_FLAREON
- 0x01, // SPECIES_PORYGON
- 0x13, // SPECIES_OMANYTE
- 0x13, // SPECIES_OMASTAR
- 0x13, // SPECIES_KABUTO
- 0x15, // SPECIES_KABUTOPS
- 0x15, // SPECIES_AERODACTYL
- 0x13, // SPECIES_SNORLAX
- 0x19, // SPECIES_ARTICUNO
- 0x16, // SPECIES_ZAPDOS
- 0x17, // SPECIES_MOLTRES
- 0x02, // SPECIES_DRATINI
- 0x0f, // SPECIES_DRAGONAIR
- 0x09, // SPECIES_DRAGONITE
- 0x0d, // SPECIES_MEWTWO
- 0x12, // SPECIES_MEW
- 0x12, // SPECIES_CHIKORITA
- 0x02, // SPECIES_BAYLEEF
- 0x09, // SPECIES_MEGANIUM
- 0x12, // SPECIES_CYNDAQUIL
- 0x15, // SPECIES_QUILAVA
- 0x17, // SPECIES_TYPHLOSION
- 0x15, // SPECIES_TOTODILE
- 0x15, // SPECIES_CROCONAW
- 0x09, // SPECIES_FERALIGATR
- 0x12, // SPECIES_SENTRET
- 0x10, // SPECIES_FURRET
- 0x11, // SPECIES_HOOTHOOT
- 0x0f, // SPECIES_NOCTOWL
- 0x0a, // SPECIES_LEDYBA
- 0x11, // SPECIES_LEDIAN
- 0x0a, // SPECIES_SPINARAK
- 0x02, // SPECIES_ARIADOS
- 0x0f, // SPECIES_CROBAT
- 0x0b, // SPECIES_CHINCHOU
- 0x16, // SPECIES_LANTURN
- 0x12, // SPECIES_PICHU
- 0x13, // SPECIES_CLEFFA
- 0x13, // SPECIES_IGGLYBUFF
- 0x13, // SPECIES_TOGEPI
- 0x11, // SPECIES_TOGETIC
- 0x12, // SPECIES_NATU
- 0x14, // SPECIES_XATU
- 0x12, // SPECIES_MAREEP
- 0x13, // SPECIES_FLAAFFY
- 0x16, // SPECIES_AMPHAROS
- 0x11, // SPECIES_BELLOSSOM
- 0x12, // SPECIES_MARILL
- 0x13, // SPECIES_AZUMARILL
- 0x02, // SPECIES_SUDOWOODO
- 0x10, // SPECIES_POLITOED
- 0x11, // SPECIES_HOPPIP
- 0x11, // SPECIES_SKIPLOOM
- 0x11, // SPECIES_JUMPLUFF
- 0x10, // SPECIES_AIPOM
- 0x13, // SPECIES_SUNKERN
- 0x02, // SPECIES_SUNFLORA
- 0x11, // SPECIES_YANMA
- 0x0b, // SPECIES_WOOPER
- 0x02, // SPECIES_QUAGSIRE
- 0x14, // SPECIES_ESPEON
- 0x14, // SPECIES_UMBREON
- 0x12, // SPECIES_MURKROW
- 0x13, // SPECIES_SLOWKING
- 0x01, // SPECIES_MISDREAVUS
- 0x14, // SPECIES_UNOWN
- 0x0b, // SPECIES_WOBBUFFET
- 0x14, // SPECIES_GIRAFARIG
- 0x08, // SPECIES_PINECO
- 0x09, // SPECIES_FORRETRESS
- 0x0f, // SPECIES_DUNSPARCE
- 0x05, // SPECIES_GLIGAR
- 0x09, // SPECIES_STEELIX
- 0x15, // SPECIES_SNUBBULL
- 0x09, // SPECIES_GRANBULL
- 0x0d, // SPECIES_QWILFISH
- 0x15, // SPECIES_SCIZOR
- 0x13, // SPECIES_SHUCKLE
- 0x15, // SPECIES_HERACROSS
- 0x0f, // SPECIES_SNEASEL
- 0x13, // SPECIES_TEDDIURSA
- 0x09, // SPECIES_URSARING
- 0x17, // SPECIES_SLUGMA
- 0x17, // SPECIES_MAGCARGO
- 0x0a, // SPECIES_SWINUB
- 0x08, // SPECIES_PILOSWINE
- 0x02, // SPECIES_CORSOLA
- 0x02, // SPECIES_REMORAID
- 0x05, // SPECIES_OCTILLERY
- 0x0f, // SPECIES_DELIBIRD
- 0x02, // SPECIES_MANTINE
- 0x15, // SPECIES_SKARMORY
- 0x09, // SPECIES_HOUNDOUR
- 0x09, // SPECIES_HOUNDOOM
- 0x19, // SPECIES_KINGDRA
- 0x15, // SPECIES_PHANPY
- 0x0e, // SPECIES_DONPHAN
- 0x01, // SPECIES_PORYGON2
- 0x13, // SPECIES_STANTLER
- 0x02, // SPECIES_SMEARGLE
- 0x0f, // SPECIES_TYROGUE
- 0x07, // SPECIES_HITMONTOP
- 0x02, // SPECIES_SMOOCHUM
- 0x08, // SPECIES_ELEKID
- 0x17, // SPECIES_MAGBY
- 0x02, // SPECIES_MILTANK
- 0x13, // SPECIES_BLISSEY
- 0x16, // SPECIES_RAIKOU
- 0x17, // SPECIES_ENTEI
- 0x19, // SPECIES_SUICUNE
- 0x0e, // SPECIES_LARVITAR
- 0x09, // SPECIES_PUPITAR
- 0x0e, // SPECIES_TYRANITAR
- 0x19, // SPECIES_LUGIA
- 0x17, // SPECIES_HO_OH
- 0x18, // SPECIES_CELEBI
- 0x00, // SPECIES_OLD_UNOWN_B
- 0x00, // SPECIES_OLD_UNOWN_C
- 0x00, // SPECIES_OLD_UNOWN_D
- 0x00, // SPECIES_OLD_UNOWN_E
- 0x00, // SPECIES_OLD_UNOWN_F
- 0x00, // SPECIES_OLD_UNOWN_G
- 0x00, // SPECIES_OLD_UNOWN_H
- 0x00, // SPECIES_OLD_UNOWN_I
- 0x00, // SPECIES_OLD_UNOWN_J
- 0x00, // SPECIES_OLD_UNOWN_K
- 0x00, // SPECIES_OLD_UNOWN_L
- 0x00, // SPECIES_OLD_UNOWN_M
- 0x00, // SPECIES_OLD_UNOWN_N
- 0x00, // SPECIES_OLD_UNOWN_O
- 0x00, // SPECIES_OLD_UNOWN_P
- 0x00, // SPECIES_OLD_UNOWN_Q
- 0x00, // SPECIES_OLD_UNOWN_R
- 0x00, // SPECIES_OLD_UNOWN_S
- 0x00, // SPECIES_OLD_UNOWN_T
- 0x00, // SPECIES_OLD_UNOWN_U
- 0x00, // SPECIES_OLD_UNOWN_V
- 0x00, // SPECIES_OLD_UNOWN_W
- 0x00, // SPECIES_OLD_UNOWN_X
- 0x00, // SPECIES_OLD_UNOWN_Y
- 0x00, // SPECIES_OLD_UNOWN_Z
- 0x10, // SPECIES_TREECKO
- 0x15, // SPECIES_GROVYLE
- 0x09, // SPECIES_SCEPTILE
- 0x12, // SPECIES_TORCHIC
- 0x10, // SPECIES_COMBUSKEN
- 0x17, // SPECIES_BLAZIKEN
- 0x02, // SPECIES_MUDKIP
- 0x12, // SPECIES_MARSHTOMP
- 0x19, // SPECIES_SWAMPERT
- 0x12, // SPECIES_POOCHYENA
- 0x08, // SPECIES_MIGHTYENA
- 0x0f, // SPECIES_ZIGZAGOON
- 0x15, // SPECIES_LINOONE
- 0x0b, // SPECIES_WURMPLE
- 0x08, // SPECIES_SILCOON
- 0x11, // SPECIES_BEAUTIFLY
- 0x08, // SPECIES_CASCOON
- 0x0f, // SPECIES_DUSTOX
- 0x02, // SPECIES_LOTAD
- 0x10, // SPECIES_LOMBRE
- 0x10, // SPECIES_LUDICOLO
- 0x13, // SPECIES_SEEDOT
- 0x09, // SPECIES_NUZLEAF
- 0x14, // SPECIES_SHIFTRY
- 0x0a, // SPECIES_NINCADA
- 0x01, // SPECIES_NINJASK
- 0x14, // SPECIES_SHEDINJA
- 0x12, // SPECIES_TAILLOW
- 0x15, // SPECIES_SWELLOW
- 0x13, // SPECIES_SHROOMISH
- 0x15, // SPECIES_BRELOOM
- 0x07, // SPECIES_SPINDA
- 0x11, // SPECIES_WINGULL
- 0x11, // SPECIES_PELIPPER
- 0x03, // SPECIES_SURSKIT
- 0x11, // SPECIES_MASQUERAIN
- 0x19, // SPECIES_WAILMER
- 0x19, // SPECIES_WAILORD
- 0x13, // SPECIES_SKITTY
- 0x12, // SPECIES_DELCATTY
- 0x01, // SPECIES_KECLEON
- 0x13, // SPECIES_BALTOY
- 0x14, // SPECIES_CLAYDOL
- 0x0e, // SPECIES_NOSEPASS
- 0x17, // SPECIES_TORKOAL
- 0x01, // SPECIES_SABLEYE
- 0x0b, // SPECIES_BARBOACH
- 0x09, // SPECIES_WHISCASH
- 0x04, // SPECIES_LUVDISC
- 0x0f, // SPECIES_CORPHISH
- 0x15, // SPECIES_CRAWDAUNT
- 0x03, // SPECIES_FEEBAS
- 0x19, // SPECIES_MILOTIC
- 0x04, // SPECIES_CARVANHA
- 0x15, // SPECIES_SHARPEDO
- 0x13, // SPECIES_TRAPINCH
- 0x01, // SPECIES_VIBRAVA
- 0x0f, // SPECIES_FLYGON
- 0x0e, // SPECIES_MAKUHITA
- 0x0e, // SPECIES_HARIYAMA
- 0x15, // SPECIES_ELECTRIKE
- 0x09, // SPECIES_MANECTRIC
- 0x0e, // SPECIES_NUMEL
- 0x17, // SPECIES_CAMERUPT
- 0x13, // SPECIES_SPHEAL
- 0x09, // SPECIES_SEALEO
- 0x09, // SPECIES_WALREIN
- 0x0a, // SPECIES_CACNEA
- 0x08, // SPECIES_CACTURNE
- 0x0f, // SPECIES_SNORUNT
- 0x0f, // SPECIES_GLALIE
- 0x13, // SPECIES_LUNATONE
- 0x13, // SPECIES_SOLROCK
- 0x10, // SPECIES_AZURILL
- 0x10, // SPECIES_SPOINK
- 0x14, // SPECIES_GRUMPIG
- 0x12, // SPECIES_PLUSLE
- 0x12, // SPECIES_MINUN
- 0x09, // SPECIES_MAWILE
- 0x14, // SPECIES_MEDITITE
- 0x14, // SPECIES_MEDICHAM
- 0x11, // SPECIES_SWABLU
- 0x11, // SPECIES_ALTARIA
- 0x12, // SPECIES_WYNAUT
- 0x01, // SPECIES_DUSKULL
- 0x01, // SPECIES_DUSCLOPS
- 0x18, // SPECIES_ROSELIA
- 0x02, // SPECIES_SLAKOTH
- 0x10, // SPECIES_VIGOROTH
- 0x08, // SPECIES_SLAKING
- 0x0b, // SPECIES_GULPIN
- 0x0b, // SPECIES_SWALOT
- 0x0e, // SPECIES_TROPIUS
- 0x13, // SPECIES_WHISMUR
- 0x09, // SPECIES_LOUDRED
- 0x0d, // SPECIES_EXPLOUD
- 0x13, // SPECIES_CLAMPERL
- 0x11, // SPECIES_HUNTAIL
- 0x11, // SPECIES_GOREBYSS
- 0x14, // SPECIES_ABSOL
- 0x01, // SPECIES_SHUPPET
- 0x01, // SPECIES_BANETTE
- 0x0b, // SPECIES_SEVIPER
- 0x15, // SPECIES_ZANGOOSE
- 0x02, // SPECIES_RELICANTH
- 0x15, // SPECIES_ARON
- 0x09, // SPECIES_LAIRON
- 0x0e, // SPECIES_AGGRON
- 0x11, // SPECIES_CASTFORM
- 0x11, // SPECIES_VOLBEAT
- 0x11, // SPECIES_ILLUMISE
- 0x0c, // SPECIES_LILEEP
- 0x0b, // SPECIES_CRADILY
- 0x0f, // SPECIES_ANORITH
- 0x09, // SPECIES_ARMALDO
- 0x14, // SPECIES_RALTS
- 0x14, // SPECIES_KIRLIA
- 0x14, // SPECIES_GARDEVOIR
- 0x09, // SPECIES_BAGON
- 0x09, // SPECIES_SHELGON
- 0x08, // SPECIES_SALAMENCE
- 0x0f, // SPECIES_BELDUM
- 0x15, // SPECIES_METANG
- 0x09, // SPECIES_METAGROSS
- 0x09, // SPECIES_REGIROCK
- 0x09, // SPECIES_REGICE
- 0x09, // SPECIES_REGISTEEL
- 0x19, // SPECIES_KYOGRE
- 0x17, // SPECIES_GROUDON
- 0x0d, // SPECIES_RAYQUAZA
- 0x01, // SPECIES_LATIAS
- 0x01, // SPECIES_LATIOS
- 0x11, // SPECIES_JIRACHI
- 0x14, // SPECIES_DEOXYS
- 0x11, // SPECIES_CHIMECHO
+ [SPECIES_BULBASAUR] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_IVYSAUR] = BACK_ANIM_H_SLIDE,
+ [SPECIES_VENUSAUR] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_CHARMANDER] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_CHARMELEON] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_CHARIZARD] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_SQUIRTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_WARTORTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_BLASTOISE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_CATERPIE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_METAPOD] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_BUTTERFREE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_WEEDLE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_KAKUNA] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_BEEDRILL] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_PIDGEY] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_PIDGEOTTO] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_PIDGEOT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_RATTATA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_RATICATE] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_SPEAROW] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_FEAROW] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_EKANS] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_ARBOK] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_PIKACHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_RAICHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_SANDSHREW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_SANDSLASH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_NIDORAN_F] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_NIDORINA] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_NIDOQUEEN] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_NIDORAN_M] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_NIDORINO] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_NIDOKING] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_CLEFAIRY] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_CLEFABLE] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_VULPIX] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_NINETALES] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_JIGGLYPUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_WIGGLYTUFF] = BACK_ANIM_GROW_1,
+ [SPECIES_ZUBAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_GOLBAT] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_ODDISH] = BACK_ANIM_H_SLIDE,
+ [SPECIES_GLOOM] = BACK_ANIM_H_SLIDE,
+ [SPECIES_VILEPLUME] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_PARAS] = BACK_ANIM_H_SLIDE,
+ [SPECIES_PARASECT] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_VENONAT] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_VENOMOTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_DIGLETT] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_DUGTRIO] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_MEOWTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_PERSIAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_PSYDUCK] = BACK_ANIM_H_SLIDE,
+ [SPECIES_GOLDUCK] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_MANKEY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_PRIMEAPE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_GROWLITHE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_ARCANINE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_POLIWAG] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_POLIWHIRL] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_POLIWRATH] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_ABRA] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_KADABRA] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_ALAKAZAM] = BACK_ANIM_GROW_2,
+ [SPECIES_MACHOP] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_MACHOKE] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_MACHAMP] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_BELLSPROUT] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_WEEPINBELL] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_VICTREEBEL] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_TENTACOOL] = BACK_ANIM_H_SLIDE,
+ [SPECIES_TENTACRUEL] = BACK_ANIM_H_SLIDE,
+ [SPECIES_GEODUDE] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_GRAVELER] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_GOLEM] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_PONYTA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_RAPIDASH] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SLOWPOKE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_SLOWBRO] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_MAGNEMITE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_MAGNETON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_FARFETCHD] = BACK_ANIM_H_SLIDE,
+ [SPECIES_DODUO] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_DODRIO] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SEEL] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_DEWGONG] = BACK_ANIM_H_SLIDE,
+ [SPECIES_GRIMER] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_MUK] = BACK_ANIM_HORIZONTAL_STRETCH,
+ [SPECIES_SHELLDER] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_CLOYSTER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_GASTLY] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_HAUNTER] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_GENGAR] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_ONIX] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_DROWZEE] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_HYPNO] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_KRABBY] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_KINGLER] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_VOLTORB] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_ELECTRODE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_EXEGGCUTE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_EXEGGUTOR] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_CUBONE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_MAROWAK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_HITMONLEE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_HITMONCHAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_LICKITUNG] = BACK_ANIM_H_SLIDE,
+ [SPECIES_KOFFING] = BACK_ANIM_GROW_1,
+ [SPECIES_WEEZING] = BACK_ANIM_GROW_1,
+ [SPECIES_RHYHORN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_RHYDON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_CHANSEY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_TANGELA] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_KANGASKHAN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_HORSEA] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SEADRA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_GOLDEEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_SEAKING] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_STARYU] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_STARMIE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_MR_MIME] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_SCYTHER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_JYNX] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_ELECTABUZZ] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_MAGMAR] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_PINSIR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_TAUROS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_MAGIKARP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_GYARADOS] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_LAPRAS] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_DITTO] = BACK_ANIM_SHRINK_GROW_1,
+ [SPECIES_EEVEE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_VAPOREON] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_JOLTEON] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_FLAREON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_PORYGON] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_OMANYTE] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_OMASTAR] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_KABUTO] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_KABUTOPS] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_AERODACTYL] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SNORLAX] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_ARTICUNO] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_ZAPDOS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_MOLTRES] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_DRATINI] = BACK_ANIM_H_SLIDE,
+ [SPECIES_DRAGONAIR] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_DRAGONITE] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_MEWTWO] = BACK_ANIM_GROW_2,
+ [SPECIES_MEW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_CHIKORITA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_BAYLEEF] = BACK_ANIM_H_SLIDE,
+ [SPECIES_MEGANIUM] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_CYNDAQUIL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_QUILAVA] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_TYPHLOSION] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_TOTODILE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_CROCONAW] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_FERALIGATR] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SENTRET] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_FURRET] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_HOOTHOOT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_NOCTOWL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_LEDYBA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_LEDIAN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_SPINARAK] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_ARIADOS] = BACK_ANIM_H_SLIDE,
+ [SPECIES_CROBAT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_CHINCHOU] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_LANTURN] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_PICHU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_CLEFFA] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_IGGLYBUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_TOGEPI] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_TOGETIC] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_NATU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_XATU] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_MAREEP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_FLAAFFY] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_AMPHAROS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_BELLOSSOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_MARILL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_AZUMARILL] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SUDOWOODO] = BACK_ANIM_H_SLIDE,
+ [SPECIES_POLITOED] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_HOPPIP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_SKIPLOOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_JUMPLUFF] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_AIPOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_SUNKERN] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SUNFLORA] = BACK_ANIM_H_SLIDE,
+ [SPECIES_YANMA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_WOOPER] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_QUAGSIRE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_ESPEON] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_UMBREON] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_MURKROW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_SLOWKING] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_MISDREAVUS] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_UNOWN] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_WOBBUFFET] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_GIRAFARIG] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_PINECO] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_FORRETRESS] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_DUNSPARCE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_GLIGAR] = BACK_ANIM_SHRINK_GROW_1,
+ [SPECIES_STEELIX] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SNUBBULL] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_GRANBULL] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_QWILFISH] = BACK_ANIM_GROW_2,
+ [SPECIES_SCIZOR] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SHUCKLE] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_HERACROSS] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SNEASEL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_TEDDIURSA] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_URSARING] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SLUGMA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_MAGCARGO] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_SWINUB] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_PILOSWINE] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_CORSOLA] = BACK_ANIM_H_SLIDE,
+ [SPECIES_REMORAID] = BACK_ANIM_H_SLIDE,
+ [SPECIES_OCTILLERY] = BACK_ANIM_SHRINK_GROW_1,
+ [SPECIES_DELIBIRD] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_MANTINE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_SKARMORY] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_HOUNDOUR] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_HOUNDOOM] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_KINGDRA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_PHANPY] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_DONPHAN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_PORYGON2] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_STANTLER] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SMEARGLE] = BACK_ANIM_H_SLIDE,
+ [SPECIES_TYROGUE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_HITMONTOP] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
+ [SPECIES_SMOOCHUM] = BACK_ANIM_H_SLIDE,
+ [SPECIES_ELEKID] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_MAGBY] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_MILTANK] = BACK_ANIM_H_SLIDE,
+ [SPECIES_BLISSEY] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_RAIKOU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
+ [SPECIES_ENTEI] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_SUICUNE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_LARVITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_PUPITAR] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_TYRANITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_LUGIA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_HO_OH] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_CELEBI] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
+ [SPECIES_TREECKO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_GROVYLE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SCEPTILE] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_TORCHIC] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_COMBUSKEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_BLAZIKEN] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_MUDKIP] = BACK_ANIM_H_SLIDE,
+ [SPECIES_MARSHTOMP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_SWAMPERT] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_POOCHYENA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_MIGHTYENA] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_ZIGZAGOON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_LINOONE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_WURMPLE] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_SILCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_BEAUTIFLY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_CASCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_DUSTOX] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_LOTAD] = BACK_ANIM_H_SLIDE,
+ [SPECIES_LOMBRE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_LUDICOLO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_SEEDOT] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_NUZLEAF] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SHIFTRY] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_NINCADA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_NINJASK] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_SHEDINJA] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_TAILLOW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_SWELLOW] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SHROOMISH] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_BRELOOM] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_SPINDA] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
+ [SPECIES_WINGULL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_PELIPPER] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_SURSKIT] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
+ [SPECIES_MASQUERAIN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_WAILMER] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_WAILORD] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_SKITTY] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_DELCATTY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_KECLEON] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_BALTOY] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_CLAYDOL] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_NOSEPASS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_TORKOAL] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_SABLEYE] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_BARBOACH] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_WHISCASH] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_LUVDISC] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
+ [SPECIES_CORPHISH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_CRAWDAUNT] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_FEEBAS] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
+ [SPECIES_MILOTIC] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_CARVANHA] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
+ [SPECIES_SHARPEDO] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_TRAPINCH] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_VIBRAVA] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_FLYGON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_MAKUHITA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_HARIYAMA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_ELECTRIKE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_MANECTRIC] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_NUMEL] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_CAMERUPT] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_SPHEAL] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SEALEO] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_WALREIN] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_CACNEA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
+ [SPECIES_CACTURNE] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_SNORUNT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_GLALIE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_LUNATONE] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_SOLROCK] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_AZURILL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_SPOINK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_GRUMPIG] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_PLUSLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_MINUN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_MAWILE] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_MEDITITE] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_MEDICHAM] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_SWABLU] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_ALTARIA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_WYNAUT] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
+ [SPECIES_DUSKULL] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_DUSCLOPS] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_ROSELIA] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
+ [SPECIES_SLAKOTH] = BACK_ANIM_H_SLIDE,
+ [SPECIES_VIGOROTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
+ [SPECIES_SLAKING] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_GULPIN] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_SWALOT] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_TROPIUS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_WHISMUR] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_LOUDRED] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_EXPLOUD] = BACK_ANIM_GROW_2,
+ [SPECIES_CLAMPERL] = BACK_ANIM_DIP_RIGHT_SIDE,
+ [SPECIES_HUNTAIL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_GOREBYSS] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_ABSOL] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_SHUPPET] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_BANETTE] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_SEVIPER] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_ZANGOOSE] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_RELICANTH] = BACK_ANIM_H_SLIDE,
+ [SPECIES_ARON] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_LAIRON] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_AGGRON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
+ [SPECIES_CASTFORM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_VOLBEAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_ILLUMISE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_LILEEP] = BACK_ANIM_HORIZONTAL_STRETCH,
+ [SPECIES_CRADILY] = BACK_ANIM_VERTICAL_STRETCH,
+ [SPECIES_ANORITH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_ARMALDO] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_RALTS] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_KIRLIA] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_GARDEVOIR] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_BAGON] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SHELGON] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_SALAMENCE] = BACK_ANIM_HORIZONTAL_SHAKE,
+ [SPECIES_BELDUM] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
+ [SPECIES_METANG] = BACK_ANIM_JOLT_RIGHT,
+ [SPECIES_METAGROSS] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_REGIROCK] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_REGICE] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_REGISTEEL] = BACK_ANIM_VERTICAL_SHAKE,
+ [SPECIES_KYOGRE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
+ [SPECIES_GROUDON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
+ [SPECIES_RAYQUAZA] = BACK_ANIM_GROW_2,
+ [SPECIES_LATIAS] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_LATIOS] = BACK_ANIM_H_SLIDE_QUICK,
+ [SPECIES_JIRACHI] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
+ [SPECIES_DEOXYS] = BACK_ANIM_SHRINK_GROW_2,
+ [SPECIES_CHIMECHO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
};
static const u8 sUnknown_0860AA64[][2] =
diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c
index db2a07909..e1c2c79eb 100644
--- a/src/pokemon_summary_screen.c
+++ b/src/pokemon_summary_screen.c
@@ -314,7 +314,7 @@ static const s8 gUnknown_0861CC1C[] = {0, 2, 3, 1, 4, 5};
static const struct WindowTemplate gUnknown_0861CC24[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -323,7 +323,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 1,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -332,7 +332,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 23,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -341,7 +341,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 45,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@@ -350,7 +350,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 67,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -359,7 +359,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 89,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -368,7 +368,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 105,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@@ -377,7 +377,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 121,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 0,
@@ -386,7 +386,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 18,
@@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 6,
.width = 18,
@@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 173,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 10,
.tilemapTop = 7,
.width = 6,
@@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 209,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 7,
.width = 5,
@@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 245,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 10,
.tilemapTop = 14,
.width = 11,
@@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 275,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 18,
.width = 6,
@@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 319,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 9,
@@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 331,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 5,
@@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 367,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 0,
@@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 2,
.width = 4,
@@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 9,
@@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 395,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 14,
.width = 9,
@@ -498,7 +498,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
static const struct WindowTemplate gUnknown_0861CCCC[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 11,
@@ -507,7 +507,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 449,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 7,
@@ -516,7 +516,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 471,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 9,
.width = 18,
@@ -525,7 +525,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 485,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 11,
.tilemapTop = 14,
.width = 18,
@@ -537,7 +537,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
static const struct WindowTemplate gUnknown_0861CCEC[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 10,
.tilemapTop = 4,
.width = 10,
@@ -546,7 +546,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 449,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 20,
.tilemapTop = 4,
.width = 10,
@@ -555,7 +555,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 469,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 16,
.tilemapTop = 7,
.width = 6,
@@ -564,7 +564,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 489,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 27,
.tilemapTop = 7,
.width = 3,
@@ -573,7 +573,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 525,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 24,
.tilemapTop = 14,
.width = 6,
@@ -585,7 +585,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
static const struct WindowTemplate gUnknown_0861CD14[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 15,
.tilemapTop = 4,
.width = 9,
@@ -594,7 +594,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 449,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 24,
.tilemapTop = 4,
.width = 6,
@@ -603,7 +603,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 539,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 10,
.tilemapTop = 15,
.width = 20,
diff --git a/src/psychic.c b/src/psychic.c
new file mode 100644
index 000000000..efd15f746
--- /dev/null
+++ b/src/psychic.c
@@ -0,0 +1,405 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_810F1EC(struct Sprite *);
+extern void sub_810F1EC(struct Sprite *);
+extern void sub_810F58C(struct Sprite *);
+extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
+extern void sub_810F634(struct Sprite *);
+extern void sub_810F6B0(struct Sprite *);
+extern void sub_810FBA8(struct Sprite *);
+extern void sub_810FDF0(struct Sprite *);
+extern void sub_80A77C8(struct Sprite *);
+extern void sub_8110240(struct Sprite *);
+
+const union AffineAnimCmd gUnknown_0859652C[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFFE, 0xFFFE, -10, 120),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596544[] =
+{
+ gUnknown_0859652C,
+};
+
+const struct SpriteTemplate gUnknown_08596548 =
+{
+ .tileTag = ANIM_TAG_SPIRAL,
+ .paletteTag = ANIM_TAG_SPIRAL,
+ .oam = &gUnknown_08524A9C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596544,
+ .callback = sub_80A77C8,
+};
+
+const struct SpriteTemplate gUnknown_08596560 =
+{
+ .tileTag = ANIM_TAG_GREEN_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_GREEN_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F1EC,
+};
+
+const struct SpriteTemplate gUnknown_08596578 =
+{
+ .tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F1EC,
+};
+
+const struct SpriteTemplate gUnknown_08596590 =
+{
+ .tileTag = ANIM_TAG_RED_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_RED_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F1EC,
+};
+
+const struct SpriteTemplate gUnknown_085965A8 =
+{
+ .tileTag = ANIM_TAG_GRAY_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_GRAY_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F1EC,
+};
+
+const struct SpriteTemplate gUnknown_085965C0 =
+{
+ .tileTag = ANIM_TAG_ORANGE_LIGHT_WALL,
+ .paletteTag = ANIM_TAG_ORANGE_LIGHT_WALL,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F1EC,
+};
+
+const union AnimCmd gUnknown_085965D8[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(64, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085965F0[] =
+{
+ gUnknown_085965D8,
+};
+
+const struct SpriteTemplate gUnknown_085965F4 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_4,
+ .paletteTag = ANIM_TAG_SPARKLE_4,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085965F0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F58C,
+};
+
+const union AnimCmd gUnknown_0859660C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596620[] =
+{
+ gUnknown_0859660C,
+};
+
+const struct SpriteTemplate gUnknown_08596624 =
+{
+ .tileTag = ANIM_TAG_SPARKLE_3,
+ .paletteTag = ANIM_TAG_SPARKLE_3,
+ .oam = &gUnknown_0852490C,
+ .anims = gUnknown_08596620,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F58C,
+};
+
+const struct SpriteTemplate gUnknown_0859663C =
+{
+ .tileTag = ANIM_TAG_GOLD_RING,
+ .paletteTag = ANIM_TAG_GOLD_RING,
+ .oam = &gUnknown_08524954,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = TranslateAnimSpriteToTargetMonLocation,
+};
+
+const union AnimCmd gUnknown_08596654[] =
+{
+ ANIMCMD_FRAME(8, 60, .hFlip = TRUE),
+ ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
+ ANIMCMD_LOOP(0),
+ ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
+ ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
+ ANIMCMD_LOOP(1),
+ ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
+ ANIMCMD_FRAME(24, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(32, 3, .hFlip = TRUE),
+ ANIMCMD_FRAME(40, 22, .hFlip = TRUE),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596694[] =
+{
+ ANIMCMD_FRAME(8, 60),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(8, 22),
+ ANIMCMD_LOOP(0),
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_LOOP(1),
+ ANIMCMD_FRAME(8, 22),
+ ANIMCMD_FRAME(24, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(40, 22),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_085966D4[] =
+{
+ gUnknown_08596654,
+ gUnknown_08596694,
+};
+
+const struct SpriteTemplate gUnknown_085966DC =
+{
+ .tileTag = ANIM_TAG_BENT_SPOON,
+ .paletteTag = ANIM_TAG_BENT_SPOON,
+ .oam = &gUnknown_08524954,
+ .anims = gUnknown_085966D4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F634,
+};
+
+const union AnimCmd gUnknown_085966F4[] =
+{
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(16, 6),
+ ANIMCMD_FRAME(32, 6),
+ ANIMCMD_FRAME(48, 6),
+ ANIMCMD_FRAME(64, 6),
+ ANIMCMD_FRAME(80, 6),
+ ANIMCMD_FRAME(96, 18),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596714[] =
+{
+ gUnknown_085966F4,
+};
+
+const union AffineAnimCmd gUnknown_08596718[] =
+{
+ AFFINEANIMCMD_FRAME(0, 0, 4, 4),
+ AFFINEANIMCMD_FRAME(0, 0, -4, 8),
+ AFFINEANIMCMD_FRAME(0, 0, 4, 4),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596740[] =
+{
+ gUnknown_08596718,
+};
+
+const struct SpriteTemplate gUnknown_08596744 =
+{
+ .tileTag = ANIM_TAG_AMNESIA,
+ .paletteTag = ANIM_TAG_AMNESIA,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596714,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810F6B0,
+};
+
+const union AffineAnimCmd gUnknown_0859675C[] =
+{
+ AFFINEANIMCMD_FRAME(-8, 10, 0, 16),
+ AFFINEANIMCMD_FRAME(18, -18, 0, 16),
+ AFFINEANIMCMD_FRAME(-20, 16, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_0859677C[] =
+{
+ AFFINEANIMCMD_FRAME(64, -4, 0, 20),
+ AFFINEANIMCMD_FRAME(0, 0, 0, -56),
+ AFFINEANIMCMD_END,
+};
+
+const struct SpriteTemplate gUnknown_08596794 =
+{
+ .tileTag = ANIM_TAG_HOLLOW_ORB,
+ .paletteTag = ANIM_TAG_HOLLOW_ORB,
+ .oam = &gUnknown_08524A2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+const struct SpriteTemplate gUnknown_085967AC =
+{
+ .tileTag = 10250,
+ .paletteTag = 10250,
+ .oam = &gUnknown_0852491C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810FBA8,
+};
+
+const union AffineAnimCmd gUnknown_085967C4[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gUnknown_085967DC[] =
+{
+ AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd gUnknown_08596804[] =
+{
+ AFFINEANIMCMD_FRAME(0xD0, 0xD0, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd gUnknown_0859682C[] =
+{
+ AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08596854[] =
+{
+ gUnknown_085967C4,
+ gUnknown_085967DC,
+ gUnknown_08596804,
+ gUnknown_0859682C,
+};
+
+const struct SpriteTemplate gUnknown_08596864 =
+{
+ .tileTag = ANIM_TAG_BLUEGREEN_ORB,
+ .paletteTag = ANIM_TAG_BLUEGREEN_ORB,
+ .oam = &gUnknown_0852496C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596854,
+ .callback = sub_810FDF0,
+};
+
+const union AffineAnimCmd gUnknown_0859687C[] =
+{
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 120),
+ AFFINEANIMCMD_END_ALT(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08596894[] =
+{
+ gUnknown_0859687C,
+};
+
+const struct SpriteTemplate gUnknown_08596898 =
+{
+ .tileTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596894,
+ .callback = sub_80A77C8,
+};
+
+const union AffineAnimCmd gUnknown_085968B0[] =
+{
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 17),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
+ AFFINEANIMCMD_LOOP(4),
+ AFFINEANIMCMD_LOOP(0),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 5),
+ AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 5),
+ AFFINEANIMCMD_LOOP(7),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_08596908[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFEC, 0x18, 0, 15),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_08596918[] =
+{
+ gUnknown_085968B0,
+ gUnknown_08596908,
+};
+
+const struct SpriteTemplate gUnknown_08596920 =
+{
+ .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
+ .oam = &gUnknown_08524AFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08596918,
+ .callback = sub_8110240,
+};
diff --git a/src/rock.c b/src/rock.c
new file mode 100644
index 000000000..83af52865
--- /dev/null
+++ b/src/rock.c
@@ -0,0 +1,293 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_81109F0(struct Sprite *);
+extern void sub_8110AB4(struct Sprite *);
+extern void sub_8110B38(struct Sprite *);
+extern void sub_8110E4C(struct Sprite *);
+extern void sub_8110F30(struct Sprite *);
+extern void sub_811131C(struct Sprite *);
+extern void sub_8111388(struct Sprite *);
+extern void sub_8111418(struct Sprite *);
+extern void sub_8111444(struct Sprite *);
+extern void sub_80FF268(struct Sprite *);
+extern void sub_80A8EE4(struct Sprite *);
+
+extern const union AnimCmd *const gUnknown_085950E0[];
+extern const union AnimCmd *const gUnknown_085954D0[];
+
+const union AnimCmd gUnknown_08596AE0[] =
+{
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596AE8[] =
+{
+ ANIMCMD_FRAME(48, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596AF0[] =
+{
+ ANIMCMD_FRAME(64, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596AF8[] =
+{
+ gUnknown_08596AE0,
+ gUnknown_08596AE8,
+ gUnknown_08596AF0,
+};
+
+const struct SpriteTemplate gUnknown_08596B04 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596AF8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81109F0,
+};
+
+const struct SpriteTemplate gUnknown_08596B1C =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596AF8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110AB4,
+};
+
+const struct SpriteTemplate gUnknown_08596B34 =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110B38,
+};
+
+const union AffineAnimCmd gUnknown_08596B4C[] =
+{
+ AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x2, 0xFFFD, 0, 5),
+ AFFINEANIMCMD_FRAME(0xFFFE, 0x3, 0, 5),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd *const gUnknown_08596B6C[] =
+{
+ gUnknown_08596B4C,
+};
+
+const struct SpriteTemplate gUnknown_08596B70 =
+{
+ .tileTag = ANIM_TAG_WATER_ORB,
+ .paletteTag = ANIM_TAG_WATER_ORB,
+ .oam = &gUnknown_08524A8C,
+ .anims = gUnknown_085950E0,
+ .images = NULL,
+ .affineAnims = gUnknown_08596B6C,
+ .callback = sub_8110B38,
+};
+
+const struct SpriteTemplate gUnknown_08596B88 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_085954D0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110B38,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8596BA0 =
+{
+ .tileTag = ANIM_TAG_FLYING_DIRT,
+ .paletteTag = ANIM_TAG_FLYING_DIRT,
+ .oam = &gUnknown_08524934,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110E4C,
+};
+
+const struct Subsprite gUnknown_08596BB8[] =
+{
+ {.x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 0, .priority = 1},
+ {.x = 16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 8, .priority = 1},
+};
+
+const struct SubspriteTable gUnknown_08596BC0[] =
+{
+ {ARRAY_COUNT(gUnknown_08596BB8), gUnknown_08596BB8},
+};
+
+const union AnimCmd gUnknown_08596BC8[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596BD0[] =
+{
+ ANIMCMD_FRAME(16, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596BD8[] =
+{
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596BE0[] =
+{
+ ANIMCMD_FRAME(48, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596BE8[] =
+{
+ ANIMCMD_FRAME(64, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08596BF0[] =
+{
+ ANIMCMD_FRAME(80, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08596BF8[] =
+{
+ gUnknown_08596BC8,
+ gUnknown_08596BD0,
+};
+
+const union AnimCmd *const gUnknown_08596C00[] =
+{
+ gUnknown_08596BD8,
+ gUnknown_08596BE0,
+};
+
+const union AnimCmd *const gUnknown_08596C08[] =
+{
+ gUnknown_08596BE8,
+ gUnknown_08596BF0,
+};
+
+const struct SpriteTemplate gUnknown_08596C10 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596BF8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8110F30,
+};
+
+const struct SpriteTemplate gUnknown_08596C28 =
+{
+ .tileTag = ANIM_TAG_MUD_SAND,
+ .paletteTag = ANIM_TAG_MUD_SAND,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_811131C,
+};
+
+const struct SpriteTemplate gUnknown_08596C40 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_811131C,
+};
+
+const struct SpriteTemplate gUnknown_08596C58 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596BF8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8111388,
+};
+
+const union AffineAnimCmd gUnknown_08596C70[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 5),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gUnknown_08596C80[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 5),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08596C90[] =
+{
+ gUnknown_08596C70,
+ gUnknown_08596C80,
+};
+
+const struct SpriteTemplate gUnknown_08596C98 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_08596BF8,
+ .images = NULL,
+ .affineAnims = gUnknown_08596C90,
+ .callback = sub_8111418,
+};
+
+const struct SpriteTemplate gUnknown_08596CB0 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_08596BF8,
+ .images = NULL,
+ .affineAnims = gUnknown_08596C90,
+ .callback = sub_8111444,
+};
+
+const struct SpriteTemplate gUnknown_08596CC8 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08596C08,
+ .images = NULL,
+ .affineAnims = gUnknown_08596C90,
+ .callback = sub_80FF268,
+};
+
+const struct SpriteTemplate gUnknown_08596CE0 =
+{
+ .tileTag = ANIM_TAG_ROCKS,
+ .paletteTag = ANIM_TAG_ROCKS,
+ .oam = &gUnknown_08524974,
+ .anims = gUnknown_08596C00,
+ .images = NULL,
+ .affineAnims = gUnknown_08596C90,
+ .callback = sub_80A8EE4,
+};
diff --git a/src/save_failed_screen.c b/src/save_failed_screen.c
index ae23f8245..010279a87 100644
--- a/src/save_failed_screen.c
+++ b/src/save_failed_screen.c
@@ -95,7 +95,7 @@ static const struct BgTemplate gUnknown_085EFD88[3] =
static const struct WindowTemplate gUnknown_085EFD94[] =
{
{
- .priority = 255,
+ .bg = 255,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 0,
@@ -108,7 +108,7 @@ static const struct WindowTemplate gUnknown_085EFD94[] =
static const struct WindowTemplate gUnknown_085EFD9C[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 28,
@@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_085EFD9C[] =
static const struct WindowTemplate gUnknown_085EFDA4[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 14,
.tilemapTop = 9,
.width = 2,
diff --git a/src/shop.c b/src/shop.c
index 510c9f4f7..35f52c8f9 100755
--- a/src/shop.c
+++ b/src/shop.c
@@ -95,14 +95,14 @@ static const struct YesNoFuncTable sShopPurchaseYesNoFuncs =
BuyMenuReturnToItemList
};
-static const struct MenuAction sShopMenuActions_BuySellQuit[] =
+static const struct MenuAction sShopMenuActions_BuySellQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopSell, {.void_u8=Task_HandleShopMenuSell} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
};
-static const struct MenuAction sShopMenuActions_BuyQuit[] =
+static const struct MenuAction sShopMenuActions_BuyQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
@@ -111,7 +111,7 @@ static const struct MenuAction sShopMenuActions_BuyQuit[] =
static const struct WindowTemplate sShopMenuWindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -120,7 +120,7 @@ static const struct WindowTemplate sShopMenuWindowTemplates[] =
.baseBlock = 0x0008,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@@ -195,7 +195,7 @@ static const struct BgTemplate sShopBuyMenuBgTemplates[] =
static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@@ -204,7 +204,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x001E,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@@ -213,7 +213,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0032,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@@ -222,7 +222,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0122,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 1,
.tilemapTop = 11,
.width = 12,
@@ -231,7 +231,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0176,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@@ -240,7 +240,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x018E,
},
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@@ -251,9 +251,9 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
DUMMY_WIN_TEMPLATE
};
-static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
+static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@@ -808,7 +808,7 @@ static void BuyMenuCollectEventObjectData(void)
gShopDataPtr->viewportObjects[r8][X_COORD] = x;
gShopDataPtr->viewportObjects[r8][Y_COORD] = y;
gShopDataPtr->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y);
-
+
switch (gEventObjects[eventObjId].facingDirection)
{
case DIR_SOUTH:
@@ -850,7 +850,7 @@ static void BuyMenuDrawEventObjects(void)
(u16)gShopDataPtr->viewportObjects[i][X_COORD] * 16 + 8,
(u16)gShopDataPtr->viewportObjects[i][Y_COORD] * 16 + 48 - graphicsInfo->height / 2,
2);
-
+
if (BuyMenuCheckIfEventObjectOverlapsMenuBg(gShopDataPtr->viewportObjects[i]) == TRUE)
{
gSprites[spriteId].subspriteTableNum = 4;
@@ -867,7 +867,7 @@ static bool8 BuyMenuCheckIfEventObjectOverlapsMenuBg(s16 *object)
{
return TRUE;
}
- else
+ else
{
return FALSE;
}
@@ -1000,7 +1000,7 @@ static void Task_BuyHowManyDialogueInit(u8 taskId)
{
gShopDataPtr->maxQuantity = maxQuantity;
}
-
+
gTasks[taskId].func = Task_BuyHowManyDialogueHandleInput;
}
diff --git a/src/starter_choose.c b/src/starter_choose.c
index 5af652ccc..298c74db0 100644
--- a/src/starter_choose.c
+++ b/src/starter_choose.c
@@ -73,10 +73,10 @@ const u32 gUnknown_085B18AC[] = INCBIN_U32("graphics/misc/birch_ballarrow.4bpp.l
const u32 gUnknown_085B1BCC[] = INCBIN_U32("graphics/misc/birch_circle.4bpp.lz");
-static const struct WindowTemplate gUnknown_085B1DCC[] =
+static const struct WindowTemplate gUnknown_085B1DCC[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 24,
@@ -87,9 +87,9 @@ static const struct WindowTemplate gUnknown_085B1DCC[] =
DUMMY_WIN_TEMPLATE,
};
-static const struct WindowTemplate gUnknown_085B1DDC =
+static const struct WindowTemplate gUnknown_085B1DDC =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,
@@ -98,9 +98,9 @@ static const struct WindowTemplate gUnknown_085B1DDC =
.baseBlock = 0x0260
};
-static const struct WindowTemplate gUnknown_085B1DE4 =
+static const struct WindowTemplate gUnknown_085B1DE4 =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 13,
diff --git a/src/text_window.c b/src/text_window.c
index e7e8f0ca6..517f4bdb9 100644
--- a/src/text_window.c
+++ b/src/text_window.c
@@ -93,7 +93,7 @@ const struct TilesPal *GetWindowFrameTilesPal(u8 id)
void LoadMessageBoxGfx(u8 windowId, u16 destOffset, u8 palOffset)
{
- LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), gMessageBox_Gfx, 0x1C0, destOffset);
+ LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gMessageBox_Gfx, 0x1C0, destOffset);
LoadPalette(GetOverworldTextboxPalettePtr(), palOffset, 0x20);
}
@@ -104,7 +104,7 @@ void LoadUserWindowBorderGfx_(u8 windowId, u16 destOffset, u8 palOffset)
void LoadWindowGfx(u8 windowId, u8 frameId, u16 destOffset, u8 palOffset)
{
- LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), sWindowFrames[frameId].tiles, 0x120, destOffset);
+ LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), sWindowFrames[frameId].tiles, 0x120, destOffset);
LoadPalette(sWindowFrames[frameId].pal, palOffset, 0x20);
}
@@ -115,7 +115,7 @@ void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset)
void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
{
- u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
+ u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@@ -133,7 +133,7 @@ void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
{
- u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
+ u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@@ -151,7 +151,7 @@ void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
void rbox_fill_rectangle(u8 windowId)
{
- u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
+ u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
diff --git a/src/wallclock.c b/src/wallclock.c
index d6b2b5d50..947b7f103 100644
--- a/src/wallclock.c
+++ b/src/wallclock.c
@@ -60,10 +60,10 @@ static void SpriteCB_PMIndicator(struct Sprite *sprite);
static const u32 sUnknown_085B1F58[] = INCBIN_U32("graphics/wallclock/graphics_85b1f58.4bpp.lz");
static const u16 sUnknown_085B21D4[] = INCBIN_U16("graphics/wallclock/palette_85b21d4.gbapal");
-static const struct WindowTemplate gUnknown_085B21DC[] =
+static const struct WindowTemplate gUnknown_085B21DC[] =
{
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 3,
.tilemapTop = 17,
.width = 24,
@@ -72,7 +72,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
.baseBlock = 512
},
{
- .priority = 2,
+ .bg = 2,
.tilemapLeft = 24,
.tilemapTop = 16,
.width = 6,
@@ -84,7 +84,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
};
static const struct WindowTemplate gUnknown_085B21F4 =
{
- .priority = 0,
+ .bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,
diff --git a/src/water.c b/src/water.c
new file mode 100644
index 000000000..955526ccd
--- /dev/null
+++ b/src/water.c
@@ -0,0 +1,442 @@
+#include "global.h"
+#include "battle_anim.h"
+#include "constants/rgb.h"
+
+extern void sub_810721C(struct Sprite *);
+extern void sub_8107260(struct Sprite *);
+extern void sub_810744C(struct Sprite *);
+extern void sub_81075EC(struct Sprite *);
+extern void sub_8107730(struct Sprite *);
+extern void sub_81077C0(struct Sprite *);
+extern void sub_80A78AC(struct Sprite *);
+extern void sub_8107894(struct Sprite *);
+extern void sub_81078D0(struct Sprite *);
+extern void sub_8108034(struct Sprite *);
+extern void sub_810851C(struct Sprite *);
+extern void sub_8108BE0(struct Sprite *);
+extern void sub_8108C54(struct Sprite *);
+extern void sub_80A8EE4(struct Sprite *);
+
+extern const union AffineAnimCmd *const gUnknown_08593420[];
+extern const union AffineAnimCmd *const gUnknown_08596208[];
+extern const union AnimCmd *const gUnknown_08595AB8[];
+
+// what is this?
+const u8 gUnknown_8593C80[] = INCBIN_U8("graphics/unknown/unknown_593C80.4bpp");
+const u8 gUnknown_8593FFC[] = INCBIN_U8("graphics/unknown/unknown_593FFC.bin");
+
+const union AnimCmd gUnknown_08594FFC[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(8, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(24, 6),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(40, 2),
+ ANIMCMD_FRAME(48, 2),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_0859501C[] =
+{
+ gUnknown_08594FFC,
+};
+
+const struct SpriteTemplate gUnknown_08595020 =
+{
+ .tileTag = ANIM_TAG_RAIN_DROPS,
+ .paletteTag = ANIM_TAG_RAIN_DROPS,
+ .oam = &gUnknown_08524954,
+ .anims = gUnknown_0859501C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810721C,
+};
+
+const union AffineAnimCmd gUnknown_08595038[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 10),
+ AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gUnknown_08595050[] =
+{
+ gUnknown_08595038,
+};
+
+const union AnimCmd gUnknown_08595054[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595064[] =
+{
+ gUnknown_08595054,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8595068 =
+{
+ .tileTag = ANIM_TAG_BUBBLE,
+ .paletteTag = ANIM_TAG_BUBBLE,
+ .oam = &gUnknown_08524A8C,
+ .anims = gUnknown_08595064,
+ .images = NULL,
+ .affineAnims = gUnknown_08595050,
+ .callback = sub_8107260,
+};
+
+const union AnimCmd gUnknown_08595080[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595088[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595090[] =
+{
+ gUnknown_08595080,
+ gUnknown_08595088,
+};
+
+const union AffineAnimCmd gUnknown_08595098[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
+ AFFINEANIMCMD_FRAME(0x60, 0x60, 0, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085950B0[] =
+{
+ gUnknown_08595098,
+};
+
+// Multi-colored rings used in Aurora Beam.
+const struct SpriteTemplate gUnknown_085950B4 =
+{
+ .tileTag = ANIM_TAG_RAINBOW_RINGS,
+ .paletteTag = ANIM_TAG_RAINBOW_RINGS,
+ .oam = &gUnknown_08524A04,
+ .anims = gUnknown_08595090,
+ .images = NULL,
+ .affineAnims = gUnknown_085950B0,
+ .callback = sub_810744C,
+};
+
+const union AnimCmd gUnknown_085950CC[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_FRAME(12, 1),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_085950E0[] =
+{
+ gUnknown_085950CC,
+};
+
+const struct SpriteTemplate gUnknown_085950E4 =
+{
+ .tileTag = ANIM_TAG_WATER_ORB,
+ .paletteTag = ANIM_TAG_WATER_ORB,
+ .oam = &gUnknown_08524A2C,
+ .anims = gUnknown_085950E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81075EC,
+};
+
+const struct SpriteTemplate gUnknown_085950FC =
+{
+ .tileTag = ANIM_TAG_BROWN_ORB,
+ .paletteTag = ANIM_TAG_BROWN_ORB,
+ .oam = &gUnknown_08524A2C,
+ .anims = gUnknown_085950E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81075EC,
+};
+
+const struct SpriteTemplate gUnknown_08595114 =
+{
+ .tileTag = ANIM_TAG_GLOWY_RED_ORB,
+ .paletteTag = ANIM_TAG_GLOWY_RED_ORB,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81075EC,
+};
+
+const struct SpriteTemplate gUnknown_0859512C =
+{
+ .tileTag = ANIM_TAG_GLOWY_GREEN_ORB,
+ .paletteTag = ANIM_TAG_GLOWY_GREEN_ORB,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81075EC,
+};
+
+const union AnimCmd gUnknown_08595144[] =
+{
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 2),
+ ANIMCMD_FRAME(48, 2),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gUnknown_08595154[] =
+{
+ gUnknown_08595144,
+};
+
+const struct SpriteTemplate gUnknown_08595158 =
+{
+ .tileTag = ANIM_TAG_SMALL_EMBER,
+ .paletteTag = ANIM_TAG_SMALL_EMBER,
+ .oam = &gUnknown_08524914,
+ .anims = gUnknown_08595154,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81075EC,
+};
+
+const struct SpriteTemplate gUnknown_08595170 =
+{
+ .tileTag = ANIM_TAG_BLUE_RING,
+ .paletteTag = ANIM_TAG_BLUE_RING,
+ .oam = &gUnknown_08524A14,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gUnknown_08593420,
+ .callback = sub_81075EC,
+};
+
+const union AffineAnimCmd gUnknown_08595188[] =
+{
+ AFFINEANIMCMD_FRAME(0x3, 0x3, 10, 50),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 10),
+ AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, -10, 20),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085951A8[] =
+{
+ AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085951B8[] =
+{
+ gUnknown_08595188,
+};
+
+const union AffineAnimCmd *const gUnknown_085951BC[] =
+{
+ gUnknown_085951A8,
+};
+
+const struct SpriteTemplate gUnknown_085951C0 =
+{
+ .tileTag = ANIM_TAG_WATER_ORB,
+ .paletteTag = ANIM_TAG_WATER_ORB,
+ .oam = &gUnknown_08524AEC,
+ .anims = gUnknown_085950E0,
+ .images = NULL,
+ .affineAnims = gUnknown_085951B8,
+ .callback = sub_8107730,
+};
+
+const struct SpriteTemplate gUnknown_085951D8 =
+{
+ .tileTag = ANIM_TAG_WATER_ORB,
+ .paletteTag = ANIM_TAG_WATER_ORB,
+ .oam = &gUnknown_08524AEC,
+ .anims = gUnknown_085950E0,
+ .images = NULL,
+ .affineAnims = gUnknown_085951BC,
+ .callback = sub_81077C0,
+};
+
+const union AnimCmd gUnknown_085951F0[] =
+{
+ ANIMCMD_FRAME(0, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_085951F8[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595200[] =
+{
+ gUnknown_085951F0,
+};
+
+const union AnimCmd *const gUnknown_08595204[] =
+{
+ gUnknown_085951F8,
+};
+
+const struct SpriteTemplate gUnknown_08595208 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524A2C,
+ .anims = gUnknown_08595200,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A78AC,
+};
+
+const struct SpriteTemplate gUnknown_08595220 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524AEC,
+ .anims = gUnknown_08595204,
+ .images = NULL,
+ .affineAnims = gUnknown_08596208,
+ .callback = sub_8107894,
+};
+
+const struct SpriteTemplate gUnknown_08595238 =
+{
+ .tileTag = ANIM_TAG_ICE_CRYSTALS,
+ .paletteTag = ANIM_TAG_ICE_CRYSTALS,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08595AB8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81078D0,
+};
+
+const struct SpriteTemplate gUnknown_08595250 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108034,
+};
+
+const struct SpriteTemplate gUnknown_08595268 =
+{
+ .tileTag = ANIM_TAG_GLOWY_BLUE_ORB,
+ .paletteTag = ANIM_TAG_GLOWY_BLUE_ORB,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_810851C,
+};
+
+const union AnimCmd gUnknown_08595280[] =
+{
+ ANIMCMD_FRAME(8, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595288[] =
+{
+ ANIMCMD_FRAME(9, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gUnknown_08595290[] =
+{
+ ANIMCMD_FRAME(4, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gUnknown_08595298[] =
+{
+ gUnknown_08595280,
+ gUnknown_08595288,
+};
+
+const union AnimCmd *const gUnknown_085952A0[] =
+{
+ gUnknown_08595290,
+};
+
+const union AffineAnimCmd gUnknown_085952A4[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 15),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085952BC[] =
+{
+ AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 15),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gUnknown_085952D4[] =
+{
+ AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 15),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gUnknown_085952EC[] =
+{
+ gUnknown_085952A4,
+ gUnknown_085952BC,
+};
+
+const union AffineAnimCmd *const gUnknown_085952F4[] =
+{
+ gUnknown_085952D4,
+};
+
+const struct SpriteTemplate gUnknown_085952F8 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524904,
+ .anims = gUnknown_08595298,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8108BE0,
+};
+
+const struct SpriteTemplate gUnknown_08595310 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_08524964,
+ .anims = gUnknown_08595298,
+ .images = NULL,
+ .affineAnims = gUnknown_085952EC,
+ .callback = sub_8108C54,
+};
+
+const struct SpriteTemplate gUnknown_08595328 =
+{
+ .tileTag = ANIM_TAG_SMALL_BUBBLES,
+ .paletteTag = ANIM_TAG_SMALL_BUBBLES,
+ .oam = &gUnknown_0852496C,
+ .anims = gUnknown_085952A0,
+ .images = NULL,
+ .affineAnims = gUnknown_085952F4,
+ .callback = sub_80A8EE4,
+};
diff --git a/src/window.c b/src/window.c
index 57c8f5092..8efd1c281 100644
--- a/src/window.c
+++ b/src/window.c
@@ -52,7 +52,7 @@ bool16 InitWindows(const struct WindowTemplate *templates)
gWindows[i].tileData = NULL;
}
- for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].priority; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].priority)
+ for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].bg; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].bg)
{
if (gUnneededFireRedVariable == 1)
{
@@ -121,14 +121,14 @@ u16 AddWindow(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
- if ((bgLayer = gWindows[win].window.priority) == 0xFF)
+ if ((bgLayer = gWindows[win].window.bg) == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
- bgLayer = template->priority;
+ bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@@ -190,14 +190,14 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
- if (gWindows[win].window.priority == 0xFF)
+ if (gWindows[win].window.bg == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
- bgLayer = template->priority;
+ bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@@ -221,7 +221,7 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
void RemoveWindow(u8 windowId)
{
- u8 bgLayer = gWindows[windowId].window.priority;
+ u8 bgLayer = gWindows[windowId].window.bg;
if (gUnneededFireRedVariable == 1)
{
@@ -277,14 +277,14 @@ void CopyWindowToVram(u8 windowId, u8 mode)
switch (mode)
{
case 1:
- CopyBgTilemapBufferToVram(windowLocal.window.priority);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
- LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
break;
case 3:
- LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
- CopyBgTilemapBufferToVram(windowLocal.window.priority);
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@@ -309,14 +309,14 @@ void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h)
switch (mode)
{
case 1:
- CopyBgTilemapBufferToVram(windowLocal.window.priority);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
- LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
break;
case 3:
- LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
- CopyBgTilemapBufferToVram(windowLocal.window.priority);
+ LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
+ CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@@ -327,8 +327,8 @@ void PutWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
WriteSequenceToBgTilemapBuffer(
- windowLocal.window.priority,
- GetBgAttribute(windowLocal.window.priority, 0xA) + windowLocal.window.baseBlock,
+ windowLocal.window.bg,
+ GetBgAttribute(windowLocal.window.bg, 0xA) + windowLocal.window.baseBlock,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
windowLocal.window.width,
@@ -340,13 +340,13 @@ void PutWindowTilemap(u8 windowId)
void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 palette)
{
struct Window windowLocal = gWindows[windowId];
- u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
+ u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
- windowLocal.window.priority,
+ windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@@ -364,7 +364,7 @@ void ClearWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
FillBgTilemapBufferRect(
- windowLocal.window.priority,
+ windowLocal.window.bg,
gUnknown_03002F60,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
@@ -376,13 +376,13 @@ void ClearWindowTilemap(u8 windowId)
void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height)
{
struct Window windowLocal = gWindows[windowId];
- u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
+ u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
- windowLocal.window.priority,
+ windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@@ -529,7 +529,7 @@ void ScrollWindow(u8 windowId, u8 direction, u8 distance, u8 fillValue)
void CallWindowFunction(u8 windowId, void ( *func)(u8, u8, u8, u8, u8, u8))
{
struct WindowTemplate window = gWindows[windowId].window;
- func(window.priority, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
+ func(window.bg, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
}
bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
@@ -551,7 +551,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
case WINDOW_TILE_DATA:
gWindows[windowId].tileData = (u8*)(value);
return TRUE;
- case WINDOW_PRIORITY:
+ case WINDOW_BG:
case WINDOW_WIDTH:
case WINDOW_HEIGHT:
default:
@@ -563,8 +563,8 @@ u32 GetWindowAttribute(u8 windowId, u8 attributeId)
{
switch (attributeId)
{
- case WINDOW_PRIORITY:
- return gWindows[windowId].window.priority;
+ case WINDOW_BG:
+ return gWindows[windowId].window.bg;
case WINDOW_TILEMAP_LEFT:
return gWindows[windowId].window.tilemapLeft;
case WINDOW_TILEMAP_TOP:
@@ -590,7 +590,7 @@ static u8 GetNumActiveWindowsOnBg(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
- if (gWindows[i].window.priority == bgId)
+ if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;
@@ -609,12 +609,12 @@ u16 AddWindow8Bit(struct WindowTemplate *template)
for (windowId = 0; windowId < 32; windowId++)
{
- if (gWindows[windowId].window.priority == 0xFF)
+ if (gWindows[windowId].window.bg == 0xFF)
break;
}
if (windowId == WINDOWS_MAX)
return 0xFF;
- bgLayer = template->priority;
+ bgLayer = template->bg;
if (gUnknown_03002F70[bgLayer] == 0)
{
u16 attribute = GetBgAttribute(bgLayer, 8);
@@ -693,14 +693,14 @@ void CopyWindowToVram8Bit(u8 windowId, u8 mode)
switch (mode)
{
case 1:
- CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
+ CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
case 2:
- LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
+ LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
break;
case 3:
- LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
- CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
+ LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
+ CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
}
}
@@ -711,7 +711,7 @@ static u8 GetNumActiveWindowsOnBg8Bit(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
- if (gWindows[i].window.priority == bgId)
+ if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;