Alchemy
Loading...
Searching...
No Matches

mars.c File Reference

A Mars Djinni joining the party. More...

Go to the source code of this file.

Functions

void Djinn_RunMarsJoinEffect (s32 djinniId)
 A Mars Djinni joins the party: it turns to the camera, bounces three times, spins ever faster and shrinks away in a fountain of 24 sparks (BattleEffect_UpdatePhasedRadialParticle).
void BattleFx_ShrinkObjectAndDestroyFast (union FieldObject *fieldObject)
 Spins and shrinks an object by 0x400 a frame, then releases it.
void BattleFx_UpdateDescendingOrbitObject (union FieldObject *fieldObject)
 Per-frame update of a Venus Djinni's falling motes: each circles the leader on a shrinking spiral (radius timer * 0.4 pixels) while it sinks a pixel a frame, and is released 20 pixels above the leader's feet.
void BattleFx_UpdateRadialSpread (struct EffectSlot *effect)
 Effect slot callback of a Venus Djinni's particles: each starts on screen at a random point 10 to 20 pixels round the leader and flies 120 pixels up the screen, over and over (states 0 and 1); set to 2, it is freed once it arrives.

Detailed Description

A Mars Djinni joining the party.

Part of psynergy_effects.c, compiled only through it.

Definition in file mars.c.

Function Documentation

◆ Djinn_RunMarsJoinEffect()

void Djinn_RunMarsJoinEffect ( s32 djinniId)

A Mars Djinni joins the party: it turns to the camera, bounces three times, spins ever faster and shrinks away in a fountain of 24 sparks (BattleEffect_UpdatePhasedRadialParticle).

The leader turns to the camera and plays animation 28, the sparks swarm the leader, who pulses for 100 frames, and the sparks vanish. Called by Djinn_JoinParty for a Mars Djinni, which then clears the Djinni's actor slot. Uses all 24 effect slots, tints the field palette red and fades it back at the end.

Definition at line 14 of file mars.c.

Referenced by Djinn_JoinParty(), Djinn_ResolvePendingEvent(), and Djinn_RunMarsJoinEffect().

◆ BattleFx_ShrinkObjectAndDestroyFast()

void BattleFx_ShrinkObjectAndDestroyFast ( union FieldObject * fieldObject)

Spins and shrinks an object by 0x400 a frame, then releases it.

Definition at line 137 of file mars.c.

Referenced by BattleFx_RunVenusDjinnCapture(), and BattleFx_ShrinkObjectAndDestroyFast().

◆ BattleFx_UpdateDescendingOrbitObject()

void BattleFx_UpdateDescendingOrbitObject ( union FieldObject * fieldObject)

Per-frame update of a Venus Djinni's falling motes: each circles the leader on a shrinking spiral (radius timer * 0.4 pixels) while it sinks a pixel a frame, and is released 20 pixels above the leader's feet.

Set by BattleFx_RunVenusDjinnCapture in venus.c.

Definition at line 143 of file mars.c.

Referenced by BattleFx_RunVenusDjinnCapture(), BattleFx_UpdateDescendingOrbitObject(), and Djinn_ResolvePendingEvent().

◆ BattleFx_UpdateRadialSpread()

void BattleFx_UpdateRadialSpread ( struct EffectSlot * effect)

Effect slot callback of a Venus Djinni's particles: each starts on screen at a random point 10 to 20 pixels round the leader and flies 120 pixels up the screen, over and over (states 0 and 1); set to 2, it is freed once it arrives.

Set by BattleFx_RunVenusDjinnCapture in venus.c; a particle that starts on an odd frame plays SE_144.

Definition at line 174 of file mars.c.

Referenced by BattleFx_RunVenusDjinnCapture(), BattleFx_UpdateRadialSpread(), and Djinn_ResolvePendingEvent().