pokeplatinum/include/struct_defs/archived_poke_sprite_data.h
Rachel 2c410b8046 Replace python scripts for packing species archives with C++
This new code is responsible for packing the following archives:

- `pl_personal` -> basic information for each species: stats, types, etc.
- `evo` -> evolution lines for each species
- `wotbl` -> by-level learnsets for each species
- `ppark` -> catching show data for each species
- `height` -> y-offsets for front and back sprites for each species
- `pl_poke_data` -> sprite-rendering data for each species: animation
  ID, frame data, shadow size and offsets, etc.

Additionally, the following headers are generated:

- `res/pokemon/tutorable_moves.h` -> A listing of moves taught by each
  tutor and how much each move costs to be tutored
- `res/pokemon/species_learnsets_by_tutor.h` -> An array of bitmasks for
  each species designating which moves can be tutored to that species
2025-01-21 22:46:39 -08:00

24 lines
1.1 KiB
C

#ifndef POKEPLATINUM_ARCHIVED_POKE_SPRITE_DATA_H
#define POKEPLATINUM_ARCHIVED_POKE_SPRITE_DATA_H
#include "struct_defs/sprite_animation_frame.h"
#define MAX_FACES 2
#define MAX_ANIMATION_FRAMES 10
typedef struct PokeSpriteFaceData {
u8 cryDelay; ///< How long to wait before playing the cry.
u8 animation; ///< Which pre-programmed animation sequence to use.
u8 startDelay; ///< How long to wait before starting the animation sequence.
SpriteAnimationFrame frames[MAX_ANIMATION_FRAMES]; ///< Frame-data for each frame of the animation sequence.
} PokeSpriteFaceData;
typedef struct ArchivedPokeSpriteData {
PokeSpriteFaceData faces[MAX_FACES]; ///< Data for each display-face of the Pokemon's sprite.
s8 yOffset; ///< Additional vertical offset of the Pokemon's front-face sprite.
s8 xOffsetShadow; ///< Horizontal offset for the shadow sprite beneath the Pokemon's sprite.
u8 shadowSize; ///< Size of the shadow sprite beneath the Pokemon's sprite.
} ArchivedPokeSpriteData;
#endif // POKEPLATINUM_ARCHIVED_POKE_SPRITE_DATA_H