summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-26 07:32:33 +0800
committerjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-26 07:32:33 +0800
commit5c9af8295588780d90ea0b85f07696be29506761 (patch)
treed1cbf749c4bd58fd480b824034e82377c7280c26 /src
parent1ba29fd2ed12d86d39e64b952f0f69cc36add132 (diff)
parentf7aaf6234311435ca7bb2e5b094df6dfa8ab1827 (diff)
Merge branch 'small_files' into misc
Diffstat (limited to 'src')
-rw-r--r--src/hof_pc.c53
-rw-r--r--src/quest_log.c2
-rw-r--r--src/teachy_tv.c2
3 files changed, 55 insertions, 2 deletions
diff --git a/src/hof_pc.c b/src/hof_pc.c
new file mode 100644
index 000000000..241fbc4f3
--- /dev/null
+++ b/src/hof_pc.c
@@ -0,0 +1,53 @@
+#include "global.h"
+#include "hall_of_fame.h"
+#include "palette.h"
+#include "overworld.h"
+#include "script.h"
+#include "script_menu.h"
+#include "task.h"
+#include "hall_of_fame.h"
+#include "bg.h"
+#include "window.h"
+
+static void ReshowPCMenuAfterHallOfFamePC(void);
+static void Task_WaitForPaletteFade(u8 taskId);
+
+static void Task_WaitFadeAndSetCallback(u8 taskId)
+{
+ if (!gPaletteFade.active)
+ {
+ FreeAllWindowBuffers();
+ ResetBgsAndClearDma3BusyFlags(0);
+ DestroyTask(taskId);
+ SetMainCallback2(sub_80F2978);
+ }
+}
+
+void HallOfFamePCBeginFade(void)
+{
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_BLACK);
+ ScriptContext2_Enable();
+ CreateTask(Task_WaitFadeAndSetCallback, 0);
+}
+
+void ReturnFromHallOfFamePC(void)
+{
+ SetMainCallback2(CB2_ReturnToField);
+ gFieldCallback = ReshowPCMenuAfterHallOfFamePC;
+}
+
+static void ReshowPCMenuAfterHallOfFamePC(void)
+{
+ ScriptContext2_Enable();
+ Overworld_PlaySpecialMapMusic();
+ ScrSpecial_CreatePCMenu();
+ ScriptMenu_DisplayPCStartupPrompt();
+ BeginNormalPaletteFade(0xFFFFFFFF, 0, 0x10, 0, RGB_BLACK);
+ CreateTask(Task_WaitForPaletteFade, 10);
+}
+
+static void Task_WaitForPaletteFade(u8 taskId)
+{
+ if (!gPaletteFade.active)
+ DestroyTask(taskId);
+}
diff --git a/src/quest_log.c b/src/quest_log.c
index dede9d6cd..07d44388d 100644
--- a/src/quest_log.c
+++ b/src/quest_log.c
@@ -1567,7 +1567,7 @@ void sub_81120AC(u8 taskId)
{
case 0:
gUnknown_2031DD8 = 0;
- sub_8055DC4();
+ Overworld_PlaySpecialMapMusic();
sub_811229C();
FillWindowPixelRect(gUnknown_203ADFE[0], 0xF, 0, 0, gUnknown_845661C[0].width * 8, gUnknown_845661C[0].height * 8);
data[0]++;
diff --git a/src/teachy_tv.c b/src/teachy_tv.c
index ae6afae07..1e3f42027 100644
--- a/src/teachy_tv.c
+++ b/src/teachy_tv.c
@@ -718,7 +718,7 @@ static void TeachyTvQuitFadeControlAndTaskDel(u8 taskId)
}
else
{
- sub_8055DC4();
+ Overworld_PlaySpecialMapMusic();
SetMainCallback2(sStaticResources.callback);
}
TeachyTvFree();