summaryrefslogtreecommitdiff
path: root/src/field/field_weather_effects.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/field/field_weather_effects.c')
-rw-r--r--src/field/field_weather_effects.c85
1 files changed, 41 insertions, 44 deletions
diff --git a/src/field/field_weather_effects.c b/src/field/field_weather_effects.c
index 5a59d6c2a..eff702f8c 100644
--- a/src/field/field_weather_effects.c
+++ b/src/field/field_weather_effects.c
@@ -74,10 +74,7 @@ static const struct SpriteTemplate sCloudSpriteTemplate =
.callback = sub_807E0F4,
};
-extern void sub_807D5BC(s8 a);
-extern void sub_807D8C0(const u16 *palette);
-extern void sub_807D9A8(void);
-extern bool8 sub_807D9C8(void);
+extern void sub_807D5BC(s8 gammaIndex);
extern void sub_807DA14(void);
extern void sub_807DA4C(void);
extern void Weather_SetTargetBlendCoeffs(u8 a, u8 b, int c);
@@ -91,8 +88,8 @@ extern void sub_807D5F0(u8 a, u8 b, u8 c);
void Clouds_InitVars(void)
{
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->weatherGfxLoaded = FALSE;
gWeatherPtr->initStep = 0;
if (gWeatherPtr->cloudSpritesCreated == FALSE)
@@ -159,8 +156,8 @@ bool8 Clouds_Finish(void)
void Weather2_InitVars(void)
{
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
}
void Weather2_InitAll(void)
@@ -184,7 +181,7 @@ void CreateCloudSprites(void)
if (gWeatherPtr->cloudSpritesCreated == TRUE)
return;
LoadSpriteSheet(&sCloudSpriteSheet);
- sub_807D8C0(gUnknown_08397108);
+ LoadCustomWeatherSpritePalette(gUnknown_08397108);
for (i = 0; i < 3; i++)
{
u8 spriteId = CreateSprite(&sCloudSpriteTemplate, 0, 0, 0xFF);
@@ -236,8 +233,8 @@ void Drought_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = FALSE;
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 0;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 0;
}
void Drought_Main(void);
@@ -254,15 +251,15 @@ void Drought_Main(void)
switch (gWeatherPtr->initStep)
{
case 0:
- if (gWeatherPtr->unknown_6C6 != 0)
+ if (gWeatherPtr->palProcessingState != WEATHER_PAL_STATE_CHANGING_WEATHER)
gWeatherPtr->initStep++;
break;
case 1:
- sub_807D9A8();
+ ResetDroughtWeatherPaletteLoading();
gWeatherPtr->initStep++;
break;
case 2:
- if (sub_807D9C8() == FALSE)
+ if (LoadDroughtWeatherPalettes() == FALSE)
gWeatherPtr->initStep++;
break;
case 3:
@@ -368,8 +365,8 @@ void LightRain_InitVars(void)
gWeatherPtr->unknown_6DB = 8;
gWeatherPtr->unknown_6DC = 0;
gWeatherPtr->unknown_6D9 = 10;
- gWeatherPtr->unknown_6C1 = 3;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 3;
+ gWeatherPtr->gammaStepDelay = 20;
SetRainStrengthFromSoundEffect(SE_T_KOAME);
}
@@ -885,8 +882,8 @@ void Snow_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = FALSE;
- gWeatherPtr->unknown_6C1 = 3;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 3;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->unknown_6E5 = 16;
gWeatherPtr->unknown_6E0 = 0;
}
@@ -1074,8 +1071,8 @@ void MedRain_InitVars(void)
gWeatherPtr->unknown_6DB = 4;
gWeatherPtr->unknown_6DC = 0;
gWeatherPtr->unknown_6D9 = 16;
- gWeatherPtr->unknown_6C1 = 3;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 3;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->weatherGfxLoaded = FALSE; // duplicate assignment
gWeatherPtr->unknown_6ED = 0;
SetRainStrengthFromSoundEffect(SE_T_AME);
@@ -1102,8 +1099,8 @@ void HeavyRain_InitVars(void)
gWeatherPtr->unknown_6DB = 4;
gWeatherPtr->unknown_6DC = 1;
gWeatherPtr->unknown_6D9 = 24;
- gWeatherPtr->unknown_6C1 = 3;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 3;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->weatherGfxLoaded = FALSE; // duplicate assignment
SetRainStrengthFromSoundEffect(SE_T_OOAME);
}
@@ -1139,7 +1136,7 @@ void Rain_Main(void)
gWeatherPtr->initStep++;
break;
case 3:
- if (gWeatherPtr->unknown_6C6 == 0)
+ if (gWeatherPtr->palProcessingState == WEATHER_PAL_STATE_CHANGING_WEATHER)
break;
gWeatherPtr->initStep = 6;
break;
@@ -1213,7 +1210,7 @@ void Rain_Main(void)
gWeatherPtr->initStep++;
break;
case 14:
- if (gWeatherPtr->unknown_6C6 != 3)
+ if (gWeatherPtr->palProcessingState != WEATHER_PAL_STATE_IDLE)
break;
gWeatherPtr->unknown_6EA = 1;
gWeatherPtr->initStep = 4;
@@ -1296,8 +1293,8 @@ void Fog1_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = FALSE;
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
if (gWeatherPtr->fog1SpritesCreated == 0)
{
gWeatherPtr->unknown_6F0 = 0;
@@ -1446,8 +1443,8 @@ void Ash_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = FALSE;
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->unknown_6FE = 20;
if (!gWeatherPtr->ashSpritesCreated)
{
@@ -1634,8 +1631,8 @@ void Fog2_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = 0;
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
gWeatherPtr->unknown_6F0 = 0;
gWeatherPtr->unknown_6F2 = 1;
if (gWeatherPtr->fog2SpritesCreated == 0)
@@ -1835,8 +1832,8 @@ void Sandstorm_InitVars(void)
{
gWeatherPtr->initStep = 0;
gWeatherPtr->weatherGfxLoaded = 0;
- gWeatherPtr->unknown_6C1 = 0;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 0;
+ gWeatherPtr->gammaStepDelay = 20;
if (gWeatherPtr->sandstormSprites1Created == 0)
{
gWeatherPtr->unknown_704 = gWeatherPtr->unknown_708 = 0;
@@ -2015,7 +2012,7 @@ void CreateSandstormSprites_1(void)
if (!gWeatherPtr->sandstormSprites1Created)
{
LoadSpriteSheet(&sSandstormSpriteSheet);
- sub_807D8C0(gUnknown_08397128);
+ LoadCustomWeatherSpritePalette(gUnknown_08397128);
for (i = 0; i < 20; i++)
{
u8 spriteId = CreateSpriteAtEnd(&sSandstormSpriteTemplate, 0, (i / 5) * 64, 1);
@@ -2113,26 +2110,26 @@ void SandstormSpriteCallback3(struct Sprite *sprite)
}
//------------------------------------------------------------------------------
-// Weather 11
+// Shade
//------------------------------------------------------------------------------
-void Weather11_InitVars(void)
+void Shade_InitVars(void)
{
gWeatherPtr->initStep = 0;
- gWeatherPtr->unknown_6C1 = 3;
- gWeatherPtr->unknown_6C2 = 20;
+ gWeatherPtr->gammaTargetIndex = 3;
+ gWeatherPtr->gammaStepDelay = 20;
}
-void Weather11_InitAll(void)
+void Shade_InitAll(void)
{
- Weather11_InitVars();
+ Shade_InitVars();
}
-void Weather11_Main(void)
+void Shade_Main(void)
{
}
-bool8 Weather11_Finish(void)
+bool8 Shade_Finish(void)
{
return FALSE;
}
@@ -2322,7 +2319,7 @@ void SetSav1WeatherFromCurrMapHeader(void)
void SetWeather(u32 weather)
{
SetSav1Weather(weather);
- DoWeatherEffect(GetSav1Weather());
+ ChangeWeather(GetSav1Weather());
}
void SetWeather_Unused(u32 weather)
@@ -2333,7 +2330,7 @@ void SetWeather_Unused(u32 weather)
void DoCurrentWeather(void)
{
- DoWeatherEffect(GetSav1Weather());
+ ChangeWeather(GetSav1Weather());
}
void sub_8080750(void)
@@ -2380,5 +2377,5 @@ void UpdateRainCounter(u8 newWeather, u8 oldWeather)
{
if (newWeather != oldWeather
&& (newWeather == WEATHER_RAIN_LIGHT || newWeather == WEATHER_RAIN_MED))
- IncrementGameStat(0x28);
+ IncrementGameStat(GAME_STAT_GOT_RAINED_ON);
}