summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-10-26 22:10:38 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-10-26 22:10:38 -0400
commit68a253990d88ec058343b88496d8898309ef49ca (patch)
tree0dab6da7888b934e0671351cd3a2964d88f1400a /src
parentae3119a9c82f44ee006cf131f05c56596c43a922 (diff)
through sub_80E9FB0
Diffstat (limited to 'src')
-rw-r--r--src/secret_base.c45
1 files changed, 43 insertions, 2 deletions
diff --git a/src/secret_base.c b/src/secret_base.c
index f066a3c25..9876c7ade 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -26,6 +26,7 @@
#include "script.h"
#include "event_scripts.h"
#include "strings.h"
+#include "international_string_util.h"
#include "event_data.h"
#include "decoration.h"
#include "decoration_inventory.h"
@@ -51,7 +52,9 @@ void sub_80E9E00(u8 taskId);
void sub_80E9E44(u8 taskId);
void sub_80E9E90(u8 taskId);
void sub_80E9F20(u8 taskId);
+void sub_80E9FB0(u8 taskId);
void task_pc_turn_off(u8 taskId);
+u8 sub_80EA18C(u8 sbId);
u8 sub_80EA20C(u8 sbId);
// .rodata
@@ -63,8 +66,9 @@ extern const struct {
extern const u8 gUnknown_0858CFE8[];
extern const u8 gUnknown_0858D060[];
-extern const struct WindowTemplate gUnknown_0858D06C;
+extern const struct WindowTemplate gUnknown_0858D06C[];
extern const struct ListMenuTemplate gUnknown_0858D07C;
+extern const struct MenuAction gUnknown_0858D048[];
// .text
@@ -980,7 +984,7 @@ void sub_80E9C9C(u8 taskId)
data[2] = 0;
sub_8197434(0, 0);
gUnknown_0203A020 = calloc(1, sizeof(struct SecretBaseListMenuBuffer));
- data[6] = AddWindow(&gUnknown_0858D06C);
+ data[6] = AddWindow(&gUnknown_0858D06C[0]);
game_continue(taskId);
sub_80E9E00(taskId);
gTasks[taskId].func = sub_80E9E90;
@@ -1084,3 +1088,40 @@ void sub_80E9E90(u8 taskId)
break;
}
}
+
+void sub_80E9F20(u8 taskId)
+{
+ struct WindowTemplate template;
+ s16 *data;
+
+ data = gTasks[taskId].data;
+ RemoveScrollIndicatorArrowPair(data[8]);
+ template = gUnknown_0858D06C[1];
+ template.width = GetMaxWidthInMenuTable(gUnknown_0858D048, 2);
+ data[7] = AddWindow(&template);
+ SetStandardWindowBorderStyle(data[7], 0);
+ PrintMenuTable(data[7], 2, gUnknown_0858D048);
+ InitMenuInUpperLeftCornerPlaySoundWhenAPressed(data[7], 2, 0);
+ schedule_bg_copy_tilemap_to_vram(0);
+ gTasks[taskId].func = sub_80E9FB0;
+}
+
+void sub_80E9FB0(u8 taskId)
+{
+ s8 input;
+
+ input = ProcessMenuInputNoWrapAround();
+ switch (input)
+ {
+ case -1:
+ PlaySE(SE_SELECT);
+ sub_80EA18C(taskId);
+ break;
+ case -2:
+ break;
+ default:
+ PlaySE(SE_SELECT);
+ gUnknown_0858D048[input].func.void_u8(taskId);
+ break;
+ }
+}