summaryrefslogtreecommitdiff
path: root/src/item_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/item_menu.c')
-rwxr-xr-xsrc/item_menu.c83
1 files changed, 40 insertions, 43 deletions
diff --git a/src/item_menu.c b/src/item_menu.c
index 80035b945..de4d82e9b 100755
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -41,7 +41,6 @@
#include "shop.h"
#include "sound.h"
#include "sprite.h"
-#include "string.h"
#include "strings.h"
#include "string_util.h"
#include "task.h"
@@ -87,7 +86,7 @@ u16 BagGetQuantityByPocketPosition(u8, u16);
void BagDestroyPocketSwitchArrowPair(void);
void TaskCloseBagMenu_2(u8);
u8 AddItemMessageWindow(u8);
-void BagMenu_RemoveBagItemMessageindow(u8);
+void BagMenu_RemoveBagItemMessageWindow(u8);
void set_callback3_to_bag(u8);
void PrintItemDepositAmount(u8, s16);
static u8 BagMenu_AddWindow(u8);
@@ -510,7 +509,6 @@ EWRAM_DATA u16 gSpecialVar_ItemId = 0;
static EWRAM_DATA struct TempWallyStruct *sTempWallyBag = 0;
extern u8 *const gPocketNamesStringsTable[];
-extern u8* gReturnToXStringsTable[];
extern const u8 EventScript_SelectWithoutRegisteredItem[];
extern const u16 gUnknown_0860F074[];
@@ -531,7 +529,7 @@ void CB2_BagMenuFromBattle(void)
if (!InBattlePyramid())
GoToBagMenu(ITEMMENULOCATION_BATTLE, POCKETS_COUNT, CB2_SetUpReshowBattleScreenAfterMenu2);
else
- GoToBattlePyramidBagMenu(1, CB2_SetUpReshowBattleScreenAfterMenu2);
+ GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_BATTLE, CB2_SetUpReshowBattleScreenAfterMenu2);
}
// Choosing berry to plant
@@ -595,8 +593,8 @@ void GoToBagMenu(u8 location, u8 pocket, void ( *postExitMenuMainCallback2)())
gBagMenu->pocketSwitchDisabled = TRUE;
gBagMenu->exitCallback = NULL;
gBagMenu->itemOriginalLocation = 0xFF;
- gBagMenu->pocketScrollArrowsTask = 0xFF;
- gBagMenu->pocketSwitchArrowsTask = 0xFF;
+ gBagMenu->pocketScrollArrowsTask = TASK_NONE;
+ gBagMenu->pocketSwitchArrowsTask = TASK_NONE;
memset(gBagMenu->spriteId, 0xFF, sizeof(gBagMenu->spriteId));
memset(gBagMenu->windowPointers, 0xFF, 10);
SetMainCallback2(CB2_Bag);
@@ -628,7 +626,6 @@ void CB2_Bag(void)
bool8 SetupBagMenu(void)
{
- u32 index;
u8 taskId;
switch (gMain.state)
@@ -709,7 +706,7 @@ bool8 SetupBagMenu(void)
gMain.state++;
break;
case 16:
- sub_80D4FAC();
+ CreateItemMenuSwapLine();
gMain.state++;
break;
case 17:
@@ -722,11 +719,11 @@ bool8 SetupBagMenu(void)
gMain.state++;
break;
case 19:
- BlendPalettes(0xFFFFFFFF, 16, 0);
+ BlendPalettes(PALETTES_ALL, 16, 0);
gMain.state++;
break;
case 20:
- BeginNormalPaletteFade(0xFFFFFFFF, 0, 16, 0, RGB_BLACK);
+ BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
gPaletteFade.bufferTransferDisabled = FALSE;
gMain.state++;
break;
@@ -743,7 +740,7 @@ void BagMenu_InitBGs(void)
ResetVramOamAndBgCntRegs();
memset(gBagMenu->tilemapBuffer, 0, 0x800);
ResetBgsAndClearDma3BusyFlags(0);
- InitBgsFromTemplates(0, sBgTemplates_ItemMenu, 3);
+ InitBgsFromTemplates(0, sBgTemplates_ItemMenu, ARRAY_COUNT(sBgTemplates_ItemMenu));
SetBgTilemapBuffer(2, gBagMenu->tilemapBuffer);
ResetAllBgsCoordinates();
ScheduleBgCopyTilemapToVram(2);
@@ -789,7 +786,7 @@ bool8 LoadBagMenu_Graphics(void)
gBagMenu->graphicsLoadState++;
break;
default:
- LoadListMenuArrowsGfx();
+ LoadListMenuSwapLineGfx();
gBagMenu->graphicsLoadState = 0;
return TRUE;
}
@@ -866,7 +863,7 @@ void GetItemName(s8 *dest, u16 itemId)
}
break;
case BERRIES_POCKET:
- ConvertIntToDecimalStringN(gStringVar1, itemId - ITEM_CHERI_BERRY + 1, STR_CONV_MODE_LEADING_ZEROS, 2);
+ ConvertIntToDecimalStringN(gStringVar1, itemId - FIRST_BERRY_INDEX + 1, STR_CONV_MODE_LEADING_ZEROS, 2);
CopyItemName(itemId, gStringVar2);
StringExpandPlaceholders(dest, gText_NumberVar1Clear7Var2);
break;
@@ -949,7 +946,7 @@ void BagMenu_PrintDescription(int itemIndex)
}
else
{
- StringCopy(gStringVar1, gReturnToXStringsTable[gBagPositionStruct.location]);
+ StringCopy(gStringVar1, gBagMenu_ReturnToStrings[gBagPositionStruct.location]);
StringExpandPlaceholders(gStringVar4, gText_ReturnToVar1);
str = gStringVar4;
}
@@ -973,7 +970,7 @@ void BagMenu_PrintCursor(u8 y, u8 colorIndex)
void CreatePocketScrollArrowPair(void)
{
- if (gBagMenu->pocketScrollArrowsTask == 0xFF)
+ if (gBagMenu->pocketScrollArrowsTask == TASK_NONE)
gBagMenu->pocketScrollArrowsTask = AddScrollIndicatorArrowPairParameterized(
SCROLL_ARROW_UP,
172,
@@ -987,26 +984,26 @@ void CreatePocketScrollArrowPair(void)
void BagDestroyPocketScrollArrowPair(void)
{
- if (gBagMenu->pocketScrollArrowsTask != 0xFF)
+ if (gBagMenu->pocketScrollArrowsTask != TASK_NONE)
{
RemoveScrollIndicatorArrowPair(gBagMenu->pocketScrollArrowsTask);
- gBagMenu->pocketScrollArrowsTask = 0xFF;
+ gBagMenu->pocketScrollArrowsTask = TASK_NONE;
}
BagDestroyPocketSwitchArrowPair();
}
void CreatePocketSwitchArrowPair(void)
{
- if (gBagMenu->pocketSwitchDisabled != TRUE && gBagMenu->pocketSwitchArrowsTask == 0xFF)
+ if (gBagMenu->pocketSwitchDisabled != TRUE && gBagMenu->pocketSwitchArrowsTask == TASK_NONE)
gBagMenu->pocketSwitchArrowsTask = AddScrollIndicatorArrowPair(&sBagScrollArrowsTemplate, &gBagPositionStruct.unk6);
}
void BagDestroyPocketSwitchArrowPair(void)
{
- if (gBagMenu->pocketSwitchArrowsTask != 0xFF)
+ if (gBagMenu->pocketSwitchArrowsTask != TASK_NONE)
{
RemoveScrollIndicatorArrowPair(gBagMenu->pocketSwitchArrowsTask);
- gBagMenu->pocketSwitchArrowsTask = 0xFF;
+ gBagMenu->pocketSwitchArrowsTask = TASK_NONE;
}
}
@@ -1020,7 +1017,7 @@ void FreeBagItemListBuffers(void)
void Task_FadeAndCloseBagMenu(u8 taskId)
{
- BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB_BLACK);
+ BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
gTasks[taskId].func = TaskCloseBagMenu_2;
}
@@ -1117,7 +1114,7 @@ void BagMenu_InitListsMenu(u8 taskId)
s16* data = gTasks[taskId].data;
u16* scrollPos = &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket];
u16* cursorPos = &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket];
- BagMenu_RemoveBagItemMessageindow(4);
+ BagMenu_RemoveBagItemMessageWindow(4);
DestroyListMenuTask(data[0], scrollPos, cursorPos);
UpdatePocketItemList(gBagPositionStruct.pocket);
SetInitialScrollAndCursorPositions(gBagPositionStruct.pocket);
@@ -1375,7 +1372,7 @@ void BagMenu_SwapItems(u8 taskId)
StringExpandPlaceholders(gStringVar4, gText_MoveVar1Where);
FillWindowPixelBuffer(1, PIXEL_FILL(0));
BagMenu_Print(1, 1, gStringVar4, 3, 1, 0, 0, 0, 0);
- sub_80D4FEC(data[1]);
+ UpdateItemMenuSwapLinePos(data[1]);
BagDestroyPocketSwitchArrowPair();
BagMenu_PrintCursor_(data[0], 2);
gTasks[taskId].func = Task_HandleSwappingItemsInput;
@@ -1398,8 +1395,8 @@ static void Task_HandleSwappingItemsInput(u8 taskId)
{
input = ListMenu_ProcessInput(data[0]);
ListMenuGetScrollAndRow(data[0], &gBagPositionStruct.scrollPosition[gBagPositionStruct.pocket], &gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]);
- sub_80D4FC8(0);
- sub_80D4FEC(gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]);
+ SetItemMenuSwapLineInvisibility(FALSE);
+ UpdateItemMenuSwapLinePos(gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]);
switch (input)
{
case LIST_NOTHING_CHOSEN:
@@ -1437,7 +1434,7 @@ void sub_81AC498(u8 taskId)
gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--;
LoadBagItemListBuffers(gBagPositionStruct.pocket);
data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos);
- sub_80D4FC8(1);
+ SetItemMenuSwapLineInvisibility(TRUE);
CreatePocketSwitchArrowPair();
gTasks[taskId].func = Task_BagMenu_HandleInput;
}
@@ -1455,12 +1452,12 @@ void sub_81AC590(u8 taskId)
gBagPositionStruct.cursorPosition[gBagPositionStruct.pocket]--;
LoadBagItemListBuffers(gBagPositionStruct.pocket);
data[0] = ListMenuInit(&gMultiuseListMenuTemplate, *scrollPos, *cursorPos);
- sub_80D4FC8(1);
+ SetItemMenuSwapLineInvisibility(TRUE);
CreatePocketSwitchArrowPair();
gTasks[taskId].func = Task_BagMenu_HandleInput;
}
-void OpenContextMenu(u8 unused)
+static void OpenContextMenu(u8 unused)
{
switch (gBagPositionStruct.location)
{
@@ -1606,8 +1603,8 @@ void sub_81ACAF8(u8 a)
void sub_81ACB54(u8 a, u8 b, u8 c)
{
- sub_8198DBC(a, 7, 8, 1, 0x38, b, c, sItemMenuActions, gBagMenu->contextMenuItemsPtr);
- sub_8199944(a, 0x38, b, c, 0);
+ PrintMenuActionGrid(a, 7, 8, 1, 0x38, b, c, sItemMenuActions, gBagMenu->contextMenuItemsPtr);
+ InitMenuActionGrid(a, 0x38, b, c, 0);
}
void Task_ItemContext_FieldOrBattle(u8 taskId)
@@ -1722,7 +1719,7 @@ void ItemMenu_UseOutOfBattle(u8 taskId)
if (ItemId_GetFieldFunc(gSpecialVar_ItemId))
{
BagMenu_RemoveSomeWindow();
- if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gSpecialVar_ItemId) == 1)
+ if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gSpecialVar_ItemId) == ITEM_USE_PARTY_MENU)
BagMenu_PrintThereIsNoPokemon(taskId);
else
{
@@ -1852,7 +1849,7 @@ void ItemMenu_Register(u8 taskId)
void ItemMenu_Give(u8 taskId)
{
BagMenu_RemoveSomeWindow();
- if (!itemid_80BF6D8_mail_related(gSpecialVar_ItemId))
+ if (!IsWritingMailAllowed(gSpecialVar_ItemId))
{
DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350);
}
@@ -1927,7 +1924,7 @@ void CB2_ReturnToBagMenuPocket(void)
void Task_ItemContext_FieldGive(u8 taskId)
{
- if (!itemid_80BF6D8_mail_related(gSpecialVar_ItemId))
+ if (!IsWritingMailAllowed(gSpecialVar_ItemId))
{
DisplayItemMessage(taskId, 1, gText_CantWriteMail, sub_81AD350);
}
@@ -1973,7 +1970,7 @@ bool8 UseRegisteredKeyItemOnField(void)
{
ScriptContext2_Enable();
FreezeObjectEvents();
- sub_808B864();
+ PlayerFreeze();
sub_808BCF4();
gSpecialVar_ItemId = gSaveBlock1Ptr->registeredItem;
taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1Ptr->registeredItem), 8);
@@ -2037,7 +2034,7 @@ void BagMenu_CancelSell(u8 taskId)
s16* data = gTasks[taskId].data;
RemoveMoneyWindow();
- BagMenu_RemoveBagItemMessageindow(4);
+ BagMenu_RemoveBagItemMessageWindow(4);
BagMenu_PrintCursor_(data[0], 0);
set_callback3_to_bag(taskId);
}
@@ -2072,7 +2069,7 @@ static void Task_SellHowManyDialogueHandleInput(u8 taskId)
BagMenu_PrintCursor_(data[0], 0);
RemoveMoneyWindow();
BagMenu_RemoveWindow(8);
- BagMenu_RemoveBagItemMessageindow(4);
+ BagMenu_RemoveBagItemMessageWindow(4);
set_callback3_to_bag(taskId);
}
}
@@ -2392,7 +2389,7 @@ u8 sub_81AE124(u8 which)
u8 BagMenu_AddWindow(u8 which)
{
u8 *ptr = &gBagMenu->windowPointers[which];
- if (*ptr == 0xFF)
+ if (*ptr == WINDOW_NONE)
{
*ptr = AddWindow(&sContextMenuWindowTemplates[which]);
DrawStdFrameWithCustomTileAndPalette(*ptr, 0, 1, 14);
@@ -2404,35 +2401,35 @@ u8 BagMenu_AddWindow(u8 which)
void BagMenu_RemoveWindow(u8 which)
{
u8 *ptr = &gBagMenu->windowPointers[which];
- if (*ptr != 0xFF)
+ if (*ptr != WINDOW_NONE)
{
ClearStdWindowAndFrameToTransparent(*ptr, FALSE);
ClearWindowTilemap(*ptr);
RemoveWindow(*ptr);
ScheduleBgCopyTilemapToVram(1);
- *ptr = 0xFF;
+ *ptr = WINDOW_NONE;
}
}
u8 AddItemMessageWindow(u8 which)
{
u8 *ptr = &gBagMenu->windowPointers[which];
- if (*ptr == 0xFF)
+ if (*ptr == WINDOW_NONE)
*ptr = AddWindow(&sContextMenuWindowTemplates[which]);
return *ptr;
}
-void BagMenu_RemoveBagItemMessageindow(u8 which)
+void BagMenu_RemoveBagItemMessageWindow(u8 which)
{
u8 *ptr = &gBagMenu->windowPointers[which];
- if (*ptr != 0xFF)
+ if (*ptr != WINDOW_NONE)
{
ClearDialogWindowAndFrameToTransparent(*ptr, FALSE);
// This ClearWindowTilemap call is redundant, since ClearDialogWindowAndFrameToTransparent already calls it.
ClearWindowTilemap(*ptr);
RemoveWindow(*ptr);
ScheduleBgCopyTilemapToVram(1);
- *ptr = 0xFF;
+ *ptr = WINDOW_NONE;
}
}