summaryrefslogtreecommitdiff
path: root/src/engine
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/cable_club.c4
-rw-r--r--src/engine/clock.c2
-rw-r--r--src/engine/load_save.c2
-rw-r--r--src/engine/main.c2
-rw-r--r--src/engine/main_menu.c408
-rw-r--r--src/engine/menu.c8
-rw-r--r--src/engine/mystery_event_menu.c22
-rw-r--r--src/engine/naming_screen.c2
-rw-r--r--src/engine/record_mixing.c2
-rw-r--r--src/engine/save.c2
-rw-r--r--src/engine/script.c16
-rw-r--r--src/engine/time_events.c6
-rw-r--r--src/engine/trainer_card.c2
13 files changed, 253 insertions, 225 deletions
diff --git a/src/engine/cable_club.c b/src/engine/cable_club.c
index b81905cc5..7a85f2b6c 100644
--- a/src/engine/cable_club.c
+++ b/src/engine/cable_club.c
@@ -11,7 +11,7 @@
#include "menu.h"
#include "palette.h"
#include "record_mixing.h"
-#include "rom4.h"
+#include "overworld.h"
#include "script.h"
#include "script_pokemon_80C4.h"
#include "songs.h"
@@ -647,7 +647,7 @@ static void sub_80837EC(u8 taskId)
void sub_8083820(void)
{
- InitSaveDialog();
+ ScrSpecial_DoSaveDialog();
}
static void sub_808382C(u8 taskId)
diff --git a/src/engine/clock.c b/src/engine/clock.c
index 1f2aac9fd..9635514d2 100644
--- a/src/engine/clock.c
+++ b/src/engine/clock.c
@@ -7,7 +7,7 @@
#include "field_weather.h"
#include "lottery_corner.h"
#include "main.h"
-#include "rom4.h"
+#include "overworld.h"
#include "rtc.h"
#include "time_events.h"
#include "tv.h"
diff --git a/src/engine/load_save.c b/src/engine/load_save.c
index 730aea2b8..8424b1121 100644
--- a/src/engine/load_save.c
+++ b/src/engine/load_save.c
@@ -3,7 +3,7 @@
#include "load_save.h"
#include "main.h"
#include "pokemon.h"
-#include "rom4.h"
+#include "overworld.h"
extern u8 gPlayerPartyCount;
diff --git a/src/engine/main.c b/src/engine/main.c
index afaa0e77a..d7c11b6c8 100644
--- a/src/engine/main.c
+++ b/src/engine/main.c
@@ -9,7 +9,7 @@
#include "play_time.h"
#include "rng.h"
#include "rom3.h"
-#include "rom4.h"
+#include "overworld.h"
#include "rtc.h"
#include "siirtc.h"
#include "sound.h"
diff --git a/src/engine/main_menu.c b/src/engine/main_menu.c
index 3b616065b..e0af86f3d 100644
--- a/src/engine/main_menu.c
+++ b/src/engine/main_menu.c
@@ -10,7 +10,7 @@
#include "option_menu.h"
#include "palette.h"
#include "pokeball.h"
-#include "rom4.h"
+#include "overworld.h"
#include "rtc.h"
#include "save_menu_util.h"
#include "songs.h"
@@ -56,32 +56,14 @@ extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E79AC[];
extern u8 unk_2000000[];
-//Task data
-enum {
- TD_MENULAYOUT,
- TD_SELECTEDMENUITEM,
-};
-
//Menu layouts
-enum {
+enum
+{
HAS_NO_SAVED_GAME, //NEW GAME, OPTION
HAS_SAVED_GAME, //CONTINUE, NEW GAME, OPTION
HAS_MYSTERY_GIFT, //CONTINUE, NEW GAME, MYSTERY EVENTS, OPTION
};
-//Task data
-enum {
- TD_TRAINER_SPRITE_ID = 2, //Trainer sprite being displayed during gender menu
- TD_BGHOFS = 4, //Used to set REG_BG1HOFS and slide the platform around
- TD_SUBTASK_DONE, //Set to true if the spawned task has finished
- TD_GENDER_SELECTION,
- TD_COUNTER,
- TD_BIRCH_SPRITE_ID,
- TD_AZURILL_SPRITE_ID,
- TD_BRENDAN_SPRITE_ID,
- TD_MAY_SPRITE_ID
-};
-
static void CB2_MainMenu(void);
static void VBlankCB_MainMenu(void);
static void CB2_InitMainMenuFromOptions(void);
@@ -180,6 +162,9 @@ static void CB2_InitMainMenuFromOptions(void)
InitMainMenu(TRUE);
}
+#define tMenuLayout data[0]
+#define tMenuSelection data[1]
+
u32 InitMainMenu(u8 a1)
{
u16 savedIme;
@@ -239,7 +224,7 @@ u32 InitMainMenu(u8 a1)
| DISPCNT_WIN0_ON;
taskId = CreateTask(Task_MainMenuCheckSave, 0);
- gTasks[taskId].data[TD_SELECTEDMENUITEM] = 0;
+ gTasks[taskId].tMenuSelection = 0;
return 0;
}
@@ -261,9 +246,9 @@ void Task_MainMenuCheckSave(u8 taskId)
{
case 1:
if (IsMysteryGiftEnabled() == TRUE)
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_MYSTERY_GIFT;
+ gTasks[taskId].tMenuLayout = HAS_MYSTERY_GIFT;
else
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuCheckRtc;
break;
@@ -272,7 +257,7 @@ void Task_MainMenuCheckSave(u8 taskId)
MenuPrintMessage(gSaveFileDeletedMessage, 3, 15);
REG_WIN0H = WIN_RANGE(17, 223);
REG_WIN0V = WIN_RANGE(113, 159);
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_NO_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_NO_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuWaitForSaveErrorAck;
break;
case 255:
@@ -280,17 +265,17 @@ void Task_MainMenuCheckSave(u8 taskId)
MenuPrintMessage(gSaveFileCorruptMessage, 3, 15);
REG_WIN0H = WIN_RANGE(17, 223);
REG_WIN0V = WIN_RANGE(113, 159);
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuWaitForSaveErrorAck;
if (IsMysteryGiftEnabled() == TRUE)
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_MYSTERY_GIFT;
+ gTasks[taskId].tMenuLayout = HAS_MYSTERY_GIFT;
else
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_SAVED_GAME;
break;
case 0:
default:
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_NO_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_NO_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuCheckRtc;
break;
case 4:
@@ -298,7 +283,7 @@ void Task_MainMenuCheckSave(u8 taskId)
MenuPrintMessage(gBoardNotInstalledMessage, 3, 15);
REG_WIN0H = WIN_RANGE(17, 223);
REG_WIN0V = WIN_RANGE(113, 159);
- gTasks[taskId].data[TD_MENULAYOUT] = HAS_NO_SAVED_GAME;
+ gTasks[taskId].tMenuLayout = HAS_NO_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuWaitForSaveErrorAck;
return;
}
@@ -383,7 +368,7 @@ void Task_MainMenuDraw(u8 taskId)
LoadPalette(&palette, 241, 2);
}
- switch (gTasks[taskId].data[TD_MENULAYOUT])
+ switch (gTasks[taskId].tMenuLayout)
{
case HAS_NO_SAVED_GAME:
default:
@@ -420,7 +405,7 @@ void Task_MainMenuDraw(u8 taskId)
void Task_MainMenuHighlight(u8 taskId)
{
- HighlightCurrentMenuItem(gTasks[taskId].data[TD_MENULAYOUT], gTasks[taskId].data[TD_SELECTEDMENUITEM]);
+ HighlightCurrentMenuItem(gTasks[taskId].tMenuLayout, gTasks[taskId].tMenuSelection);
gTasks[taskId].func = Task_MainMenuProcessKeyInput;
}
@@ -444,7 +429,7 @@ bool8 MainMenuProcessKeyInput(u8 taskId)
{
s32 menuItemCount;
- switch (gTasks[taskId].data[TD_MENULAYOUT])
+ switch (gTasks[taskId].tMenuLayout)
{
case HAS_NO_SAVED_GAME:
default:
@@ -460,17 +445,17 @@ bool8 MainMenuProcessKeyInput(u8 taskId)
if (gMain.newKeys & DPAD_UP)
{
- if (gTasks[taskId].data[TD_SELECTEDMENUITEM] > 0)
+ if (gTasks[taskId].tMenuSelection > 0)
{
- gTasks[taskId].data[TD_SELECTEDMENUITEM]--;
+ gTasks[taskId].tMenuSelection--;
return TRUE;
}
}
if (gMain.newKeys & DPAD_DOWN)
{
- if (gTasks[taskId].data[TD_SELECTEDMENUITEM] < menuItemCount - 1)
+ if (gTasks[taskId].tMenuSelection < menuItemCount - 1)
{
- gTasks[taskId].data[TD_SELECTEDMENUITEM]++;
+ gTasks[taskId].tMenuSelection++;
return TRUE;
}
}
@@ -499,11 +484,11 @@ void Task_MainMenuPressedA(u8 taskId)
if (gPaletteFade.active)
return;
- switch (gTasks[taskId].data[TD_MENULAYOUT])
+ switch (gTasks[taskId].tMenuLayout)
{
case HAS_NO_SAVED_GAME:
default:
- switch (gTasks[taskId].data[TD_SELECTEDMENUITEM])
+ switch (gTasks[taskId].tMenuSelection)
{
case 0:
default:
@@ -515,7 +500,7 @@ void Task_MainMenuPressedA(u8 taskId)
}
break;
case HAS_SAVED_GAME:
- switch (gTasks[taskId].data[TD_SELECTEDMENUITEM])
+ switch (gTasks[taskId].tMenuSelection)
{
case 0:
default:
@@ -530,7 +515,7 @@ void Task_MainMenuPressedA(u8 taskId)
}
break;
case HAS_MYSTERY_GIFT:
- switch (gTasks[taskId].data[TD_SELECTEDMENUITEM])
+ switch (gTasks[taskId].tMenuSelection)
{
case 0:
default:
@@ -584,6 +569,9 @@ void Task_MainMenuPressedB(u8 taskId)
}
}
+#undef tMenuLayout
+#undef tMenuSelection
+
void HighlightCurrentMenuItem(u8 layout, u8 menuItem)
{
REG_WIN0H = WIN_RANGE(9, 231);
@@ -710,6 +698,16 @@ void PrintBadgeCount(void)
MenuPrint_PixelCoords(buffer, 205, 40, 1);
}
+#define tTrainerSpriteId data[2]
+#define tBGhofs data[4]
+#define tSubtaskIsDone data[5]
+#define tGenderSelection data[6]
+#define tFrameCounter data[7]
+#define tBirchSpriteId data[8]
+#define tAzurillSpriteId data[9]
+#define tBrendanSpriteId data[10]
+#define tMaySpriteId data[11]
+
static void Task_NewGameSpeech1(u8 taskId)
{
SetUpWindowConfig(&gWindowConfig_81E6C3C);
@@ -732,25 +730,25 @@ static void Task_NewGameSpeech1(u8 taskId)
BeginNormalPaletteFade(-1, 0, 0x10, 0, 0);
REG_BG1CNT = BGCNT_PRIORITY(3) | BGCNT_CHARBASE(0) | BGCNT_SCREENBASE(7) | BGCNT_16COLOR | BGCNT_TXT256x256;
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_BG0_ON | DISPCNT_BG1_ON | DISPCNT_OBJ_ON | DISPCNT_OBJ_1D_MAP;
- gTasks[taskId].data[TD_BGHOFS] = 0;
+ gTasks[taskId].tBGhofs = 0;
gTasks[taskId].func = Task_NewGameSpeech2;
- gTasks[taskId].data[TD_TRAINER_SPRITE_ID] = 0xFF;
+ gTasks[taskId].tTrainerSpriteId = 0xFF;
gTasks[taskId].data[3] = 0xFF;
- gTasks[taskId].data[TD_COUNTER] = 216; //Wait 3.6 seconds (216 frames) before starting speech
+ gTasks[taskId].tFrameCounter = 216; //Wait 3.6 seconds (216 frames) before starting speech
PlayBGM(BGM_DOORO_X4);
}
static void Task_NewGameSpeech2(u8 taskId)
{
- if (gTasks[taskId].data[TD_COUNTER] != 0)
+ if (gTasks[taskId].tFrameCounter != 0)
{
- gTasks[taskId].data[TD_COUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
//Initialize Birch sprite
- u8 spriteId = gTasks[taskId].data[TD_BIRCH_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].pos1.x = 136;
gSprites[spriteId].pos1.y = 60;
@@ -758,19 +756,19 @@ static void Task_NewGameSpeech2(u8 taskId)
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeIn(taskId, 10);
StartBackgroundFadeIn(taskId, 20);
- gTasks[taskId].data[TD_COUNTER] = 80;
+ gTasks[taskId].tFrameCounter = 80;
gTasks[taskId].func = Task_NewGameSpeech3;
}
}
static void Task_NewGameSpeech3(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE] != FALSE)
+ if (gTasks[taskId].tSubtaskIsDone)
{
- gSprites[gTasks[taskId].data[TD_BIRCH_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_NORMAL;
- if (gTasks[taskId].data[TD_COUNTER])
+ gSprites[gTasks[taskId].tBirchSpriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
+ if (gTasks[taskId].tFrameCounter)
{
- gTasks[taskId].data[TD_COUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
@@ -801,7 +799,7 @@ static void Task_NewGameSpeech5(u8 taskId)
static void Task_NewGameSpeech6(u8 taskId)
{
- u8 spriteId = gTasks[taskId].data[TD_AZURILL_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tAzurillSpriteId;
gSprites[spriteId].pos1.x = 104;
gSprites[spriteId].pos1.y = 72;
@@ -809,7 +807,7 @@ static void Task_NewGameSpeech6(u8 taskId)
gSprites[spriteId].data0 = 0;
CreatePokeballSprite(spriteId, gSprites[spriteId].oam.paletteNum, 0x70, 0x3A, 0, 0, 0x20, 0x0000FFFF);
gTasks[taskId].func = Task_NewGameSpeech7;
- gTasks[taskId].data[TD_COUNTER] = 0;
+ gTasks[taskId].tFrameCounter = 0;
}
static void Task_NewGameSpeech7(u8 taskId)
@@ -817,18 +815,18 @@ static void Task_NewGameSpeech7(u8 taskId)
if (IsCryFinished())
{
//Go on to next sentence after frame 95
- if (gTasks[taskId].data[TD_COUNTER] > 95)
+ if (gTasks[taskId].tFrameCounter > 95)
{
MenuSetText(gSystemText_NewPara);
gTasks[taskId].func = Task_NewGameSpeech8;
}
}
- if (gTasks[taskId].data[TD_COUNTER] < 16384)
+ if (gTasks[taskId].tFrameCounter < 16384)
{
- gTasks[taskId].data[TD_COUNTER]++;
+ gTasks[taskId].tFrameCounter++;
//Play Azurill cry at frame 32
- if (gTasks[taskId].data[TD_COUNTER] == 32)
+ if (gTasks[taskId].tFrameCounter == 32)
PlayCry1(SPECIES_AZURILL, 0);
}
}
@@ -859,11 +857,11 @@ static void Task_NewGameSpeech10(u8 taskId)
{
if (BirchSpeechUpdateWindowText())
{
- gSprites[gTasks[taskId].data[TD_BIRCH_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_BLEND;
- gSprites[gTasks[taskId].data[TD_AZURILL_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_BLEND;
+ gSprites[gTasks[taskId].tBirchSpriteId].oam.objMode = ST_OAM_OBJ_BLEND;
+ gSprites[gTasks[taskId].tAzurillSpriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeOut(taskId, 2);
StartBackgroundFadeOut(taskId, 1);
- gTasks[taskId].data[TD_COUNTER] = 64;
+ gTasks[taskId].tFrameCounter = 64;
gTasks[taskId].func = Task_NewGameSpeech11;
}
}
@@ -871,41 +869,41 @@ static void Task_NewGameSpeech10(u8 taskId)
//Slide platform away to the right
static void Task_NewGameSpeech11(u8 taskId)
{
- if (gTasks[taskId].data[TD_BGHOFS] != -60)
+ if (gTasks[taskId].tBGhofs != -60)
{
- gTasks[taskId].data[TD_BGHOFS] -= 2;
- REG_BG1HOFS = gTasks[taskId].data[TD_BGHOFS];
+ gTasks[taskId].tBGhofs -= 2;
+ REG_BG1HOFS = gTasks[taskId].tBGhofs;
}
else
{
- gTasks[taskId].data[TD_BGHOFS] = -60;
+ gTasks[taskId].tBGhofs = -60;
gTasks[taskId].func = Task_NewGameSpeech12;
}
}
static void Task_NewGameSpeech12(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
//Hide Birch and Azurill
- gSprites[gTasks[taskId].data[TD_BIRCH_SPRITE_ID]].invisible = TRUE;
- gSprites[gTasks[taskId].data[TD_AZURILL_SPRITE_ID]].invisible = TRUE;
+ gSprites[gTasks[taskId].tBirchSpriteId].invisible = TRUE;
+ gSprites[gTasks[taskId].tAzurillSpriteId].invisible = TRUE;
- if (gTasks[taskId].data[TD_COUNTER])
+ if (gTasks[taskId].tFrameCounter)
{
- gTasks[taskId].data[TD_COUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
//Initialize Brendan sprite
- u8 spriteId = gTasks[taskId].data[TD_BRENDAN_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = 180;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
- gTasks[taskId].data[TD_TRAINER_SPRITE_ID] = spriteId;
- gTasks[taskId].data[TD_GENDER_SELECTION] = 0;
+ gTasks[taskId].tTrainerSpriteId = spriteId;
+ gTasks[taskId].tGenderSelection = 0;
StartSpriteFadeIn(taskId, 2);
StartBackgroundFadeIn(taskId, 1);
gTasks[taskId].func = Task_NewGameSpeech13;
@@ -915,9 +913,9 @@ static void Task_NewGameSpeech12(u8 taskId)
static void Task_NewGameSpeech13(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
- gSprites[gTasks[taskId].data[TD_TRAINER_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_NORMAL;
+ gSprites[gTasks[taskId].tTrainerSpriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
gTasks[taskId].func = Task_NewGameSpeech14;
}
}
@@ -964,11 +962,11 @@ static void Task_NewGameSpeech16(u8 taskId)
cursorPos = GetMenuCursorPos();
- if (cursorPos != gTasks[taskId].data[TD_GENDER_SELECTION])
+ if (cursorPos != gTasks[taskId].tGenderSelection)
{
//Menu selection changed. Slide Brendan or May out and slide the other in
- gTasks[taskId].data[TD_GENDER_SELECTION] = cursorPos;
- gSprites[gTasks[taskId].data[TD_TRAINER_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_BLEND;
+ gTasks[taskId].tGenderSelection = cursorPos;
+ gSprites[gTasks[taskId].tTrainerSpriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeOut(taskId, 0);
gTasks[taskId].func = Task_NewGameSpeech17;
}
@@ -977,9 +975,9 @@ static void Task_NewGameSpeech16(u8 taskId)
//Slide old trainer sprite off right of screen
static void Task_NewGameSpeech17(u8 taskId)
{
- u8 spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tTrainerSpriteId;
- if (gTasks[taskId].data[TD_SUBTASK_DONE] == FALSE)
+ if (gTasks[taskId].tSubtaskIsDone == FALSE)
{
gSprites[spriteId].pos1.x += 4; //Move sprite right
}
@@ -988,14 +986,14 @@ static void Task_NewGameSpeech17(u8 taskId)
gSprites[spriteId].invisible = TRUE;
//Set up new trainer sprite
- if (gTasks[taskId].data[TD_GENDER_SELECTION])
- spriteId = gTasks[taskId].data[TD_MAY_SPRITE_ID];
+ if (gTasks[taskId].tGenderSelection)
+ spriteId = gTasks[taskId].tMaySpriteId;
else
- spriteId = gTasks[taskId].data[TD_BRENDAN_SPRITE_ID];
+ spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = 240;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].invisible = FALSE;
- gTasks[taskId].data[TD_TRAINER_SPRITE_ID] = spriteId;
+ gTasks[taskId].tTrainerSpriteId = spriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeIn(taskId, 0);
gTasks[taskId].func = Task_NewGameSpeech18;
@@ -1005,7 +1003,7 @@ static void Task_NewGameSpeech17(u8 taskId)
//Slide new trainer sprite from right of screen
static void Task_NewGameSpeech18(u8 taskId)
{
- u8 spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tTrainerSpriteId;
if (gSprites[spriteId].pos1.x > 180)
{
@@ -1014,7 +1012,7 @@ static void Task_NewGameSpeech18(u8 taskId)
else
{
gSprites[spriteId].pos1.x = 180;
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
gTasks[taskId].func = Task_NewGameSpeech16; //Go back to gender menu
@@ -1106,7 +1104,7 @@ static void Task_NewGameSpeech25(u8 taskId)
case 0: //YES
PlaySE(SE_SELECT);
MenuZeroFillWindowRect(2, 1, 8, 7);
- gSprites[gTasks[taskId].data[TD_TRAINER_SPRITE_ID]].oam.objMode = ST_OAM_OBJ_BLEND;
+ gSprites[gTasks[taskId].tTrainerSpriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeOut(taskId, 2);
StartBackgroundFadeOut(taskId, 1);
gTasks[taskId].func = Task_NewGameSpeech26; //Continue
@@ -1122,10 +1120,10 @@ static void Task_NewGameSpeech25(u8 taskId)
static void Task_NewGameSpeech26(u8 taskId)
{
- if (gTasks[taskId].data[TD_BGHOFS])
+ if (gTasks[taskId].tBGhofs)
{
- gTasks[taskId].data[TD_BGHOFS] += 2;
- REG_BG1HOFS = gTasks[taskId].data[TD_BGHOFS];
+ gTasks[taskId].tBGhofs += 2;
+ REG_BG1HOFS = gTasks[taskId].tBGhofs;
}
else
{
@@ -1135,23 +1133,23 @@ static void Task_NewGameSpeech26(u8 taskId)
static void Task_NewGameSpeech27(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
s16 spriteId;
//Hide Brendan and May sprites
- spriteId = gTasks[taskId].data[TD_BRENDAN_SPRITE_ID];
+ spriteId = gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].invisible = TRUE;
- spriteId = gTasks[taskId].data[TD_MAY_SPRITE_ID];
+ spriteId = gTasks[taskId].tMaySpriteId;
gSprites[spriteId].invisible = TRUE;
//Fade in Birch and Azurill
- spriteId = (u8)gTasks[taskId].data[TD_BIRCH_SPRITE_ID];
+ spriteId = (u8)gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].pos1.x = 136;
gSprites[spriteId].pos1.y = 64;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
- spriteId = (u8)gTasks[taskId].data[TD_AZURILL_SPRITE_ID];
+ spriteId = (u8)gTasks[taskId].tAzurillSpriteId;
gSprites[spriteId].pos1.x = 104;
gSprites[spriteId].pos1.y = 72;
gSprites[spriteId].invisible = FALSE;
@@ -1170,27 +1168,27 @@ static void Task_NewGameSpeech27(u8 taskId)
static void Task_NewGameSpeech28(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
s16 spriteId;
- spriteId = gTasks[taskId].data[TD_BIRCH_SPRITE_ID];
+ spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
- spriteId = gTasks[taskId].data[TD_AZURILL_SPRITE_ID];
+ spriteId = gTasks[taskId].tAzurillSpriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
if (BirchSpeechUpdateWindowText())
{
//Fade out Birch and Azurill
- spriteId = gTasks[taskId].data[TD_BIRCH_SPRITE_ID];
+ spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
- spriteId = gTasks[taskId].data[TD_AZURILL_SPRITE_ID];
+ spriteId = gTasks[taskId].tAzurillSpriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
StartSpriteFadeOut(taskId, 2);
StartBackgroundFadeOut(taskId, 1);
- gTasks[taskId].data[TD_COUNTER] = 64;
+ gTasks[taskId].tFrameCounter = 64;
gTasks[taskId].func = Task_NewGameSpeech29;
}
}
@@ -1198,19 +1196,19 @@ static void Task_NewGameSpeech28(u8 taskId)
static void Task_NewGameSpeech29(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
s16 spriteId;
//Hide Birch and Azurill
- spriteId = gTasks[taskId].data[TD_BIRCH_SPRITE_ID];
+ spriteId = gTasks[taskId].tBirchSpriteId;
gSprites[spriteId].invisible = TRUE;
- spriteId = gTasks[taskId].data[TD_AZURILL_SPRITE_ID];
+ spriteId = gTasks[taskId].tAzurillSpriteId;
gSprites[spriteId].invisible = TRUE;
- if (gTasks[taskId].data[TD_COUNTER])
+ if (gTasks[taskId].tFrameCounter)
{
- gTasks[taskId].data[TD_COUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
@@ -1218,14 +1216,14 @@ static void Task_NewGameSpeech29(u8 taskId)
//Fade in trainer and background
if (gSaveBlock2.playerGender)
- spriteId = (u8)gTasks[taskId].data[TD_MAY_SPRITE_ID];
+ spriteId = (u8)gTasks[taskId].tMaySpriteId;
else
- spriteId = (u8)gTasks[taskId].data[TD_BRENDAN_SPRITE_ID];
+ spriteId = (u8)gTasks[taskId].tBrendanSpriteId;
gSprites[spriteId].pos1.x = 120;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].invisible = FALSE;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_BLEND;
- gTasks[taskId].data[TD_TRAINER_SPRITE_ID] = spriteId;
+ gTasks[taskId].tTrainerSpriteId = spriteId;
StartSpriteFadeIn(taskId, 2);
StartBackgroundFadeIn(taskId, 1);
@@ -1238,18 +1236,18 @@ static void Task_NewGameSpeech29(u8 taskId)
static void Task_NewGameSpeech30(u8 taskId)
{
- if (gTasks[taskId].data[TD_SUBTASK_DONE])
+ if (gTasks[taskId].tSubtaskIsDone)
{
s16 spriteId;
- spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ spriteId = gTasks[taskId].tTrainerSpriteId;
gSprites[spriteId].oam.objMode = ST_OAM_OBJ_NORMAL;
if (BirchSpeechUpdateWindowText())
{
u8 spriteId;
- spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ spriteId = gTasks[taskId].tTrainerSpriteId;
gSprites[spriteId].oam.affineMode = 1;
gSprites[spriteId].affineAnims = gSpriteAffineAnimTable_81E79AC;
InitSpriteAffineAnim(&gSprites[spriteId]);
@@ -1264,7 +1262,7 @@ static void Task_NewGameSpeech30(u8 taskId)
static void Task_NewGameSpeech31(u8 taskId)
{
- u8 spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tTrainerSpriteId;
if (gSprites[spriteId].affineAnimEnded)
gTasks[taskId].func = Task_NewGameSpeech32;
@@ -1274,7 +1272,7 @@ static void Task_NewGameSpeech32(u8 taskId)
{
if (!gPaletteFade.active)
{
- u8 spriteId = gTasks[taskId].data[TD_TRAINER_SPRITE_ID];
+ u8 spriteId = gTasks[taskId].tTrainerSpriteId;
gSprites[spriteId].callback = nullsub_34;
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON;
BeginNormalPaletteFade(0xFFFF0000, 0, 0, 0x10, 0xFFFF);
@@ -1328,7 +1326,7 @@ void CB_ContinueNewGameSpeechPart2()
taskId = CreateTask(Task_NewGameSpeech23, 0);
- gTasks[taskId].data[TD_BGHOFS] = -60;
+ gTasks[taskId].tBGhofs = -60;
remove_some_task();
ResetSpriteData();
@@ -1340,20 +1338,20 @@ void CB_ContinueNewGameSpeechPart2()
if (gSaveBlock2.playerGender != MALE)
{
- gTasks[taskId].data[TD_GENDER_SELECTION] = FEMALE;
- spriteId = gTasks[taskId].data[TD_MAY_SPRITE_ID];
+ gTasks[taskId].tGenderSelection = FEMALE;
+ spriteId = gTasks[taskId].tMaySpriteId;
}
else
{
- gTasks[taskId].data[TD_GENDER_SELECTION] = MALE;
- spriteId = gTasks[taskId].data[TD_BRENDAN_SPRITE_ID];
+ gTasks[taskId].tGenderSelection = MALE;
+ spriteId = gTasks[taskId].tBrendanSpriteId;
}
gSprites[spriteId].pos1.x = 180;
gSprites[spriteId].pos1.y = 60;
gSprites[spriteId].invisible = FALSE;
- gTasks[taskId].data[TD_TRAINER_SPRITE_ID] = spriteId;
+ gTasks[taskId].tTrainerSpriteId = spriteId;
REG_BG1HOFS = -60;
@@ -1412,56 +1410,67 @@ void AddBirchSpeechObjects(u8 taskId)
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].invisible = 1;
- gTasks[taskId].data[TD_BIRCH_SPRITE_ID] = spriteId;
+ gTasks[taskId].tBirchSpriteId = spriteId;
spriteId = CreateAzurillSprite(0x68, 0x48);
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].oam.priority = 0;
gSprites[spriteId].invisible = 1;
- gTasks[taskId].data[TD_AZURILL_SPRITE_ID] = spriteId;
+ gTasks[taskId].tAzurillSpriteId = spriteId;
//Create Brendan sprite
spriteId = CreateTrainerSprite(0, 120, 60, 0, unk_2000000);
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].invisible = 1;
gSprites[spriteId].oam.priority = 0;
- gTasks[taskId].data[TD_BRENDAN_SPRITE_ID] = spriteId;
+ gTasks[taskId].tBrendanSpriteId = spriteId;
//Create May sprite
spriteId = CreateTrainerSprite(1, 120, 60, 0, unk_2000000 + 0x800);
gSprites[spriteId].callback = nullsub_34;
gSprites[spriteId].invisible = 1;
gSprites[spriteId].oam.priority = 0;
- gTasks[taskId].data[TD_MAY_SPRITE_ID] = spriteId;
+ gTasks[taskId].tMaySpriteId = spriteId;
}
-enum {
- TD_PARENT_TASK_ID,
- TD_EVA, //EVA coefficient of REG_BLDALPHA
- TD_EVB, //EVB coefficient of REG_BLDALPHA
- TD_INTERVAL,
- TD_FRAMECOUNTER
-};
+#undef tTrainerSpriteId
+#undef tBGhofs
+//#undef tSubtaskIsDone
+#undef tGenderSelection
+#undef tFrameCounter
+#undef tBirchSpriteId
+#undef tAzurillSpriteId
+#undef tBrendanSpriteId
+#undef tMaySpriteId
+
+
+// Sprite Fade task
+
+#define tMainTaskId data[0]
+#define tBlendEVA data[1]
+#define tBlendEVB data[2]
+#define tUpdateInterval data[3]
+#define tFrameCounter data[4]
static void Task_SpriteFadeOut(u8 taskId)
{
- if (gTasks[taskId].data[TD_EVA] == 0)
+ if (gTasks[taskId].tBlendEVA == 0)
{
- gTasks[gTasks[taskId].data[TD_PARENT_TASK_ID]].data[TD_SUBTASK_DONE] = TRUE;
+ gTasks[gTasks[taskId].tMainTaskId].tSubtaskIsDone = TRUE;
DestroyTask(taskId);
}
else
{
- if (gTasks[taskId].data[TD_FRAMECOUNTER])
+ if (gTasks[taskId].tFrameCounter)
{
- gTasks[taskId].data[TD_FRAMECOUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
- gTasks[taskId].data[TD_FRAMECOUNTER] = gTasks[taskId].data[TD_INTERVAL];
- gTasks[taskId].data[TD_EVA]--;
- gTasks[taskId].data[TD_EVB]++;
- REG_BLDALPHA = gTasks[taskId].data[TD_EVA] + (gTasks[taskId].data[TD_EVB] * 256);
+ gTasks[taskId].tFrameCounter = gTasks[taskId].tUpdateInterval;
+ gTasks[taskId].tBlendEVA--;
+ gTasks[taskId].tBlendEVB++;
+ REG_BLDALPHA = gTasks[taskId].tBlendEVA + (gTasks[taskId].tBlendEVB * 256);
}
}
}
@@ -1474,33 +1483,33 @@ static void StartSpriteFadeOut(u8 taskId, u8 interval)
REG_BLDCNT = 592;
REG_BLDALPHA = 16;
REG_BLDY = 0;
- gTasks[taskId].data[TD_SUBTASK_DONE] = FALSE;
+ gTasks[taskId].tSubtaskIsDone = FALSE;
newTaskId = CreateTask(Task_SpriteFadeOut, 0);
- gTasks[newTaskId].data[TD_PARENT_TASK_ID] = taskId;
- gTasks[newTaskId].data[TD_EVA] = 16;
- gTasks[newTaskId].data[TD_EVB] = 0;
- gTasks[newTaskId].data[TD_INTERVAL] = interval;
- gTasks[newTaskId].data[TD_FRAMECOUNTER] = interval;
+ gTasks[newTaskId].tMainTaskId = taskId;
+ gTasks[newTaskId].tBlendEVA = 16;
+ gTasks[newTaskId].tBlendEVB = 0;
+ gTasks[newTaskId].tUpdateInterval = interval;
+ gTasks[newTaskId].tFrameCounter = interval;
}
static void Task_SpriteFadeIn(u8 taskId)
{
- if (gTasks[taskId].data[TD_EVA] == 16)
+ if (gTasks[taskId].tBlendEVA == 16)
{
- gTasks[gTasks[taskId].data[TD_PARENT_TASK_ID]].data[TD_SUBTASK_DONE] = TRUE;
+ gTasks[gTasks[taskId].tMainTaskId].tSubtaskIsDone = TRUE;
DestroyTask(taskId);
}
- else if (gTasks[taskId].data[TD_FRAMECOUNTER])
+ else if (gTasks[taskId].tFrameCounter)
{
- gTasks[taskId].data[TD_FRAMECOUNTER]--;
+ gTasks[taskId].tFrameCounter--;
}
else
{
- gTasks[taskId].data[TD_FRAMECOUNTER] = gTasks[taskId].data[TD_INTERVAL];
- gTasks[taskId].data[TD_EVA]++;
- gTasks[taskId].data[TD_EVB]--;
- REG_BLDALPHA = gTasks[taskId].data[TD_EVA] + (gTasks[taskId].data[TD_EVB] * 256);
+ gTasks[taskId].tFrameCounter = gTasks[taskId].tUpdateInterval;
+ gTasks[taskId].tBlendEVA++;
+ gTasks[taskId].tBlendEVB--;
+ REG_BLDALPHA = gTasks[taskId].tBlendEVA + (gTasks[taskId].tBlendEVB * 256);
}
}
@@ -1512,36 +1521,49 @@ static void StartSpriteFadeIn(u8 taskId, u8 interval)
REG_BLDCNT = 592;
REG_BLDALPHA = 4096;
REG_BLDY = 0;
- gTasks[taskId].data[TD_SUBTASK_DONE] = FALSE;
+ gTasks[taskId].tSubtaskIsDone = FALSE;
newTaskId = CreateTask(Task_SpriteFadeIn, 0);
- gTasks[newTaskId].data[TD_PARENT_TASK_ID] = taskId;
- gTasks[newTaskId].data[TD_EVA] = 0;
- gTasks[newTaskId].data[TD_EVB] = 16;
- gTasks[newTaskId].data[TD_INTERVAL] = interval;
- gTasks[newTaskId].data[TD_FRAMECOUNTER] = interval;
+ gTasks[newTaskId].tMainTaskId = taskId;
+ gTasks[newTaskId].tBlendEVA = 0;
+ gTasks[newTaskId].tBlendEVB = 16;
+ gTasks[newTaskId].tUpdateInterval = interval;
+ gTasks[newTaskId].tFrameCounter = interval;
}
-enum {
- TD_FADELEVEL = 1,
- TD_DELAY,
-};
+#undef tMainTaskId
+#undef tBlendEVA
+#undef tBlendEVB
+#undef tUpdateInterval
+#undef tFrameCounter
+
+
+// Background fade task
+
+#define tMainTaskId data[0]
+#define tFadeLevel data[1]
+#define tDelay data[2]
+#define tUpdateInterval data[3]
+#define tFrameCounter data[4]
static void HandleFloorShadowFadeOut(u8 taskId)
{
- if (gTasks[taskId].data[TD_DELAY])
- gTasks[taskId].data[TD_DELAY]--;
+ if (gTasks[taskId].tDelay)
+ gTasks[taskId].tDelay--;
else
{
- if (gTasks[taskId].data[TD_FADELEVEL] == 8)
+ if (gTasks[taskId].tFadeLevel == 8)
DestroyTask(taskId);
- else if (gTasks[taskId].data[TD_FRAMECOUNTER])
- gTasks[taskId].data[TD_FRAMECOUNTER]--;
else
{
- gTasks[taskId].data[TD_FRAMECOUNTER] = gTasks[taskId].data[TD_INTERVAL];
- gTasks[taskId].data[TD_FADELEVEL]++;
- LoadPalette(&gUnknown_081E795C[gTasks[taskId].data[TD_FADELEVEL]], 1, 0x10);
+ if (gTasks[taskId].tFrameCounter)
+ gTasks[taskId].tFrameCounter--;
+ else
+ {
+ gTasks[taskId].tFrameCounter = gTasks[taskId].tUpdateInterval;
+ gTasks[taskId].tFadeLevel++;
+ LoadPalette(&gUnknown_081E795C[gTasks[taskId].tFadeLevel], 1, 0x10);
+ }
}
}
}
@@ -1550,30 +1572,30 @@ static void HandleFloorShadowFadeOut(u8 taskId)
static void StartBackgroundFadeOut(u8 taskId, u8 interval)
{
u8 newTaskId = CreateTask(HandleFloorShadowFadeOut, 0);
- gTasks[newTaskId].data[TD_PARENT_TASK_ID] = taskId;
- gTasks[newTaskId].data[TD_FADELEVEL] = 0;
- gTasks[newTaskId].data[TD_DELAY] = 8;
- gTasks[newTaskId].data[TD_INTERVAL] = interval;
- gTasks[newTaskId].data[TD_FRAMECOUNTER] = interval;
+ gTasks[newTaskId].tMainTaskId = taskId;
+ gTasks[newTaskId].tFadeLevel = 0;
+ gTasks[newTaskId].tDelay = 8;
+ gTasks[newTaskId].tUpdateInterval = interval;
+ gTasks[newTaskId].tFrameCounter = interval;
}
static void HandleFloorShadowFadeIn(u8 taskId)
{
- if (gTasks[taskId].data[TD_DELAY])
- gTasks[taskId].data[TD_DELAY]--;
+ if (gTasks[taskId].tDelay)
+ gTasks[taskId].tDelay--;
else
{
- if (gTasks[taskId].data[TD_FADELEVEL] == 0)
+ if (gTasks[taskId].tFadeLevel == 0)
DestroyTask(taskId);
else
{
- if (gTasks[taskId].data[TD_FRAMECOUNTER])
- gTasks[taskId].data[TD_FRAMECOUNTER]--;
+ if (gTasks[taskId].tFrameCounter)
+ gTasks[taskId].tFrameCounter--;
else
{
- gTasks[taskId].data[TD_FRAMECOUNTER] = gTasks[taskId].data[TD_INTERVAL];
- gTasks[taskId].data[TD_FADELEVEL]--;
- LoadPalette(&gUnknown_081E795C[gTasks[taskId].data[TD_FADELEVEL]], 1, 0x10);
+ gTasks[taskId].tFrameCounter = gTasks[taskId].tUpdateInterval;
+ gTasks[taskId].tFadeLevel--;
+ LoadPalette(&gUnknown_081E795C[gTasks[taskId].tFadeLevel], 1, 0x10);
}
}
}
@@ -1583,12 +1605,18 @@ static void HandleFloorShadowFadeIn(u8 taskId)
static void StartBackgroundFadeIn(u8 taskId, u8 interval)
{
u8 newTaskId = CreateTask(HandleFloorShadowFadeIn, 0);
- gTasks[newTaskId].data[TD_PARENT_TASK_ID] = taskId;
- gTasks[newTaskId].data[TD_FADELEVEL] = 8;
- gTasks[newTaskId].data[TD_DELAY] = 8;
- gTasks[newTaskId].data[TD_INTERVAL] = interval;
- gTasks[newTaskId].data[TD_FRAMECOUNTER] = interval;
-}
+ gTasks[newTaskId].tMainTaskId = taskId;
+ gTasks[newTaskId].tFadeLevel = 8;
+ gTasks[newTaskId].tDelay = 8;
+ gTasks[newTaskId].tUpdateInterval = interval;
+ gTasks[newTaskId].tFrameCounter = interval;
+}
+
+#undef tMainTaskId
+#undef tFadeLevel
+#undef tDelay
+#undef tUpdateInterval
+#undef tFrameCounter
static void CreateGenderMenu(u8 left, u8 top)
{
diff --git a/src/engine/menu.c b/src/engine/menu.c
index 1096fa0bd..a9c4aaa43 100644
--- a/src/engine/menu.c
+++ b/src/engine/menu.c
@@ -154,9 +154,9 @@ void MenuPrint(const u8 *str, u8 left, u8 top)
sub_8003460(gMenuWindowPtr, str, gMenuTextTileOffset, left, top);
}
-void MenuZeroFillWindowRect(u8 a1, u8 a2, u8 a3, u8 a4)
+void MenuZeroFillWindowRect(u8 left, u8 top, u8 right, u8 bottom)
{
- ZeroFillWindowRect(gMenuWindowPtr, a1, a2, a3, a4);
+ ZeroFillWindowRect(gMenuWindowPtr, left, top, right, bottom);
}
void MenuFillWindowRectWithBlankTile(u8 left, u8 top, u8 right, u8 bottom)
@@ -205,7 +205,7 @@ void MenuPrintMessage(const u8 *str, u8 left, u8 top)
sub_8002EB0(gMenuWindowPtr, str, gMenuTextTileOffset, left, top);
}
-void sub_8072044(const u8 *str)
+void MenuPrintMessageDefaultCoords(const u8 *str)
{
sub_8002EB0(gMenuWindowPtr, str, gMenuTextTileOffset, 2, 15);
}
@@ -571,7 +571,7 @@ void PrintMenuItems(u8 left, u8 top, u8 menuItemCount, const struct MenuAction m
MenuPrint(menuItems[i].text, left, top + 2 * i);
}
-void PrintMenuItemsReordered(u8 left, u8 top, u8 menuItemCount, const struct MenuAction menuItems[], const u8 *order)
+void PrintMenuItemsReordered(u8 left, u8 top, u8 menuItemCount, const struct MenuAction2 menuItems[], const u8 *order)
{
u8 i;
diff --git a/src/engine/mystery_event_menu.c b/src/engine/mystery_event_menu.c
index 46b76fd88..0e48dc177 100644
--- a/src/engine/mystery_event_menu.c
+++ b/src/engine/mystery_event_menu.c
@@ -94,7 +94,7 @@ static void CB2_MysteryEventMenu(void)
case 1:
if (gPaletteFade.active)
break;
- sub_8072044(gSystemText_LinkStandby);
+ MenuPrintMessageDefaultCoords(gSystemText_LinkStandby);
gMain.state++;
break;
case 2:
@@ -109,7 +109,7 @@ static void CB2_MysteryEventMenu(void)
if ((gLinkStatus & 0x20) && (gLinkStatus & 0x1C) > 4)
{
PlaySE(SE_PIN);
- sub_8072044(gSystemText_LoadEventPressA);
+ MenuPrintMessageDefaultCoords(gSystemText_LoadEventPressA);
gMain.state++;
}
if (gMain.newKeys & B_BUTTON)
@@ -128,7 +128,7 @@ static void CB2_MysteryEventMenu(void)
if (GetLinkPlayerCount_2() != 2)
{
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
gMain.state = 13;
break;
}
@@ -158,13 +158,13 @@ static void CB2_MysteryEventMenu(void)
sub_800832C();
MenuZeroFillWindowRect(6, 5, 23, 8);
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
gMain.state = 13;
break;
}
else if (CheckLanguageMatch())
{
- sub_8072044(gSystemText_DontCutLink);
+ MenuPrintMessageDefaultCoords(gSystemText_DontCutLink);
gMain.state++;
break;
}
@@ -173,7 +173,7 @@ static void CB2_MysteryEventMenu(void)
CloseLink();
MenuZeroFillWindowRect(6, 5, 23, 8);
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
gMain.state = 13;
break;
}
@@ -222,7 +222,7 @@ static void CB2_MysteryEventMenu(void)
sub_800832C();
MenuZeroFillWindowRect(6, 5, 23, 8);
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
ptr = (u8 *)&gMain;
offset1 = offsetof(struct Main, state);
asm("" ::: "r1");
@@ -234,7 +234,7 @@ static void CB2_MysteryEventMenu(void)
register u8 *ptr2 asm("r1");
register int offset3 asm("r0");
register int dummy asm("r2");
- sub_8072044(gSystemText_DontCutLink);
+ MenuPrintMessageDefaultCoords(gSystemText_DontCutLink);
ptr2 = (u8 *)&gMain;
offset3 = offsetof(struct Main, state);
if (dummy)
@@ -249,7 +249,7 @@ static void CB2_MysteryEventMenu(void)
MenuZeroFillWindowRect(6, 5, 23, 8);
label:
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
ptr = (u8 *)&gMain;
offset2 = offsetof(struct Main, state);
ptr += offset2;
@@ -294,7 +294,7 @@ static void CB2_MysteryEventMenu(void)
gMain.state++;
break;
case 12:
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
gMain.state++;
break;
case 13:
@@ -329,7 +329,7 @@ static void CB2_MysteryEventMenu(void)
CloseLink();
MenuZeroFillWindowRect(6, 5, 23, 8);
GetEventLoadMessage(gStringVar4, 1);
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
gMain.state = 13;
}
}
diff --git a/src/engine/naming_screen.c b/src/engine/naming_screen.c
index 6c107f022..3f8417e6d 100644
--- a/src/engine/naming_screen.c
+++ b/src/engine/naming_screen.c
@@ -1618,7 +1618,7 @@ static void DisplaySentToPCMessage(void)
StringExpandPlaceholders(gStringVar4, gOtherText_SentToPC);
BasicInitMenuWindow(&gWindowConfig_81E6E88);
MenuDisplayMessageBox();
- sub_8072044(gStringVar4);
+ MenuPrintMessageDefaultCoords(gStringVar4);
}
static void sub_80B753C(void)
diff --git a/src/engine/record_mixing.c b/src/engine/record_mixing.c
index 30bcb29d1..d02d89467 100644
--- a/src/engine/record_mixing.c
+++ b/src/engine/record_mixing.c
@@ -14,7 +14,7 @@
#include "menu.h"
#include "mystery_event_script.h"
#include "rng.h"
-#include "rom4.h"
+#include "overworld.h"
#include "save.h"
#include "script.h"
#include "secret_base.h"
diff --git a/src/engine/save.c b/src/engine/save.c
index adf39268e..eae3f4470 100644
--- a/src/engine/save.c
+++ b/src/engine/save.c
@@ -3,7 +3,7 @@
#include "gba/flash_internal.h"
#include "save.h"
#include "load_save.h"
-#include "rom4.h"
+#include "overworld.h"
#include "save_failed_screen.h"
#define GETVALIDSTATUSBITFIELD ((1 << ARRAY_COUNT(gSaveSectionLocations)) - 1)
diff --git a/src/engine/script.c b/src/engine/script.c
index 8f12da437..f049b96fc 100644
--- a/src/engine/script.c
+++ b/src/engine/script.c
@@ -40,7 +40,7 @@ u8 SetupBytecodeScript(struct ScriptContext *ctx, const u8 *ptr)
return 1;
}
-void SetupNativeScript(struct ScriptContext *ctx, void *ptr)
+void SetupNativeScript(struct ScriptContext *ctx, bool8 (*ptr)(void))
{
ctx->mode = 2;
ctx->nativePtr = ptr;
@@ -64,7 +64,7 @@ u8 RunScriptCommand(struct ScriptContext *ctx)
case 2:
if (ctx->nativePtr)
{
- if (ctx->nativePtr() == 1)
+ if (ctx->nativePtr() == TRUE)
ctx->mode = 1;
return 1;
}
@@ -228,16 +228,16 @@ void ScriptContext2_RunNewScript(const u8 *ptr)
;
}
-u8 *mapheader_get_tagged_pointer(u8 tag)
+static u8 *mapheader_get_tagged_pointer(u8 tag)
{
u8 *mapScripts = gMapHeader.mapScripts;
- if (!mapScripts)
+ if (mapScripts == NULL)
return NULL;
while (1)
{
- if (!*mapScripts)
+ if (*mapScripts == 0)
return NULL;
if (*mapScripts == tag)
{
@@ -248,14 +248,14 @@ u8 *mapheader_get_tagged_pointer(u8 tag)
}
}
-void mapheader_run_script_by_tag(u8 tag)
+static void mapheader_run_script_by_tag(u8 tag)
{
u8 *ptr = mapheader_get_tagged_pointer(tag);
if (ptr)
ScriptContext2_RunNewScript(ptr);
}
-u8 *mapheader_get_first_match_from_tagged_ptr_list(u8 tag)
+static u8 *mapheader_get_first_match_from_tagged_ptr_list(u8 tag)
{
u8 *ptr = mapheader_get_tagged_pointer(tag);
@@ -316,7 +316,7 @@ void mapheader_run_first_tag4_script_list_match(void)
ScriptContext2_RunNewScript(ptr);
}
-u32 CalculateRamScriptChecksum(void)
+static u32 CalculateRamScriptChecksum(void)
{
u32 i;
u32 sum = 0;
diff --git a/src/engine/time_events.c b/src/engine/time_events.c
index e1b9a2e9e..accb03db8 100644
--- a/src/engine/time_events.c
+++ b/src/engine/time_events.c
@@ -4,7 +4,7 @@
#include "field_weather.h"
#include "pokemon.h"
#include "rng.h"
-#include "rom4.h"
+#include "overworld.h"
#include "rtc.h"
#include "script.h"
#include "task.h"
@@ -81,13 +81,13 @@ void UpdateShoalTideFlag(void)
1,
};
- if (is_light_level_1_2_3_5_or_6(get_map_light_from_warp0()))
+ if (is_map_type_1_2_3_5_or_6(get_map_type_from_warp0()))
{
RtcCalcLocalTime();
if (tide[gLocalTime.hours])
FlagSet(SYS_SHOAL_TIDE);
else
- FlagReset(SYS_SHOAL_TIDE);
+ FlagClear(SYS_SHOAL_TIDE);
}
}
diff --git a/src/engine/trainer_card.c b/src/engine/trainer_card.c
index e64ec1c86..bcb62ede6 100644
--- a/src/engine/trainer_card.c
+++ b/src/engine/trainer_card.c
@@ -10,7 +10,7 @@
#include "money.h"
#include "palette.h"
#include "pokedex.h"
-#include "rom4.h"
+#include "overworld.h"
#include "script_pokemon_80C4.h"
#include "songs.h"
#include "sound.h"