Planet Diver, Haunt and the orbiting spirals. More...
Go to the source code of this file.
Data Structures | |
| struct | ImpactChip |
| One chip of the impact, laid over the same 28-byte records as PARTICLES but with its velocities in other places than struct EffectStep's. More... | |
Macros | |
| #define | PLANET_DIVER_IMPACT_CHIPS ((struct ImpactChip *)Ram_MapCellBuffer) |
| Ram_MapCellBuffer seen as Planet Diver's chips. | |
| #define | PLANET_DIVER_FRAMES 88 |
| #define | PLANET_DIVER_CLEARED_CHIPS 1024 |
| map-buffer chip slots cleared first | |
| #define | PLANET_DIVER_CHIPS 256 |
| chips the fireball bursts into | |
| #define | HAUNT_SCATTERED 512 |
| skull slots scattered at the start | |
| #define | HAUNT_SKULLS 8 |
| skulls drawn around each target | |
| #define | HAUNT_SLOTS 64 |
| particles reserved for each target | |
| #define | ORBITING_SPIRALS_LIFE 60 |
| frames each target's spirals turn | |
Functions | |
| void | BattleFx_RunPlanetDiver (struct BattleEffectArgument *effect) |
| The user flashes and leaps into the air, turns into a ball of fire, falls onto the first target and bursts into chips that bounce on the ground. | |
| void | BattleFx_RunHaunt (struct BattleEffectArgument *effect) |
| Skulls close in on each target in turn. | |
| void | BattleFx_RunOrbitingSpirals (struct BattleEffectArgument *effect) |
| Four spirals circle 40 pixels above each target in turn, 16 frames apart, for 60 frames each, 16 pixels out from the centre; each target takes its damage pose halfway through. | |
Planet Diver, Haunt and the orbiting spirals.
Part of effect.c, the battle effect object, compiled only through it.
Definition in file planet_diver.c.
| #define PLANET_DIVER_IMPACT_CHIPS ((struct ImpactChip *)Ram_MapCellBuffer) |
Ram_MapCellBuffer seen as Planet Diver's chips.
Definition at line 36 of file planet_diver.c.
Referenced by BattleFx_RunPlanetDiver().
| #define PLANET_DIVER_FRAMES 88 |
Definition at line 38 of file planet_diver.c.
Referenced by BattleFx_RunPlanetDiver().
| #define PLANET_DIVER_CLEARED_CHIPS 1024 |
map-buffer chip slots cleared first
Definition at line 39 of file planet_diver.c.
Referenced by BattleFx_RunPlanetDiver().
| #define PLANET_DIVER_CHIPS 256 |
chips the fireball bursts into
Definition at line 40 of file planet_diver.c.
Referenced by BattleFx_RunPlanetDiver().
| #define HAUNT_SCATTERED 512 |
skull slots scattered at the start
Definition at line 232 of file planet_diver.c.
Referenced by BattleFx_RunHaunt().
| #define HAUNT_SKULLS 8 |
skulls drawn around each target
Definition at line 233 of file planet_diver.c.
Referenced by BattleFx_RunHaunt().
| #define HAUNT_SLOTS 64 |
particles reserved for each target
Definition at line 234 of file planet_diver.c.
Referenced by BattleFx_RunHaunt().
| #define ORBITING_SPIRALS_LIFE 60 |
frames each target's spirals turn
Definition at line 366 of file planet_diver.c.
Referenced by BattleFx_RunOrbitingSpirals().
| void BattleFx_RunPlanetDiver | ( | struct BattleEffectArgument * | effect | ) |
The user flashes and leaps into the air, turns into a ball of fire, falls onto the first target and bursts into chips that bounce on the ground.
Abilities: Planet Diver (kind 60).
88 frames. effect->side says which way the ball falls; actors[0] is where it lands.
Moves the user's object: it leaps on frame 4 and falls from frame 18. The flash's sheet and palette are replaced by the fireball's on frame 16.
Definition at line 52 of file planet_diver.c.
Referenced by BattleFx_RunPlanetDiver().
| void BattleFx_RunHaunt | ( | struct BattleEffectArgument * | effect | ) |
Skulls close in on each target in turn.
Abilities: Haunt (kind 39).
Around each target, 32 frames apart, eight skulls appear one every 4 frames, scattered up to 64 pixels away, and close in on a point 20 pixels above the target while the group spins; the target flashes 32 frames into its turn, and a skull that reaches the centre is no longer drawn. The effect layer ripples throughout. PARTICLES holds 64 skulls per target, of which the first 8 are used.
Adds BattleFx_ArmBg2AffineHBlankDma, which feeds the ripple in work->bg2xLines to BG2X line by line, and removes it before it returns.
Definition at line 249 of file planet_diver.c.
Referenced by BattleFx_RunHaunt().
| void BattleFx_RunOrbitingSpirals | ( | struct BattleEffectArgument * | effect | ) |
Four spirals circle 40 pixels above each target in turn, 16 frames apart, for 60 frames each, 16 pixels out from the centre; each target takes its damage pose halfway through.
Abilities: none (kind 34).
The effect layer ripples throughout, through BattleFx_ArmBg2AffineHBlankDma, which it adds and removes. It never lets the battle show damage, and leaves the targets' flash timers alone.
Definition at line 377 of file planet_diver.c.
Referenced by BattleFx_RunOrbitingSpirals().