battle_anims_effects_2

This commit is contained in:
Sewef 2019-10-20 11:16:45 +02:00 committed by huderlem
parent 3b0d9e134f
commit e90c708383
2 changed files with 97 additions and 97 deletions

View File

@ -3306,7 +3306,7 @@ Move_MILK_DRINK:
delay 20 delay 20
playsewithpan SE_W152, SOUND_PAN_ATTACKER playsewithpan SE_W152, SOUND_PAN_ATTACKER
waitforvisualfinish waitforvisualfinish
createsprite gUnknown_0859381C, ANIM_ATTACKER, 3, 0, 0, 1, 0 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0
playsewithpan SE_W208, SOUND_PAN_ATTACKER playsewithpan SE_W208, SOUND_PAN_ATTACKER
waitforvisualfinish waitforvisualfinish
clearmonbg ANIM_TARGET clearmonbg ANIM_TARGET
@ -3411,7 +3411,7 @@ ExtremeSpeedContinue:
playsewithpan SE_W233B, SOUND_PAN_TARGET playsewithpan SE_W233B, SOUND_PAN_TARGET
createsprite gBattleAnimSpriteTemplate_85973B8, ANIM_TARGET, 2, 1, 0, 0, 3 createsprite gBattleAnimSpriteTemplate_85973B8, ANIM_TARGET, 2, 1, 0, 0, 3
waitforvisualfinish waitforvisualfinish
createvisualtask sub_8105AAC, 2 createvisualtask AnimTask_SpeedDust, 2
delay 10 delay 10
createvisualtask sub_810599C, 2 createvisualtask sub_810599C, 2
loopsewithpan SE_W104, SOUND_PAN_ATTACKER, 8, 4 loopsewithpan SE_W104, SOUND_PAN_ATTACKER, 8, 4
@ -3435,19 +3435,19 @@ Move_UPROAR:
loadspritegfx ANIM_TAG_THIN_RING loadspritegfx ANIM_TAG_THIN_RING
monbg ANIM_DEF_PARTNER monbg ANIM_DEF_PARTNER
createvisualtask sub_8106D90, 2, 0 createvisualtask sub_8106D90, 2, 0
createsprite gBattleAnimSpriteTemplate_8593898, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, SOUND_PAN_ATTACKER playsewithpan SE_W253, SOUND_PAN_ATTACKER
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 29, -12, 0 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 29, -12, 0
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -12, -29, 1 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -12, -29, 1
delay 16 delay 16
createvisualtask sub_8106D90, 2, 0 createvisualtask sub_8106D90, 2, 0
createsprite gBattleAnimSpriteTemplate_8593898, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, SOUND_PAN_ATTACKER playsewithpan SE_W253, SOUND_PAN_ATTACKER
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 12, -29, 1 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 12, -29, 1
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -29, -12, 0 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -29, -12, 0
delay 16 delay 16
createvisualtask sub_8106D90, 2, 0 createvisualtask sub_8106D90, 2, 0
createsprite gBattleAnimSpriteTemplate_8593898, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, SOUND_PAN_ATTACKER playsewithpan SE_W253, SOUND_PAN_ATTACKER
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 24, -24, 1 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, 24, -24, 1
createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -24, -24, 0 createsprite gBattleAnimSpriteTemplate_8593BB8, ANIM_ATTACKER, 2, 0, -24, -24, 0
@ -4161,7 +4161,7 @@ Move_AROMATHERAPY:
waitforvisualfinish waitforvisualfinish
playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 43, 3, 10, 0, RGB(13, 31, 12) createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 0, 43, 3, 10, 0, RGB(13, 31, 12)
createsprite gUnknown_08593868, ANIM_ATTACKER, 16, 0, 0, 0, 1 createsprite gBlendThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 16, 0, 0, 0, 1
waitforvisualfinish waitforvisualfinish
end end
@ -4473,13 +4473,13 @@ Move_CALM_MIND:
waitforvisualfinish waitforvisualfinish
createvisualtask sub_81177E4, 5, 1 createvisualtask sub_81177E4, 5, 1
waitforvisualfinish waitforvisualfinish
createsprite gUnknown_08593850, ANIM_ATTACKER, 40, 0, 0, 0, 0 createsprite gThingRingShrinkingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0
playsewithpan SE_W048, SOUND_PAN_ATTACKER playsewithpan SE_W048, SOUND_PAN_ATTACKER
delay 14 delay 14
createsprite gUnknown_08593850, ANIM_ATTACKER, 40, 0, 0, 0, 0 createsprite gThingRingShrinkingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0
playsewithpan SE_W048, SOUND_PAN_ATTACKER playsewithpan SE_W048, SOUND_PAN_ATTACKER
delay 14 delay 14
createsprite gUnknown_08593850, ANIM_ATTACKER, 40, 0, 0, 0, 0 createsprite gThingRingShrinkingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0
playsewithpan SE_W048, SOUND_PAN_ATTACKER playsewithpan SE_W048, SOUND_PAN_ATTACKER
waitforvisualfinish waitforvisualfinish
createvisualtask sub_81177E4, 5, 0 createvisualtask sub_81177E4, 5, 0
@ -7677,15 +7677,15 @@ Move_SOFT_BOILED:
monbg ANIM_ATK_PARTNER monbg ANIM_ATK_PARTNER
playsewithpan SE_W039, SOUND_PAN_ATTACKER playsewithpan SE_W039, SOUND_PAN_ATTACKER
createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 2, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 2, 6, 1
createsprite gUnknown_085937B0, ANIM_ATTACKER, 4, 0, 16, 0 createsprite gSoftBoiledEggSpriteTemplate, ANIM_ATTACKER, 4, 0, 16, 0
createsprite gUnknown_085937B0, ANIM_ATTACKER, 4, 0, 16, 1 createsprite gSoftBoiledEggSpriteTemplate, ANIM_ATTACKER, 4, 0, 16, 1
delay 120 delay 120
delay 7 delay 7
playsewithpan SE_W030, SOUND_PAN_ATTACKER playsewithpan SE_W030, SOUND_PAN_ATTACKER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30) createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30)
createsprite gUnknown_0859381C, ANIM_ATTACKER, 3, 31, 16, 0, 1 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 31, 16, 0, 1
delay 8 delay 8
createsprite gUnknown_0859381C, ANIM_ATTACKER, 3, 31, 16, 0, 1 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 31, 16, 0, 1
delay 60 delay 60
setarg 7, -1 setarg 7, -1
waitforvisualfinish waitforvisualfinish
@ -7736,12 +7736,12 @@ Move_HEAL_BELL:
playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER
createvisualtask sub_8116664, 10, 4, 3, 10, 0, RGB(12, 24, 30) createvisualtask sub_8116664, 10, 4, 3, 10, 0, RGB(12, 24, 30)
createvisualtask sub_8116620, 10, 10, 3, 10, 0, RGB_WHITE createvisualtask sub_8116620, 10, 10, 3, 10, 0, RGB_WHITE
createsprite gUnknown_08593868, ANIM_ATTACKER, 16, 0, 0, 0, 1 createsprite gBlendThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 16, 0, 0, 0, 1
end end
HealBell1: HealBell1:
createvisualtask sub_8116664, 10, 4, 3, 8, 0, RGB(12, 24, 30) createvisualtask sub_8116664, 10, 4, 3, 8, 0, RGB(12, 24, 30)
createvisualtask sub_8116620, 10, 10, 3, 2, 10, RGB_WHITE createvisualtask sub_8116620, 10, 10, 3, 2, 10, RGB_WHITE
createsprite gUnknown_0859381C, ANIM_ATTACKER, 40, 0, -24, 0, 1 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 40, 0, -24, 0, 1
playsewithpan SE_W215, SOUND_PAN_ATTACKER playsewithpan SE_W215, SOUND_PAN_ATTACKER
return return
@ -8468,7 +8468,7 @@ Move_REFRESH:
waitforvisualfinish waitforvisualfinish
playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30) createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 10, 0, RGB(12, 24, 30)
createsprite gUnknown_0859381C, ANIM_ATTACKER, 3, 0, 0, 0, 0 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0
end end
Move_BLAZE_KICK: Move_BLAZE_KICK:
@ -8505,7 +8505,7 @@ Move_HYPER_VOICE:
HyperVoiceEffect: HyperVoiceEffect:
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 8, 0, RGB_YELLOW createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 8, 0, RGB_YELLOW
createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0
createsprite gUnknown_08593880, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1
createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1
createvisualtask sub_81162A4, 2, 1, 0, 6, 1 createvisualtask sub_81162A4, 2, 1, 0, 6, 1
@ -10440,7 +10440,7 @@ General_ItemEffect:
waitforvisualfinish waitforvisualfinish
playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER playsewithpan SE_REAPOKE, SOUND_PAN_ATTACKER
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 3, 7, 0, RGB(17, 31, 25) createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 3, 7, 0, RGB(17, 31, 25)
createsprite gUnknown_0859381C, ANIM_ATTACKER, 3, 0, 0, 0, 0 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0
waitforvisualfinish waitforvisualfinish
end end

