forked from pret/pokefirered
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pokemon_special_anim_internal.h
94 lines (87 loc) · 2.83 KB
/
pokemon_special_anim_internal.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#ifndef GUARD_POKEMON_SPECIAL_ANIM_INTERNAL_H
#define GUARD_POKEMON_SPECIAL_ANIM_INTERNAL_H
#include "pokemon_special_anim.h"
enum
{
PSA_TEXT_ITEM_USED,
PSA_TEXT_LEVEL_ELEVATED,
PSA_TEXT_FORGET_1,
PSA_TEXT_FORGET_2_AND,
PSA_TEXT_FORGET_POOF,
PSA_TEXT_FORGET_FORGOT,
PSA_TEXT_FORGET_AND,
PSA_TEXT_MACHINE_SET,
PSA_TEXT_HUH,
PSA_TEXT_LEARNED_MOVE
};
struct PokemonSpecialAnimScene
{
u16 state;
u16 field_0002;
u16 field_0004;
u16 monSpriteY1;
u16 monSpriteY2;
u8 lastCloseness;
struct Sprite *monSprite;
struct Sprite *itemIconSprite;
u8 textBuf[0x900];
u8 field_0914[BG_SCREEN_SIZE];
u8 field_1114[BG_SCREEN_SIZE];
u8 field_1914[BG_SCREEN_SIZE];
u8 field_2114[0x720];
}; // size=0x2834
struct PokemonSpecialAnim
{
/*0x0000*/ u8 filler_0000[0x4];
/*0x0004*/ MainCallback savedCallback;
/*0x0008*/ struct Pokemon pokemon;
/*0x006c*/ u8 nickname[POKEMON_NAME_LENGTH + 1];
/*0x0077*/ u8 nameOfMoveForgotten[13];
/*0x0084*/ u8 nameOfMoveToTeach[13];
/*0x0091*/ bool8 cancelDisabled;
/*0x0092*/ u16 state;
/*0x0094*/ u16 species;
/*0x0096*/ u16 itemId;
/*0x0098*/ u16 animType;
/*0x009a*/ u16 slotId;
/*0x009c*/ u16 closeness;
/*0x009e*/ u16 delayTimer;
/*0x00a0*/ u32 personality;
/*0x00a4*/ u32 field_00a4;
/*0x00a8*/ struct PokemonSpecialAnimScene sceneResources;
}; // size=0x28dc
struct PokemonSpecialAnim * GetPSAStruct(void);
struct Pokemon * PSA_GetPokemon(void);
struct PokemonSpecialAnimScene * PSA_GetSceneWork(void);
u16 PSA_GetItemId(void);
u8 *PSA_GetNameOfMoveForgotten(void);
u8 *PSA_GetNameOfMoveToTeach(void);
u8 *PSA_CopyMonNickname(u8 *dest);
u8 *PSA_GetMonNickname(void);
u8 PSA_GetAnimType(void);
u16 PSA_GetMonSpecies(void);
u32 PSA_GetMonPersonality(void);
void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 animType);
bool8 PokemonSpecialAnimSceneInitIsNotFinished(void);
void PSA_FreeWindowBuffers(void);
void PSA_ShowMessageWindow(void);
void PSA_HideMessageWindow(void);
void PSA_PrintMessage(u8 messageId);
void PSA_AfterPoof_ClearMessageWindow(void);
bool8 PSA_IsMessagePrintTaskActive(void);
void PSA_DarkenMonSprite(void);
bool8 PSA_RunPoofAnim(void);
void PSA_UseTM_SetUpZoomOutAnim(void);
void PSA_UseTM_CleanUpForCancel(void);
bool8 PSA_UseTM_RunZoomOutAnim(void);
void PSA_UseTM_SetUpMachineSetWobble(void);
bool8 PSA_UseTM_RunMachineSetWobble(void);
bool8 PSA_LevelUpVerticalSpritesTaskIsRunning(void);
void PSA_CreateMonSpriteAtCloseness(u8 closeness);
void PSA_SetUpZoomAnim(u8 closeness);
bool8 PSA_IsZoomTaskActive(void);
void PSA_SetUpItemUseOnMonAnim(u16 itemId, u8 closeness, bool32 a2);
void CreateItemIconSpriteAtMaxCloseness(u16 itemId);
bool8 PSA_IsItemUseOnMonAnimActive(void);
void PSA_UseItem_CleanUpForCancel(void);
#endif //GUARD_POKEMON_SPECIAL_ANIM_INTERNAL_H