Alchemy
Loading...
Searching...
No Matches

effect_table.h

Go to the documentation of this file.
1#ifndef ALCHEMY_UNIT_EFFECT_EFFECT_TABLE_H
2#define ALCHEMY_UNIT_EFFECT_EFFECT_TABLE_H
3
4#include "types.h"
5#include "render_placement.h"
6#include "vector3.h"
7
8// The two kinds of target strike (gTargetStrike_Records).
9#define STRIKE_KIND_SLASH 0 ///< sideways slashes
10#define STRIKE_KIND_COLUMN 1 ///< columns of light
11
12// A target strike style's extras.
13#define STRIKE_SMOKE 1 ///< each hit raises smoke puffs from the target's feet
14#define STRIKE_ABSORB 2 ///< motes fly out of the target and back into the user
15#define STRIKE_GLINTS 4 ///< glints sparkle around the target
16#define STRIKE_SPARKS 8 ///< each hit scatters sparks
17#define STRIKE_HEAVY 16 ///< one heavy hit: a big shake and the target recoils
18
19// Every table effect_table.c defines, in its order. A table read by columns
20// is a two-dimensional array, its columns named by the enum above it.
24extern u8 gBattleFx_PuffSizes[];
32
33/// Each Ice variant: its shards and how many frames it runs.
34enum {
35 ICE_SHARD_COUNT, ///< shards that fall
36 ICE_FRAMES ///< the effect's frames; the damage shows 16 before
37};
38extern u8 gFalling_IceCounts[][2];
39
40/// Each Douse variant: its bolt waves, sparks per bolt, spacing and frames.
41enum {
42 FALLING_BOLT_WAVE_COUNT, ///< bolts that drop, of the 64 placed
43 FALLING_BOLT_SPARKS_PER_BOLT, ///< sparks each bolt throws
44 FALLING_BOLT_SPACING, ///< pixels between bolts along the slant
45 FALLING_BOLT_DURATION ///< the effect's frames
46};
47extern u8 gFalling_Counts[][4];
48
49extern s8 gStreaks_Records[][4];
50extern s8 gStreaks_Tremble[];
51extern u8 gTargetStrike_Records[][7];
55extern u8 gTargetStrike_Reach[];
60extern u16 gDeathPlunge_Cells[];
66extern s8 gDeathPlunge_X[];
67extern s8 gDeathPlunge_Y[];
71extern u16 gSpiderWeb_Cells[];
72extern u8 gSpiderWeb_CellX[];
74
75/// Each gathering-lights mode: the lights per target and the frames before the
76/// targets' turns.
77enum {
78 GATHERING_LIGHTS_COUNT, ///< lights for each target
79 GATHERING_LIGHTS_FRAMES ///< frames before the targets' turns
80};
81extern u8 gGatheringLights_Counts[][2];
82
94extern u8 gCondemn_PanelX[][7];
95extern u8 gCondemn_PanelY[][7];
96extern struct Vector3 gBind_Vertex[];
98extern struct Vector3 gStars_Points[];
99extern u8 gStars_Radii[];
100extern u8 gProcne_GridX[];
101extern u8 gProcne_GridY[];
102extern u16 gProcne_Frames[];
103extern u8 gProcne_CellWidths[];
104extern u8 gProcne_CellHeights[];
105extern u8 gProcne_CellBiasY[];
106extern u16 gProcne_Cells[];
107extern u8 gTiamat_DropSpeeds[];
108extern u8 gTiamat_SparkPixels[];
109extern u8 gTiamat_DropSizes[];
110extern u8 gTiamat_StreakWidths[];
112extern u8 gTiamat_StreakDrops[];
114
115/// The foot of each of Nereid's columns of fire.
116enum {
117 NEREID_COLUMN_X, ///< canvas x of the column's middle
118 NEREID_COLUMN_Y ///< canvas y of its foot
119};
120extern u8 gNereid_Columns[][2];
121
122extern s32 gNereid_Gravity[];
123
124/// Each Froth variant: its motes and frames.
125enum {
126 FROTH_MOTE_COUNT, ///< motes, at most FROTH_MOTES (vortices.c)
127 FROTH_FRAMES ///< the effect's frames; the damage shows 16 before
128};
129extern u8 gVortices_Counts[][2];
130
131/// Each Whirlwind variant: its tornadoes, their sway and the screen shake.
132enum {
133 WHIRLWIND_TORNADOES, ///< tornadoes drawn
134 WHIRLWIND_SWAY, ///< how far each sways across, in pixels
135 WHIRLWIND_SHAKE ///< Camera_ApplyShake's range
136};
137extern u8 gVortices_Shapes[][3];
138
139/// Where each Prism shard starts in the crystal.
140enum {
141 PRISM_SHARD_START_X, ///< pixels from the crystal's left
142 PRISM_SHARD_START_Y ///< pixels from its top
143};
144extern u8 gPrism_ShardStarts[][2];
145
146/// Each Prism variant: its crystals and frames.
147enum {
148 PRISM_CRYSTAL_COUNT, ///< crystals drawn
149 PRISM_FRAMES ///< the effect's frames
150};
151extern u8 gPrism_Counts[][2];
152
153extern u8 gPrism_ShardWidths[];
154extern u8 gPrism_ShardHeights[];
155extern s32 gPrism_ShardOffsets[];
156
157/// Each Plasma variant: the sparks per pillar and the frames of shake.
158enum {
159 PLASMA_SPARKS, ///< sparks each lightning pillar throws
160 PLASMA_SHAKE_FRAMES ///< frames the screen shakes at each strike
161};
162extern u16 gPlasma_Sparks[][2];
163
164extern u8 gPlasma_Columns[][7];
165extern u8 gPlasma_Counts[];
166
167/// Each spark group variant: sparks per burst, bursts, and from
168/// SPARK_GROUPS_OFFSET each burst's offset across.
169enum {
170 SPARK_GROUPS_SPARKS, ///< sparks each burst throws
171 SPARK_GROUPS_BURSTS, ///< bursts, 8 frames apart
172 SPARK_GROUPS_OFFSET ///< burst i's offset across, in pixels, at [2 + i]
173};
174extern u16 gPlasma_Shapes[][5];
175
176extern u8 gPlasma_FlashCells[];
177extern u8 gVolcano_Counts[];
178extern s8 gVolcano_Depths[][4];
179extern u8 gVolcano_StartFrames[];
181
182/// Cybele's waving poses: the animations of objects 3 and 4.
183enum {
184 CYBELE_POSE_OBJECT3, ///< object 3's animation
185 CYBELE_POSE_OBJECT4 ///< object 4's animation
186};
187extern u8 gCybele_ObjectPoses[][2];
188
190extern u8 gCybele_ThornWidths[];
191extern u8 gCybele_ThornHeights[];
192extern u16 gCybele_LeafOffsets[];
193extern u8 gCybele_LeafSizes[];
194extern u16 gCybele_ChipOffsets[];
195extern u8 gCybele_ChipWidths[];
196extern u8 gCybele_ChipHeights[];
198extern u8 gCybele_SparkSizes[];
200extern u16 gCybele_EmberSizes[];
201extern u8 gBoreas_Points[][2];
202extern s8 gBoreas_ShakeOffsets[];
203extern u16 gBoreas_RockCells[];
204extern u8 gBoreas_RockWidths[];
205extern u8 gBoreas_RockHeights[];
206extern u8 gBoreas_Animations[];
207extern u8 gBoreas_DebrisWidths[];
209extern u16 gBoreas_DebrisCells[];
210extern u8 gBoreas_SprayWidths[];
211extern u8 gBoreas_SprayHeights[];
212extern u16 gBoreas_SprayCells[];
216extern u8 gBoreas_FallWidths[];
217extern u8 gBoreas_FallHeights[];
218extern u16 gBoreas_FallCells[];
219extern s32 gDrain_Gravities[];
223extern u8 gQuake_Timings[][3];
224extern u8 gFire_Counts[];
225extern u8 gFire_FlareWidths[];
226extern u8 gFire_FlareHeights[];
227extern u8 gFire_FlareBiasY[];
228extern u16 gFire_FlareCells[];
229
230/// Where each rising-motes ice column stands: x and the y of its foot.
231enum {
232 RISING_MOTES_COLUMN_X, ///< canvas x of the column's left edge
233 RISING_MOTES_COLUMN_FOOT ///< canvas y of its foot
234};
235extern u8 gFrost_ColumnSpots[][2];
236
237extern u8 gFrost_Timings[][3];
238extern u8 gFrost_MoteWidths[];
239extern u8 gFrost_MoteHeights[];
240extern u16 gFrost_MoteCells[];
241extern u16 gFrost_ColumnCells[];
242extern u8 gFrost_ColumnHeights[];
243extern u8 gFrost_ChipWidths[];
244extern u8 gFrost_ChipHeights[];
245extern u16 gFrost_ChipCells[];
246extern u8 gRay_Sparks[][2];
247extern u8 gEruption_Counts[][3];
248extern u16 gEruption_PuffCells[];
249extern u16 gEruption_PuffSizes[];
250extern u16 gUnused_SheetCells6[];
251extern u16 gUnused_SheetCells[];
252extern u8 gUnused_SheetWidths[];
253extern u8 gUnused_SheetHeights[];
254extern struct SpriteScale gAtalanta_UnitScale;
255extern u8 gGrowth_VineWidths[];
256extern u8 gGrowth_HeightLimits[];
257extern u16 gGrowth_VineCells[];
258extern u8 gGrowth_PillarWidths[];
259extern u16 gGrowth_PillarCells[];
260extern u8 gGrowth_ColumnCounts[];
261extern u8 gGrowth_ColumnX[];
263extern s8 gGrowth_PuffWidths[];
264extern u8 gGrowth_PuffHeights[];
265extern u16 gGrowth_PuffCells[];
267extern u8 gGrowth_Kinds[];
268extern s8 gGrowth_X[];
269extern u8 gGrowth_Counts[];
273extern u8 gBolt_Counts[][4];
274extern u8 gBolt_GlintFlips[];
275extern u8 gBolt_GlintModes[];
277extern u8 gProjectiles_Modes[][5];
285extern u8 gHail_CellWidths[];
286extern u8 gHail_CellHeights[];
287extern u16 gHail_Cells[];
288extern u8 gHail_ChipFlips[];
289extern u8 gHail_ChipWidths[];
290extern u8 gHail_ChipHeights[];
291extern u16 gHail_ChipCells[];
292extern u8 gHail_ChipX[];
293extern u8 gHail_ChipY[];
294extern u8 gThor_TargetPalettes[];
295extern u8 gThor_SmokeFlips[];
296
297/// Where each Spire shard starts, before its rock's offset across.
298enum {
299 SPIRE_SHARD_X, ///< canvas x
300 SPIRE_SHARD_Y ///< canvas y
301};
302extern u8 gSpire_ShardOffsets[][2];
303
304extern s8 gSpire_RockX[];
305extern u8 gSpire_DropFrames[];
306extern u8 gSpire_RockCounts[];
307extern u8 gSpire_ShardWidths[];
308extern u8 gSpire_ShardHeights[];
309extern u16 gSpire_ShardCells[];
310extern u8 gBurstScene_Records[][7];
311extern u16 gGaia_RowCells[];
312extern u8 gGaia_RowWidths[];
313extern u16 gGaia_MoundCells[];
314extern u8 gGaia_MoundWidths[];
315extern u8 gGaia_MoundHeights[];
316extern s8 gGaia_Bg2Shifts[][3];
318extern u8 gBeams_CellWidths[];
319extern u8 gBeams_CellHeights[];
320extern u16 gBeams_Cells[];
321extern u8 gBeams_CellReaches[];
323extern u8 gCastingImpact_ImageX[][7];
328extern u16 gHelmSplitter_Cells[];
345extern u8 gRamses_ObjectRows[];
346extern u16 gRamses_PuffCells[];
347extern u16 gRamses_PuffSizes[];
348extern u8 gRagnarok_StrikeColumns[][3];
349extern u8 gRagnarok_FlashCells[];
357extern u8 gKirin_Columns[];
358extern u8 gKirin_Rows[];
359extern u8 gNeptune_ObjectX[];
360extern u8 gNeptune_ObjectY[];
361extern s32 gNeptune_Gravity[];
364
365#endif
s16 gParticleStreams_DropPoints[][2]
Where the seven drops fall, in pixels.
u16 gBoreas_BoulderCells[]
u8 gKirin_Rows[]
u8 gRagnarok_StrikeColumns[][3]
The canvas x of each strike column, three for each side.
struct Vector3 gStars_Points[]
The two star points, 48 and 28 pixels up (16.16).
u8 gHelmSplitter_RightEightZ[]
u16 gGrowth_PuffCells[]
u8 gTiamat_DropSpeeds[]
Ember speeds, by ember index & 3.
u16 gCybele_ThornOffsets[]
u8 gBoreas_FallHeights[]
u8 gGrowth_VineWidths[]
u8 gBurstScene_Records[][7]
Each burst scene mode, by the BURST_SCENE_ columns (burst_scene.c).
s8 gBoreas_ShakeOffsets[]
The backdrop's jolt on frames 176 to 179.
u8 gBoreas_SprayHeights[]
u8 gHail_ChipWidths[]
u16 gBattleFx_PuffArcCells[]
u8 gCybele_ThornHeights[]
u8 gDeathPlunge_PieceStartY[]
s8 gGrowth_PuffWidths[]
u16 gParticleStreams_FlashCells[]
u16 gJudgment_ShardCells[]
u8 gSpire_RockCounts[]
u8 gHelmSplitter_SmallEightZ[]
u8 gSpire_DropFrames[]
u16 gUnused_SheetCells[]
u8 gCybele_ChipHeights[]
u8 gGaia_RowWidths[]
u8 gHelmSplitter_RightEightX[]
u16 gRamses_PuffCells[]
s8 gSpiderWeb_CellBiasY[]
s8 gSpire_RockX[]
u8 gProjectiles_FlashSteps[]
u16 gBeams_Cells[]
u8 gCondemn_PanelX[][7]
Where each stage of the panel is drawn: seven x positions for each side of the field,...
u8 gDeathPlunge_DrawFlags[]
u8 gHelmSplitter_ImpactBurstCellHeights[]
u8 gFrost_ColumnHeights[]
s32 gTitanBlade_DustGravity[]
Dust gravity, by particle index & 3.
u8 gBoreas_BoulderWidths[]
u16 gHail_Cells[]
u8 gRagnarok_FlashCells[]
The flash picture for each three frames at the end of a flash's life.
u8 gFrost_MoteWidths[]
u8 gUnused_SheetWidths[]
u8 gPlasma_FlashCells[]
The flash picture for each three frames at the end of a flash's life.
u16 gCybele_ChipOffsets[]
u8 gProjectiles_FlashHeights[]
u8 gHail_CellWidths[]
u8 gProjectiles_FlashRises[]
u8 gRamses_ObjectColumns[]
u8 gBattleFx_PuffArcCellHeights[]
u8 gGrowth_HeightLimits[]
u8 gFrost_Timings[][3]
Motes, ice columns and the burst frame, for each variant.
u8 gCastingImpact_ImageX[][7]
u8 gLobbedShells_ShardWidths[]
Lobbed shells: nine tumbling images in two sets, the second (cells 9 to 17) smaller.
u16 gGrowth_ThornPuffCells[]
u8 gHail_ChipFlips[]
The composite flips a chip may take.
u16 gSpire_ShardCells[]
u16 gLobbedShells_ShardOffsets[]
struct Vector3 gBind_Vertex[]
The spinning triangle's first vertex, 24 up from its centre.
u8 gGatheringLights_Counts[][2]
Gathering lights (Demon Night, Rumble, Haunting), by mode: the lights per target and the frames befor...
u16 gDeathPlunge_Cells[]
u8 gDeathPlunge_CellHeights[]
u8 gCybele_ThornWidths[]
u8 gTargetMotes_GlintFlips[]
Glint orientations: none, and mirrored each way and both.
u8 gVolcano_Counts[]
How many pillars stand, by variant.
s8 gGrowth_ColumnOffsets[]
Each vine's root, across from the middle of the targets.
u8 gTargetStrike_Heights[]
u8 gBattleFx_GlintCellHeights[]
u8 gGaia_MoundWidths[]
u8 gHail_ChipHeights[]
u8 gEruption_Counts[][3]
Motes, puffs of smoke and frames, for each variant.
u8 gHail_CellHeights[]
u8 gHail_ChipY[]
u8 gHelmSplitter_TwelveZ[]
u8 gVortices_Shapes[][3]
Whirlwind, by variant: the WHIRLWIND_ columns.
u8 gStatChange_ShardWidths[]
u8 gDjinnBeams_HeadHeights[]
s8 gStreaks_Tremble[]
Pixels the target trembles by, frame by frame.
u16 gPlasma_Sparks[][2]
Plasma, by variant: sparks per pillar and shake frames.
u8 gHelmSplitter_TwelveX[]
u8 gSpiderWeb_CellHeights[]
s32 gNereid_Gravity[]
Ember gravity while falling, by ember index & 3.
u8 gBolt_GlintModes[]
s8 gGrowth_X[]
u8 gSpiderWeb_CellX[]
u16 gBoreas_RockCells[]
u8 gPrism_ShardStarts[][2]
Where each of the 16 shards starts in the crystal: x, then y.
u8 gBoreas_DebrisWidths[]
u8 gGrowth_Counts[]
Thorns by variant.
s8 gDeathPlunge_X[]
u8 gFire_FlareHeights[]
u8 gDeathPlunge_PieceStartX[]
u8 gBeams_CellReaches[]
u8 gFire_Counts[]
Embers by variant, at most FIRE_EMBERS (fire.c).
u16 gBattleFx_FlareCells[]
Flare cells: the first ten are squares 2x2 to 20x20, cell n (from 0) n + 1 pixels from its centre to ...
u8 gLobbedShells_ShardHeights[]
u8 gBolt_GlintFlips[]
u8 gSpire_ShardOffsets[32][2]
Where each of a rock's 21 shards starts, x then y, before the rock's offset across.
u8 gGrowth_ThornPuffHeights[]
u16 gCybele_EmberSizes[]
u8 gSpire_ShardHeights[]
u16 gFrost_ChipCells[]
u16 gBoreas_FallCells[]
u8 gBattleFx_PuffSizes[]
Each puff cell's side.
u8 gGrowth_Kinds[]
u8 gCybele_ChipWidths[]
u16 gCastingImpact_IceChipCells[]
The four ice chip cells, 8x8.
u8 gPrism_ShardHeights[]
u8 gHelmSplitter_CellHeights[]
s32 gPrism_ShardOffsets[]
u8 gFalling_IceCounts[][2]
Ice, by variant: shards and frames (ICE_SHARD_COUNT, ICE_FRAMES).
u8 gJudgment_ShardWidths[]
u8 gProjectiles_CometHeights[]
Comet picture heights, by comet kind.
u16 gBattleFx_PuffCells[]
Nine square puff cells, read by the falling, frost, healing, Djinni heal and Boreas parts.
u8 gRay_Sparks[][2]
Sparks by variant; [1] is how many each bolt throws a frame.
u16 gDeathPlunge_PieceCells[]
u8 gNeptune_ObjectX[]
u16 gCybele_LeafOffsets[]
s32 gNeptune_Gravity[]
Spray gravity, by particle index & 3.
u8 gGrowth_PuffHeights[]
s16 gParticleStreams_OrbitPoints[][3]
The seven sparks that orbit the rising formation.
u8 gTargetStrike_Records[][7]
Each of the twelve target strike styles, by the TARGET_STRIKE_ columns (target_strike....
u16 gBoreas_SprayCells[]
u8 gCybele_LeafSizes[]
u8 gBattleFx_PuffArcCellBiasY[]
u8 gSpiderWeb_CellWidths[]
u16 gBattleFx_MoteCells[]
Mote cells: particle sheets hold ten, cell n (from 0) n + 1 pixels wide and twice that tall.
u16 gMirroredWall_Cells[]
u8 gPrism_Counts[][2]
Prism, by variant: crystals and frames.
u8 gGrowth_ColumnX[]
u8 gHelmSplitter_CellWidths[]
u8 gDjinnBeams_HeadWidths[]
u8 gPlasma_Columns[][7]
Each pillar's canvas x, seven for each side.
s8 gGrowth_PillarHeights[]
u8 gStars_Radii[]
struct Vector3 gBind_TriangleStrikeVertex[]
The striking triangle's first vertex, the same.
u8 gTiamat_StreakDrops[]
u8 gFrost_ChipWidths[]
u8 gFrost_ColumnSpots[][2]
Where each ice column stands: x, then the y of its foot.
u8 gBoreas_SprayWidths[]
u8 gPrism_ShardWidths[]
u16 gTargetStrike_Offsets[]
u8 gFrost_MoteHeights[]
u16 gSpiderWeb_Cells[]
u8 gFire_FlareBiasY[]
s32 gDrain_Gravities[]
Ice shards: shard i falls with gravity i & 3.
u8 gBattleFx_PuffArcCellWidths[]
u8 gDjinnAttacks_LaunchFrames[]
The frames on which the Djinni fires each of its five flames.
u8 gCondemn_PanelY[][7]
u8 gBeams_CellWidths[]
u16 gStatChange_ShardCells[]
u16 gPlasma_Shapes[][5]
The spark groups, by variant: the SPARK_GROUPS_ columns.
u8 gBoreas_BoulderHeights[]
u8 gJudgment_BurstHeights[]
u8 gVolcano_StartFrames[]
The frame each pillar starts.
u8 gProjectiles_Modes[][5]
Each projectile volley mode, by the PROJECTILE_VOLLEY_ columns (projectiles.c).
u8 gDeathPlunge_PieceHeights[]
u8 gQuake_Timings[][3]
Rock wall timing, by variant: frames in the effect, frames each pillar stands, and how far the screen...
s8 gGaia_Bg2Shifts[][3]
BG2's x shift, by side and variant.
u8 gCybele_ObjectPoses[][2]
Poses of objects 3 and 4 while they wave, three pairs.
u16 gJudgment_BurstCells[]
u16 gProjectiles_PelletOffsets[]
Ice chip pictures, by shot index & 3.
u16 gProcne_Cells[]
u8 gProcne_GridY[]
u8 gUnused_SheetHeights[]
u16 gFire_FlareCells[]
u8 gStatChange_ShardHeights[]
u16 gGrowth_VineCells[]
u8 gCybele_SparkSizes[]
s8 gHelmSplitter_CellBiasY[]
u16 gHelmSplitter_Cells[]
u8 gNereid_Columns[][2]
Nereid's four columns of fire (NEREID_COLUMN_X, NEREID_COLUMN_Y).
u8 gPlasma_Counts[]
How many pillars strike, by variant.
u8 gFrost_ChipHeights[]
u16 gUnused_SheetCells6[]
u8 gProcne_GridX[]
u8 gMirroredWall_CellWidths[]
u8 gVortices_Counts[][2]
Froth, by variant: motes and frames.
u8 gBolt_Counts[][4]
Bolt, by variant: sparks each bolt throws, glints a frame around each target, how far the glints spre...
u16 gFrost_ColumnCells[]
u8 gTargetStrike_Widths[]
u8 gProcne_CellWidths[]
u8 gDeathPlunge_PieceWidths[]
The 33 pieces of the TileAnimationMask picture: where each starts on the canvas, its size,...
u8 gBoreas_RockWidths[]
u16 gCybele_SparkOffsets[]
u8 gBoreas_Points[][2]
Rock and ice scene: where the rocks stand (and later the boulders, 56 pixels further left),...
u16 gBattleFx_GlintCells[]
u8 gFalling_Counts[][4]
Douse, by variant: the FALLING_BOLT_ columns.
u8 gFire_FlareWidths[]
u16 gProjectiles_FlashOffsets[]
u8 gGaia_LateRockColumns[]
The columns rock particles[16] to particles[21] take.
u16 gGaia_RowCells[]
s8 gDeathPlunge_Y[]
struct SpriteScale gAtalanta_UnitScale
Staged particle scale: Atalanta's formation objects keep this scale, one to one, throughout.
u8 gBoreas_FallWidths[]
u8 gJudgment_ShardHeights[]
u8 gDjinnBeams_MotePictures[]
The picture of each step of a mote's eight-step cycle.
u16 gGaia_MoundCells[]
u16 gFrost_MoteCells[]
u8 gTargetStrike_Reach[]
u8 gHelmSplitter_ImpactBurstCellWidths[]
u8 gThor_TargetPalettes[]
The colours a target flashes when a bolt strikes it, chosen at random: white, black,...
u8 gGrowth_PillarWidths[]
u8 gTargetStrike_GlintDrawFlags[]
The flips a glint may be drawn in.
s8 gGrowth_ThornPuffWidths[]
u16 gHail_ChipCells[]
u16 gBoreas_DebrisCells[]
u16 gDjinnBeams_HeadOffsets[]
u8 gGrowth_ColumnCounts[]
u8 gDeathPlunge_CellWidths[]
u8 gGaia_MoundHeights[]
u8 gBattleFx_GlintCellWidths[]
u16 gProcne_Frames[]
u16 gParticleStreams_FlashSizes[]
u8 gProcne_CellBiasY[]
u8 gProcne_CellHeights[]
u8 gBoreas_Animations[]
The third object's animations from frame 209, one every 4 frames.
u8 gTiamat_StreakWidths[]
s8 gHelmSplitter_CellBiasX[]
u16 gCybele_EmberOffsets[]
s8 gStreaks_Records[][4]
Each streak style's animation, hit, motion and shake, by the STREAKS_ columns (streaks....
u8 gHelmSplitter_SmallEightX[]
u8 gCastingImpact_ImageY[]
u16 gUndeadSword_SparkSizes[]
u8 gBoreas_RockHeights[]
u16 gUndeadSword_SparkCells[]
u16 gEruption_PuffCells[]
u8 gKirin_Columns[]
u8 gRamses_ObjectRows[]
u8 gHail_ChipX[]
u8 gTitanBlade_FlashCells[]
The flash picture for each three frames at the end of a flash's life.
u16 gTiamat_StreakOffsets[]
u16 gGrowth_PillarCells[]
u8 gSpire_ShardWidths[]
u8 gBoreas_DebrisHeights[]
u8 gMirroredWall_CellHeights[]
u8 gBeams_CellHeights[]
u16 gRamses_PuffSizes[]
u8 gTiamat_DropSizes[]
Ember sizes, by ember index & 3.
u16 gEruption_PuffSizes[]
u8 gTiamat_SparkPixels[]
A spark's 1x2 picture.
s8 gVolcano_Depths[][4]
Each pillar's depth, by variant.
u8 gThor_SmokeFlips[]
Flip flags for the smoke puffs, chosen at random.
u8 gProjectiles_FlashWidths[]
u8 gCastingImpact_GlintDrawFlags[]
The flips a glint may take, picked at random.
u8 gNeptune_ObjectY[]
u16 gHelmSplitter_ImpactBurstCells[]
u8 gTiamat_StreakHeights[]
s8 gLobbedShells_Records[]
Two bytes for each lobbed shell mode.
u8 gTargetStrike_ColumnStages[]
The column stage shown by each picture of a rise.
@ SPARK_GROUPS_BURSTS
bursts, 8 frames apart
@ SPARK_GROUPS_SPARKS
sparks each burst throws
@ SPARK_GROUPS_OFFSET
burst i's offset across, in pixels, at [2 + i]
@ GATHERING_LIGHTS_COUNT
lights for each target
@ GATHERING_LIGHTS_FRAMES
frames before the targets' turns
@ PRISM_CRYSTAL_COUNT
crystals drawn
@ PRISM_FRAMES
the effect's frames
@ FROTH_MOTE_COUNT
motes, at most FROTH_MOTES (vortices.c)
@ FROTH_FRAMES
the effect's frames; the damage shows 16 before
@ PLASMA_SHAKE_FRAMES
frames the screen shakes at each strike
@ PLASMA_SPARKS
sparks each lightning pillar throws
@ FALLING_BOLT_DURATION
the effect's frames
@ FALLING_BOLT_WAVE_COUNT
bolts that drop, of the 64 placed
@ FALLING_BOLT_SPACING
pixels between bolts along the slant
@ FALLING_BOLT_SPARKS_PER_BOLT
sparks each bolt throws
@ ICE_FRAMES
the effect's frames; the damage shows 16 before
@ ICE_SHARD_COUNT
shards that fall
@ CYBELE_POSE_OBJECT4
object 4's animation
@ CYBELE_POSE_OBJECT3
object 3's animation
@ SPIRE_SHARD_Y
canvas y
@ SPIRE_SHARD_X
canvas x
@ WHIRLWIND_SHAKE
Camera_ApplyShake's range.
@ WHIRLWIND_TORNADOES
tornadoes drawn
@ WHIRLWIND_SWAY
how far each sways across, in pixels
@ PRISM_SHARD_START_X
pixels from the crystal's left
@ PRISM_SHARD_START_Y
pixels from its top
@ RISING_MOTES_COLUMN_X
canvas x of the column's left edge
@ RISING_MOTES_COLUMN_FOOT
canvas y of its foot
@ NEREID_COLUMN_Y
canvas y of its foot
@ NEREID_COLUMN_X
canvas x of the column's middle
A sprite's screen position and scale.
Horizontal and vertical sprite scale; 0x10000 is the original size.
Three coordinates, x, y and z: a position, a velocity or a direction.
Definition vector3.h:11
The integer types, TRUE, UNUSED and the fixed-address macros.
signed int s32
Definition types.h:14
signed char s8
Definition types.h:10
signed short s16
Definition types.h:12
unsigned short u16
Definition types.h:13
unsigned char u8
Definition types.h:11
Vector3, a three-coordinate vector.