summaryrefslogtreecommitdiff
path: root/src/battle/anim/dragon.c
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2018-04-30 10:46:34 -0700
committerMarcus Huderle <huderlem@gmail.com>2018-04-30 10:46:57 -0700
commitd68e8b09eecd136fc0dcc32c1e08b946b8981adc (patch)
tree3ef1fb195ef1f90eb2b2a7b3c541f4ce0a823c94 /src/battle/anim/dragon.c
parentc88cf196af0f099f4daa7cbc06b9b0df9a31c60c (diff)
Finish moving battle anim .rodata into .c files
Diffstat (limited to 'src/battle/anim/dragon.c')
-rw-r--r--src/battle/anim/dragon.c196
1 files changed, 185 insertions, 11 deletions
diff --git a/src/battle/anim/dragon.c b/src/battle/anim/dragon.c
index 4c8448636..163529ecb 100644
--- a/src/battle/anim/dragon.c
+++ b/src/battle/anim/dragon.c
@@ -5,13 +5,6 @@
#include "sound.h"
#include "scanline_effect.h"
-void sub_80DF81C(struct Sprite *sprite);
-void sub_80DFBD8(struct Sprite *sprite);
-
-void sub_80DF9F4(u8 taskId);
-
-void sub_80DFAB0(struct Task *task);
-
extern s16 gBattleAnimArgs[];
extern u8 gAnimBankAttacker;
extern u8 gAnimBankTarget;
@@ -21,6 +14,187 @@ extern u16 gBattle_BG2_X;
extern u16 gUnknown_03000730[];
extern u8 gBankSpriteIds[];
+void sub_80DF5A0(struct Sprite *sprite);
+void sub_80DF760(struct Sprite *sprite);
+void sub_80DF6F0(struct Sprite *sprite);
+void sub_80DF760(struct Sprite *sprite);
+void sub_80DF78C(struct Sprite *sprite);
+void sub_80DFB28(struct Sprite *sprite);
+static void sub_80DF81C(struct Sprite *sprite);
+static void sub_80DFBD8(struct Sprite *sprite);
+static void sub_80DF9F4(u8 taskId);
+static void sub_80DFAB0(struct Task *task);
+
+const union AnimCmd gSpriteAnim_83DAFB0[] =
+{
+ 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 gSpriteAnimTable_83DAFC8[] =
+{
+ gSpriteAnim_83DAFB0,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DAFCC =
+{
+ .tileTag = 10029,
+ .paletteTag = 10029,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_83DAFC8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80DF5A0,
+};
+
+const union AnimCmd gSpriteAnim_83DAFE4[] =
+{
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_83DAFF4[] =
+{
+ 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 gSpriteAnimTable_83DB004[] =
+{
+ gSpriteAnim_83DAFE4,
+ gSpriteAnim_83DAFF4,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83DB00C[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 127, 0),
+ AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83DB024[] =
+{
+ AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
+ AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_83DB03C[] =
+{
+ gSpriteAffineAnim_83DB00C,
+ gSpriteAffineAnim_83DB024,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DB044 =
+{
+ .tileTag = 10029,
+ .paletteTag = 10029,
+ .oam = &gOamData_837DFF4,
+ .anims = gSpriteAnimTable_83DB004,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_83DB03C,
+ .callback = sub_80DF760,
+};
+
+const union AnimCmd gSpriteAnim_83DB05C[] =
+{
+ 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 gSpriteAnimTable_83DB074[] =
+{
+ gSpriteAnim_83DB05C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DB078 =
+{
+ .tileTag = 10035,
+ .paletteTag = 10035,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_83DB074,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80DF6F0,
+};
+
+const union AnimCmd gSpriteAnim_83DB090[] =
+{
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 3),
+ ANIMCMD_FRAME(48, 3),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gSpriteAnimTable_83DB0A0[] =
+{
+ gSpriteAnim_83DB090,
+ gSpriteAnim_83DB090,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83DB0A8[] =
+{
+ AFFINEANIMCMD_FRAME(0x64, 0x64, 127, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd gSpriteAffineAnim_83DB0B8[] =
+{
+ AFFINEANIMCMD_FRAME(0x64, 0x64, 0, 1),
+ AFFINEANIMCMD_END,
+};
+
+const union AffineAnimCmd *const gSpriteAffineAnimTable_83DB0C8[] =
+{
+ gSpriteAffineAnim_83DB0A8,
+ gSpriteAffineAnim_83DB0B8,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DB0D0 =
+{
+ .tileTag = 10029,
+ .paletteTag = 10029,
+ .oam = &gOamData_837DFF4,
+ .anims = gSpriteAnimTable_83DB0A0,
+ .images = NULL,
+ .affineAnims = gSpriteAffineAnimTable_83DB0C8,
+ .callback = sub_80DF760,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DB0E8 =
+{
+ .tileTag = 10249,
+ .paletteTag = 10249,
+ .oam = &gOamData_837DF2C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80DF78C,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83DB100 =
+{
+ .tileTag = 10029,
+ .paletteTag = 10029,
+ .oam = &gOamData_837DF34,
+ .anims = gSpriteAnimTable_83DAFC8,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80DFB28,
+};
+
// Outrage
void sub_80DF5A0(struct Sprite *sprite)
@@ -123,7 +297,7 @@ void sub_80DF78C(struct Sprite *sprite)
sprite->callback = sub_80DF81C;
}
-void sub_80DF81C(struct Sprite *sprite)
+static void sub_80DF81C(struct Sprite *sprite)
{
switch (sprite->data[0])
{
@@ -196,7 +370,7 @@ void sub_80DF924(u8 taskId)
task->func = sub_80DF9F4;
}
-void sub_80DF9F4(u8 taskId)
+static void sub_80DF9F4(u8 taskId)
{
struct Task *task = &gTasks[taskId];
switch (task->data[0])
@@ -234,7 +408,7 @@ void sub_80DF9F4(u8 taskId)
}
}
-void sub_80DFAB0(struct Task *task)
+static void sub_80DFAB0(struct Task *task)
{
u16 r3 = task->data[5];
u16 i;
@@ -264,7 +438,7 @@ void sub_80DFB28(struct Sprite *sprite)
gUnknown_03000730[i] = sprite->data[i];
}
-void sub_80DFBD8(struct Sprite *sprite)
+static void sub_80DFBD8(struct Sprite *sprite)
{
sprite->data[4] += sprite->data[1];
sprite->data[5] += sprite->data[2];