Identify unused, never read, and never written vars

This commit is contained in:
Phlosioneer
2019-02-27 14:42:32 -05:00
parent c1348d22f3
commit 4137dd7b0b
19 changed files with 112 additions and 110 deletions

View File

@@ -131,13 +131,13 @@ void sub_809D4D8(void)
void sub_809D570(void)
{
VarSet(VAR_EVENT_PICHU_SLOT, 0);
VarSet(VAR_0x40DE, 0);
VarSet(VAR_0x40DF, 0);
VarSet(VAR_0x40E0, 0);
VarSet(VAR_0x40E1, 0);
VarSet(VAR_0x40E2, 0);
VarSet(VAR_0x40E3, 0);
VarSet(VAR_0x40E4, 0);
VarSet(VAR_NEVER_READ_0x40DE, 0);
VarSet(VAR_NEVER_READ_0x40DF, 0);
VarSet(VAR_NEVER_READ_0x40E0, 0);
VarSet(VAR_NEVER_READ_0x40E1, 0);
VarSet(VAR_NEVER_READ_0x40E2, 0);
VarSet(VAR_NEVER_READ_0x40E3, 0);
VarSet(VAR_NEVER_READ_0x40E4, 0);
}
void DisableResetRTC(void)

View File

@@ -557,7 +557,7 @@ static bool8 TryStartStepCountScript(u16 metatileBehavior)
ScriptContext1_SetupScript(EventScript_EggHatch);
return TRUE;
}
if (sub_813B3B0() == TRUE)
if (UnusualWeatherHasExpired() == TRUE)
{
ScriptContext1_SetupScript(UnusualWeather_EventScript_EndEventAndCleanup_1);
return TRUE;

View File

@@ -3424,7 +3424,7 @@ bool8 sub_813B260(void)
void CreateUnusualWeatherEvent(void)
{
u16 randomValue = Random();
VarSet(VAR_0x4038, 0);
VarSet(VAR_UNUSUAL_WEATHER_STEP_COUNTER, 0);
if (FlagGet(FLAG_DEFEATED_KYOGRE) == TRUE)
{
@@ -3466,12 +3466,12 @@ bool32 GetUnusualWeatherMapNameAndType(void)
}
}
bool8 sub_813B3B0(void)
bool8 UnusualWeatherHasExpired(void)
{
// Duplicate array.
static const u8 sUnusualWeatherMapNumbers_2[] = { 0x1d, 0x1d, 0x1e, 0x1e, 0x1f, 0x1f, 0x21, 0x21, 0x14, 0x14, 0x28, 0x28, 0x2a, 0x2a, 0x2c, 0x2c };
u16 var1 = VarGet(VAR_0x4038);
u16 steps = VarGet(VAR_UNUSUAL_WEATHER_STEP_COUNTER);
u16 unusualWeather = VarGet(VAR_UNUSUAL_WEATHER_LOCATION);
if (unusualWeather == UNUSUAL_WEATHER_NONE)
@@ -3479,9 +3479,9 @@ bool8 sub_813B3B0(void)
return FALSE;
}
if (++var1 > 999)
if (++steps > 999)
{
VarSet(VAR_0x4038, 0);
VarSet(VAR_UNUSUAL_WEATHER_STEP_COUNTER, 0);
if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(UNDERWATER_MARINE_CAVE))
{
switch (gSaveBlock1Ptr->location.mapNum)
@@ -3491,7 +3491,7 @@ bool8 sub_813B3B0(void)
case MAP_NUM(MARINE_CAVE_END):
case MAP_NUM(TERRA_CAVE_ENTRANCE):
case MAP_NUM(TERRA_CAVE_END):
VarSet(VAR_0x4039, 1);
VarSet(VAR_SHOULD_END_UNUSUAL_WEATHER, 1);
return FALSE;
default:
break;
@@ -3506,7 +3506,7 @@ bool8 sub_813B3B0(void)
case MAP_NUM(UNDERWATER5):
case MAP_NUM(UNDERWATER6):
case MAP_NUM(UNDERWATER7):
VarSet(VAR_0x4039, 1);
VarSet(VAR_SHOULD_END_UNUSUAL_WEATHER, 1);
return FALSE;
default:
break;
@@ -3526,7 +3526,7 @@ bool8 sub_813B3B0(void)
}
else
{
VarSet(VAR_0x4038, var1);
VarSet(VAR_UNUSUAL_WEATHER_STEP_COUNTER, steps);
return FALSE;
}
}

View File

@@ -408,9 +408,11 @@ static void Overworld_ResetStateAfterWhiteOut(void)
FlagClear(FLAG_SYS_SAFARI_MODE);
FlagClear(FLAG_SYS_USE_STRENGTH);
FlagClear(FLAG_SYS_USE_FLASH);
if (VarGet(VAR_0x4039) == 1)
// If you were defeated by Kyogre/Groudon and the step counter has
// maxed out, end the unusual weather.
if (VarGet(VAR_SHOULD_END_UNUSUAL_WEATHER) == 1)
{
VarSet(VAR_0x4039, 0);
VarSet(VAR_SHOULD_END_UNUSUAL_WEATHER, 0);
VarSet(VAR_UNUSUAL_WEATHER_LOCATION, UNUSUAL_WEATHER_NONE);
}
}