summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/battle/battle_anim_812C144.c1054
1 files changed, 1048 insertions, 6 deletions
diff --git a/src/battle/battle_anim_812C144.c b/src/battle/battle_anim_812C144.c
index 495632fee..a7a92c376 100644
--- a/src/battle/battle_anim_812C144.c
+++ b/src/battle/battle_anim_812C144.c
@@ -42,16 +42,16 @@ extern const union AffineAnimCmd gUnknown_084024B0[];
extern const union AffineAnimCmd gUnknown_08402518[];
extern const union AffineAnimCmd gUnknown_08402540[];
extern const union AffineAnimCmd gUnknown_08402590[];
-extern const union AffineAnimCmd gUnknown_08402610[];
-extern const union AffineAnimCmd gUnknown_08402750[];
+/**/extern const union AffineAnimCmd gUnknown_08402610[];
+/**/extern const union AffineAnimCmd gUnknown_08402750[];
extern const union AffineAnimCmd gUnknown_084028AC[];
extern const union AffineAnimCmd gUnknown_084029DC[];
extern const u32 gUnknown_08D2AA98[];
extern const u32 gUnknown_08D2A9E0[];
extern const u16 gUnknown_08D2AA80[];
-extern const s8 gUnknown_084025C0[];
-extern const s8 gUnknown_08402604[];
-extern const u8 gUnknown_08402608[];
+/**/extern const s8 gUnknown_084025C0[];
+/**/extern const s8 gUnknown_08402604[];
+/**/extern const u8 gUnknown_08402608[];
extern const struct SpriteTemplate gBattleAnimSpriteTemplate_84025EC;
extern const u8 gUnknown_08D2E014[];
extern const u8 gUnknown_08D2E170[];
@@ -59,7 +59,7 @@ extern const u16 gUnknown_08D2E150[];
extern u8 gBattleMonForms[];
extern u8 gBankSpriteIds[];
extern u16 gBattlerPartyIndexes[];
-extern s16 gUnknown_084028E4[];
+/**/extern s16 gUnknown_084028E4[];
extern u8 sub_8046234(s16 x, s16 y, u8 a3);
extern void sub_80DA48C(struct Sprite *);
@@ -117,6 +117,1048 @@ static void sub_81315C8(struct Sprite *sprite);
static void sub_8131810(u8 taskId);
static void sub_8131838(struct Sprite *sprite);
+const union AnimCmd gSpriteAnim_8402164[] =
+{
+ 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 *const gSpriteAnimTable_840217C[] =
+{
+ gSpriteAnim_8402164,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402180 =
+{
+ .tileTag = 10137,
+ .paletteTag = 10137,
+ .oam = &gOamData_837E054,
+ .anims = gSpriteAnimTable_840217C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80793C4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402198 =
+{
+ .tileTag = 10016,
+ .paletteTag = 10016,
+ .oam = &gOamData_837DF54,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812C144,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84021B0 =
+{
+ .tileTag = 10017,
+ .paletteTag = 10017,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80794A8,
+};
+
+const union AnimCmd gSpriteAnim_84021C8[] =
+{
+ ANIMCMD_FRAME(0, 40),
+ ANIMCMD_FRAME(16, 8),
+ ANIMCMD_FRAME(32, 40),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_84021D8[] =
+{
+ gSpriteAnim_84021C8,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84021DC =
+{
+ .tileTag = 10190,
+ .paletteTag = 10190,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_84021D8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80793C4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84021F4 =
+{
+ .tileTag = 10191,
+ .paletteTag = 10191,
+ .oam = &gOamData_837E05C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812C220,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_840220C =
+{
+ .tileTag = 10189,
+ .paletteTag = 10189,
+ .oam = &gOamData_837DF94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812C2BC,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402224[] =
+{
+ AFFINEANIMCMD_FRAME(0x180, 0x180, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFE0, 0x18, 0, 5),
+ AFFINEANIMCMD_FRAME(0x18, 0xFFE0, 0, 5),
+ AFFINEANIMCMD_JUMP(1),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402244[] =
+{
+ AFFINEANIMCMD_FRAME(0x30, 0x30, 0, 0),
+ AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 6),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_840225C[] =
+{
+ gSpriteAffineAnim_8402224,
+ gSpriteAffineAnim_8402244,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402264 =
+{
+ .tileTag = 10187,
+ .paletteTag = 10187,
+ .oam = &gOamData_837E11C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_840225C,
+ .callback = sub_812C358,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_840227C =
+{
+ .tileTag = 10152,
+ .paletteTag = 10152,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812C720,
+};
+
+const union AnimCmd gSpriteAnim_8402294[] =
+{
+ 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 gSpriteAnimTable_84022AC[] =
+{
+ gSpriteAnim_8402294,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84022B0 =
+{
+ .tileTag = 10027,
+ .paletteTag = 10027,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_84022AC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812C80C,
+};
+
+const union AnimCmd gSpriteAnim_84022C8[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_84022D0[] =
+{
+ gSpriteAnim_84022C8,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_84022D4[] =
+{
+ AFFINEANIMCMD_FRAME(0xFFF9, 0xFFF9, -3, 16),
+ AFFINEANIMCMD_FRAME(0x7, 0x7, 3, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_84022EC[] =
+{
+ gSpriteAffineAnim_84022D4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84022F0 =
+{
+ .tileTag = 10228,
+ .paletteTag = 10228,
+ .oam = &gOamData_837DF94,
+ .anims = gSpriteAnimTable_84022D0,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_84022EC,
+ .callback = sub_812C848,
+};
+
+const union AnimCmd gSpriteAnim_8402308[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(16, 16),
+ ANIMCMD_FRAME(32, 4),
+ ANIMCMD_FRAME(48, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_840231C[] =
+{
+ gSpriteAnim_8402308,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402320[] =
+{
+ AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFE0, 0xFFE0, 0, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402338[] =
+{
+ gSpriteAffineAnim_8402320,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_840233C =
+{
+ .tileTag = 10192,
+ .paletteTag = 10192,
+ .oam = &gOamData_837DFF4,
+ .anims = gSpriteAnimTable_840231C,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402338,
+ .callback = sub_812C908,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402354[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x180, 0, 0),
+ AFFINEANIMCMD_FRAME(0x10, 0x0, 0, 20),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_840236C[] =
+{
+ AFFINEANIMCMD_FRAME(0x140, 0x180, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF0, 0x0, 0, 19),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402384[] =
+{
+ gSpriteAffineAnim_8402354,
+ gSpriteAffineAnim_840236C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_840238C =
+{
+ .tileTag = 10227,
+ .paletteTag = 10227,
+ .oam = &gOamData_837DFFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402384,
+ .callback = sub_812C990,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84023A4 =
+{
+ .tileTag = 10247,
+ .paletteTag = 10247,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812CAFC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84023BC =
+{
+ .tileTag = 10247,
+ .paletteTag = 10247,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812CC28,
+};
+
+const union AnimCmd gSpriteAnim_84023D4[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(8, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gSpriteAnimTable_84023E4[] =
+{
+ gSpriteAnim_84023D4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84023E8 =
+{
+ .tileTag = 10229,
+ .paletteTag = 10229,
+ .oam = &gOamData_837DF54,
+ .anims = gSpriteAnimTable_84023E4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812CCE8,
+};
+
+// wat
+const union AffineAnimCmd gUnknown_08402400[] =
+{
+ AFFINEANIMCMD_FRAME(-12, 8, 0, 4),
+ AFFINEANIMCMD_FRAME(20, -20, 0, 4),
+ AFFINEANIMCMD_FRAME(-8, 12, 0, 4),
+ AFFINEANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_8402420[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_8402428[] =
+{
+ gSpriteAnim_8402420,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_840242C[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 40),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 10),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 15, 10),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 40),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402454[] =
+{
+ gSpriteAffineAnim_840242C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402458 =
+{
+ .tileTag = 10230,
+ .paletteTag = 10230,
+ .oam = &gOamData_837DFFC,
+ .anims = gSpriteAnimTable_8402428,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402454,
+ .callback = sub_812D294,
+};
+
+const union AnimCmd gSpriteAnim_8402470[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_FRAME(32, 3, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(16, 3, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(0, 3, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_LOOP(1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_8402494[] =
+{
+ gSpriteAnim_8402470,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402498 =
+{
+ .tileTag = 10234,
+ .paletteTag = 10234,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_8402494,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80793C4,
+};
+
+// unknwon
+const union AffineAnimCmd gUnknown_084024B0[] =
+{
+ AFFINEANIMCMD_FRAME(-12, 20, 0, 8),
+ AFFINEANIMCMD_FRAME(12, -20, 0, 8),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_END,// 0?
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84024D0 =
+{
+ .tileTag = 10226,
+ .paletteTag = 10226,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812D3AC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84024E8 =
+{
+ .tileTag = 10233,
+ .paletteTag = 10233,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812D4B4,
+};
+
+const struct SpriteTemplate gSpriteTemplate_8402500 =
+{
+ .tileTag = 10233,
+ .paletteTag = 10233,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812D588,
+};
+
+const union AffineAnimCmd gUnknown_08402518[] =
+{
+ AFFINEANIMCMD_FRAME(8, -8, 0, 12),
+ AFFINEANIMCMD_FRAME(-16, 16, 0, 12),
+ AFFINEANIMCMD_FRAME(8, -8, 0, 12),
+ AFFINEANIMCMD_LOOP(1),
+ AFFINEANIMCMD_END, //0
+};
+
+const union AffineAnimCmd gUnknown_08402540[] =
+{
+ AFFINEANIMCMD_FRAME(0, 6, 0, 20),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 20),
+ AFFINEANIMCMD_FRAME(0, -18, 0, 6),
+ AFFINEANIMCMD_FRAME(-18, -18, 0, 3),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 15),
+ AFFINEANIMCMD_FRAME(4, 4, 0, 13),
+ AFFINEANIMCMD_END,//0
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402578 =
+{
+ .tileTag = 10236,
+ .paletteTag = 10236,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812D724,
+};
+
+const union AffineAnimCmd gUnknown_08402590[] =
+{
+ AFFINEANIMCMD_FRAME(0, 6, 0, 20),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 20),
+ AFFINEANIMCMD_FRAME(7, -30, 0, 6),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 20),
+ AFFINEANIMCMD_FRAME(-2, 3, 0, 20),
+ AFFINEANIMCMD_END,//0
+};
+
+const s8 gUnknown_084025C0[] =
+{
+ 0xE8,
+ 0x18,
+ 0xFC,
+ 0x00,
+};
+
+const union AnimCmd gSpriteAnim_84025C4[] =
+{
+ ANIMCMD_FRAME(0, 6),
+ ANIMCMD_FRAME(4, 6),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_84025D0[] =
+{
+ ANIMCMD_FRAME(8, 6),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_84025D8[] =
+{
+ ANIMCMD_FRAME(12, 6),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_84025E0[] =
+{
+ gSpriteAnim_84025C4,
+ gSpriteAnim_84025D0,
+ gSpriteAnim_84025D8,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84025EC =
+{
+ .tileTag = 10241,
+ .paletteTag = 10241,
+ .oam = &gOamData_837DF2C,
+ .anims = gSpriteAnimTable_84025E0,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812DEAC,
+};
+
+const s8 gUnknown_08402604[] =
+{
+ 0x78,
+ 0x50,
+ 0x28,
+ 0x00,
+};
+
+const u8 gUnknown_08402608[] =
+{
+ 0,
+ 0,
+ 0,
+ 0,
+ 50,
+};
+
+const union AffineAnimCmd gUnknown_08402610[] =
+{
+ AFFINEANIMCMD_FRAME(0, -15, 0, 7),
+ AFFINEANIMCMD_FRAME(0, 15, 0, 7),
+ AFFINEANIMCMD_LOOP(2),
+ AFFINEANIMCMD_END,//0
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402630 =
+{
+ .tileTag = 10087,
+ .paletteTag = 10087,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812E4F0,
+};
+
+const union AnimCmd gSpriteAnim_8402648[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_FRAME(1, 8),
+ ANIMCMD_FRAME(2, 8),
+ ANIMCMD_FRAME(3, 8),
+ ANIMCMD_FRAME(3, 8, OBJ_IMAGE_ANIM_V_FLIP),
+ ANIMCMD_FRAME(2, 8, OBJ_IMAGE_ANIM_V_FLIP),
+ ANIMCMD_FRAME(0, 8, OBJ_IMAGE_ANIM_V_FLIP),
+ ANIMCMD_FRAME(1, 8, OBJ_IMAGE_ANIM_V_FLIP),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_840266C[] =
+{
+ ANIMCMD_FRAME(0, 8, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(1, 8, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(2, 8, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(3, 8, OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(3, 8, OBJ_IMAGE_ANIM_V_FLIP | OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(2, 8, OBJ_IMAGE_ANIM_V_FLIP | OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(0, 8, OBJ_IMAGE_ANIM_V_FLIP | OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_FRAME(1, 8, OBJ_IMAGE_ANIM_V_FLIP | OBJ_IMAGE_ANIM_H_FLIP),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_8402690[] =
+{
+ ANIMCMD_FRAME(0, 8),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_8402698[] =
+{
+ gSpriteAnim_8402648,
+ gSpriteAnim_840266C,
+ gSpriteAnim_8402690,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84026A4 =
+{
+ .tileTag = 10238,
+ .paletteTag = 10238,
+ .oam = &gOamData_837DF24,
+ .anims = gSpriteAnimTable_8402698,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812E7A0,
+};
+
+//@ probably unknown palette
+// .incbin "graphics/unknown/unknown_4026BC.gbapal"
+// or maybe asm(.incbin "graphics/unknown/unknown_4026BC.gbapal")
+const u16 gUnknown_4026BC[] = INCBIN_U16("graphics/unknown/unknown_4026BC.gbapal");
+
+const union AnimCmd gSpriteAnim_84026DC[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_FRAME(4, 9),
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_84026EC[] =
+{
+ gSpriteAnim_84026DC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84026F0 =
+{
+ .tileTag = 10239,
+ .paletteTag = 10239,
+ .oam = &gOamData_837DF2C,
+ .anims = gSpriteAnimTable_84026EC,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812EA4C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402708 =
+{
+ .tileTag = 10240,
+ .paletteTag = 10240,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812EC78,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402720 =
+{
+ .tileTag = 10227,
+ .paletteTag = 10227,
+ .oam = &gOamData_837DFFC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402384,
+ .callback = sub_812ED84,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402738 =
+{
+ .tileTag = 10236,
+ .paletteTag = 10236,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812EEA4,
+};
+
+const union AffineAnimCmd gUnknown_08402750[] =
+{
+ AFFINEANIMCMD_FRAME(16, 0, 0, 4),
+ AFFINEANIMCMD_FRAME(0, -3, 0, 16),
+ AFFINEANIMCMD_FRAME(4, 0, 0, 4),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 24),
+ AFFINEANIMCMD_FRAME(-5, 3, 0, 16),
+ AFFINEANIMCMD_END,//0
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402780[] =
+{
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_84027A0[] =
+{
+ AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_84027C0[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_84027E0[] =
+{
+ gSpriteAffineAnim_8402780,
+ gSpriteAffineAnim_84027A0,
+ gSpriteAffineAnim_84027C0,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84027EC =
+{
+ .tileTag = 10242,
+ .paletteTag = 10242,
+ .oam = &gOamData_837DF94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_84027E0,
+ .callback = sub_812F88C,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402804[] =
+{
+ AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFA, 0, 16),
+ AFFINEANIMCMD_FRAME(0x4, 0x6, 0, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402824[] =
+{
+ AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x6, 0, 16),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFA, 0, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402844[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x4, 0x6, 0, 16),
+ AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFA, 0, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402864[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x8, 0xA, 0, 30),
+ AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF6, 0, 16),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402884[] =
+{
+ gSpriteAffineAnim_8402804,
+ gSpriteAffineAnim_8402824,
+ gSpriteAffineAnim_8402844,
+ gSpriteAffineAnim_8402864,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402894 =
+{
+ .tileTag = 10242,
+ .paletteTag = 10242,
+ .oam = &gOamData_837DFF4,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402884,
+ .callback = sub_812F948,
+};
+
+const union AffineAnimCmd gUnknown_084028AC[] =
+{
+ AFFINEANIMCMD_FRAME(-16, 16, 0, 6),
+ AFFINEANIMCMD_FRAME(16, -16, 0, 12),
+ AFFINEANIMCMD_FRAME(-16, 16, 0, 6),
+ AFFINEANIMCMD_END,//0
+};
+
+const struct SpriteTemplate gSpriteTemplate_84028CC =
+{
+ .tileTag = 10243,
+ .paletteTag = 10243,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_812FF94,
+};
+
+// s16?
+const s16 gUnknown_084028E4[] = INCBIN_S16("graphics/battle_anims/sprites/effect.gbapal");
+
+const union AnimCmd gSpriteAnim_8402914[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_8402920[] =
+{
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gSpriteAnimTable_840292C[] =
+{
+ gSpriteAnim_8402914,
+ gSpriteAnim_8402920,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402934 =
+{
+ .tileTag = 10053,
+ .paletteTag = 10053,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_840292C,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81300F4,
+};
+
+const struct SpriteTemplate gSpriteTemplate_840294C =
+{
+ .tileTag = 10248,
+ .paletteTag = 10248,
+ .oam = &gOamData_837DF24,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81304DC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402964 =
+{
+ .tileTag = 10252,
+ .paletteTag = 10252,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_813051C,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_840297C[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -4, 24),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_840298C[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, -64, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 4, 24),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_84029A4[] =
+{
+ gSpriteAffineAnim_840297C,
+ gSpriteAffineAnim_840298C,
+};
+
+const struct SpriteTemplate gSpriteTemplate_84029AC =
+{
+ .tileTag = 10254,
+ .paletteTag = 10254,
+ .oam = &gOamData_837DF94,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_84029A4,
+ .callback = SpriteCallbackDummy,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84029C4 =
+{
+ .tileTag = 10247,
+ .paletteTag = 10247,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_81307B0,
+};
+
+const union AffineAnimCmd gUnknown_084029DC[] =
+{
+ AFFINEANIMCMD_FRAME(0, -16, 0, 6),
+ AFFINEANIMCMD_FRAME(0, 16, 0, 6),
+ AFFINEANIMCMD_END,//0
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_84029F4 =
+{
+ .tileTag = 10255,
+ .paletteTag = 10255,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8130A2C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402A0C =
+{
+ .tileTag = 10247,
+ .paletteTag = 10247,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8130AEC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402A24 =
+{
+ .tileTag = 10258,
+ .paletteTag = 10258,
+ .oam = &gOamData_837E054,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8130F5C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402A3C =
+{
+ .tileTag = 10233,
+ .paletteTag = 10233,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8131264,
+};
+
+const struct SpriteTemplate gSpriteTemplate_8402A54 =
+{
+ .tileTag = 10233,
+ .paletteTag = 10233,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80D1FDC,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402A6C =
+{
+ .tileTag = 10250,
+ .paletteTag = 10250,
+ .oam = &gOamData_837DF3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8131564,
+};
+
+const struct SpriteTemplate gSpriteTemplate_8402A84 =
+{
+ .tileTag = 10224,
+ .paletteTag = 10224,
+ .oam = &gOamData_837DF34,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8131EB8,
+};
+
+const union AnimCmd gSpriteAnim_8402A9C[] =
+{
+ ANIMCMD_FRAME(0, 4),
+ ANIMCMD_FRAME(64, 4),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_8402AA8[] =
+{
+ gSpriteAnim_8402A9C,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402AAC[] =
+{
+ AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -4, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402AC4[] =
+{
+ AFFINEANIMCMD_FRAME(0xFF00, 0x100, 0, 0),
+ AFFINEANIMCMD_FRAME(0x0, 0x0, 4, 8),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402ADC[] =
+{
+ gSpriteAffineAnim_8402AAC,
+ gSpriteAffineAnim_8402AC4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402AE4 =
+{
+ .tileTag = 10277,
+ .paletteTag = 10277,
+ .oam = &gOamData_837DF9C,
+ .anims = gSpriteAnimTable_8402AA8,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402ADC,
+ .callback = sub_8132370,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_8402AFC[] =
+{
+ AFFINEANIMCMD_FRAME(0x0, 0x0, -4, 64),
+ AFFINEANIMCMD_JUMP(0),
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_8402B0C[] =
+{
+ gSpriteAffineAnim_8402AFC,
+}
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_8402B10 =
+{
+ .tileTag = 10278,
+ .paletteTag = 10278,
+ .oam = &gOamData_837E0BC,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_8402B0C,
+ .callback = sub_81323E0,
+};
+
+const union AffineAnimCmd gUnknown_08402B28[] =
+{
+ AFFINEANIMCMD_FRAME(0, 16, 0, 4),
+ AFFINEANIMCMD_FRAME(-2, 0, 0, 8),
+ AFFINEANIMCMD_FRAME(0, 4, 0, 4),
+ AFFINEANIMCMD_FRAME(0, 0, 0, 24),
+ AFFINEANIMCMD_FRAME(1, -5, 0, 16),
+ AFFINEANIMCMD_END,//0
+};
+
+*/
void sub_812C144(struct Sprite *sprite)
{