Alchemy
Loading...
Searching...
No Matches

battle_summon.h

Go to the documentation of this file.
1#ifndef ALCHEMY_BATTLE_SUMMON_H
2#define ALCHEMY_BATTLE_SUMMON_H
3
4/// @file
5/// Summons and the battle sprite definitions of the enemy classes.
6
7#include "static_assert.h"
8
9#include "types.h"
10#include "edition.h"
11#include "farcall.h"
12
13/// An enemy class's battle sprite: its animation, size, attack effect,
14/// palette and defeat-sound kind.
16 u16 animation; ///< the class's battle sprite
17 /// The byte at 2.
18 /// bits: 7..5 spriteBits5 | 4..1 spriteBits1 | 0 spriteBit0
19 ///@{
20 u8 spriteBit0 : 1; ///< 1 for a small enemy, which takes one sprite slot
21 u8 spriteBits1 : 4; ///< the attack-effect kind; 0 reads as 1
22 u8 spriteBits5 : 3; ///< the attack-hop height
23 ///@}
24 /// The byte at 3.
25 /// bits: 7..5 layoutKind | 4..1 layoutBits1 | 0 layoutBit0
26 ///@{
27 u8 layoutBit0 : 1; ///< read by Summon_IsEntrySecondaryFlagged only
28 u8 layoutBits1 : 4; ///< the sprite's palette
29 u8 layoutKind : 3; ///< the defeat-sound kind; above 4 reads as none
30 ///@}
31 u8 unk04[4]; ///< [0] is the effect height (BattleClass_GetEffectHeight)
32};
33
36
37/// A summon: its name's message and the Djinn of each element it needs.
39 /// The summon's ability id: its name is message MsgAbilityName plus it, and
40 /// its low 14 bits pick the icon.
42 u8 unk02[2]; ///< not named by TBS code
43 u8 djinnRequired[4]; ///< standby Djinn needed, by element
44};
45
46/// The party's Djinn recovery table as summons read it: the mask of summons
47/// the party can call, bit n for summon n.
49 u32 availableMask; ///< nonzero offers the Summon command
50};
51
52#endif
struct BattleSpriteDefinition gSummon_EntryTable[]
The edition's language, for C to compare (LANGUAGE == LANGUAGE_GERMAN).
Public interfaces to the engine's code banks.
STATIC_ASSERT, a compile-time check that emits nothing.
#define STATIC_ASSERT(condition)
C89 permits repeated extern declarations of the same array.
An enemy class's battle sprite: its animation, size, attack effect, palette and defeat-sound kind.
u8 layoutBit0
The byte at 3.
u8 spriteBits1
the attack-effect kind; 0 reads as 1
u16 animation
the class's battle sprite
u8 layoutBits1
the sprite's palette
u8 spriteBit0
The byte at 2.
u8 layoutKind
the defeat-sound kind; above 4 reads as none
u8 unk04[4]
[0] is the effect height (BattleClass_GetEffectHeight)
u8 spriteBits5
the attack-hop height
The party's Djinn recovery table as summons read it: the mask of summons the party can call,...
u32 availableMask
nonzero offers the Summon command
A summon: its name's message and the Djinn of each element it needs.
u8 unk02[2]
not named by TBS code
u16 nameMessageId
The summon's ability id: its name is message MsgAbilityName plus it, and its low 14 bits pick the ico...
u8 djinnRequired[4]
standby Djinn needed, by element
The integer types, TRUE, UNUSED and the fixed-address macros.
unsigned int u32
Definition types.h:15
unsigned short u16
Definition types.h:13
unsigned char u8
Definition types.h:11