2020-11-26 21:56:18 +01:00
|
|
|
#ifndef GUARD_BATTLE_Z_MOVE_H
|
|
|
|
#define GUARD_BATTLE_Z_MOVE_H
|
|
|
|
|
|
|
|
#include "constants/z_move_effects.h"
|
|
|
|
|
2020-12-01 14:24:33 +01:00
|
|
|
#define MOVE_Z_STATUS 0xFFFF
|
|
|
|
|
2020-11-26 21:56:18 +01:00
|
|
|
struct SignatureZMove
|
|
|
|
{
|
|
|
|
u16 species;
|
|
|
|
u16 item;
|
|
|
|
u16 move;
|
|
|
|
u16 zmove;
|
|
|
|
};
|
|
|
|
|
2022-07-21 21:32:14 +02:00
|
|
|
bool8 IsZMove(u16 move);
|
2020-12-01 14:24:33 +01:00
|
|
|
void QueueZMove(u8 battlerId, u16 baseMove);
|
2020-11-26 21:56:18 +01:00
|
|
|
bool32 IsViableZMove(u8 battlerId, u16 move);
|
2020-12-01 19:43:15 +01:00
|
|
|
bool32 TryChangeZIndicator(u8 battlerId, u8 moveIndex);
|
2020-11-26 21:56:18 +01:00
|
|
|
void CreateZMoveTriggerSprite(u8, bool8);
|
|
|
|
void HideZMoveTriggerSprite(void);
|
|
|
|
bool32 IsZMoveTriggerSpriteActive(void);
|
|
|
|
void DestroyZMoveTriggerSprite(void);
|
|
|
|
bool32 MoveSelectionDisplayZMove(u16 zmove);
|
2022-08-23 02:30:45 +02:00
|
|
|
const u8 *GetZMoveName(u16 move);
|
2020-11-30 16:55:46 +01:00
|
|
|
void SetZEffect(void);
|
2020-12-01 19:43:15 +01:00
|
|
|
bool32 IsZMoveUsable(u8 battlerId, u16 moveIndex);
|
|
|
|
void GetUsableZMoves(u8 battlerId, u16 *moves);
|
2023-02-28 03:49:43 +01:00
|
|
|
u16 GetZMovePower(u16 move);
|
2020-11-26 21:56:18 +01:00
|
|
|
|
2023-02-28 04:09:43 +01:00
|
|
|
#endif // GUARD_BATTLE_Z_MOVE_H
|