summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYamaArashi <shadow962@live.com>2017-01-02 00:41:28 -0800
committerYamaArashi <shadow962@live.com>2017-01-02 01:01:13 -0800
commit145e90483b2a30698f917f62e585aa7fa4794588 (patch)
treeb1410a1bcec3eacaf5623cef33b10bc5a6f2a5d8 /src
parentc4af9225bc4e2f30a240e9cabca98fca4d708501 (diff)
event_data.c
Diffstat (limited to 'src')
-rw-r--r--src/battle_setup.c3
-rw-r--r--src/calculate_base_damage.c2
-rw-r--r--src/dewford_trend.c2
-rw-r--r--src/event_data.c163
-rw-r--r--src/field_player_avatar.c2
-rw-r--r--src/flag.c44
-rw-r--r--src/item_use.c2
-rw-r--r--src/landmark.c2
-rw-r--r--src/lottery_corner.c2
-rw-r--r--src/main_menu.c5
-rw-r--r--src/new_game.c3
-rw-r--r--src/pokedex.c23
-rw-r--r--src/pokemon_2.c2
-rw-r--r--src/pokemon_3.c2
-rw-r--r--src/pokemon_size_record.c3
-rw-r--r--src/record_mixing.c3
-rw-r--r--src/rom4.c7
-rw-r--r--src/safari_zone.c2
-rw-r--r--src/save_menu_util.c4
-rw-r--r--src/scrcmd.c3
-rw-r--r--src/script.c2
-rw-r--r--src/script_menu.c2
-rw-r--r--src/start_menu.c2
-rw-r--r--src/title_screen.c3
-rw-r--r--src/trainer_card.c3
-rw-r--r--src/var.c37
-rw-r--r--src/wild_encounter.c4
27 files changed, 205 insertions, 127 deletions
diff --git a/src/battle_setup.c b/src/battle_setup.c
index 68690bf1d..ee304c21f 100644
--- a/src/battle_setup.c
+++ b/src/battle_setup.c
@@ -14,8 +14,7 @@
#include "task.h"
#include "string_util.h"
#include "rng.h"
-#include "flag.h"
-#include "var.h"
+#include "event_data.h"
#include "script.h"
#include "field_message_box.h"
#include "trainer.h"
diff --git a/src/calculate_base_damage.c b/src/calculate_base_damage.c
index 186fa062c..f69e68cc1 100644
--- a/src/calculate_base_damage.c
+++ b/src/calculate_base_damage.c
@@ -9,7 +9,7 @@
#include "item.h"
#include "abilities.h"
#include "hold_effects.h"
-#include "flag.h"
+#include "event_data.h"
extern u8 gPlayerPartyCount;
extern struct Pokemon gPlayerParty[6];
diff --git a/src/dewford_trend.c b/src/dewford_trend.c
index ae1397852..d534a9990 100644
--- a/src/dewford_trend.c
+++ b/src/dewford_trend.c
@@ -2,7 +2,7 @@
#include "asm.h"
#include "link.h"
#include "rng.h"
-#include "flag.h"
+#include "event_data.h"
extern struct EasyChatPair unk_2007800[5];
extern struct EasyChatPair unk_2007900[5];
diff --git a/src/event_data.c b/src/event_data.c
new file mode 100644
index 000000000..b1c0632ec
--- /dev/null
+++ b/src/event_data.c
@@ -0,0 +1,163 @@
+#include "global.h"
+#include "event_data.h"
+#include "pokedex.h"
+
+extern u8 gUnknown_0202E8E2[];
+extern u16 *gSpecialVars[];
+
+void InitEventData(void)
+{
+ memset(gSaveBlock1.flags, 0, sizeof(gSaveBlock1.flags));
+ memset(gSaveBlock1.vars, 0, sizeof(gSaveBlock1.vars));
+ memset(gUnknown_0202E8E2, 0, 16);
+}
+
+void ClearTempFieldEventData(void)
+{
+ memset(gSaveBlock1.flags, 0, 4);
+ memset(gSaveBlock1.vars, 0, 32);
+ FlagReset(SYS_ENC_UP_ITEM);
+ FlagReset(SYS_ENC_DOWN_ITEM);
+ FlagReset(SYS_USE_STRENGTH);
+ FlagReset(SYS_CTRL_OBJ_DELETE);
+}
+
+void ClearUpperFlags(void)
+{
+ memset(gSaveBlock1.flags + 0x118, 0, 8);
+}
+
+void DisableNationalPokedex(void)
+{
+ u16 *nationalDexVar = GetVarPointer(VAR_NATIONAL_DEX);
+ gSaveBlock2.pokedex.nationalMagic = 0;
+ *nationalDexVar = 0;
+ FlagReset(SYS_NATIONAL_DEX);
+}
+
+void EnableNationalPokedex(void)
+{
+ u16 *nationalDexVar = GetVarPointer(VAR_NATIONAL_DEX);
+ gSaveBlock2.pokedex.nationalMagic = 0xDA;
+ *nationalDexVar = 0x302;
+ FlagSet(SYS_NATIONAL_DEX);
+ gSaveBlock2.pokedex.unknown1 = 1;
+ gSaveBlock2.pokedex.order = 0;
+ sub_808C0A0();
+}
+
+bool32 IsNationalPokedexEnabled(void)
+{
+ if (gSaveBlock2.pokedex.nationalMagic == 0xDA && VarGet(VAR_NATIONAL_DEX) == 0x302 && FlagGet(SYS_NATIONAL_DEX))
+ return TRUE;
+ else
+ return FALSE;
+}
+
+void DisableMysteryGift(void)
+{
+ FlagReset(SYS_EXDATA_ENABLE);
+}
+
+void EnableMysteryGift(void)
+{
+ FlagSet(SYS_EXDATA_ENABLE);
+}
+
+bool32 IsMysteryGiftEnabled(void)
+{
+ return FlagGet(SYS_EXDATA_ENABLE);
+}
+
+void DisableResetRTC(void)
+{
+ VarSet(VAR_RESET_RTC_ENABLE, 0);
+ FlagReset(SYS_RESET_RTC_ENABLE);
+}
+
+void EnableResetRTC(void)
+{
+ VarSet(VAR_RESET_RTC_ENABLE, 0x920);
+ FlagSet(SYS_RESET_RTC_ENABLE);
+}
+
+bool32 CanResetRTC(void)
+{
+ if (FlagGet(SYS_RESET_RTC_ENABLE) && VarGet(VAR_RESET_RTC_ENABLE) == 0x920)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+u16 *GetVarPointer(u16 id)
+{
+ if (id < 0x4000)
+ return NULL;
+
+ if ((s16)id >= 0)
+ return &gSaveBlock1.vars[id - 0x4000];
+
+ return gSpecialVars[id - 0x8000];
+}
+
+u16 VarGet(u16 id)
+{
+ u16 *ptr = GetVarPointer(id);
+ if (!ptr)
+ return id;
+ return *ptr;
+}
+
+bool8 VarSet(u16 id, u16 value)
+{
+ u16 *ptr = GetVarPointer(id);
+ if (!ptr)
+ return FALSE;
+ *ptr = value;
+ return TRUE;
+}
+
+u8 VarGetFieldObjectGraphicsId(u8 id)
+{
+ return VarGet(0x4010 + id);
+}
+
+u8 *GetFlagPointer(u16 id)
+{
+ if (id == 0)
+ return 0;
+
+ if (id < 0x4000)
+ return &gSaveBlock1.flags[id / 8];
+
+ return &gUnknown_0202E8E2[(id - 0x4000) / 8];
+}
+
+u8 FlagSet(u16 id)
+{
+ u8 *ptr = GetFlagPointer(id);
+ if (ptr)
+ *ptr |= 1 << (id & 7);
+ return 0;
+}
+
+u8 FlagReset(u16 id)
+{
+ u8 *ptr = GetFlagPointer(id);
+ if (ptr)
+ *ptr &= ~(1 << (id & 7));
+ return 0;
+}
+
+bool8 FlagGet(u16 id)
+{
+ u8 *ptr = GetFlagPointer(id);
+
+ if (!ptr)
+ return FALSE;
+
+ if (!(((*ptr) >> (id & 7)) & 1))
+ return FALSE;
+
+ return TRUE;
+}
diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c
index 5fffa785f..cfb16bf28 100644
--- a/src/field_player_avatar.c
+++ b/src/field_player_avatar.c
@@ -3,7 +3,7 @@
#include "asm.h"
#include "field_map_obj.h"
#include "rom4.h"
-#include "flag.h"
+#include "event_data.h"
#include "main.h"
#include "menu.h"
#include "rng.h"
diff --git a/src/flag.c b/src/flag.c
deleted file mode 100644
index e7347ad0d..000000000
--- a/src/flag.c
+++ /dev/null
@@ -1,44 +0,0 @@
-#include "global.h"
-#include "flag.h"
-
-extern u8 gUnknown_0202E8E2[];
-
-u8 *GetFlagPointer(u16 id)
-{
- if (id == 0)
- return 0;
-
- if (id < 0x4000)
- return &gSaveBlock1.flags[id / 8];
-
- return &gUnknown_0202E8E2[(id - 0x4000) / 8];
-}
-
-u8 FlagSet(u16 id)
-{
- u8 *ptr = GetFlagPointer(id);
- if (ptr)
- *ptr |= 1 << (id & 7);
- return 0;
-}
-
-u8 FlagReset(u16 id)
-{
- u8 *ptr = GetFlagPointer(id);
- if (ptr)
- *ptr &= ~(1 << (id & 7));
- return 0;
-}
-
-bool8 FlagGet(u16 id)
-{
- u8 *ptr = GetFlagPointer(id);
-
- if (!ptr)
- return FALSE;
-
- if (!(((*ptr) >> (id & 7)) & 1))
- return FALSE;
-
- return TRUE;
-}
diff --git a/src/item_use.c b/src/item_use.c
index 21ce9acd3..fb5f3e8b8 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -10,7 +10,7 @@
#include "rom4.h"
#include "metatile_behavior.h"
#include "field_player_avatar.h"
-#include "flag.h"
+#include "event_data.h"
#include "map_obj_lock.h"
#include "script.h"
#include "field_player_avatar.h"
diff --git a/src/landmark.c b/src/landmark.c
index 4657a0083..6a53716bb 100644
--- a/src/landmark.c
+++ b/src/landmark.c
@@ -1,6 +1,6 @@
#include "global.h"
#include "landmark.h"
-#include "flag.h"
+#include "event_data.h"
#define MAPSEC_NONE 0x58
diff --git a/src/lottery_corner.c b/src/lottery_corner.c
index f073688e0..2330d20ff 100644
--- a/src/lottery_corner.c
+++ b/src/lottery_corner.c
@@ -2,7 +2,7 @@
#include "lottery_corner.h"
#include "rng.h"
#include "string_util.h"
-#include "var.h"
+#include "event_data.h"
extern u16 gScriptResult;
extern u16 gSpecialVar_0x8004;
diff --git a/src/main_menu.c b/src/main_menu.c
index 9842d6f39..f036a705c 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -16,6 +16,7 @@
#include "task.h"
#include "text.h"
#include "title_screen.h"
+#include "event_data.h"
#define BirchSpeechUpdateWindowText() ((u8)MenuUpdateWindowText_OverrideLineLength(24))
@@ -277,7 +278,7 @@ void Task_MainMenuCheckSave(u8 taskId)
switch (gSaveFileStatus)
{
case 1:
- if (IsMysteryGiftAvailable() == TRUE)
+ if (IsMysteryGiftEnabled() == TRUE)
gTasks[taskId].data[TD_MENULAYOUT] = HAS_MYSTERY_GIFT;
else
gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
@@ -300,7 +301,7 @@ void Task_MainMenuCheckSave(u8 taskId)
gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
gTasks[taskId].func = Task_MainMenuWaitForSaveErrorAck;
- if (IsMysteryGiftAvailable() == TRUE)
+ if (IsMysteryGiftEnabled() == TRUE)
gTasks[taskId].data[TD_MENULAYOUT] = HAS_MYSTERY_GIFT;
else
gTasks[taskId].data[TD_MENULAYOUT] = HAS_SAVED_GAME;
diff --git a/src/new_game.c b/src/new_game.c
index fa1894086..00797806e 100644
--- a/src/new_game.c
+++ b/src/new_game.c
@@ -10,6 +10,7 @@
#include "lottery_corner.h"
#include "rng.h"
#include "rtc.h"
+#include "event_data.h"
extern u8 gUnknown_020297EC;
@@ -114,7 +115,7 @@ void NewGameInitData(void)
set_player_trainer_id();
PlayTimeCounter_Reset();
sub_8052D78();
- sub_8069030();
+ InitEventData();
sub_80BD7A8();
sub_80BDAB4();
sub_80BB5B4();
diff --git a/src/pokedex.c b/src/pokedex.c
index a37bed24e..48e3a57aa 100644
--- a/src/pokedex.c
+++ b/src/pokedex.c
@@ -12,6 +12,7 @@
#include "songs.h"
#include "sound.h"
#include "task.h"
+#include "event_data.h"
// I'm #define-ing these just for now so I can keep using the old unkXXX member names
#define unk60E selectedPokemon
@@ -109,7 +110,7 @@ extern void m4aMPlayVolumeControl(struct MusicPlayerInfo *mplayInfo, u16 trackBi
extern bool8 BeginNormalPaletteFade(u32, s8, u8, u8, u16);
extern void remove_some_task(void);
extern u8 sub_8091E3C(void);
-extern void LockNationalPokedex(void);
+extern void DisableNationalPokedex(void);
extern void sub_805469C(void);
extern u16 HoennToNationalOrder(u16);
extern u16 NationalToHoennOrder(u16);
@@ -144,7 +145,7 @@ void sub_808C02C(void)
gSaveBlock2.pokedex.unownPersonality = 0;
gSaveBlock2.pokedex.spindaPersonality = 0;
gSaveBlock2.pokedex.unknown3 = 0;
- LockNationalPokedex();
+ DisableNationalPokedex();
for(i = 0; i <= 51; i++)
{
gSaveBlock2.pokedex.owned[i] = 0;
@@ -279,14 +280,14 @@ void CB2_InitPokedex(void)
ClearPokedexView(gPokedexView);
CreateTask(Task_PokedexShowMainScreen, 0);
gPokedexView->dexMode = gSaveBlock2.pokedex.unknown1;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
gPokedexView->dexMode = DEX_MODE_HOENN;
gPokedexView->dexOrder = gSaveBlock2.pokedex.order;
gPokedexView->selectedPokemon = gUnknown_0202FFB8;
gPokedexView->unk62C = gUnknown_0202FFBA;
gPokedexView->selectedScreen = PAGE_SCREEN;
gPokedexView->unk64E = 0;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
{
gPokedexView->unk61A = GetHoennPokedexCount(0);
gPokedexView->unk61C = GetHoennPokedexCount(1);
@@ -531,7 +532,7 @@ void sub_808CB8C(u8 taskId)
gPokedexView->unk62C = gPokedexView->unk62A;
gPokedexView->selectedPokemon = gPokedexView->unk610;
gPokedexView->dexMode = gPokedexView->unk614;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
gPokedexView->dexMode = DEX_MODE_HOENN;
gPokedexView->dexOrder = gPokedexView->unk618;
gTasks[taskId].func = Task_PokedexShowMainScreen;
@@ -544,7 +545,7 @@ void Task_ClosePokedex(u8 taskId)
if(!gPaletteFade.active)
{
gSaveBlock2.pokedex.unknown1 = gPokedexView->dexMode;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
gSaveBlock2.pokedex.unknown1 = 0;
gSaveBlock2.pokedex.order = gPokedexView->dexOrder;
DestroyTask(taskId);
@@ -715,7 +716,7 @@ void Task_PokedexResultsScreenReturnToMainScreen(u8 taskId)
gPokedexView->unk62C = gPokedexView->unk62A;
gPokedexView->selectedPokemon = gPokedexView->unk610;
gPokedexView->dexMode = gPokedexView->unk614;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
gPokedexView->dexMode = DEX_MODE_HOENN;
gPokedexView->dexOrder = gPokedexView->unk618;
gTasks[taskId].func = Task_PokedexShowMainScreen;
@@ -729,7 +730,7 @@ void Task_PokedexResultsScreenExitPokedex(u8 taskId)
gPokedexView->unk62C = gPokedexView->unk62A;
gPokedexView->selectedPokemon = gPokedexView->unk610;
gPokedexView->dexMode = gPokedexView->unk614;
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
gPokedexView->dexMode = DEX_MODE_HOENN;
gPokedexView->dexOrder = gPokedexView->unk618;
gTasks[taskId].func = Task_ClosePokedex;
@@ -826,7 +827,7 @@ void sub_808D640(void)
{
if(gPokedexView->unk64C_1)
LoadPalette(gUnknown_0839F67C + 0x2, 1, 0xBE);
- else if(!IsNationalPokedex())
+ else if(!IsNationalPokedexEnabled())
LoadPalette(gPokedexMenu_Pal + 0x2, 1, 0xBE);
else
LoadPalette(gUnknown_0839F73C + 0x2, 1, 0xBE);
@@ -847,7 +848,7 @@ void SortPokedex(u8 dexMode, u8 sortMode)
vars[1] = 1;
break;
case DEX_MODE_NATIONAL:
- if(IsNationalPokedex())
+ if(IsNationalPokedexEnabled())
{
vars[0] = 386;
vars[1] = 0;
@@ -3141,7 +3142,7 @@ void sub_8090750(u8 taskId)
break;
case 3:
sub_8072BD8(gDexText_RegisterComplete, 2, 0, 0xD0);
- if(!IsNationalPokedex())
+ if(!IsNationalPokedexEnabled())
sub_8091154(NationalToHoennOrder(dexNum), 13, 3);
else
sub_8091154(dexNum, 13, 3);
diff --git a/src/pokemon_2.c b/src/pokemon_2.c
index 2baf1155e..28d1cd2bb 100644
--- a/src/pokemon_2.c
+++ b/src/pokemon_2.c
@@ -7,7 +7,7 @@
#include "species.h"
#include "main.h"
#include "sprite.h"
-#include "flag.h"
+#include "event_data.h"
extern u8 gPlayerPartyCount;
extern struct Pokemon gPlayerParty[6];
diff --git a/src/pokemon_3.c b/src/pokemon_3.c
index f69ffcfef..fe64a6cf4 100644
--- a/src/pokemon_3.c
+++ b/src/pokemon_3.c
@@ -7,7 +7,7 @@
#include "species.h"
#include "main.h"
#include "sprite.h"
-#include "flag.h"
+#include "event_data.h"
#include "rtc.h"
#include "item.h"
diff --git a/src/pokemon_size_record.c b/src/pokemon_size_record.c
index 21f386f2d..51d24b71b 100644
--- a/src/pokemon_size_record.c
+++ b/src/pokemon_size_record.c
@@ -2,8 +2,7 @@
#include "pokemon_size_record.h"
#include "string_util.h"
#include "species.h"
-#include "flag.h"
-#include "var.h"
+#include "event_data.h"
extern u16 SpeciesToNationalPokedexNum(u16);
extern u16 sub_8090D54(u16, u8);
diff --git a/src/record_mixing.c b/src/record_mixing.c
index 281ab2803..12b87b2b1 100644
--- a/src/record_mixing.c
+++ b/src/record_mixing.c
@@ -9,8 +9,7 @@
#include "sound.h"
#include "string_util.h"
#include "task.h"
-#include "flag.h"
-#include "var.h"
+#include "event_data.h"
extern void *recordMixingSecretBases;
extern void *recordMixingTvShows;
diff --git a/src/rom4.c b/src/rom4.c
index 2f7d1fc5c..63f42161d 100644
--- a/src/rom4.c
+++ b/src/rom4.c
@@ -9,7 +9,7 @@
#include "field_map_obj.h"
#include "field_message_box.h"
#include "field_player_avatar.h"
-#include "flag.h"
+#include "event_data.h"
#include "heal_location.h"
#include "link.h"
#include "load_save.h"
@@ -27,7 +27,6 @@
#include "task.h"
#include "tileset_anim.h"
#include "truck_scene.h"
-#include "var.h"
#include "weather.h"
#include "wild_encounter.h"
#include "metatile_behavior.h"
@@ -518,7 +517,7 @@ void sub_80538F0(u8 mapGroup, u8 mapNum)
warp_shift();
set_current_map_header_from_sav1_save_old_name();
sub_8053154();
- sub_806906C();
+ ClearTempFieldEventData();
ResetCyclingRoadChallengeData();
prev_quest_postbuffer_cursor_backup_reset();
sub_8082BD0(mapGroup, mapNum);
@@ -551,7 +550,7 @@ void sub_8053994(u32 a1)
sub_8053154();
v2 = is_light_level_1_2_3_5_or_6(gMapHeader.light);
v3 = is_light_level_8_or_9(gMapHeader.light);
- sub_806906C();
+ ClearTempFieldEventData();
ResetCyclingRoadChallengeData();
prev_quest_postbuffer_cursor_backup_reset();
sub_8082BD0(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum);
diff --git a/src/safari_zone.c b/src/safari_zone.c
index 118797136..6ecb5cc44 100644
--- a/src/safari_zone.c
+++ b/src/safari_zone.c
@@ -2,7 +2,7 @@
#include "safari_zone.h"
#include "asm.h"
#include "field_player_avatar.h"
-#include "flag.h"
+#include "event_data.h"
#include "main.h"
#include "script.h"
#include "string_util.h"
diff --git a/src/save_menu_util.c b/src/save_menu_util.c
index ff42d66ea..d2fda59d6 100644
--- a/src/save_menu_util.c
+++ b/src/save_menu_util.c
@@ -2,7 +2,7 @@
#include "save_menu_util.h"
#include "asm.h"
#include "menu.h"
-#include "flag.h"
+#include "event_data.h"
#include "string_util.h"
#include "pokedex.h"
@@ -118,7 +118,7 @@ u16 GetPokedexSeenCount()
{
u16 pokedexSeenCount;
- if (IsNationalPokedex())
+ if (IsNationalPokedexEnabled())
pokedexSeenCount = GetNationalPokedexCount(1);
else
pokedexSeenCount = GetHoennPokedexCount(1);
diff --git a/src/scrcmd.c b/src/scrcmd.c
index e34ba0b7f..66c68be07 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -17,8 +17,7 @@
#include "field_message_box.h"
#include "sound.h"
#include "string_util.h"
-#include "flag.h"
-#include "var.h"
+#include "event_data.h"
#include "rom4.h"
#include "weather.h"
#include "map_obj_lock.h"
diff --git a/src/script.c b/src/script.c
index a7aa9c809..8ce889930 100644
--- a/src/script.c
+++ b/src/script.c
@@ -1,7 +1,7 @@
#include "global.h"
#include "script.h"
#include "asm_fieldmap.h"
-#include "var.h"
+#include "event_data.h"
#define RAM_SCRIPT_MAGIC 51
diff --git a/src/script_menu.c b/src/script_menu.c
index 5c844a6fb..c4f0b5292 100644
--- a/src/script_menu.c
+++ b/src/script_menu.c
@@ -4,7 +4,7 @@
#include "palette.h"
#include "script.h"
#include "sound.h"
-#include "flag.h"
+#include "event_data.h"
#include "sprite.h"
struct MultichoiceListStruct
diff --git a/src/start_menu.c b/src/start_menu.c
index 850f610e3..eebdd27fc 100644
--- a/src/start_menu.c
+++ b/src/start_menu.c
@@ -2,7 +2,7 @@
#include "start_menu.h"
#include "asm.h"
#include "field_player_avatar.h"
-#include "flag.h"
+#include "event_data.h"
#include "load_save.h"
#include "main.h"
#include "map_obj_lock.h"
diff --git a/src/title_screen.c b/src/title_screen.c
index 9282978de..ffa803d2e 100644
--- a/src/title_screen.c
+++ b/src/title_screen.c
@@ -12,6 +12,7 @@
#include "sprite.h"
#include "task.h"
#include "decompress.h"
+#include "event_data.h"
extern u8 gReservedSpritePaletteCount;
extern struct MusicPlayerInfo gMPlay_BGM;
@@ -427,7 +428,7 @@ static void Task_TitleScreenPhase3(u8 taskId)
if ((gMain.heldKeys & CLEAR_SAVE_BUTTON_COMBO) == CLEAR_SAVE_BUTTON_COMBO)
SetMainCallback2(CB2_GoToClearSaveDataScreen);
if ((gMain.heldKeys & RESET_RTC_BUTTON_COMBO) == RESET_RTC_BUTTON_COMBO
- && sub_80691DC() == 1)
+ && CanResetRTC() == 1)
{
FadeOutBGM(4);
BeginNormalPaletteFade(-1, 0, 0, 0x10, 0);
diff --git a/src/trainer_card.c b/src/trainer_card.c
index 453cec76d..d2d6b922d 100644
--- a/src/trainer_card.c
+++ b/src/trainer_card.c
@@ -1,8 +1,7 @@
#include "global.h"
#include "trainer_card.h"
#include "asm.h"
-#include "flag.h"
-#include "flags.h"
+#include "event_data.h"
#include "link.h"
#include "main.h"
#include "menu.h"
diff --git a/src/var.c b/src/var.c
deleted file mode 100644
index 08b109e6f..000000000
--- a/src/var.c
+++ /dev/null
@@ -1,37 +0,0 @@
-#include "global.h"
-#include "var.h"
-
-extern u16 *gSpecialVars[];
-
-u16 *GetVarPointer(u16 id)
-{
- if (id < 0x4000)
- return NULL;
-
- if ((s16)id >= 0)
- return &gSaveBlock1.vars[id - 0x4000];
-
- return gSpecialVars[id - 0x8000];
-}
-
-u16 VarGet(u16 id)
-{
- u16 *ptr = GetVarPointer(id);
- if (!ptr)
- return id;
- return *ptr;
-}
-
-bool8 VarSet(u16 id, u16 value)
-{
- u16 *ptr = GetVarPointer(id);
- if (!ptr)
- return FALSE;
- *ptr = value;
- return TRUE;
-}
-
-u8 VarGetFieldObjectGraphicsId(u8 id)
-{
- return VarGet(0x4010 + id);
-}
diff --git a/src/wild_encounter.c b/src/wild_encounter.c
index 1291242a7..9336e6c18 100644
--- a/src/wild_encounter.c
+++ b/src/wild_encounter.c
@@ -7,10 +7,8 @@
#include "abilities.h"
#include "rng.h"
#include "script.h"
-#include "flag.h"
-#include "var.h"
+#include "event_data.h"
#include "rom4.h"
-#include "vars.h"
#include "metatile_behavior.h"
struct WildPokemon