From 14a80b635c76df485bfbe15c33391ff1c5e30029 Mon Sep 17 00:00:00 2001 From: Tal Hayon Date: Sun, 22 May 2022 18:44:02 +0300 Subject: [PATCH] Match sub_0801A9F0 --- src/beanstalkSubtask.c | 52 +++++++++++++++++++----------------------- 1 file changed, 24 insertions(+), 28 deletions(-) diff --git a/src/beanstalkSubtask.c b/src/beanstalkSubtask.c index dba0ca54..b4992d01 100644 --- a/src/beanstalkSubtask.c +++ b/src/beanstalkSubtask.c @@ -323,46 +323,42 @@ bool32 sub_0801A980(void) { return FALSE; } -NONMATCH("asm/non_matching/beanstalkSubtask/sub_0801A9F0.inc", - bool32 sub_0801A9F0(u32 param_1, u32 param_2, u32 param_3)) { - +bool32 sub_0801A9F0(u32 param_1, u32 param_2, u32 param_3) { + bool32 cond = FALSE; switch (param_2) { + case 0x360: + cond = TRUE; + break; case 0x361: if (param_1 == 0) { - goto result; - } else { - return FALSE; - } - break; - case 0x362: - if (param_1 == 0x10) { - goto result; - } else { - return FALSE; - } - break; - case 0x363: - if (param_1 == 0x18) { - goto result; - } else { - return FALSE; + cond = TRUE; } break; case 0x364: if (param_1 == 8) { - goto result; - } else { - return FALSE; + cond = TRUE; + } + break; + case 0x362: + if (param_1 == 0x10) { + cond = TRUE; + } + break; + case 0x363: + if (param_1 == 0x18) { + cond = TRUE; } break; - case 0x360: - result: - return sub_0801AA58(&gPlayerEntity, param_3, param_1); default: - return FALSE; + break; } + + if (cond) { + return sub_0801AA58(&gPlayerEntity, param_3, param_1); + } + + return FALSE; } -END_NONMATCH bool32 sub_0801AA58(Entity* this, u32 param_2, u32 param_3) { LayerStruct* layer;