Use MainCallback wherever posible (#2184)
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#include "battle_util2.h"
|
||||
#include "battle_bg.h"
|
||||
#include "pokeball.h"
|
||||
#include "main.h"
|
||||
|
||||
#define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE)
|
||||
#define GET_BATTLER_SIDE2(battler) (gBattlerPositions[battler] & BIT_SIDE)
|
||||
@@ -716,7 +717,7 @@ extern u16 gBattleMovePower;
|
||||
extern u16 gMoveToLearn;
|
||||
extern u8 gBattleMonForms[MAX_BATTLERS_COUNT];
|
||||
|
||||
extern void (*gPreBattleCallback1)(void);
|
||||
extern MainCallback gPreBattleCallback1;
|
||||
extern void (*gBattleMainFunc)(void);
|
||||
extern struct BattleResults gBattleResults;
|
||||
extern u8 gLeveledUpInBattle;
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define GUARD_BATTLE_PYRAMID_BAG_H
|
||||
|
||||
#include "list_menu.h"
|
||||
#include "main.h"
|
||||
|
||||
enum {
|
||||
PYRAMIDBAG_LOC_FIELD,
|
||||
@@ -29,7 +30,7 @@ enum {
|
||||
|
||||
struct PyramidBagMenu
|
||||
{
|
||||
void (*newScreenCallback)(void);
|
||||
MainCallback newScreenCallback;
|
||||
u8 tilemapBuffer[BG_SCREEN_SIZE];
|
||||
u8 spriteIds[PBAG_SPRITE_COUNT];
|
||||
u8 windowIds[5];
|
||||
@@ -49,7 +50,7 @@ struct PyramidBagMenu
|
||||
|
||||
struct PyramidBagMenuState
|
||||
{
|
||||
void (*exitCallback)(void);
|
||||
MainCallback exitCallback;
|
||||
u8 location;
|
||||
u16 cursorPosition;
|
||||
u16 scrollPosition;
|
||||
@@ -63,7 +64,7 @@ void CB2_PyramidBagMenuFromStartMenu(void);
|
||||
void CB2_ReturnToPyramidBagMenu(void);
|
||||
void UpdatePyramidBagList(void);
|
||||
void UpdatePyramidBagCursorPos(void);
|
||||
void GoToBattlePyramidBagMenu(u8 location, void (*exitCallback)(void));
|
||||
void GoToBattlePyramidBagMenu(u8 location, MainCallback exitCallback);
|
||||
void Task_CloseBattlePyramidBagMessage(u8 taskId);
|
||||
void TryStoreHeldItemsInPyramidBag(void);
|
||||
void ChooseItemsToTossFromPyramidBag(void);
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
#ifndef GUARD_DODRIO_BERRY_PICKING_H
|
||||
#define GUARD_DODRIO_BERRY_PICKING_H
|
||||
|
||||
void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void));
|
||||
#include "main.h"
|
||||
|
||||
void StartDodrioBerryPicking(u16 partyId, MainCallback exitCallback);
|
||||
void IsDodrioInParty(void);
|
||||
void ShowDodrioBerryPickingRecords(void);
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define GUARD_ITEM_MENU_H
|
||||
|
||||
#include "item.h"
|
||||
#include "main.h"
|
||||
#include "menu_helpers.h"
|
||||
|
||||
enum {
|
||||
@@ -47,7 +48,7 @@ enum {
|
||||
|
||||
struct BagPosition
|
||||
{
|
||||
void (*exitCallback)(void);
|
||||
MainCallback exitCallback;
|
||||
u8 location;
|
||||
u8 pocket;
|
||||
u16 pocketSwitchArrowPos;
|
||||
@@ -59,7 +60,7 @@ extern struct BagPosition gBagPosition;
|
||||
|
||||
struct BagMenu
|
||||
{
|
||||
void (*newScreenCallback)(void);
|
||||
MainCallback newScreenCallback;
|
||||
u8 tilemapBuffer[BG_SCREEN_SIZE];
|
||||
u8 spriteIds[ITEMMENUSPRITE_COUNT];
|
||||
u8 windowIds[ITEMWIN_COUNT];
|
||||
@@ -96,10 +97,10 @@ void CB2_BagMenuFromStartMenu(void);
|
||||
u8 GetItemListPosition(u8 pocketId);
|
||||
bool8 UseRegisteredKeyItemOnField(void);
|
||||
void CB2_GoToSellMenu(void);
|
||||
void GoToBagMenu(u8 location, u8 pocket, void ( *exitCallback)());
|
||||
void GoToBagMenu(u8 location, u8 pocket, MainCallback exitCallback);
|
||||
void DoWallyTutorialBagMenu(void);
|
||||
void ResetBagScrollPositions(void);
|
||||
void ChooseBerryForMachine(void (*exitCallback)(void));
|
||||
void ChooseBerryForMachine(MainCallback exitCallback);
|
||||
void CB2_ChooseBerry(void);
|
||||
void Task_FadeAndCloseBagMenu(u8 taskId);
|
||||
void BagMenu_YesNo(u8 taskId, u8 windowType, const struct YesNoFuncTable *funcTable);
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#ifndef GUARD_MAIL_H
|
||||
#define GUARD_MAIL_H
|
||||
|
||||
#include "main.h"
|
||||
|
||||
#define IS_ITEM_MAIL(itemId) ((itemId == ITEM_ORANGE_MAIL \
|
||||
|| itemId == ITEM_HARBOR_MAIL \
|
||||
|| itemId == ITEM_GLITTER_MAIL \
|
||||
@@ -15,7 +17,7 @@
|
||||
|| itemId == ITEM_RETRO_MAIL))
|
||||
|
||||
// mail.h
|
||||
void ReadMail(struct Mail *mail, void (*exitCallback)(void), bool8 hasText);
|
||||
void ReadMail(struct Mail *mail, MainCallback exitCallback, bool8 hasText);
|
||||
|
||||
// mail_data.h
|
||||
void ClearAllMail(void);
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#ifndef GUARD_RAYQUAZA_SCENE_H
|
||||
#define GUARD_RAYQUAZA_SCENE_H
|
||||
|
||||
void DoRayquazaScene(u8 animId, bool8 endEarly, void (*exitCallback)(void));
|
||||
#include "main.h"
|
||||
|
||||
void DoRayquazaScene(u8 animId, bool8 endEarly, MainCallback exitCallback);
|
||||
|
||||
#endif // GUARD_RAYQUAZA_SCENE_H
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#ifndef GUARD_SAVE_H
|
||||
#define GUARD_SAVE_H
|
||||
|
||||
#include "main.h"
|
||||
|
||||
// Each 4 KiB flash sector contains 3968 bytes of actual data followed by a 128 byte footer.
|
||||
// Only 12 bytes of the footer are used.
|
||||
#define SECTOR_DATA_SIZE 3968
|
||||
@@ -87,7 +89,7 @@ extern u32 gSaveCounter;
|
||||
extern struct SaveSector *gFastSaveSector;
|
||||
extern u16 gIncrementalSectorId;
|
||||
extern u16 gSaveFileStatus;
|
||||
extern void (*gGameContinueCallback)(void);
|
||||
extern MainCallback gGameContinueCallback;
|
||||
extern struct SaveSectorLocation gRamSaveSectorLocations[];
|
||||
|
||||
extern struct SaveSector gSaveDataBuffer;
|
||||
|
||||
@@ -237,7 +237,7 @@ EWRAM_DATA u16 gBattleMovePower = 0;
|
||||
EWRAM_DATA u16 gMoveToLearn = 0;
|
||||
EWRAM_DATA u8 gBattleMonForms[MAX_BATTLERS_COUNT] = {0};
|
||||
|
||||
COMMON_DATA void (*gPreBattleCallback1)(void) = NULL;
|
||||
COMMON_DATA MainCallback gPreBattleCallback1 = NULL;
|
||||
COMMON_DATA void (*gBattleMainFunc)(void) = NULL;
|
||||
COMMON_DATA struct BattleResults gBattleResults = {0};
|
||||
COMMON_DATA u8 gLeveledUpInBattle = 0;
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
#include "item_use.h"
|
||||
#include "list_menu.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "menu.h"
|
||||
#include "menu_helpers.h"
|
||||
@@ -414,7 +413,7 @@ void CB2_ReturnToPyramidBagMenu(void)
|
||||
GoToBattlePyramidBagMenu(PYRAMIDBAG_LOC_PREV, gPyramidBagMenuState.exitCallback);
|
||||
}
|
||||
|
||||
void GoToBattlePyramidBagMenu(u8 location, void (*exitCallback)(void))
|
||||
void GoToBattlePyramidBagMenu(u8 location, MainCallback exitCallback)
|
||||
{
|
||||
gPyramidBagMenu = AllocZeroed(sizeof(*gPyramidBagMenu));
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
#include "link.h"
|
||||
#include "link_rfu.h"
|
||||
#include "m4a.h"
|
||||
#include "main.h"
|
||||
#include "palette.h"
|
||||
#include "minigame_countdown.h"
|
||||
#include "random.h"
|
||||
@@ -223,7 +222,7 @@ struct DodrioGame_ScoreResults
|
||||
|
||||
struct DodrioGame
|
||||
{
|
||||
/*0x0000*/ void (*exitCallback)(void);
|
||||
/*0x0000*/ MainCallback exitCallback;
|
||||
/*0x0004*/ u8 ALIGNED(4) taskId;
|
||||
/*0x0008*/ u8 ALIGNED(4) playersReceived;
|
||||
/*0x000C*/ u8 ALIGNED(4) startState;
|
||||
@@ -661,7 +660,7 @@ static void (*const sMemberFuncs[])(void) =
|
||||
[FUNC_WAIT_END_GAME] = WaitEndGame_Member
|
||||
};
|
||||
|
||||
void StartDodrioBerryPicking(u16 partyId, void (*exitCallback)(void))
|
||||
void StartDodrioBerryPicking(u16 partyId, MainCallback exitCallback)
|
||||
{
|
||||
sExitingGame = FALSE;
|
||||
|
||||
|
||||
@@ -106,7 +106,7 @@ enum {
|
||||
|
||||
struct FrontierPassData
|
||||
{
|
||||
void (*callback)(void);
|
||||
MainCallback callback;
|
||||
u16 state;
|
||||
u16 battlePoints;
|
||||
s16 cursorX;
|
||||
@@ -137,14 +137,14 @@ struct FrontierPassGfx
|
||||
|
||||
struct FrontierPassSaved
|
||||
{
|
||||
void (*callback)(void);
|
||||
MainCallback callback;
|
||||
s16 cursorX;
|
||||
s16 cursorY;
|
||||
};
|
||||
|
||||
struct FrontierMapData
|
||||
{
|
||||
void (*callback)(void);
|
||||
MainCallback callback;
|
||||
struct Sprite *cursorSprite;
|
||||
struct Sprite *playerHeadSprite;
|
||||
struct Sprite *mapIndicatorSprite;
|
||||
@@ -160,8 +160,8 @@ static EWRAM_DATA struct FrontierPassGfx *sPassGfx = NULL;
|
||||
static EWRAM_DATA struct FrontierMapData *sMapData = NULL;
|
||||
static EWRAM_DATA struct FrontierPassSaved sSavedPassData = {0};
|
||||
|
||||
static u32 AllocateFrontierPassData(void (*callback)(void));
|
||||
static void ShowFrontierMap(void (*callback)(void));
|
||||
static u32 AllocateFrontierPassData(MainCallback callback);
|
||||
static void ShowFrontierMap(MainCallback callback);
|
||||
static void CB2_InitFrontierPass(void);
|
||||
static void DrawFrontierPassBg(void);
|
||||
static void FreeCursorAndSymbolSprites(void);
|
||||
@@ -604,7 +604,7 @@ static void LeaveFrontierPass(void)
|
||||
FreeFrontierPassData();
|
||||
}
|
||||
|
||||
static u32 AllocateFrontierPassData(void (*callback)(void))
|
||||
static u32 AllocateFrontierPassData(MainCallback callback)
|
||||
{
|
||||
u8 i;
|
||||
|
||||
@@ -1363,7 +1363,7 @@ static void PrintOnFrontierMap(void);
|
||||
static void InitFrontierMapSprites(void);
|
||||
static void HandleFrontierMapCursorMove(u8 direction);
|
||||
|
||||
static void ShowFrontierMap(void (*callback)(void))
|
||||
static void ShowFrontierMap(MainCallback callback)
|
||||
{
|
||||
if (sMapData != NULL)
|
||||
SetMainCallback2(callback); // This line doesn't make sense at all, since it gets overwritten later anyway.
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "list_menu.h"
|
||||
#include "link.h"
|
||||
#include "mail.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "map_name_popup.h"
|
||||
#include "menu.h"
|
||||
@@ -578,7 +577,7 @@ void CB2_ChooseBerry(void)
|
||||
}
|
||||
|
||||
// Choosing berry for Berry Blender or Berry Crush
|
||||
void ChooseBerryForMachine(void (*exitCallback)(void))
|
||||
void ChooseBerryForMachine(MainCallback exitCallback)
|
||||
{
|
||||
GoToBagMenu(ITEMMENULOCATION_BERRY_BLENDER_CRUSH, BERRIES_POCKET, exitCallback);
|
||||
}
|
||||
@@ -612,7 +611,7 @@ void QuizLadyOpenBagMenu(void)
|
||||
gSpecialVar_Result = FALSE;
|
||||
}
|
||||
|
||||
void GoToBagMenu(u8 location, u8 pocket, void ( *exitCallback)())
|
||||
void GoToBagMenu(u8 location, u8 pocket, MainCallback exitCallback)
|
||||
{
|
||||
gBagMenu = AllocZeroed(sizeof(*gBagMenu));
|
||||
if (gBagMenu == NULL)
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#include "global.h"
|
||||
#include "mail.h"
|
||||
#include "constants/items.h"
|
||||
#include "main.h"
|
||||
#include "overworld.h"
|
||||
#include "task.h"
|
||||
#include "scanline_effect.h"
|
||||
@@ -443,7 +442,7 @@ static const struct MailLayout sMailLayouts_Tall[] = {
|
||||
},
|
||||
};
|
||||
|
||||
void ReadMail(struct Mail *mail, void (*exitCallback)(void), bool8 hasText)
|
||||
void ReadMail(struct Mail *mail, MainCallback exitCallback, bool8 hasText)
|
||||
{
|
||||
u16 buffer[2];
|
||||
u16 species;
|
||||
|
||||
@@ -62,7 +62,7 @@ enum {
|
||||
struct PokeblockMenuStruct
|
||||
{
|
||||
u8 tilemap[BG_SCREEN_SIZE];
|
||||
void (*callbackOnUse)(void);
|
||||
MainCallback callbackOnUse;
|
||||
const u8 *pokeblockActionIds;
|
||||
u8 numActions;
|
||||
u8 caseId;
|
||||
@@ -80,7 +80,7 @@ struct PokeblockMenuStruct
|
||||
|
||||
struct PokeblockSavedData
|
||||
{
|
||||
void (*callback)(void);
|
||||
MainCallback callback;
|
||||
u16 selectedRow;
|
||||
u16 scrollOffset;
|
||||
};
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
#include "task.h"
|
||||
#include "graphics.h"
|
||||
#include "bg.h"
|
||||
#include "main.h"
|
||||
#include "malloc.h"
|
||||
#include "palette.h"
|
||||
#include "scanline_effect.h"
|
||||
@@ -1285,7 +1284,7 @@ static const struct BgTemplate sBgTemplates_ChasesAway[] =
|
||||
}
|
||||
};
|
||||
|
||||
void DoRayquazaScene(u8 animId, bool8 endEarly, void (*exitCallback)(void))
|
||||
void DoRayquazaScene(u8 animId, bool8 endEarly, MainCallback exitCallback)
|
||||
{
|
||||
sRayScene = AllocZeroed(sizeof(*sRayScene));
|
||||
sRayScene->animId = animId;
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
#include "load_save.h"
|
||||
#include "overworld.h"
|
||||
#include "pokemon_storage_system.h"
|
||||
#include "main.h"
|
||||
#include "trainer_hill.h"
|
||||
#include "link.h"
|
||||
#include "constants/game_stat.h"
|
||||
@@ -88,7 +87,7 @@ COMMON_DATA struct SaveSector *gReadWriteSector = NULL; // Pointer to a buffer f
|
||||
COMMON_DATA u16 gIncrementalSectorId = 0;
|
||||
COMMON_DATA u16 gSaveUnusedVar = 0;
|
||||
COMMON_DATA u16 gSaveFileStatus = 0;
|
||||
COMMON_DATA void (*gGameContinueCallback)(void) = NULL;
|
||||
COMMON_DATA MainCallback gGameContinueCallback = NULL;
|
||||
COMMON_DATA struct SaveSectorLocation gRamSaveSectorLocations[NUM_SECTORS_PER_SLOT] = {0};
|
||||
COMMON_DATA u16 gSaveUnusedVar2 = 0;
|
||||
COMMON_DATA u16 gSaveAttemptStatus = 0;
|
||||
@@ -887,7 +886,7 @@ u8 LoadGameSave(u8 saveType)
|
||||
status = TryLoadSaveSlot(FULL_SAVE_SLOT, gRamSaveSectorLocations);
|
||||
CopyPartyAndObjectsFromSave();
|
||||
gSaveFileStatus = status;
|
||||
gGameContinueCallback = 0;
|
||||
gGameContinueCallback = NULL;
|
||||
break;
|
||||
case SAVE_HALL_OF_FAME:
|
||||
status = TryLoadSaveSector(SECTOR_ID_HOF_1, gDecompressionBuffer, SECTOR_DATA_SIZE);
|
||||
|
||||
@@ -326,7 +326,7 @@ static void CB2_ReturnToTitleScreen(void)
|
||||
}
|
||||
else
|
||||
{
|
||||
SetMainCallback2((MainCallback)gGameContinueCallback);
|
||||
SetMainCallback2(gGameContinueCallback);
|
||||
gGameContinueCallback = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -455,7 +455,7 @@ static void Task_GoToBuyOrSellMenu(u8 taskId)
|
||||
if (!gPaletteFade.active)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
SetMainCallback2((void *)((u16)tCallbackHi << 16 | (u16)tCallbackLo));
|
||||
SetMainCallback2((MainCallback)((u16)tCallbackHi << 16 | (u16)tCallbackLo));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -77,7 +77,7 @@ struct TrainerCardData
|
||||
u8 cardType;
|
||||
bool8 isHoenn;
|
||||
u16 blendColor;
|
||||
void (*callback2)(void);
|
||||
MainCallback callback2;
|
||||
struct TrainerCard trainerCard;
|
||||
u16 frontTilemap[600];
|
||||
u16 backTilemap[600];
|
||||
|
||||
@@ -50,7 +50,7 @@ enum {
|
||||
struct UsePokeblockSession
|
||||
{
|
||||
void (*callback)(void);
|
||||
void (*exitCallback)(void);
|
||||
MainCallback exitCallback;
|
||||
struct Pokeblock *pokeblock;
|
||||
struct Pokemon *mon;
|
||||
u8 stringBuffer[64];
|
||||
@@ -162,7 +162,7 @@ extern const u16 gConditionText_Pal[];
|
||||
// The below 3 are saved for returning to the screen after feeding a pokeblock to a mon
|
||||
// so that the rest of the data can be freed
|
||||
static EWRAM_DATA struct UsePokeblockSession *sInfo = NULL;
|
||||
static EWRAM_DATA void (*sExitCallback)(void) = NULL;
|
||||
static EWRAM_DATA MainCallback sExitCallback = NULL;
|
||||
static EWRAM_DATA struct Pokeblock *sPokeblock = NULL;
|
||||
EWRAM_DATA u8 gPokeblockMonId = 0;
|
||||
EWRAM_DATA s16 gPokeblockGain = 0;
|
||||
|
||||
Reference in New Issue
Block a user