through sub_8110A3C
This commit is contained in:
+68
-1
@@ -1,13 +1,32 @@
|
||||
#include "global.h"
|
||||
#include "script.h"
|
||||
#include "quest_log.h"
|
||||
|
||||
u8 gUnknown_3005E88;
|
||||
|
||||
struct UnkStruct_203AE94
|
||||
{
|
||||
u8 unk_0_0:4;
|
||||
u8 unk_0_4:2;
|
||||
u8 unk_0_6:2;
|
||||
u8 unk_1;
|
||||
};
|
||||
|
||||
EWRAM_DATA u8 gUnknown_203ADF8 = 0;
|
||||
EWRAM_DATA u8 gUnknown_203ADFA = 0;
|
||||
EWRAM_DATA void * gUnknown_203AE04 = NULL;
|
||||
EWRAM_DATA void * gUnknown_203AE08 = NULL;
|
||||
EWRAM_DATA void * gUnknown_203AE0C[32] = {NULL};
|
||||
EWRAM_DATA void (* gUnknown_203AE8C)(void) = 0;
|
||||
EWRAM_DATA struct UnkStruct_203AE94 gUnknown_203AE94 = {0};
|
||||
EWRAM_DATA u8 gUnknown_203AE98[0x100] = {0};
|
||||
|
||||
void sub_8110A00(void);
|
||||
u8 sub_8110E68(void *);
|
||||
void sub_8110A3C(void);
|
||||
void sub_8110E3C(void);
|
||||
void sub_8111AD8(void);
|
||||
void sub_81118F4(s8);
|
||||
void sub_8113BD8(void);
|
||||
void sub_81138F8(void);
|
||||
|
||||
@@ -59,7 +78,7 @@ void sub_811092C(void)
|
||||
gUnknown_203AE8C();
|
||||
}
|
||||
|
||||
bool8 sub_8110944(u8 * a0, s32 a1)
|
||||
bool8 sub_8110944(u8 * a0, size_t a1)
|
||||
{
|
||||
u8 * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_568;
|
||||
u8 * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end;
|
||||
@@ -68,3 +87,51 @@ bool8 sub_8110944(u8 * a0, s32 a1)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool8 sub_8110988(u8 * a0, size_t a1)
|
||||
{
|
||||
u8 * r2 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].filler_568;
|
||||
u8 * r0 = gSaveBlock1Ptr->questLog[gUnknown_203ADF8].end;
|
||||
r0 -= a1;
|
||||
if (a0 < r2 || a0 > r0)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_81109CC(u8 a0)
|
||||
{
|
||||
gUnknown_203ADFA = a0;
|
||||
if (a0 == 1)
|
||||
gUnknown_203AE8C = sub_8110A00;
|
||||
else
|
||||
gUnknown_203AE8C = sub_8110A3C;
|
||||
}
|
||||
|
||||
void sub_8110A00(void)
|
||||
{
|
||||
if (sub_8110E68(gUnknown_203AE98) != 1)
|
||||
{
|
||||
gUnknown_3005E88 = 0;
|
||||
sub_8110E3C();
|
||||
gUnknown_203ADFA = 0;
|
||||
gUnknown_203AE8C = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8110A3C(void)
|
||||
{
|
||||
if (gUnknown_203AE94.unk_0_0 == 2)
|
||||
gUnknown_203AE94.unk_0_0 = 0;
|
||||
|
||||
if (gUnknown_203AE94.unk_0_6 == 0)
|
||||
{
|
||||
if (gUnknown_3005E88 || gUnknown_203AE94.unk_0_0 == 1 || (gUnknown_203AE94.unk_1 < 32 && gUnknown_203AE0C[gUnknown_203AE94.unk_1]))
|
||||
sub_8111AD8();
|
||||
else
|
||||
{
|
||||
gUnknown_203AE94.unk_0_6 = 2;
|
||||
ScriptContext2_Enable();
|
||||
sub_81118F4(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user