diff options
Diffstat (limited to 'src/battle/anim/slice.c')
-rw-r--r-- | src/battle/anim/slice.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/battle/anim/slice.c b/src/battle/anim/slice.c index 8e7f35f46..4da414cbf 100644 --- a/src/battle/anim/slice.c +++ b/src/battle/anim/slice.c @@ -8,8 +8,46 @@ extern s16 gBattleAnimArgs[]; extern u8 gAnimBankAttacker; extern u8 gAnimBankTarget; +void AnimCuttingSlice(struct Sprite* sprite); +void sub_80CC9BC(struct Sprite* sprite); static void AnimSliceStep(struct Sprite* sprite); +const union AnimCmd gSpriteAnim_83D6B10[] = +{ + ANIMCMD_FRAME(0, 5), + ANIMCMD_FRAME(16, 5), + ANIMCMD_FRAME(32, 5), + ANIMCMD_FRAME(48, 5), + ANIMCMD_END, +}; + +const union AnimCmd *const gSpriteAnimTable_83D6B24[] = +{ + gSpriteAnim_83D6B10, +}; + +const struct SpriteTemplate gCuttingSliceSpriteTemplate = +{ + .tileTag = 10138, + .paletteTag = 10138, + .oam = &gOamData_837E054, + .anims = gSpriteAnimTable_83D6B24, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = AnimCuttingSlice, +}; + +const struct SpriteTemplate gBattleAnimSpriteTemplate_83D6B40 = +{ + .tileTag = 10138, + .paletteTag = 10138, + .oam = &gOamData_837E054, + .anims = gSpriteAnimTable_83D6B24, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_80CC9BC, +}; + // Moves the sprite in a diagonally slashing motion across the target mon. // Used by moves such as MOVE_CUT and MOVE_AERIAL_ACE. // arg 0: initial x pixel offset |