Documented AnimSparkElectricityFlashing

This commit is contained in:
Frank 2026-07-02 21:35:02 -04:00
parent 422906d400
commit 0b0481a2b3
3 changed files with 38 additions and 32 deletions

View File

@ -529,12 +529,20 @@
createsprite gElectricPuffSpriteTemplate, \anim_battler, \subpriority_offset, \relative_to, \x, \y
.endm
.macro create_lightning_sprite anim_battler:req, subpriority_offset:req, x:req, y:req
createsprite gLightningSpriteTemplate, \anim_battler, \subpriority_offset, \x, \y
.endm
.macro create_spark_electricity_sprite anim_battler:req, subpriority_offset:req, sine1:req, multiplier=24, sine2:req, duration:req, target:req, useAltCoords=TRUE, priority:req
createsprite gSparkElectricitySpriteTemplate, \anim_battler, \subpriority_offset, \sine1, \multiplier, \sine2, \duration, \target, \useAltCoords, \priority
.endm
.macro create_lightning_sprite anim_battler:req, subpriority_offset:req, x:req, y:req
createsprite gLightningSpriteTemplate, \anim_battler, \subpriority_offset, \x, \y
.macro create_spark_electricity_flashing_sprite anim_battler:req, subpriority_offset:req, x:req, y:req, unk2:req, unk3:req, unk4:req, unk5:req, unk6:req, unk7:req
createsprite gSparkElectricityFlashingSpriteTemplate, \anim_battler, \subpriority_offset, \x, \y, \unk2, \unk3, \unk4, \unk5, \unk6, \unk7
.endm
.macro create_thunderbolt_orb_sprite anim_battler:req, subpriority_offset:req, unk0:req, x:req, y:req, unk3:req
createsprite gThunderboltOrbSpriteTemplate, \anim_battler, \subpriority_offset, \unk0, \x, \y, \unk3
.endm
@.macro create_zap_cannon_ball_sprite anim_battler:req, subpriority_offset:req
@ -545,10 +553,6 @@
createsprite gZapCannonSparkSpriteTemplate, \anim_battler, \subpriority_offset, \unk0, \unk1, \unk2, \unk3, \unk4, \unk5, \unk6
.endm
.macro create_thunderbolt_orb_sprite anim_battler:req, subpriority_offset:req, unk0:req, x:req, y:req, unk3:req
createsprite gThunderboltOrbSpriteTemplate, \anim_battler, \subpriority_offset, \unk0, \x, \y, \unk3
.endm
@.macro create_sprite anim_battler:req, subpriority_offset:req
@createsprite gSpriteTemplate, \anim_battler, \subpriority_offset
@.endm

View File

@ -1094,14 +1094,14 @@ Move_THUNDERBOLT:
waitforvisualfinish
delay 20
create_thunderbolt_orb_sprite ANIM_TARGET, 3, unk0=44, x=0, y=0, unk3=3
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 0, 40, 0, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 64, 40, 1, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 128, 40, 0, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 192, 40, 2, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 32, 40, 0, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 96, 40, 1, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 160, 40, 0, -32765
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 224, 40, 2, -32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=32, unk3=44, unk4=0, unk5=40, unk6=0, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=32, unk3=44, unk4=64, unk5=40, unk6=1, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=32, unk3=44, unk4=128, unk5=40, unk6=0, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=32, unk3=44, unk4=192, unk5=40, unk6=2, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=16, unk3=44, unk4=32, unk5=40, unk6=0, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=16, unk3=44, unk4=96, unk5=40, unk6=1, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=16, unk3=44, unk4=160, unk5=40, unk6=0, unk7=-32765
create_spark_electricity_flashing_sprite ANIM_TARGET, 4, x=0, y=0, unk2=16, unk3=44, unk4=224, unk5=40, unk6=2, unk7=-32765
playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET
delay 0
createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 2, 2, RGB_BLACK
@ -1966,14 +1966,14 @@ Move_SPARK:
delay 20
blend_color_cycle priority=2, selector=F_PAL_BG | F_PAL_ATTACKER, delay=-31, num_blends=1, initial_blend_y=7, target_blend_y=7, color=RGB(31, 31, 22)
playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 0, 20, 0, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 64, 20, 1, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 128, 20, 0, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 192, 20, 2, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 32, 20, 0, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 96, 20, 1, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 160, 20, 0, 0
createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 224, 20, 2, 0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=32, unk3=12, unk4=0, unk5=20, unk6=0, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=32, unk3=12, unk4=64, unk5=20, unk6=1, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=32, unk3=12, unk4=128, unk5=20, unk6=0, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=32, unk3=12, unk4=192, unk5=20, unk6=2, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=16, unk3=12, unk4=32, unk5=20, unk6=0, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=16, unk3=12, unk4=96, unk5=20, unk6=1, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=16, unk3=12, unk4=160, unk5=20, unk6=0, unk7=0
create_spark_electricity_flashing_sprite ANIM_ATTACKER, 4, x=0, y=0, unk2=16, unk3=12, unk4=224, unk5=20, unk6=2, unk7=0
delay 4
waitforvisualfinish
blend_color_cycle priority=2, selector=F_PAL_BG | F_PAL_ATTACKER, delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 22)

View File

@ -641,26 +641,28 @@ static void AnimThunderboltOrb(struct Sprite *sprite)
static void AnimSparkElectricityFlashing(struct Sprite *sprite)
{
CMD_ARGS(x, y, unk2, unk3, unk4, unk5, unk6, unk7);
u8 battler;
sprite->data[0] = gBattleAnimArgs[3];
if (gBattleAnimArgs[7] & 0x8000)
sprite->data[0] = cmd->unk3;
if (cmd->unk7 & 0x8000)
battler = gBattleAnimTarget;
else
battler = gBattleAnimAttacker;
if (IsContest() || GetBattlerSide(battler) == B_SIDE_PLAYER)
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
cmd->x = -cmd->x;
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + gBattleAnimArgs[0];
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1];
sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2) + cmd->x;
sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + cmd->y;
sprite->data[4] = gBattleAnimArgs[7] & 0x7FFF;
sprite->data[5] = gBattleAnimArgs[2];
sprite->data[6] = gBattleAnimArgs[5];
sprite->data[7] = gBattleAnimArgs[4];
sprite->data[4] = cmd->unk7 & 0x7FFF;
sprite->data[5] = cmd->unk2;
sprite->data[6] = cmd->unk5;
sprite->data[7] = cmd->unk4;
sprite->oam.tileNum += gBattleAnimArgs[6] * 4;
sprite->oam.tileNum += cmd->unk6 * 4;
sprite->callback = AnimSparkElectricityFlashing_Step;
sprite->callback(sprite);
}