View File

@ -34,11 +34,11 @@ void AnimGuillotinePincer(struct Sprite *);
void AnimBreathPuff(struct Sprite *); void AnimBreathPuff(struct Sprite *);
void AnimAngerMark(struct Sprite *); void AnimAngerMark(struct Sprite *);
void AnimPencil(struct Sprite *); void AnimPencil(struct Sprite *);
void sub_81051C4(struct Sprite *); void AnimBlendThinRing(struct Sprite *);
void sub_81052A4(struct Sprite *); void AnimHyperVoiceRing(struct Sprite *);
void sub_81054E8(struct Sprite *); void AnimUproarRing(struct Sprite *);
void sub_8105538(struct Sprite *); void AnimSoftBoiledEgg(struct Sprite *);
void sub_8105C48(struct Sprite *); void AnimSpeedDust(struct Sprite *);
void sub_8105DE8(struct Sprite *); void sub_8105DE8(struct Sprite *);
void sub_8105E60(struct Sprite *); void sub_8105E60(struct Sprite *);
void sub_8106140(struct Sprite *); void sub_8106140(struct Sprite *);
@ -80,17 +80,17 @@ static void ThrashMoveMonStep(u8);
static void sub_8104D28(u8); static void sub_8104D28(u8);
static void sub_8104F54(u8); static void sub_8104F54(u8);
static void AnimPencil_Step(struct Sprite *); static void AnimPencil_Step(struct Sprite *);
static void sub_810557C(struct Sprite *); static void AnimSoftBoiledEgg_Step1(struct Sprite *);
static void sub_81055F4(struct Sprite *); static void AnimSoftBoiledEgg_Step2(struct Sprite *);
static void sub_810561C(struct Sprite *); static void AnimSoftBoiledEgg_Step3(struct Sprite *);
static void sub_8105694(struct Sprite *); static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *);
static void sub_81056D4(struct Sprite *); static void AnimSoftBoiledEgg_Step3_Callback2(struct Sprite *);
static void sub_810571C(struct Sprite *); static void AnimSoftBoiledEgg_Step4(struct Sprite *);
static void sub_810575C(struct Sprite *); static void AnimSoftBoiledEgg_Step4_Callback(struct Sprite *);
static void sub_81057B8(u8); static void sub_81057B8(u8);
static void sub_8105878(u8); static void sub_8105878(u8);
static void sub_81059E0(u8); static void sub_81059E0(u8);
static void sub_8105B08(u8); static void SpeedDust_Step1(u8);
static void sub_8105F30(u8); static void sub_8105F30(u8);
static void sub_8105F84(u8); static void sub_8105F84(u8);
static void sub_810618C(struct Sprite *); static void sub_810618C(struct Sprite *);
@ -660,7 +660,7 @@ const struct SpriteTemplate gExplosionSpriteTemplate =
.callback = AnimSparklingParticle, .callback = AnimSparklingParticle,
}; };
const union AffineAnimCmd gUnknown_08593734[] = const union AffineAnimCmd gSoftBoiledEggAffineAnimCmds1[] =
{ {
AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 2), AFFINEANIMCMD_FRAME(0x0, 0x0, -8, 2),
AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 4), AFFINEANIMCMD_FRAME(0x0, 0x0, 8, 4),
@ -668,13 +668,13 @@ const union AffineAnimCmd gUnknown_08593734[] =
AFFINEANIMCMD_JUMP(0), AFFINEANIMCMD_JUMP(0),
}; };
const union AffineAnimCmd gUnknown_08593754[] = const union AffineAnimCmd gSoftBoiledEggAffineAnimCmds2[] =
{ {
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
const union AffineAnimCmd gUnknown_08593764[] = const union AffineAnimCmd gSoftBoiledEggAffineAnimCmds3[] =
{ {
AFFINEANIMCMD_FRAME(0xFFF8, 0x4, 0, 8), AFFINEANIMCMD_FRAME(0xFFF8, 0x4, 0, 8),
AFFINEANIMCMD_LOOP(0), AFFINEANIMCMD_LOOP(0),
@ -686,121 +686,121 @@ const union AffineAnimCmd gUnknown_08593764[] =
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
const union AffineAnimCmd *const gUnknown_085937A4[] = const union AffineAnimCmd *const gSoftBoiledEggAffineAnimTable[] =
{ {
gUnknown_08593734, gSoftBoiledEggAffineAnimCmds1,
gUnknown_08593754, gSoftBoiledEggAffineAnimCmds2,
gUnknown_08593764, gSoftBoiledEggAffineAnimCmds3,
}; };
//*
const struct SpriteTemplate gUnknown_085937B0 = const struct SpriteTemplate gSoftBoiledEggSpriteTemplate =
{ {
.tileTag = ANIM_TAG_BREAKING_EGG, .tileTag = ANIM_TAG_BREAKING_EGG,
.paletteTag = ANIM_TAG_BREAKING_EGG, .paletteTag = ANIM_TAG_BREAKING_EGG,
.oam = &gOamData_AffineDouble_ObjBlend_32x32, .oam = &gOamData_AffineDouble_ObjBlend_32x32,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_085937A4, .affineAnims = gSoftBoiledEggAffineAnimTable,
.callback = sub_8105538, .callback = AnimSoftBoiledEgg,
}; };
const union AffineAnimCmd gUnknown_085937C8[] = const union AffineAnimCmd gThingRingExpandingAffineAnimCmds1[] =
{ {
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 30), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 30),
AFFINEANIMCMD_END_ALT(1), AFFINEANIMCMD_END_ALT(1),
}; };
const union AffineAnimCmd gUnknown_085937E0[] = const union AffineAnimCmd gThingRingExpandingAffineAnimCmds2[] =
{ {
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 15), AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 15),
AFFINEANIMCMD_END_ALT(1), AFFINEANIMCMD_END_ALT(1),
}; };
const union AffineAnimCmd gUnknown_085937F8[] = const union AffineAnimCmd gHyperVoiceRingAffineAnimCmds[] =
{ {
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0xB, 0xB, 0, 45), AFFINEANIMCMD_FRAME(0xB, 0xB, 0, 45),
AFFINEANIMCMD_END_ALT(1), AFFINEANIMCMD_END_ALT(1),
}; };
const union AffineAnimCmd *const gUnknown_08593810[] = const union AffineAnimCmd *const gThingRingExpandingAffineAnimTable[] =
{ {
gUnknown_085937C8, gThingRingExpandingAffineAnimCmds1,
gUnknown_085937E0, gThingRingExpandingAffineAnimCmds2,
}; };
const union AffineAnimCmd *const gUnknown_08593818[] = const union AffineAnimCmd *const gHyperVoiceRingAffineAnimTable[] =
{ {
gUnknown_085937F8, gHyperVoiceRingAffineAnimCmds,
}; };
const struct SpriteTemplate gUnknown_0859381C = const struct SpriteTemplate gThinRingExpandingSpriteTemplate =
{ {
.tileTag = ANIM_TAG_THIN_RING, .tileTag = ANIM_TAG_THIN_RING,
.paletteTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_THIN_RING,
.oam = &gOamData_AffineDouble_ObjNormal_64x64, .oam = &gOamData_AffineDouble_ObjNormal_64x64,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_08593810, .affineAnims = gThingRingExpandingAffineAnimTable,
.callback = AnimSparklingParticle, .callback = AnimSparklingParticle,
}; };
//*
const union AffineAnimCmd gUnknown_08593834[] = const union AffineAnimCmd gThingRingShrinkingAffineAnimCmds[] =
{ {
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0), AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 30), AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 30),
AFFINEANIMCMD_END_ALT(1), AFFINEANIMCMD_END_ALT(1),
}; };
const union AffineAnimCmd *const gUnknown_0859384C[] = const union AffineAnimCmd *const gThingRingShrinkingAffineAnimTable[] =
{ {
gUnknown_08593834, gThingRingShrinkingAffineAnimCmds,
}; };
const struct SpriteTemplate gUnknown_08593850 = const struct SpriteTemplate gThingRingShrinkingSpriteTemplate =
{ {
.tileTag = ANIM_TAG_THIN_RING, .tileTag = ANIM_TAG_THIN_RING,
.paletteTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_THIN_RING,
.oam = &gOamData_AffineDouble_ObjBlend_64x64, .oam = &gOamData_AffineDouble_ObjBlend_64x64,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_0859384C, .affineAnims = gThingRingShrinkingAffineAnimTable,
.callback = AnimSparklingParticle, .callback = AnimSparklingParticle,
}; };
const struct SpriteTemplate gUnknown_08593868 = const struct SpriteTemplate gBlendThinRingExpandingSpriteTemplate =
{ {
.tileTag = ANIM_TAG_THIN_RING, .tileTag = ANIM_TAG_THIN_RING,
.paletteTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_THIN_RING,
.oam = &gOamData_AffineDouble_ObjBlend_64x64, .oam = &gOamData_AffineDouble_ObjBlend_64x64,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_08593810, .affineAnims = gThingRingExpandingAffineAnimTable,
.callback = sub_81051C4, .callback = AnimBlendThinRing,
}; };
const struct SpriteTemplate gUnknown_08593880 = const struct SpriteTemplate gHyperVoiceRingSpriteTemplate =
{ {
.tileTag = ANIM_TAG_THIN_RING, .tileTag = ANIM_TAG_THIN_RING,
.paletteTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_THIN_RING,
.oam = &gOamData_AffineDouble_ObjBlend_64x64, .oam = &gOamData_AffineDouble_ObjBlend_64x64,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_08593818, .affineAnims = gHyperVoiceRingAffineAnimTable,
.callback = sub_81052A4, .callback = AnimHyperVoiceRing,
}; };
const struct SpriteTemplate gBattleAnimSpriteTemplate_8593898 = const struct SpriteTemplate gUproarRingSpriteTemplate =
{ {
.tileTag = ANIM_TAG_THIN_RING, .tileTag = ANIM_TAG_THIN_RING,
.paletteTag = ANIM_TAG_THIN_RING, .paletteTag = ANIM_TAG_THIN_RING,
.oam = &gOamData_AffineDouble_ObjBlend_64x64, .oam = &gOamData_AffineDouble_ObjBlend_64x64,
.anims = gDummySpriteAnimTable, .anims = gDummySpriteAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gUnknown_08593810, .affineAnims = gThingRingExpandingAffineAnimTable,
.callback = sub_81054E8, .callback = AnimUproarRing,
}; };
const union AffineAnimCmd gUnknown_085938B0[] = const union AffineAnimCmd gUnknown_085938B0[] =
@ -809,7 +809,7 @@ const union AffineAnimCmd gUnknown_085938B0[] =
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
const union AnimCmd gUnknown_085938C0[] = const union AnimCmd gSpeedDustAnimCmds[] =
{ {
ANIMCMD_FRAME(0, 3), ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(4, 3), ANIMCMD_FRAME(4, 3),
@ -819,20 +819,20 @@ const union AnimCmd gUnknown_085938C0[] =
ANIMCMD_END, ANIMCMD_END,
}; };
const union AnimCmd *const gUnknown_085938D8[] = const union AnimCmd *const gSpeedDustAnimTable[] =
{ {
gUnknown_085938C0, gSpeedDustAnimCmds,
}; };
const struct SpriteTemplate gUnknown_085938DC = const struct SpriteTemplate gSpeedDustSpriteTemplate =
{ {
.tileTag = ANIM_TAG_SPEED_DUST, .tileTag = ANIM_TAG_SPEED_DUST,
.paletteTag = ANIM_TAG_SPEED_DUST, .paletteTag = ANIM_TAG_SPEED_DUST,
.oam = &gOamData_AffineOff_ObjNormal_16x16, .oam = &gOamData_AffineOff_ObjNormal_16x16,
.anims = gUnknown_085938D8, .anims = gSpeedDustAnimTable,
.images = NULL, .images = NULL,
.affineAnims = gDummySpriteAffineAnimTable, .affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8105C48, .callback = AnimSpeedDust,
}; };
const s8 gUnknown_085938F4[][2] = const s8 gUnknown_085938F4[][2] =
@ -2533,7 +2533,7 @@ static void AnimPencil_Step(struct Sprite *sprite)
} }
} }
void sub_81051C4(struct Sprite *sprite) void AnimBlendThinRing(struct Sprite *sprite)
{ {
u8 battler = 0; u8 battler = 0;
u16 sp0 = 0; u16 sp0 = 0;
@ -2573,7 +2573,7 @@ void sub_8105284(struct Sprite *sprite)
} }
} }
void sub_81052A4(struct Sprite *sprite) void AnimHyperVoiceRing(struct Sprite *sprite)
{ {
u16 r9 = 0; u16 r9 = 0;
u16 r6 = 0; u16 r6 = 0;
@ -2658,7 +2658,7 @@ void sub_81052A4(struct Sprite *sprite)
sprite->callback(sprite); sprite->callback(sprite);
} }
void sub_81054E8(struct Sprite *sprite) void AnimUproarRing(struct Sprite *sprite)
{ {
u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING); u8 index = IndexOfSpritePaletteTag(ANIM_TAG_THIN_RING);
if (index != 0xFF) if (index != 0xFF)
@ -2671,7 +2671,7 @@ void sub_81054E8(struct Sprite *sprite)
sprite->callback(sprite); sprite->callback(sprite);
} }
void sub_8105538(struct Sprite *sprite) void AnimSoftBoiledEgg(struct Sprite *sprite)
{ {
s16 r1; s16 r1;
InitSpritePosToAnimAttacker(sprite, FALSE); InitSpritePosToAnimAttacker(sprite, FALSE);
@ -2679,10 +2679,10 @@ void sub_8105538(struct Sprite *sprite)
sprite->data[0] = 0x380; sprite->data[0] = 0x380;
sprite->data[1] = r1; sprite->data[1] = r1;
sprite->data[7] = gBattleAnimArgs[2]; sprite->data[7] = gBattleAnimArgs[2];
sprite->callback = sub_810557C; sprite->callback = AnimSoftBoiledEgg_Step1;
} }
static void sub_810557C(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step1(struct Sprite *sprite)
{ {
s16 add; s16 add;
sprite->pos2.y -= (sprite->data[0] >> 8); sprite->pos2.y -= (sprite->data[0] >> 8);
@ -2698,20 +2698,20 @@ static void sub_810557C(struct Sprite *sprite)
sprite->pos2.x = 0; sprite->pos2.x = 0;
sprite->data[0] = 0; sprite->data[0] = 0;
StartSpriteAffineAnim(sprite, 1); StartSpriteAffineAnim(sprite, 1);
sprite->callback = sub_81055F4; sprite->callback = AnimSoftBoiledEgg_Step2;
} }
} }
static void sub_81055F4(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step2(struct Sprite *sprite)
{ {
if (sprite->data[0]++ > 19) if (sprite->data[0]++ > 19)
{ {
StartSpriteAffineAnim(sprite, 2); StartSpriteAffineAnim(sprite, 2);
sprite->callback = sub_810561C; sprite->callback = AnimSoftBoiledEgg_Step3;
} }
} }
static void sub_810561C(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step3(struct Sprite *sprite)
{ {
if (sprite->affineAnimEnded) if (sprite->affineAnimEnded)
{ {
@ -2720,17 +2720,17 @@ static void sub_810561C(struct Sprite *sprite)
if (sprite->data[7] == 0) if (sprite->data[7] == 0)
{ {
sprite->oam.tileNum += 16; sprite->oam.tileNum += 16;
sprite->callback = sub_8105694; sprite->callback = AnimSoftBoiledEgg_Step3_Callback1;
} }
else else
{ {
sprite->oam.tileNum += 32; sprite->oam.tileNum += 32;
sprite->callback = sub_810571C; sprite->callback = AnimSoftBoiledEgg_Step4;
} }
} }
} }
static void sub_8105694(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step3_Callback1(struct Sprite *sprite)
{ {
sprite->pos2.y -= 2; sprite->pos2.y -= 2;
if (++sprite->data[0] == 9) if (++sprite->data[0] == 9)
@ -2739,34 +2739,34 @@ static void sub_8105694(struct Sprite *sprite)
sprite->data[1] = 0; sprite->data[1] = 0;
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND); SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT2_ALL | BLDCNT_EFFECT_BLEND);
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND((u16)sprite->data[0], 0)); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND((u16)sprite->data[0], 0));
sprite->callback = sub_81056D4; sprite->callback = AnimSoftBoiledEgg_Step3_Callback2;
} }
} }
static void sub_81056D4(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step3_Callback2(struct Sprite *sprite)
{ {
if (sprite->data[1]++ % 3 == 0) if (sprite->data[1]++ % 3 == 0)
{ {
sprite->data[0]--; sprite->data[0]--;
SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(sprite->data[0], 16 - sprite->data[0])); SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(sprite->data[0], 16 - sprite->data[0]));
if (sprite->data[0] == 0) if (sprite->data[0] == 0)
sprite->callback = sub_810571C; sprite->callback = AnimSoftBoiledEgg_Step4;
} }
} }
static void sub_810571C(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step4(struct Sprite *sprite)
{ {
if ((u16)gBattleAnimArgs[7] == 0xFFFF) if ((u16)gBattleAnimArgs[7] == 0xFFFF)
{ {
sprite->invisible = 1; sprite->invisible = 1;
if (sprite->data[7] == 0) if (sprite->data[7] == 0)
sprite->callback = sub_810575C; sprite->callback = AnimSoftBoiledEgg_Step4_Callback;
else else
sprite->callback = DestroyAnimSprite; sprite->callback = DestroyAnimSprite;
} }
} }
static void sub_810575C(struct Sprite *sprite) static void AnimSoftBoiledEgg_Step4_Callback(struct Sprite *sprite)
{ {
SetGpuReg(REG_OFFSET_BLDCNT, 0); SetGpuReg(REG_OFFSET_BLDCNT, 0);
SetGpuReg(REG_OFFSET_BLDALPHA, 0); SetGpuReg(REG_OFFSET_BLDALPHA, 0);
@ -2904,7 +2904,7 @@ static void sub_81059E0(u8 taskId)
} }
} }
void sub_8105AAC(u8 taskId) void AnimTask_SpeedDust(u8 taskId)
{ {
struct Task* task = &gTasks[taskId]; struct Task* task = &gTasks[taskId];
task->data[0] = 0; task->data[0] = 0;
@ -2919,10 +2919,10 @@ void sub_8105AAC(u8 taskId)
task->data[13] = 0; task->data[13] = 0;
task->data[14] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_ATTACKER); task->data[14] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_ATTACKER);
task->data[15] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_TARGET); task->data[15] = GetBattlerSpriteCoord(gBattleAnimAttacker, ANIM_TARGET);
task->func = sub_8105B08; task->func = SpeedDust_Step1;
} }
static void sub_8105B08(u8 taskId) static void SpeedDust_Step1(u8 taskId)
{ {
struct Task* task = &gTasks[taskId]; struct Task* task = &gTasks[taskId];
switch (task->data[8]) switch (task->data[8])
@ -2964,7 +2964,7 @@ static void sub_8105B08(u8 taskId)
{ {
u8 spriteId; u8 spriteId;
task->data[1] = 0; task->data[1] = 0;
spriteId = CreateSprite(&gUnknown_085938DC, task->data[14], task->data[15], 0); spriteId = CreateSprite(&gSpeedDustSpriteTemplate, task->data[14], task->data[15], 0);
if (spriteId != MAX_SPRITES) if (spriteId != MAX_SPRITES)
{ {
gSprites[spriteId].data[0] = taskId; gSprites[spriteId].data[0] = taskId;
@ -2988,7 +2988,7 @@ static void sub_8105B08(u8 taskId)
} }
} }
void sub_8105C48(struct Sprite *sprite) void AnimSpeedDust(struct Sprite *sprite)
{ {
sprite->invisible = gTasks[sprite->data[0]].data[5]; sprite->invisible = gTasks[sprite->data[0]].data[5];
if (sprite->animEnded) if (sprite->animEnded)