Alchemy

procne.c

The Procne summon.

games/tbs/src/effect/parts/procne.c on GitHub

The Procne summon. Part of effect.c, the battle effect object, compiled only through it.

Functions

BattleFx_RunProcne

void BattleFx_RunProcne(struct BattleEffectArgument *effect)

A whirlwind lifts the targets, then comets from a block of objects in a violet sky strike them.

Abilities: Procne (scene kind 8).

400 frames:
  0 to 159   : a whirlwind rises over the field and lifts the targets,
               spinning them round it and drawing them in, while dust
               spirals up;
  160        : the backdrop becomes the violet sky, and a 3x3 block of
               nine objects appears and sways;
  256 to 329 : motes gather into the middle of the block;
  330 to 372 : four comets shoot out of it, 12 frames apart, each with a
               ring of sparks, striking the targets on frames 334, 347,
               359 and 372 (gProcne_Frames);
  395        : the targets fall back to the ground.
Pressing A or B skips to frame 160, or from there to frame 395. At the
end the battle shows the damage and the targets go back to their places.

work->particles hold the dust (0 to 23 drawn), then from frame 160 the gathering motes (0 to 31), the comets' rings (32 to 59) and the four comets (60 to 63). PARTICLES 0 to 511 hold the sparks, 128 for each comet of which 96 are thrown. The scene moves the targets' objects (position, height, angle and gravity) and puts back their places and angles at the end; it loads the whirlwind's and then the comets' palette into the first 64 background colours, moves gProjection.centerX to 72 from frame 160 and back to 120, and sets work->shakeFrames on each comet. It spawns the nine objects of the block on frame 160 and releases them before closing the canvas.

Used by BattleFx_RunSceneEffect.

Line 41

Macros

PROCNE_DUST_CELLS

#define PROCNE_DUST_CELLS (3 * (48 * 64))

The whirlwind sheet holds three 48x64 frames, then the dust; the violet comets are decoded further on.

Used by BattleFx_RunProcne.

Line 9

Also, macros without a comment: PROCNE_COMET_CELLS.

On this page