Froth and Whirlwind. More...
Go to the source code of this file.
Macros | |
| #define | FROTH_MOTE_CELL 0xc00 |
| the mote picture in the sheet | |
| #define | FROTH_FIRST_TARGET 32 |
| the first target seat in work->particles | |
| #define | FROTH_MOTES 30 |
| The motes set up in work->particles, before the target seats: no row of gVortices_Counts may ask for more. | |
| #define | WHIRLWIND_TORNADO_CELLS 0xc56 |
| The tornado pictures follow the six glint cells (gBattleFx_GlintCells) in the sheet: 40x32 sections, the top and bottom ones' three frames interleaved, then the middle one's. | |
| #define | WHIRLWIND_SECTION_BYTES (40 * 32) |
Functions | |
| void | BattleFx_RunFroth (struct BattleEffectArgument *effect) |
| Motes fly out of the top of the user, hang, and from 48 frames after each appears home in on the targets in turn; each that reaches the ground strikes in a burst, flashing and knocking back its target, while the camera swings round over frames 17 to 63. | |
| void | BattleFx_RunWhirlwind (struct BattleEffectArgument *effect) |
| Tornadoes sweep across the targets for 80 frames, sparkling with glints; the canvas flashes and the targets reel seven times, 8 frames apart, from frame 16, and the battle shows the damage on frame 32. | |
Froth and Whirlwind.
Part of effect.c, the battle effect object, compiled only through it.
Definition in file vortices.c.
| #define FROTH_MOTE_CELL 0xc00 |
the mote picture in the sheet
Definition at line 7 of file vortices.c.
Referenced by BattleFx_RunFroth().
| #define FROTH_FIRST_TARGET 32 |
the first target seat in work->particles
Definition at line 8 of file vortices.c.
Referenced by BattleFx_RunFroth().
| #define FROTH_MOTES 30 |
The motes set up in work->particles, before the target seats: no row of gVortices_Counts may ask for more.
Definition at line 11 of file vortices.c.
Referenced by BattleFx_RunFroth().
| #define WHIRLWIND_TORNADO_CELLS 0xc56 |
The tornado pictures follow the six glint cells (gBattleFx_GlintCells) in the sheet: 40x32 sections, the top and bottom ones' three frames interleaved, then the middle one's.
Definition at line 16 of file vortices.c.
Referenced by BattleFx_RunWhirlwind().
| #define WHIRLWIND_SECTION_BYTES (40 * 32) |
Definition at line 17 of file vortices.c.
Referenced by BattleFx_RunWhirlwind().
| void BattleFx_RunFroth | ( | struct BattleEffectArgument * | effect | ) |
Motes fly out of the top of the user, hang, and from 48 frames after each appears home in on the targets in turn; each that reaches the ground strikes in a burst, flashing and knocking back its target, while the camera swings round over frames 17 to 63.
Abilities: Froth, Froth Sphere, Froth Spiral (kind 10).
effect->variant picks the volley from gVortices_Counts (motes and frames) and how hard the screen shakes.
work->particles 0 to 29 are the motes, battle positions in 16.16 until a mote strikes and then its burst's canvas pixels; from 32, one seat for each target. The first 30 bytes of Ram_MapCellBuffer mark the motes that have struck. Loads the vortex palette into the first 64 background colours, sets REG_BLDALPHA and work->shakeFrames, and turns the camera through Camera_ApplyPhasedDelta (work->cameraDelta and cameraPhase), which it removes before it returns.
Definition at line 36 of file vortices.c.
Referenced by BattleFx_RunFroth().
| void BattleFx_RunWhirlwind | ( | struct BattleEffectArgument * | effect | ) |
Tornadoes sweep across the targets for 80 frames, sparkling with glints; the canvas flashes and the targets reel seven times, 8 frames apart, from frame 16, and the battle shows the damage on frame 32.
Abilities: Whirlwind, Tornado, Tempest, Gale, Typhoon, Hurricane (kind 20).
effect->variant picks the shape from gVortices_Shapes: how many tornadoes, how far they sway and how hard the screen shakes.
work->particles 0 to 15 are the glints, four for each tornado (so at most four tornadoes), offsets in pixels from its top left. Loads the tornado palette into the first 64 background colours, fades the canvas in and out through REG_BLDALPHA and keeps work->shakeFrames at 1 so the screen shakes every frame.
Definition at line 189 of file vortices.c.
Referenced by BattleFx_RunWhirlwind().