summaryrefslogtreecommitdiff
path: root/src/battle/anim/grip.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/battle/anim/grip.c')
-rw-r--r--src/battle/anim/grip.c36
1 files changed, 35 insertions, 1 deletions
diff --git a/src/battle/anim/grip.c b/src/battle/anim/grip.c
index a56a02d82..1ec779c09 100644
--- a/src/battle/anim/grip.c
+++ b/src/battle/anim/grip.c
@@ -8,11 +8,45 @@ extern s16 gBattleAnimArgs[];
extern u8 gAnimBankAttacker;
extern u8 gAnimBankTarget;
+void sub_80D0178(struct Sprite* sprite);
static void sub_80D020C(struct Sprite* sprite);
// grip (does a slash which is capable of mirroring for the effect of "gripping".)
// Used in Vice Grip.
+const union AnimCmd gSpriteAnim_83D7674[] =
+{
+ ANIMCMD_FRAME(0, 3),
+ ANIMCMD_FRAME(16, 3),
+ ANIMCMD_FRAME(32, 20),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83D7684[] =
+{
+ 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 gSpriteAnimTable_83D7694[] =
+{
+ gSpriteAnim_83D7674,
+ gSpriteAnim_83D7684,
+};
+
+const struct SpriteTemplate gBattleAnimSpriteTemplate_83D769C =
+{
+ .tileTag = 10138,
+ .paletteTag = 10138,
+ .oam = &gOamData_837E054,
+ .anims = gSpriteAnimTable_83D7694,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80D0178,
+};
+
void sub_80D0178(struct Sprite* sprite)
{
s16 r7 = 32;
@@ -37,7 +71,7 @@ void sub_80D0178(struct Sprite* sprite)
StoreSpriteCallbackInData(sprite, sub_80D020C);
}
-void sub_80D020C(struct Sprite* sprite)
+static void sub_80D020C(struct Sprite* sprite)
{
if (sprite->animEnded == 1)
DestroyAnimSprite(sprite);