Address review comments; doc round 2
This commit is contained in:
+4
-2
@@ -5,6 +5,8 @@
|
|||||||
#include "text.h"
|
#include "text.h"
|
||||||
#include "window.h"
|
#include "window.h"
|
||||||
|
|
||||||
|
#define MON_COORD_
|
||||||
|
|
||||||
#define MENU_NOTHING_CHOSEN -2
|
#define MENU_NOTHING_CHOSEN -2
|
||||||
#define MENU_B_PRESSED -1
|
#define MENU_B_PRESSED -1
|
||||||
|
|
||||||
@@ -24,8 +26,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 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);
|
void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority);
|
||||||
bool8 IsBlendTaskActive(void);
|
bool8 IsBlendTaskActive(void);
|
||||||
u8 sub_812EA78(u16 species, u32 personality, u8 a2);
|
u8 Menu2_GetMonSpriteAnchorCoord(u16 species, u32 personality, u8 a2);
|
||||||
s8 sub_812EAE4(u16 species, u32 personality, u8 a2);
|
s8 Menu2_GetMonSpriteAnchorCoordMinusx20(u16 species, u32 personality, u8 a2);
|
||||||
|
|
||||||
// list_menu
|
// list_menu
|
||||||
void sub_8107CD8(u8 palOffset, u16 speciesId);
|
void sub_8107CD8(u8 palOffset, u16 speciesId);
|
||||||
|
|||||||
@@ -3,14 +3,14 @@
|
|||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
void sub_811E5B8(u16, u16, u16, u16, u16, u16);
|
void CreateLevelUpVerticalSpritesTask(u16 x, u16 y, u16 tileTag, u16 paletteTag, u16 priority, u16 subpriority);
|
||||||
bool8 sub_811E680(void);
|
bool8 LevelUpVerticalSpritesTaskIsRunning(void);
|
||||||
void GetMonLevelUpWindowStats(struct Pokemon *mon, u16 *currStats);
|
void GetMonLevelUpWindowStats(struct Pokemon *mon, u16 *currStats);
|
||||||
void DrawLevelUpWindowPg1(u16 windowId, u16 *statsBefore, u16 *statsAfter, u8 bgClr, u8 fgClr, u8 shadowClr);
|
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 DrawLevelUpWindowPg2(u16 windowId, u16 *currStats, u8 bgClr, u8 fgClr, u8 shadowClr);
|
||||||
void StartUseItemAnim_Normal(u8 slotId, u16 itemId, MainCallback callback);
|
void StartUseItemAnim_Normal(u8 slotId, u16 itemId, MainCallback callback);
|
||||||
void StartUseItemAnim_CantEvolve(u8 slotId, u16 itemId, MainCallback callback);
|
void StartUseItemAnim_CantEvolve(u8 slotId, u16 itemId, MainCallback callback);
|
||||||
u32 PSA_IsCancelDisabled(void);
|
bool32 PSA_IsCancelDisabled(void);
|
||||||
void StartUseItemAnim_ForgetMoveAndLearnTMorHM(u8 slotId, u16 itemId, u16 moveId, MainCallback callback);
|
void StartUseItemAnim_ForgetMoveAndLearnTMorHM(u8 slotId, u16 itemId, u16 moveId, MainCallback callback);
|
||||||
|
|
||||||
#endif // GUARD_POKEMON_SPECIAL_ANIM_H
|
#endif // GUARD_POKEMON_SPECIAL_ANIM_H
|
||||||
|
|||||||
@@ -22,9 +22,9 @@ struct PokemonSpecialAnimScene
|
|||||||
u16 state;
|
u16 state;
|
||||||
u16 field_0002;
|
u16 field_0002;
|
||||||
u16 field_0004;
|
u16 field_0004;
|
||||||
u16 field_0006;
|
u16 monSpriteY1;
|
||||||
u16 field_0008;
|
u16 monSpriteY2;
|
||||||
u8 field_000a;
|
u8 lastCloseness;
|
||||||
struct Sprite * monSprite;
|
struct Sprite * monSprite;
|
||||||
struct Sprite * itemIconSprite;
|
struct Sprite * itemIconSprite;
|
||||||
u8 textBuf[0x900];
|
u8 textBuf[0x900];
|
||||||
@@ -49,7 +49,7 @@ struct PokemonSpecialAnim
|
|||||||
/*0x0098*/ u16 animType;
|
/*0x0098*/ u16 animType;
|
||||||
/*0x009a*/ u16 slotId;
|
/*0x009a*/ u16 slotId;
|
||||||
/*0x009c*/ u16 closeness;
|
/*0x009c*/ u16 closeness;
|
||||||
/*0x009e*/ u16 field_009e;
|
/*0x009e*/ u16 delayTimer;
|
||||||
/*0x00a0*/ u32 personality;
|
/*0x00a0*/ u32 personality;
|
||||||
/*0x00a4*/ u32 field_00a4;
|
/*0x00a4*/ u32 field_00a4;
|
||||||
/*0x00a8*/ struct PokemonSpecialAnimScene sceneResources;
|
/*0x00a8*/ struct PokemonSpecialAnimScene sceneResources;
|
||||||
@@ -66,31 +66,29 @@ u8 *PSA_GetMonNickname(void);
|
|||||||
u8 PSA_GetAnimType(void);
|
u8 PSA_GetAnimType(void);
|
||||||
u16 PSA_GetMonSpecies(void);
|
u16 PSA_GetMonSpecies(void);
|
||||||
u32 PSA_GetMonPersonality(void);
|
u32 PSA_GetMonPersonality(void);
|
||||||
void GetMonLevelUpWindowStats(struct Pokemon * pokemon, u16 *data);
|
|
||||||
bool32 PSA_IsCancelDisabled(void);
|
|
||||||
|
|
||||||
void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 animType);
|
void InitPokemonSpecialAnimScene(struct PokemonSpecialAnimScene * buffer, u16 animType);
|
||||||
bool8 PokemonSpecialAnimSceneInitIsNotFinished(void);
|
bool8 PokemonSpecialAnimSceneInitIsNotFinished(void);
|
||||||
void PSA_FreeWindowBuffers(void);
|
void PSA_FreeWindowBuffers(void);
|
||||||
void sub_811D2A8(void);
|
void PSA_ShowMessageWindow(void);
|
||||||
void sub_811D2D0(void);
|
void PSA_HideMessageWindow(void);
|
||||||
void PSA_PrintMessage(u8 messageId);
|
void PSA_PrintMessage(u8 messageId);
|
||||||
void sub_811D4D4(void);
|
void PSA_AfterPoof_ClearMessageWindow(void);
|
||||||
bool8 PSA_IsMessagePrintTaskActive(void);
|
bool8 PSA_IsMessagePrintTaskActive(void);
|
||||||
void sub_811D4FC(void);
|
void PSA_DarkenMonSprite(void);
|
||||||
bool8 sub_811D530(void);
|
bool8 PSA_RunPoofAnim(void);
|
||||||
void sub_811D5A0(void);
|
void PSA_UseTM_SetUpZoomOutAnim(void);
|
||||||
void sub_811D5B0(void);
|
void PSA_UseTM_CleanUpForCancel(void);
|
||||||
bool8 sub_811D5C0(void);
|
bool8 PSA_UseTM_RunZoomOutAnim(void);
|
||||||
void sub_811D6EC(void);
|
void PSA_UseTM_SetUpMachineSetWobble(void);
|
||||||
bool8 sub_811D6FC(void);
|
bool8 PSA_UseTM_RunMachineSetWobble(void);
|
||||||
bool8 sub_811D754(void);
|
bool8 PSA_LevelUpVerticalSpritesTaskIsRunning(void);
|
||||||
void sub_811D830(u8 closeness);
|
void PSA_CreateMonSpriteAtCloseness(u8 closeness);
|
||||||
void PSA_SetUpZoomAnim(u8 closeness);
|
void PSA_SetUpZoomAnim(u8 closeness);
|
||||||
bool8 sub_811D9A8(void);
|
bool8 PSA_IsZoomTaskActive(void);
|
||||||
void PSA_SetUpZoomOutMonTask(u16 itemId, u8 closeness, bool32 a2);
|
void PSA_SetUpItemUseOnMonAnim(u16 itemId, u8 closeness, bool32 a2);
|
||||||
void sub_811DCF0(u16 itemId);
|
void CreateItemIconSpriteAtMaxCloseness(u16 itemId);
|
||||||
bool8 PSA_IsZoomOutMonTaskRunning(void);
|
bool8 PSA_IsItemUseOnMonAnimActive(void);
|
||||||
void sub_811E040(void);
|
void PSA_UseItem_CleanUpForCancel(void);
|
||||||
|
|
||||||
#endif //GUARD_POKEMON_SPECIAL_ANIM_INTERNAL_H
|
#endif //GUARD_POKEMON_SPECIAL_ANIM_INTERNAL_H
|
||||||
|
|||||||
@@ -1226,7 +1226,7 @@ static void sub_80303A8(u8 taskId)
|
|||||||
case 2:
|
case 2:
|
||||||
PlaySE(SE_REGI);
|
PlaySE(SE_REGI);
|
||||||
if (IsMonGettingExpSentOut())
|
if (IsMonGettingExpSentOut())
|
||||||
sub_811E5B8(sprite->pos1.x + sprite->pos2.x,
|
CreateLevelUpVerticalSpritesTask(sprite->pos1.x + sprite->pos2.x,
|
||||||
sprite->pos1.y + sprite->pos2.y,
|
sprite->pos1.y + sprite->pos2.y,
|
||||||
10000,
|
10000,
|
||||||
10000,
|
10000,
|
||||||
@@ -1235,7 +1235,7 @@ static void sub_80303A8(u8 taskId)
|
|||||||
++data[15];
|
++data[15];
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if (!sub_811E680())
|
if (!LevelUpVerticalSpritesTaskIsRunning())
|
||||||
{
|
{
|
||||||
sprite->invisible = FALSE;
|
sprite->invisible = FALSE;
|
||||||
++data[15];
|
++data[15];
|
||||||
|
|||||||
+6
-6
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
static void Task_SmoothBlendLayers(u8 taskId);
|
static void Task_SmoothBlendLayers(u8 taskId);
|
||||||
|
|
||||||
static const u8 gUnknown_845FD54[][5] = {
|
static const u8 sMonSpriteAnchorCoords[][5] = {
|
||||||
[SPECIES_BULBASAUR - 1] = {0x16, 0x1b, 0x30, 0x16, 0x29},
|
[SPECIES_BULBASAUR - 1] = {0x16, 0x1b, 0x30, 0x16, 0x29},
|
||||||
[SPECIES_IVYSAUR - 1] = {0x14, 0x1b, 0x30, 0x15, 0x2a},
|
[SPECIES_IVYSAUR - 1] = {0x14, 0x1b, 0x30, 0x15, 0x2a},
|
||||||
[SPECIES_VENUSAUR - 1] = {0x1b, 0x20, 0x20, 0x1b, 0x33},
|
[SPECIES_VENUSAUR - 1] = {0x1b, 0x20, 0x20, 0x1b, 0x33},
|
||||||
@@ -635,7 +635,7 @@ static void Task_SmoothBlendLayers(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 sub_812EA78(u16 species, u32 personality, u8 a2)
|
u8 Menu2_GetMonSpriteAnchorCoord(u16 species, u32 personality, u8 a2)
|
||||||
{
|
{
|
||||||
if (species == SPECIES_UNOWN)
|
if (species == SPECIES_UNOWN)
|
||||||
{
|
{
|
||||||
@@ -658,13 +658,13 @@ u8 sub_812EA78(u16 species, u32 personality, u8 a2)
|
|||||||
if (species != SPECIES_NONE && a2 < 5)
|
if (species != SPECIES_NONE && a2 < 5)
|
||||||
{
|
{
|
||||||
species--;
|
species--;
|
||||||
if (gUnknown_845FD54[species][a2] != 0xFF)
|
if (sMonSpriteAnchorCoords[species][a2] != 0xFF)
|
||||||
return gUnknown_845FD54[species][a2];
|
return sMonSpriteAnchorCoords[species][a2];
|
||||||
}
|
}
|
||||||
return 32;
|
return 32;
|
||||||
}
|
}
|
||||||
|
|
||||||
s8 sub_812EAE4(u16 species, u32 personality, u8 a2)
|
s8 Menu2_GetMonSpriteAnchorCoordMinusx20(u16 species, u32 personality, u8 a2)
|
||||||
{
|
{
|
||||||
return sub_812EA78(species, personality, a2) - 32;
|
return Menu2_GetMonSpriteAnchorCoord(species, personality, a2) - 32;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -4309,7 +4309,7 @@ static void sub_8124DE0(void)
|
|||||||
static void sub_8124E48(void)
|
static void sub_8124E48(void)
|
||||||
{
|
{
|
||||||
if (ItemId_GetPocket(gSpecialVar_ItemId) == POCKET_TM_CASE
|
if (ItemId_GetPocket(gSpecialVar_ItemId) == POCKET_TM_CASE
|
||||||
&& PSA_IsCancelDisabled() == 1)
|
&& PSA_IsCancelDisabled() == TRUE)
|
||||||
{
|
{
|
||||||
GiveMoveToMon(&gPlayerParty[gPartyMenu.slotId], ItemIdToBattleMoveId(gSpecialVar_ItemId));
|
GiveMoveToMon(&gPlayerParty[gPartyMenu.slotId], ItemIdToBattleMoveId(gSpecialVar_ItemId));
|
||||||
AdjustFriendship(&gPlayerParty[gPartyMenu.slotId], 4);
|
AdjustFriendship(&gPlayerParty[gPartyMenu.slotId], 4);
|
||||||
@@ -4325,7 +4325,7 @@ static void sub_8124E48(void)
|
|||||||
|
|
||||||
static void sub_8124EFC(void)
|
static void sub_8124EFC(void)
|
||||||
{
|
{
|
||||||
if (PSA_IsCancelDisabled() == 1)
|
if (PSA_IsCancelDisabled() == TRUE)
|
||||||
{
|
{
|
||||||
struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId];
|
struct Pokemon *mon = &gPlayerParty[gPartyMenu.slotId];
|
||||||
u8 moveIdx = GetMoveSlotToReplace();
|
u8 moveIdx = GetMoveSlotToReplace();
|
||||||
|
|||||||
+56
-56
@@ -15,14 +15,14 @@ static EWRAM_DATA bool32 sCancelDisabled = FALSE;
|
|||||||
static EWRAM_DATA u8 sPSATaskId = 0;
|
static EWRAM_DATA u8 sPSATaskId = 0;
|
||||||
static EWRAM_DATA struct PokemonSpecialAnim * sPSAWork = NULL;
|
static EWRAM_DATA struct PokemonSpecialAnim * sPSAWork = NULL;
|
||||||
|
|
||||||
struct PokemonSpecialAnim * AllocPSA(u8 slotId, u16 itemId, MainCallback callback);
|
static struct PokemonSpecialAnim * AllocPSA(u8 slotId, u16 itemId, MainCallback callback);
|
||||||
static void SetUpUseItemAnim_Normal(struct PokemonSpecialAnim * ptr);
|
static void SetUpUseItemAnim_Normal(struct PokemonSpecialAnim * ptr);
|
||||||
static void SetUpUseItemAnim_ForgetMoveAndLearnTMorHM(struct PokemonSpecialAnim * ptr);
|
static void SetUpUseItemAnim_ForgetMoveAndLearnTMorHM(struct PokemonSpecialAnim * ptr);
|
||||||
static void SetUpUseItemAnim_CantEvolve(struct PokemonSpecialAnim * ptr);
|
static void SetUpUseItemAnim_CantEvolve(struct PokemonSpecialAnim * ptr);
|
||||||
static void sub_811C834(u8 taskId);
|
static void Task_UseItem_Normal(u8 taskId);
|
||||||
static void Task_ForgetMove(u8 taskId);
|
static void Task_ForgetMove(u8 taskId);
|
||||||
static void sub_811CBE4(u8 taskId);
|
static void Task_EvoStone_CantEvolve(u8 taskId);
|
||||||
static void sub_811CD68(u8 taskId);
|
static void Task_UseTM_NoForget(u8 taskId);
|
||||||
static void Task_MachineSet(u8 taskId);
|
static void Task_MachineSet(u8 taskId);
|
||||||
static void Task_CleanUp(u8 taskId);
|
static void Task_CleanUp(u8 taskId);
|
||||||
static u8 GetClosenessFromFriendship(u16 friendship);
|
static u8 GetClosenessFromFriendship(u16 friendship);
|
||||||
@@ -58,7 +58,7 @@ void StartUseItemAnim_CantEvolve(u8 slotId, u16 itemId, MainCallback callback)
|
|||||||
SetUpUseItemAnim_CantEvolve(ptr);
|
SetUpUseItemAnim_CantEvolve(ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct PokemonSpecialAnim * AllocPSA(u8 slotId, u16 itemId, MainCallback callback)
|
static struct PokemonSpecialAnim * AllocPSA(u8 slotId, u16 itemId, MainCallback callback)
|
||||||
{
|
{
|
||||||
struct PokemonSpecialAnim * ptr;
|
struct PokemonSpecialAnim * ptr;
|
||||||
struct Pokemon * pokemon;
|
struct Pokemon * pokemon;
|
||||||
@@ -125,10 +125,10 @@ static void SetUpUseItemAnim_Normal(struct PokemonSpecialAnim * ptr)
|
|||||||
case 0:
|
case 0:
|
||||||
case 1:
|
case 1:
|
||||||
case 3:
|
case 3:
|
||||||
taskId = CreateTask(sub_811C834, 0);
|
taskId = CreateTask(Task_UseItem_Normal, 0);
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
taskId = CreateTask(sub_811CD68, 0);
|
taskId = CreateTask(Task_UseTM_NoForget, 0);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
SetMainCallback2(ptr->savedCallback);
|
SetMainCallback2(ptr->savedCallback);
|
||||||
@@ -152,18 +152,18 @@ static void SetUpUseItemAnim_ForgetMoveAndLearnTMorHM(struct PokemonSpecialAnim
|
|||||||
|
|
||||||
static void SetUpUseItemAnim_CantEvolve(struct PokemonSpecialAnim * ptr)
|
static void SetUpUseItemAnim_CantEvolve(struct PokemonSpecialAnim * ptr)
|
||||||
{
|
{
|
||||||
u8 taskId = CreateTask(sub_811CBE4, 0);
|
u8 taskId = CreateTask(Task_EvoStone_CantEvolve, 0);
|
||||||
SetWordTaskArg(taskId, 0, (uintptr_t)ptr);
|
SetWordTaskArg(taskId, 0, (uintptr_t)ptr);
|
||||||
SetMainCallback2(CB2_PSA);
|
SetMainCallback2(CB2_PSA);
|
||||||
sPSATaskId = taskId;
|
sPSATaskId = taskId;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_811C834(u8 taskId)
|
static void Task_UseItem_Normal(u8 taskId)
|
||||||
{
|
{
|
||||||
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
||||||
if (!ptr->cancelDisabled && JOY_HELD(A_BUTTON | B_BUTTON))
|
if (!ptr->cancelDisabled && JOY_HELD(A_BUTTON | B_BUTTON))
|
||||||
{
|
{
|
||||||
sub_811E040();
|
PSA_UseItem_CleanUpForCancel();
|
||||||
SetUseItemAnimCallback(taskId, Task_CleanUp);
|
SetUseItemAnimCallback(taskId, Task_CleanUp);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -173,7 +173,7 @@ static void sub_811C834(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
SetVBlankCallback(NULL);
|
SetVBlankCallback(NULL);
|
||||||
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
||||||
sub_811D830(0);
|
PSA_CreateMonSpriteAtCloseness(0);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -195,31 +195,31 @@ static void sub_811C834(u8 taskId)
|
|||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
if (!sub_811D9A8())
|
if (!PSA_IsZoomTaskActive())
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
if (!sub_811D754())
|
if (!PSA_LevelUpVerticalSpritesTaskIsRunning())
|
||||||
{
|
{
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
PSA_SetUpZoomOutMonTask(ptr->itemId, ptr->closeness, TRUE);
|
PSA_SetUpItemUseOnMonAnim(ptr->itemId, ptr->closeness, TRUE);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
if (!PSA_IsZoomOutMonTaskRunning())
|
if (!PSA_IsItemUseOnMonAnimActive())
|
||||||
{
|
{
|
||||||
ptr->cancelDisabled = TRUE;
|
ptr->cancelDisabled = TRUE;
|
||||||
if (ptr->closeness == 3)
|
if (ptr->closeness == 3)
|
||||||
{
|
{
|
||||||
PlayCry1(ptr->species, 0);
|
PlayCry1(ptr->species, 0);
|
||||||
}
|
}
|
||||||
sub_811D2A8();
|
PSA_ShowMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -238,7 +238,7 @@ static void sub_811C834(u8 taskId)
|
|||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
if (!sub_811D9A8())
|
if (!PSA_IsZoomTaskActive())
|
||||||
{
|
{
|
||||||
ptr->cancelDisabled = TRUE;
|
ptr->cancelDisabled = TRUE;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
@@ -283,7 +283,7 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
SetVBlankCallback(NULL);
|
SetVBlankCallback(NULL);
|
||||||
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
||||||
sub_811D830(3);
|
PSA_CreateMonSpriteAtCloseness(3);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -297,15 +297,15 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
case 2:
|
case 2:
|
||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
ptr->field_009e++;
|
ptr->delayTimer++;
|
||||||
if (ptr->field_009e > 30)
|
if (ptr->delayTimer > 30)
|
||||||
{
|
{
|
||||||
sub_811D2A8();
|
PSA_ShowMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -316,13 +316,13 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
case 5:
|
case 5:
|
||||||
if (!PSA_IsMessagePrintTaskActive())
|
if (!PSA_IsMessagePrintTaskActive())
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
ptr->field_009e++;
|
ptr->delayTimer++;
|
||||||
if (ptr->field_009e > 30)
|
if (ptr->delayTimer > 30)
|
||||||
{
|
{
|
||||||
PSA_PrintMessage(PSA_TEXT_FORGET_2_AND);
|
PSA_PrintMessage(PSA_TEXT_FORGET_2_AND);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
@@ -331,25 +331,25 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
case 7:
|
case 7:
|
||||||
if (!PSA_IsMessagePrintTaskActive())
|
if (!PSA_IsMessagePrintTaskActive())
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
ptr->field_009e++;
|
ptr->delayTimer++;
|
||||||
if (ptr->field_009e > 30)
|
if (ptr->delayTimer > 30)
|
||||||
{
|
{
|
||||||
PlaySE(SE_W255);
|
PlaySE(SE_W255);
|
||||||
PSA_PrintMessage(PSA_TEXT_FORGET_POOF);
|
PSA_PrintMessage(PSA_TEXT_FORGET_POOF);
|
||||||
sub_811D4FC();
|
PSA_DarkenMonSprite();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
r4 = sub_811D530();
|
r4 = PSA_RunPoofAnim();
|
||||||
if (!(r4 | PSA_IsMessagePrintTaskActive()))
|
if (!(r4 | PSA_IsMessagePrintTaskActive()))
|
||||||
{
|
{
|
||||||
sub_811D4D4();
|
PSA_AfterPoof_ClearMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -367,7 +367,7 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
case 12:
|
case 12:
|
||||||
if (!PSA_IsMessagePrintTaskActive())
|
if (!PSA_IsMessagePrintTaskActive())
|
||||||
{
|
{
|
||||||
sub_811D2D0();
|
PSA_HideMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -377,7 +377,7 @@ static void Task_ForgetMove(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_811CBE4(u8 taskId)
|
static void Task_EvoStone_CantEvolve(u8 taskId)
|
||||||
{
|
{
|
||||||
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
||||||
|
|
||||||
@@ -392,7 +392,7 @@ static void sub_811CBE4(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
SetVBlankCallback(NULL);
|
SetVBlankCallback(NULL);
|
||||||
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
||||||
sub_811D830(0);
|
PSA_CreateMonSpriteAtCloseness(0);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -414,13 +414,13 @@ static void sub_811CBE4(u8 taskId)
|
|||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
PSA_SetUpZoomOutMonTask(ptr->itemId, ptr->closeness, FALSE);
|
PSA_SetUpItemUseOnMonAnim(ptr->itemId, ptr->closeness, FALSE);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
if (!PSA_IsZoomOutMonTaskRunning())
|
if (!PSA_IsItemUseOnMonAnimActive())
|
||||||
{
|
{
|
||||||
sub_811D2A8();
|
PSA_ShowMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -454,7 +454,7 @@ static void sub_811CBE4(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sub_811CD68(u8 taskId)
|
static void Task_UseTM_NoForget(u8 taskId)
|
||||||
{
|
{
|
||||||
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
struct PokemonSpecialAnim * ptr = (void *)GetWordTaskArg(taskId, 0);
|
||||||
|
|
||||||
@@ -469,7 +469,7 @@ static void sub_811CD68(u8 taskId)
|
|||||||
case 0:
|
case 0:
|
||||||
SetVBlankCallback(NULL);
|
SetVBlankCallback(NULL);
|
||||||
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
InitPokemonSpecialAnimScene(&ptr->sceneResources, ptr->animType);
|
||||||
sub_811D830(3);
|
PSA_CreateMonSpriteAtCloseness(3);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -483,13 +483,13 @@ static void sub_811CD68(u8 taskId)
|
|||||||
case 2:
|
case 2:
|
||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
ptr->field_009e++;
|
ptr->delayTimer++;
|
||||||
if (ptr->field_009e > 20)
|
if (ptr->delayTimer > 20)
|
||||||
{
|
{
|
||||||
SetUseItemAnimCallback(taskId, Task_MachineSet);
|
SetUseItemAnimCallback(taskId, Task_MachineSet);
|
||||||
}
|
}
|
||||||
@@ -503,7 +503,7 @@ static void Task_MachineSet(u8 taskId)
|
|||||||
|
|
||||||
if (!ptr->cancelDisabled && JOY_NEW(B_BUTTON))
|
if (!ptr->cancelDisabled && JOY_NEW(B_BUTTON))
|
||||||
{
|
{
|
||||||
sub_811D5B0();
|
PSA_UseTM_CleanUpForCancel();
|
||||||
SetUseItemAnimCallback(taskId, Task_CleanUp);
|
SetUseItemAnimCallback(taskId, Task_CleanUp);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -511,48 +511,48 @@ static void Task_MachineSet(u8 taskId)
|
|||||||
switch (ptr->state)
|
switch (ptr->state)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
sub_811DCF0(ptr->itemId);
|
CreateItemIconSpriteAtMaxCloseness(ptr->itemId);
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
sub_811D2A8();
|
PSA_ShowMessageWindow();
|
||||||
PSA_PrintMessage(PSA_TEXT_MACHINE_SET);
|
PSA_PrintMessage(PSA_TEXT_MACHINE_SET);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (!PSA_IsMessagePrintTaskActive())
|
if (!PSA_IsMessagePrintTaskActive())
|
||||||
{
|
{
|
||||||
sub_811D2D0();
|
PSA_HideMessageWindow();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
sub_811D6EC();
|
PSA_UseTM_SetUpMachineSetWobble();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
if (!sub_811D6FC())
|
if (!PSA_UseTM_RunMachineSetWobble())
|
||||||
{
|
{
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
sub_811D5A0();
|
PSA_UseTM_SetUpZoomOutAnim();
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
if (!sub_811D5C0())
|
if (!PSA_UseTM_RunZoomOutAnim())
|
||||||
{
|
{
|
||||||
ptr->field_009e = 0;
|
ptr->delayTimer = 0;
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
ptr->field_009e++;
|
ptr->delayTimer++;
|
||||||
if (ptr->field_009e > 30)
|
if (ptr->delayTimer > 30)
|
||||||
{
|
{
|
||||||
sub_811D2A8();
|
PSA_ShowMessageWindow();
|
||||||
PSA_PrintMessage(PSA_TEXT_LEARNED_MOVE);
|
PSA_PrintMessage(PSA_TEXT_LEARNED_MOVE);
|
||||||
ptr->state++;
|
ptr->state++;
|
||||||
}
|
}
|
||||||
|
|||||||
+463
-327
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user