diff options
Diffstat (limited to 'src/battle/anim/note_spin.c')
-rw-r--r-- | src/battle/anim/note_spin.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/battle/anim/note_spin.c b/src/battle/anim/note_spin.c index 026ee1856..c3d6bdf52 100644 --- a/src/battle/anim/note_spin.c +++ b/src/battle/anim/note_spin.c @@ -7,12 +7,63 @@ extern s16 gBattleAnimArgs[8]; extern u8 gAnimBankAttacker; extern u8 gAnimBankTarget; +extern const union AnimCmd *const gSpriteAnimTable_83D70D8[]; + +void sub_80D2E68(struct Sprite *sprite); +void sub_80D2EC8(struct Sprite *sprite); static void sub_80D2F80(struct Sprite *); static void sub_80D2FA4(struct Sprite *); // note_spin (spins music notes around, and rotates them) // Used in Perish Song. +const union AffineAnimCmd gSpriteAffineAnim_83D7CE0[] = +{ + AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 5), + AFFINEANIMCMD_END, +}; + +const union AffineAnimCmd gSpriteAffineAnim_83D7CF0[] = +{ + AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 16), + AFFINEANIMCMD_END_ALT(1), +}; + +const union AffineAnimCmd gSpriteAffineAnim_83D7D00[] = +{ + AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 16), + AFFINEANIMCMD_END_ALT(1), +}; + +const union AffineAnimCmd *const gSpriteAffineAnimTable_83D7D10[] = +{ + gSpriteAffineAnim_83D7CE0, + gSpriteAffineAnim_83D7CF0, + gSpriteAffineAnim_83D7D00, +}; + +const struct SpriteTemplate gBattleAnimSpriteTemplate_83D7D1C = +{ + .tileTag = 10206, + .paletteTag = 10206, + .oam = &gOamData_837DF8C, + .anims = gSpriteAnimTable_83D70D8, + .images = NULL, + .affineAnims = gSpriteAffineAnimTable_83D7D10, + .callback = sub_80D2EC8, +}; + +const struct SpriteTemplate gBattleAnimSpriteTemplate_83D7D34 = +{ + .tileTag = 10206, + .paletteTag = 10206, + .oam = &gOamData_837DF8C, + .anims = gSpriteAnimTable_83D70D8, + .images = NULL, + .affineAnims = gSpriteAffineAnimTable_83D7D10, + .callback = sub_80D2E68, +}; + void sub_80D2E68(struct Sprite *sprite) { if (sprite->data[0] == 0) |