From 29ca19be7ef0a65d46942a12d8aa13bd292415cd Mon Sep 17 00:00:00 2001 From: Drew T <50529377+Druthulu@users.noreply.github.com> Date: Fri, 14 Aug 2026 03:23:00 -0600 Subject: [PATCH] =?UTF-8?q?feat(decomp):=20worker=20gate=20=E2=80=94=20+2?= =?UTF-8?q?=20fns=20x0=20propagated=20(fleet=2095.2%)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ov_SC03_119/ov_SC03_119_jr_8017FB84.c | 30 +++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/src/ov_SC03_119/ov_SC03_119_jr_8017FB84.c b/src/ov_SC03_119/ov_SC03_119_jr_8017FB84.c index b5dc42e0b8..f09e20677b 100644 --- a/src/ov_SC03_119/ov_SC03_119_jr_8017FB84.c +++ b/src/ov_SC03_119/ov_SC03_119_jr_8017FB84.c @@ -3625,7 +3625,20 @@ s32 func_801817BC(s32 a0) { } -INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8017FB84", func_801817FC); + s32 func_801817FC(u8 *a0) { + if (--(*(s32 *)(a0 + 0x28)) == -1) { + func_8002D4C8(0x1C, 0); + func_8001BFD0(); + func_8002D4C8(0x1D, 0); + if ((func_80029178(0xB8) & 0xFF) == 0) { + func_800D0C48(1); + } + func_800D1E28(); + *(u8 *)(a0 + 0x15) += 1; + } + return 0; + } + extern s32 func_800D1EBC(void); void func_8018188C(void) { @@ -3911,7 +3924,20 @@ INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8017FB84", func_80182BC INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8017FB84", func_80182C34); -INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8017FB84", func_80182CC4); + extern int func_80178970(void); + extern void func_80182714(int a0); + extern int func_801827A0(int a0, void *a1); + extern void func_801824A0(int a0); + extern char D_8018DE60[]; + void func_80182CC4(int param_1) + { + ((void (*)(void))func_80178970)(); + func_80182714(param_1); + if (func_801827A0(param_1, (void *)&D_8018DE60) != 0) { + func_801824A0(param_1); + } + } + INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8017FB84", func_80182D14);