Fix Form Change Item Task Data and Clean Up Field Use Funcs (#7535)

This commit is contained in:
RavePossum 2025-08-19 02:57:35 -04:00 committed by GitHub
parent 554c909983
commit cc705a580d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1402,41 +1402,35 @@ void ItemUseOutOfBattle_EnigmaBerry(u8 taskId)
void ItemUseOutOfBattle_FormChange(u8 taskId)
{
gItemUseCB = ItemUseCB_FormChange;
gTasks[taskId].data[0] = FALSE;
SetUpItemUseCallback(taskId);
}
void ItemUseOutOfBattle_FormChange_ConsumedOnUse(u8 taskId)
{
gItemUseCB = ItemUseCB_FormChange_ConsumedOnUse;
gTasks[taskId].data[0] = TRUE;
SetUpItemUseCallback(taskId);
}
void ItemUseOutOfBattle_RotomCatalog(u8 taskId)
{
gItemUseCB = ItemUseCB_RotomCatalog;
gTasks[taskId].data[0] = TRUE;
SetUpItemUseCallback(taskId);
}
void ItemUseOutOfBattle_ZygardeCube(u8 taskId)
{
gItemUseCB = ItemUseCB_ZygardeCube;
gTasks[taskId].data[0] = TRUE;
SetUpItemUseCallback(taskId);
}
void ItemUseOutOfBattle_Fusion(u8 taskId)
{
gItemUseCB = ItemUseCB_Fusion;
gTasks[taskId].data[0] = FALSE;
SetUpItemUseCallback(taskId);
}
void Task_UseHoneyOnField(u8 taskId)
{
//ResetInitialPlayerAvatarState();
StartSweetScentFieldEffect();
DestroyTask(taskId);
}
@ -1447,7 +1441,6 @@ static void ItemUseOnFieldCB_Honey(u8 taskId)
RemoveBagItem(gSpecialVar_ItemId, 1);
CopyItemName(gSpecialVar_ItemId, gStringVar2);
StringExpandPlaceholders(gStringVar4, gText_PlayerUsedVar2);
gTasks[taskId].data[0] = 0;
DisplayItemMessageOnField(taskId, gStringVar4, Task_UseHoneyOnField);
}
@ -1532,7 +1525,7 @@ static void Task_DisplayPokeFluteMessage(u8 taskId)
{
if (WaitFanfare(FALSE))
{
if (gTasks[taskId].data[3] == 0)
if (!gTasks[taskId].tUsingRegisteredKeyItem)
DisplayItemMessage(taskId, FONT_NORMAL, sText_PokeFluteAwakenedMon, CloseItemMessage);
else
DisplayItemMessageOnField(taskId, sText_PokeFluteAwakenedMon, Task_CloseCantUseKeyItemMessage);
@ -1558,14 +1551,14 @@ void ItemUseOutOfBattle_PokeFlute(u8 taskId)
if (wokeSomeoneUp)
{
if (gTasks[taskId].data[3] == 0)
if (!gTasks[taskId].tUsingRegisteredKeyItem)
DisplayItemMessage(taskId, FONT_NORMAL, sText_PlayedPokeFlute, Task_PlayPokeFlute);
else
DisplayItemMessageOnField(taskId, sText_PlayedPokeFlute, Task_PlayPokeFlute);
}
else
{
if (gTasks[taskId].data[3] == 0)
if (!gTasks[taskId].tUsingRegisteredKeyItem)
DisplayItemMessage(taskId, FONT_NORMAL, sText_PlayedPokeFluteCatchy, CloseItemMessage);
else
DisplayItemMessageOnField(taskId, sText_PlayedPokeFluteCatchy, Task_CloseCantUseKeyItemMessage);