diff options
author | scnorton <scnorton@biociphers.org> | 2017-07-20 17:33:51 -0400 |
---|---|---|
committer | scnorton <scnorton@biociphers.org> | 2017-07-20 17:33:51 -0400 |
commit | 1761e09ccdfb575c98e728f63a31cbc5db5c5935 (patch) | |
tree | 26bd8286b9497d74be2459295452fe0b211b6b29 /src | |
parent | a44190a0b09c8fc0a6d5517218942f9aa3bbe188 (diff) |
Through sub_80BCB10
Diffstat (limited to 'src')
-rw-r--r-- | src/secret_base.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/secret_base.c b/src/secret_base.c index b5d1ef310..4904f7667 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -114,7 +114,7 @@ const struct MenuAction2 gUnknown_083D13D4[] = { {gUnknownText_Exit, sub_80BCBF8} }; -void (*const gUnknown_083D13E4[])(u8) = { +const struct YesNoFuncTable gUnknown_083D13E4 = { sub_80BCB90, sub_80BCBC0 }; @@ -1108,6 +1108,7 @@ void SecretBasePC_Registry(void) CreateTask(Task_SecretBasePC_Registry, 0); } +// This function tries to keep gTasks + 8 in a register. It should not. #ifdef NONMATCHING void Task_SecretBasePC_Registry(u8 taskId) { @@ -1372,3 +1373,23 @@ void sub_80BCA84(u8 taskId) StringExpandPlaceholders(gStringVar4, gOtherText_OkayToDeleteFromRegistry); DisplayItemMessageOnField(taskId, gStringVar4, sub_80BCAEC, 0); } + +void sub_80BCAEC(u8 taskId) +{ + DisplayYesNoMenu(20, 8, 1); + DoYesNoFuncWithChoice(taskId, &gUnknown_083D13E4); +} + +void sub_80BCB10(u8 taskId) +{ + s16 *data = gTasks[taskId].data; + MenuZeroFillWindowRect(0, 0, 29, 19); + gSaveBlock1.secretBases[data[4]].sbr_field_1_6 = 0; + data[0]--; + if (data[2] > 0) + data[2]--; + if (data[0] < 8) + data[3]--; + sub_80BC7D8(taskId); + gTasks[taskId].func = sub_80BC824; +} |