summaryrefslogtreecommitdiff
path: root/src/battle/anim/guillotine.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/battle/anim/guillotine.c')
-rw-r--r--src/battle/anim/guillotine.c40
1 files changed, 37 insertions, 3 deletions
diff --git a/src/battle/anim/guillotine.c b/src/battle/anim/guillotine.c
index 0768e8334..eb1bc7733 100644
--- a/src/battle/anim/guillotine.c
+++ b/src/battle/anim/guillotine.c
@@ -8,6 +8,7 @@ extern s16 gBattleAnimArgs[];
extern u8 gAnimBankAttacker;
extern u8 gAnimBankTarget;
+void sub_80D0228(struct Sprite* sprite);
static void sub_80D02D0(struct Sprite* sprite);
static void sub_80D0344(struct Sprite* sprite);
static void sub_80D03A8(struct Sprite* sprite);
@@ -15,6 +16,39 @@ static void sub_80D03A8(struct Sprite* sprite);
// guillotine (does a reverse grip where the slices can reverse at a given period.)
// Used in Guillotine.
+const union AnimCmd gSpriteAnim_83D76B4[] =
+{
+ ANIMCMD_FRAME(0, 2),
+ ANIMCMD_FRAME(16, 2),
+ ANIMCMD_FRAME(32, 1),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83D76C4[] =
+{
+ 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 gSpriteAnimTable_83D76D4[] =
+{
+ gSpriteAnim_83D76B4,
+ gSpriteAnim_83D76C4,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83D76DC =
+{
+ .tileTag = 10138,
+ .paletteTag = 10138,
+ .oam = &gOamData_837E054,
+ .anims = gSpriteAnimTable_83D76D4,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80D0228,
+};
+
void sub_80D0228(struct Sprite* sprite)
{
s16 r8 = 32;
@@ -43,7 +77,7 @@ void sub_80D0228(struct Sprite* sprite)
sprite->callback = sub_80D02D0;
}
-void sub_80D02D0(struct Sprite* sprite)
+static void sub_80D02D0(struct Sprite* sprite)
{
if (TranslateAnimSpriteByDeltas(sprite) && sprite->animEnded == 1)
{
@@ -62,7 +96,7 @@ void sub_80D02D0(struct Sprite* sprite)
}
}
-void sub_80D0344(struct Sprite* sprite)
+static void sub_80D0344(struct Sprite* sprite)
{
if (sprite->data[3])
{
@@ -83,7 +117,7 @@ void sub_80D0344(struct Sprite* sprite)
}
}
-void sub_80D03A8(struct Sprite* sprite)
+static void sub_80D03A8(struct Sprite* sprite)
{
if (TranslateAnimSpriteByDeltas(sprite) != 0)
DestroyAnimSprite(sprite);