Merge pull request #309 from PikalaxALT/pokemon_special_anim
Pokemon special anim
This commit is contained in:
@@ -211,7 +211,6 @@
|
||||
#define PARTY_SIZE 6
|
||||
#define MAX_TOTAL_EVS 510
|
||||
#define UNOWN_FORM_COUNT 28
|
||||
#define MAX_MON_LEVEL 100
|
||||
#define BOX_NAME_LENGTH 8
|
||||
|
||||
#endif // GUARD_CONSTANTS_POKEMON_H
|
||||
|
||||
+2
-2
@@ -24,8 +24,8 @@ void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 x, u
|
||||
void Menu_PrintFormatIntlPlayerName(u8 windowId, const u8 * src, u16 x, u16 y);
|
||||
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
|
||||
bool8 IsBlendTaskActive(void);
|
||||
u8 sub_812EA78(u16 species, u32 personality, u8 a2);
|
||||
s8 sub_812EAE4(u16 species, u32 personality, u8 a2);
|
||||
u8 Menu2_GetMonSpriteAnchorCoord(u16 species, u32 personality, u8 a2);
|
||||
s8 Menu2_GetMonSpriteAnchorCoordMinusx20(u16 species, u32 personality, u8 a2);
|
||||
|
||||
// list_menu
|
||||
void sub_8107CD8(u8 palOffset, u16 speciesId);
|
||||
|
||||
+1
-1
@@ -322,7 +322,7 @@ extern const struct Evolution gEvolutionTable[][EVOS_PER_MON];
|
||||
extern const u8 gStatStageRatios[][2];
|
||||
extern struct SpriteTemplate gMultiuseSpriteTemplate;
|
||||
extern struct PokemonStorage* gPokemonStoragePtr;
|
||||
extern const u32 gExperienceTables[][MAX_MON_LEVEL + 1];
|
||||
extern const u32 gExperienceTables[][MAX_LEVEL + 1];
|
||||
extern const u16 *const gLevelUpLearnsets[];
|
||||
extern const u8 gFacilityClassToPicIndex[];
|
||||
extern const u8 gFacilityClassToTrainerClass[];
|
||||
|
||||
@@ -3,14 +3,14 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
void sub_811E5B8(u16, u16, u16, u16, u16, u16);
|
||||
bool8 sub_811E680(void);
|
||||
void BufferMonStatsToTaskData(struct Pokemon *mon, u16 *currStats);
|
||||
void CreateLevelUpVerticalSpritesTask(u16 x, u16 y, u16 tileTag, u16 paletteTag, u16 priority, u16 subpriority);
|
||||
bool8 LevelUpVerticalSpritesTaskIsRunning(void);
|
||||
void GetMonLevelUpWindowStats(struct Pokemon *mon, u16 *currStats);
|
||||
void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bgClr, u8 fgClr, u8 shadowClr);
|
||||
void DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 shadowClr);
|
||||
void sub_811C540(u8 slotId, u16 itemId, MainCallback callback);
|
||||
void sub_811C5AC(u8 slotId, u16 itemId, MainCallback callback);
|
||||
u32 sub_811D178(void);
|
||||
void sub_811C568(u8 slotId, u16 itemId, u16 moveId, MainCallback callback);
|
||||
void StartUseItemAnim_Normal(u8 slotId, u16 itemId, MainCallback callback);
|
||||
void StartUseItemAnim_CantEvolve(u8 slotId, u16 itemId, MainCallback callback);
|
||||
bool32 PSA_IsCancelDisabled(void);
|
||||
void StartUseItemAnim_ForgetMoveAndLearnTMorHM(u8 slotId, u16 itemId, u16 moveId, MainCallback callback);
|
||||
|
||||
#endif // GUARD_POKEMON_SPECIAL_ANIM_H
|
||||
|
||||
@@ -0,0 +1,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
|
||||
@@ -1441,4 +1441,26 @@ extern const u8 gPCText_Pokecenter[];
|
||||
extern const u8 gPCText_Machine[];
|
||||
extern const u8 gPCText_Simple[];
|
||||
|
||||
// pokemon_special_anim
|
||||
extern const u8 gUnknown_841B2ED[];
|
||||
extern const u8 gUnknown_841B2F1[];
|
||||
extern const u8 gUnknown_841B2FF[];
|
||||
extern const u8 gUnknown_841B285[];
|
||||
extern const u8 gUnknown_841B293[];
|
||||
extern const u8 gUnknown_841B295[];
|
||||
extern const u8 gUnknown_841B2A7[];
|
||||
extern const u8 gUnknown_841B32E[];
|
||||
extern const u8 gUnknown_841B306[];
|
||||
extern const u8 gUnknown_841B315[];
|
||||
extern const u8 gUnknown_841B31B[];
|
||||
extern const u8 gUnknown_841B329[];
|
||||
extern const u8 gUnknown_841B2A9[];
|
||||
extern const u8 gUnknown_841B2B7[];
|
||||
extern const u8 gUnknown_841B2BE[];
|
||||
extern const u8 gUnknown_841B2CC[];
|
||||
extern const u8 gUnknown_841B2D4[];
|
||||
extern const u8 gUnknown_841B2C6[];
|
||||
extern const u8 gUnknown_841B2E5[];
|
||||
extern const u8 gUnknown_841B2DC[];
|
||||
|
||||
#endif //GUARD_STRINGS_H
|
||||
|
||||
Reference in New Issue
Block a user