flare.c
Flare.
games/tbs/src/effect/parts/flare.c on GitHub
Flare. Part of effect.c, the battle effect object, compiled only through it.
Functions
BattleFx_RunFlare
void BattleFx_RunFlare(struct BattleEffectArgument *effect)
Flame arc: nine flames rise one after another, 4 frames apart, along a half circle, over 80 frames.
Abilities: Flare, Flare Wall, Flare Storm (kind 11).
Each target flashes red in turn, 8 frames apart from frame 16. Writes REG_BLDCNT and REG_BLDALPHA, and ends with the blitter freed, the transfer callback removed and the canvas layer closed.
effect: the targets. variant 1 adds a second flame 16 pixels above each
one, variant 2 a third 32 pixels above (and longer trails).Used by gBattleFx_EffectHandlers.
BattleFx_BuildCenteredIndexList
UNUSED s32 BattleFx_BuildCenteredIndexList(BattleEffectIndexWindow *window, s16 *output)
List the indices within indexRadius of where currentValue sits in values, keeping only those from 0 to entryLimit - 1. Writes the indices to output and returns how many there are.
Only the first indexRadius * 2 + 1 values are searched, and with no match the window centres on index 0. Changes nothing but output. Nothing calls it.
Macros, without a comment: FLARE_ARC_COUNT.