func_803603AC

This commit is contained in:
Banjo Kazooie
2024-05-07 10:36:25 -05:00
parent dee99f4207
commit 531e6c97b4
4 changed files with 22 additions and 25 deletions

View File

@@ -1,4 +1,4 @@
# banjo (99.0163%)
# banjo (99.0364%)
<img src="./progress/progress_total.svg">

View File

@@ -17,7 +17,7 @@
<text x="22.0" y="14">core2</text>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="78.5" y="15" fill="#010101" fill-opacity=".3">98.5031%</text>
<text x="77.5" y="14">98.5031%</text>
<text x="78.5" y="15" fill="#010101" fill-opacity=".3">98.5381%</text>
<text x="77.5" y="14">98.5381%</text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -17,7 +17,7 @@
<text x="75.0" y="14">Banjo-Kazooie (us.v10)</text>
</g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
<text x="184.5" y="15" fill="#010101" fill-opacity=".3">99.0163%</text>
<text x="183.5" y="14">99.0163%</text>
<text x="184.5" y="15" fill="#010101" fill-opacity=".3">99.0364%</text>
<text x="183.5" y="14">99.0364%</text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -6,6 +6,9 @@
extern f32 func_80309724(f32[3]);
extern f32 func_80257204(f32, f32, f32, f32);
#define SQ(x) ((x) * (x))
typedef struct {
f32 unk0;
f32 unk4;
@@ -274,15 +277,11 @@ bool func_80360198(Actor *this) {
return TRUE;
}
#ifndef NONMATCHING
f32 func_803603AC(Actor *this, s32 arg1, u8 arg2);
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_D89E0/func_803603AC.s")
#else
f32 func_803603AC(Actor *this, s32 arg1, u8 arg2){
f32 num;
f32 den;
f32 phi_f2;
f32 sp2C[3];
f32 dy;
f32 D1, D2;
f32 unused;
f32 sp20[3];
switch (arg2) {
@@ -297,25 +296,23 @@ f32 func_803603AC(Actor *this, s32 arg1, u8 arg2){
break;
}
sp2C[0] = (this->position[0] - sp20[0]);
sp2C[1] = (this->position[1] - sp20[1]);
sp2C[2] = (this->position[2] - sp20[2]);
den =(sp2C[0]*sp2C[0] + sp2C[2]*sp2C[2]);
// if(den);
num = (sp2C[1] - arg1);
if(num == 0.0 || den == 0.0)
D1 = SQ(this->position[0] - sp20[0]);
D2 = SQ(this->position[2] - sp20[2]);
dy = this->position[1] - sp20[1] - arg1;
if(dy == 0.0 || D1 + D2 == 0.0)
return 0.0f;
phi_f2 = -(this->unk28*num)/den;
phi_f2 = -(this->unk28*(dy))/(D1 + D2);
if (phi_f2 >= 4.0f) {
return 4.0f;
phi_f2 = 4.0f;
} else if (phi_f2 <= -4.0f) {
phi_f2 = -4.0f;
}
if(-4.0f >= phi_f2)
phi_f2 = -4.0f;
return phi_f2;
}
#endif
int func_803604E8(Actor *this){
f32 tmp_f0;