stars.c
Astral Blast and Shining Star.
games/tbs/src/effect/parts/stars.c on GitHub
Astral Blast and Shining Star. Part of effect.c, the battle effect object, compiled only through it.
Functions
BattleFx_RunAstralBlast
void BattleFx_RunAstralBlast(struct BattleEffectArgument *effect)
Three star-shaped rings of light fly from 40 pixels above the user at the first target, 12 frames apart, growing and spinning as they go, while the camera swings round; each knocks the target back on arrival, and the third lets the battle show the damage.
Abilities: Astral Blast (kind 68).
work->particles 0 to 2 are the rings, battle positions in 16.16. Loads the rune palette into the first 64 background colours, sets the user's animation (2, at speed 48), turns the camera's yaw, sends the target back with its motion fields and sets work->shakeFrames.
Used by gBattleFx_EffectHandlers.
BattleFx_RunShiningStar
void BattleFx_RunShiningStar(struct BattleEffectArgument *effect)
Eight spinning star outlines fall from 120 pixels above the user towards the first target, a few frames apart, and bounce off the ground near it, each bounce shaking the screen and flashing the targets; the battle shows the damage on frame 96.
Abilities: Shining Star (kind 62).
128 frames. work->particles 0 to 7 are the stars, battle positions in 16.16, each variant the frame it starts. Rebuilds the background ramp each frame (Graphics_UpdatePhasePalette, after loading the rune palette) and sets work->shakeFrames at each bounce.
Used by gBattleFx_EffectHandlers.