Alchemy
Loading...
Searching...
No Matches

arcs.c File Reference

The swelling arcs over the caster. More...

Go to the source code of this file.

Data Structures

struct  ArcSprite
 A sprite as the arcs set it up: its three OAM attributes and its bookkeeping. More...

Functions

void FieldFx_UpdateScaledArcObjectA (union FieldObject *fieldObject)
 Per-frame update of arc A: over 32 frames it swells and shrinks again (scale sin(frame / 64 turn)) while it rises a pixel a frame on the object it follows, 9 pixels in front of it and up to 5 pixels further while small.
void FieldFx_UpdateScaledArcObjectB (union FieldObject *fieldObject)
 Per-frame update of arc B: arc A upside down, 16 pixels in front of the object and up to 5 pixels nearer while small.
void BattleFx_SpawnScaledArcObjects (struct FieldActor *linked)
 Spawns the two swelling arcs (object 26) on an object, A and B (B upside down); they follow it for 32 frames.
void BattleFx_FlickerObjectAndTick (union FieldObject *fieldObject)
 Per-frame update: flashes an object between sprite param 7 and 0 every 2 frames and spawns the swelling arcs on it every 16.
void FieldFx_CycleObjectValueByCounter (union FieldObject *fieldObject)
 Per-frame update: cycles an object through sprite params 0 to 5, one step every 2 frames, and spawns the swelling arcs on it every 16.

Detailed Description

The swelling arcs over the caster.

Part of psynergy_effects.c, compiled only through it.

Definition in file arcs.c.

Function Documentation

◆ FieldFx_UpdateScaledArcObjectA()

void FieldFx_UpdateScaledArcObjectA ( union FieldObject * fieldObject)

Per-frame update of arc A: over 32 frames it swells and shrinks again (scale sin(frame / 64 turn)) while it rises a pixel a frame on the object it follows, 9 pixels in front of it and up to 5 pixels further while small.

Definition at line 11 of file arcs.c.

Referenced by BattleEffect_CleanupSceneObjects(), BattleFx_SpawnScaledArcObjects(), Djinn_ResolvePendingEvent(), and FieldFx_UpdateScaledArcObjectA().

◆ FieldFx_UpdateScaledArcObjectB()

void FieldFx_UpdateScaledArcObjectB ( union FieldObject * fieldObject)

Per-frame update of arc B: arc A upside down, 16 pixels in front of the object and up to 5 pixels nearer while small.

Definition at line 36 of file arcs.c.

Referenced by BattleEffect_CleanupSceneObjects(), BattleFx_SpawnScaledArcObjects(), Djinn_ResolvePendingEvent(), and FieldFx_UpdateScaledArcObjectB().

◆ BattleFx_SpawnScaledArcObjects()

void BattleFx_SpawnScaledArcObjects ( struct FieldActor * linked)

Spawns the two swelling arcs (object 26) on an object, A and B (B upside down); they follow it for 32 frames.

Definition at line 88 of file arcs.c.

Referenced by BattleFx_FlickerObjectAndTick(), BattleFx_SpawnScaledArcObjects(), Djinn_ResolvePendingEvent(), and FieldFx_CycleObjectValueByCounter().

◆ BattleFx_FlickerObjectAndTick()

void BattleFx_FlickerObjectAndTick ( union FieldObject * fieldObject)

Per-frame update: flashes an object between sprite param 7 and 0 every 2 frames and spawns the swelling arcs on it every 16.

Definition at line 134 of file arcs.c.

Referenced by BattleFx_FlickerObjectAndTick(), Djinn_ResolvePendingEvent(), and EventObject_Initialize().

◆ FieldFx_CycleObjectValueByCounter()

void FieldFx_CycleObjectValueByCounter ( union FieldObject * fieldObject)

Per-frame update: cycles an object through sprite params 0 to 5, one step every 2 frames, and spawns the swelling arcs on it every 16.

Definition at line 148 of file arcs.c.

Referenced by Djinn_ResolvePendingEvent(), EventObject_Initialize(), and FieldFx_CycleObjectValueByCounter().