summaryrefslogtreecommitdiff
path: root/src/field_screen_effect.c
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2020-08-16 05:59:10 -0400
committerGriffinR <griffin.g.richards@gmail.com>2020-08-16 05:59:10 -0400
commit65bd2faf9460d4e5986c30e54b283d7674d77c55 (patch)
tree250c345d17b8d8f910d327d98f577afddfb3a64a /src/field_screen_effect.c
parent2749948eebe65aa8b55738d820e4a0252dd45c1a (diff)
parent25f45ffa8441b0f0a999355c9755782ccb4809dc (diff)
Merge branch 'master' of https://github.com/pret/pokeemerald into doc-contest
Diffstat (limited to 'src/field_screen_effect.c')
-rw-r--r--src/field_screen_effect.c54
1 files changed, 28 insertions, 26 deletions
diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c
index 183bd67fa..92ee8cad3 100644
--- a/src/field_screen_effect.c
+++ b/src/field_screen_effect.c
@@ -12,6 +12,7 @@
#include "field_special_scene.h"
#include "field_weather.h"
#include "gpu_regs.h"
+#include "io_reg.h"
#include "link.h"
#include "link_rfu.h"
#include "load_save.h"
@@ -34,18 +35,14 @@
#include "trainer_hill.h"
#include "fldeff.h"
-extern const u16 gOrbEffectBackgroundLayerFlags[];
-
// This file's functions.
-static void sub_8080B9C(u8);
static void Task_ExitNonAnimDoor(u8);
static void Task_ExitNonDoor(u8);
-static void task0A_fade_n_map_maybe(u8);
-static void sub_808115C(u8);
+static void Task_DoContestHallWarp(u8);
static void FillPalBufferWhite(void);
static void Task_ExitDoor(u8);
static bool32 WaitForWeatherFadeIn(void);
-static void task0A_mpl_807E31C(u8 taskId);
+static void Task_TeleportTileWarpExit(u8 taskId);
static void Task_WarpAndLoadMap(u8 taskId);
static void Task_DoDoorWarp(u8 taskId);
static void Task_EnableScriptAfterMusicFade(u8 taskId);
@@ -291,19 +288,19 @@ void FieldCB_WarpExitFadeFromWhite(void)
void FieldCB_WarpExitFadeFromBlack(void)
{
- if (!sub_81D6534()) // sub_81D6534 always returns false
+ if (!OnTrainerHillEReaderChallengeFloor()) // always false
Overworld_PlaySpecialMapMusic();
FadeInFromBlack();
SetUpWarpExitTask();
ScriptContext2_Enable();
}
-static void FieldCB_TeleportWarpExit(void)
+static void FieldCB_TeleportTileWarpExit(void)
{
Overworld_PlaySpecialMapMusic();
WarpFadeInScreen();
PlaySE(SE_TK_WARPOUT);
- CreateTask(task0A_mpl_807E31C, 10);
+ CreateTask(Task_TeleportTileWarpExit, 10);
ScriptContext2_Enable();
}
@@ -314,7 +311,7 @@ static void FieldCB_MossdeepGymWarpExit(void)
PlaySE(SE_TK_WARPOUT);
CreateTask(Task_ExitNonDoor, 10);
ScriptContext2_Enable();
- sub_8085540(0xE);
+ SetObjectEventLoadFlag((~SKIP_OBJECT_EVENT_LOAD) & 0xF);
}
static void Task_ExitDoor(u8 taskId)
@@ -546,19 +543,20 @@ void DoLavaridgeGym1FWarp(void)
StartLavaridgeGym1FWarp(10);
}
-void DoTeleportWarp(void)
+// Warp from a teleporting tile, e.g. in Aqua Hideout (For the move Teleport see FldEff_TeleportWarpOut)
+void DoTeleportTileWarp(void)
{
ScriptContext2_Enable();
TryFadeOutOldMapMusic();
WarpFadeOutScreen();
PlaySE(SE_TK_WARPIN);
CreateTask(Task_WarpAndLoadMap, 10);
- gFieldCallback = FieldCB_TeleportWarpExit;
+ gFieldCallback = FieldCB_TeleportTileWarpExit;
}
void DoMossdeepGymWarp(void)
{
- sub_8085540(1);
+ SetObjectEventLoadFlag(SKIP_OBJECT_EVENT_LOAD);
ScriptContext2_Enable();
SaveObjectEvents();
TryFadeOutOldMapMusic();
@@ -576,19 +574,21 @@ void DoPortholeWarp(void)
gFieldCallback = FieldCB_ShowPortholeView;
}
-static void sub_80AF8E0(u8 taskId)
+#define tState data[0]
+
+static void Task_DoCableClubWarp(u8 taskId)
{
struct Task *task = &gTasks[taskId];
- switch (task->data[0])
+ switch (task->tState)
{
case 0:
ScriptContext2_Enable();
- task->data[0]++;
+ task->tState++;
break;
case 1:
if (!PaletteFadeActive() && BGMusicStopped())
- task->data[0]++;
+ task->tState++;
break;
case 2:
WarpIntoMap();
@@ -598,13 +598,15 @@ static void sub_80AF8E0(u8 taskId)
}
}
+#undef tState
+
void DoCableClubWarp(void)
{
ScriptContext2_Enable();
TryFadeOutOldMapMusic();
WarpFadeOutScreen();
PlaySE(SE_KAIDAN);
- CreateTask(sub_80AF8E0, 10);
+ CreateTask(Task_DoCableClubWarp, 10);
}
static void Task_ReturnToWorldFromLinkRoom(u8 taskId)
@@ -727,7 +729,7 @@ static void Task_DoDoorWarp(u8 taskId)
}
}
-static void task0A_fade_n_map_maybe(u8 taskId)
+static void Task_DoContestHallWarp(u8 taskId)
{
struct Task *task = &gTasks[taskId];
@@ -746,7 +748,7 @@ static void task0A_fade_n_map_maybe(u8 taskId)
break;
case 2:
WarpIntoMap();
- SetMainCallback2(sub_8086024);
+ SetMainCallback2(CB2_ReturnToFieldContestHall);
DestroyTask(taskId);
break;
}
@@ -760,7 +762,7 @@ void DoContestHallWarp(void)
PlayRainStoppingSoundEffect();
PlaySE(SE_KAIDAN);
gFieldCallback = FieldCB_WarpExitFadeFromBlack;
- CreateTask(task0A_fade_n_map_maybe, 10);
+ CreateTask(Task_DoContestHallWarp, 10);
}
static void SetFlashScanlineEffectWindowBoundary(u16 *dest, u32 y, s32 left, s32 right)
@@ -976,7 +978,7 @@ void AnimateFlash(u8 flashLevel)
u8 value = 0;
if (!flashLevel)
value = 1;
- sub_80AFFDC(120, 80, sFlashLevelPixelRadii[curFlashLevel], sFlashLevelPixelRadii[flashLevel], value, 1);
+ sub_80AFFDC(DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelPixelRadii[curFlashLevel], sFlashLevelPixelRadii[flashLevel], value, 1);
sub_80AFFB8();
ScriptContext2_Enable();
}
@@ -985,18 +987,18 @@ void WriteFlashScanlineEffectBuffer(u8 flashLevel)
{
if (flashLevel)
{
- SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], 120, 80, sFlashLevelPixelRadii[flashLevel]);
+ SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, sFlashLevelPixelRadii[flashLevel]);
CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480);
}
}
void WriteBattlePyramidViewScanlineEffectBuffer(void)
{
- SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], 120, 80, gSaveBlock2Ptr->frontier.pyramidLightRadius);
+ SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], DISPLAY_WIDTH / 2, DISPLAY_HEIGHT / 2, gSaveBlock2Ptr->frontier.pyramidLightRadius);
CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480);
}
-static void task0A_mpl_807E31C(u8 taskId)
+static void Task_TeleportTileWarpExit(u8 taskId)
{
switch (gTasks[taskId].data[0])
{
@@ -1053,7 +1055,7 @@ void sub_80B0244(void)
{
ScriptContext2_Enable();
CreateTask(Task_WarpAndLoadMap, 10);
- gFieldCallback = FieldCB_TeleportWarpExit;
+ gFieldCallback = FieldCB_TeleportTileWarpExit;
}
void sub_80B0268(void)