mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-29 07:10:32 -04:00
feat(decomp): worker gate — +1 fns x0 propagated (fleet 95.2%)
This commit is contained in:
@@ -3429,7 +3429,38 @@ INCLUDE_ASM("asm/ov_SC06_006/nonmatchings/ov_SC06_006_jr_8017BEBC", func_8017F93
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC06_006/nonmatchings/ov_SC06_006_jr_8017BEBC", func_8017FA2C);
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC06_006/nonmatchings/ov_SC06_006_jr_8017BEBC", func_8017FD4C);
|
||||
extern s32 D_801269A4;
|
||||
extern s32 D_801269A8;
|
||||
extern s32 D_801269AC;
|
||||
extern void func_80017E68(void *a0, void *a1);
|
||||
extern void func_800D20C0(void *a0, void *a1, s32 a2);
|
||||
extern void func_800D23D0(void *a0);
|
||||
extern void func_8012F14C(s32 a0, s32 a1, s32 a2);
|
||||
|
||||
void func_8017FD4C(s32 param_1, s16 *param_2, s16 *param_3, void *param_4) {
|
||||
s16 mid[3];
|
||||
s16 dir[3];
|
||||
s32 pos[3];
|
||||
mid[0] = (param_2[0] + param_3[0]) >> 1;
|
||||
mid[1] = (param_2[1] + param_3[1]) >> 1;
|
||||
mid[2] = (param_2[2] + param_3[2]) >> 1;
|
||||
((void (*)(s32, void *, void *))func_8012F14C)(param_1, mid, mid);
|
||||
func_800D20C0(mid, dir, 8);
|
||||
func_80017E68(mid, param_4);
|
||||
dir[0] = (u16)param_3[0] - (u16)param_2[0];
|
||||
dir[1] = (u16)param_3[1] - (u16)param_2[1];
|
||||
dir[2] = (u16)param_3[2] - (u16)param_2[2];
|
||||
ApplyMatrixSV((void *)param_1, dir, dir);
|
||||
func_800D23D0(dir);
|
||||
RotMatrixYXZ(dir, param_4);
|
||||
pos[0] = D_801269A4 - mid[0];
|
||||
pos[1] = D_801269A8 - mid[1];
|
||||
pos[2] = D_801269AC - mid[2];
|
||||
ApplyTransposeMatrixLV(param_4, pos, pos);
|
||||
dir[2] = -ratan2(pos[0], pos[1]);
|
||||
RotMatrixYXZ(dir, param_4);
|
||||
}
|
||||
|
||||
|
||||
INCLUDE_ASM("asm/ov_SC06_006/nonmatchings/ov_SC06_006_jr_8017BEBC", func_8017FECC);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user