func_80331638() match

This commit is contained in:
Banjo Kazooie
2023-01-05 13:23:49 -06:00
parent a2b18a0cc5
commit c3d03d7804
4 changed files with 107 additions and 81 deletions

View File

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

View File

@@ -9,7 +9,7 @@
</mask> </mask>
<g mask="url(#anybadge_1)"> <g mask="url(#anybadge_1)">
<path fill="#555" d="M0 0h44v20H0z"/> <path fill="#555" d="M0 0h44v20H0z"/>
<path fill="#11e000" d="M44 0h67v20H44z"/> <path fill="#10e000" d="M44 0h67v20H44z"/>
<path fill="url(#b)" d="M0 0h111v20H0z"/> <path fill="url(#b)" d="M0 0h111v20H0z"/>
</g> </g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"> <g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
@@ -17,7 +17,7 @@
<text x="22.0" y="14">core2</text> <text x="22.0" y="14">core2</text>
</g> </g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"> <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">96.2338%</text> <text x="78.5" y="15" fill="#010101" fill-opacity=".3">96.3339%</text>
<text x="77.5" y="14">96.2338%</text> <text x="77.5" y="14">96.3339%</text>
</g> </g>
</svg> </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> <text x="75.0" y="14">Banjo-Kazooie (us.v10)</text>
</g> </g>
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"> <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">97.3403%</text> <text x="184.5" y="15" fill="#010101" fill-opacity=".3">97.3978%</text>
<text x="183.5" y="14">97.3403%</text> <text x="183.5" y="14">97.3978%</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1685,83 +1685,109 @@ s32 func_803311D4(Cube *arg0, f32 *arg1, f32 *arg2, f32 *arg3, u32 arg4) {
return var_s6; return var_s6;
} }
#ifndef NONMATCHING s32 func_80331638(Cube *cube, f32 arg1[3], f32 arg2[3], f32 arg3, f32 arg4[3], s32 arg5, u32 flags)
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_A5BC0/func_80331638.s") {
#else f32 *new_var2;
s32 func_80331638(Cube *cube, f32 arg1[3], f32 arg2[3], f32 arg3, f32 arg4[3], s32 arg5, u32 flags) { s32 spD8;
s32 spD8; Actor *temp_v0_6;
Actor *temp_v0_6; BKModelBin *temp_v0_2;
BKModelBin *temp_v0_2; BKVertexList *temp_a1;
BKVertexList *temp_a1; BKCollisionList *temp_v0_3;
BKCollisionList *temp_v0_3; f32 spBC[3];
u32 var_s3; f32 spB0[3];
f32 spBC[3]; u32 var_s3;
f32 spB0[3]; f32 *new_var;
f32 sp98[3]; BKModelBin *pad9C;
f32 sp8C[3]; f32 sp98[3];
s32 var_v0; f32 sp8C[3];
ActorMarker *temp_a0; s32 var_v0;
Struct6Cs *temp_v0_7; ActorMarker *temp_a0;
Prop *var_s0; Struct6Cs *temp_v0_7;
Prop *var_s0;
spD8 = 0; spD8 = 0;
var_s3 = cube->prop2Cnt; var_s0 = cube->prop2Ptr;
var_s0 = cube->prop2Ptr; var_s3 = cube->prop2Cnt;
while(var_s3 != 0) { new_var2 = sp8C;
if (!var_s0->markerFlag && var_s0->unk8_1 && var_s0->unk8_4) { for (; var_s3 != 0; var_s0++, var_s3--)
temp_v0_2 = func_8030A4B4((u32)(*(u16 *)(&var_s0->modelProp)) >> 4); {
if (temp_v0_2 != NULL) { if (((!var_s0->markerFlag) && var_s0->unk8_1) && var_s0->unk8_4)
temp_v0_3 = func_8033A084(temp_v0_2); {
if (temp_v0_3 != NULL) { temp_v0_2 = func_8030A4B4(((u32) (*((u16 *) (&var_s0->modelProp)))) >> 4);
spBC[0] = (f32) var_s0->modelProp.unk4[0]; if (temp_v0_2 == 0)
spBC[1] = (f32) var_s0->modelProp.unk4[1]; {
spBC[2] = (f32) var_s0->modelProp.unk4[2]; continue;
spB0[0] = 0.0f; }
spB0[1] = (f32) (var_s0->modelProp.unk0_15 * 2); temp_v0_3 = func_8033A084(temp_v0_2);
spB0[2] = (f32) (var_s0->modelProp.unk0_7 * 2); if (temp_v0_3 == 0)
var_v0 = func_802E9118(temp_v0_3, func_8033A148(temp_v0_2), spBC, spB0, (f32) ((f32) var_s0->modelProp.unkA / 100.0), arg1, arg2, arg3, arg4, arg5, flags); {
if (var_v0 != 0) { continue;
spD8 = var_v0; }
} spBC[0] = (f32) var_s0->modelProp.unk4[0];
} spBC[1] = (f32) var_s0->modelProp.unk4[1];
} spBC[2] = (f32) var_s0->modelProp.unk4[2];
} else if (var_s0->markerFlag && var_s0->unk8_3 && var_s0->unk8_4) { spB0[0] = 0.0f;
temp_v0_2 = func_80330DE4(var_s0->actorProp.marker); spB0[1] = (f32) (var_s0->modelProp.unk0_15 * 2);
if (temp_v0_2 != NULL) { new_var = spB0;
temp_v0_3 = func_8033A084(temp_v0_2); spB0[2] = (f32) (var_s0->modelProp.unk0_7 * 2);
if (temp_v0_3 != NULL) { var_v0 = func_802E9118(temp_v0_3, func_8033A148(temp_v0_2), spBC, new_var, (f32) (((f32) var_s0->modelProp.unkA) / 100.0), arg1, arg2, arg3, arg4, arg5, flags);
temp_v0_6 = marker_getActor(var_s0->actorProp.marker); if (var_v0 != 0)
temp_a1 = func_80330C74(temp_v0_6); {
sp98[0] = (f32) var_s0->actorProp.x; spD8 = var_v0;
sp98[1] = (f32) var_s0->actorProp.y; }
sp98[2] = (f32) var_s0->actorProp.z;
sp8C[0] = (f32)var_s0->actorProp.marker->pitch;
sp8C[1] = (f32)var_s0->actorProp.marker->yaw;
sp8C[2] = (f32)var_s0->actorProp.marker->roll;
var_v0 = func_802E9118(temp_v0_3, temp_a1, sp98, sp8C, temp_v0_6->scale, arg1, arg2, arg3, arg4, arg5, flags);
if (var_v0 != 0) {
spD8 = var_v0;
}
}
}
} else if (var_s0->markerFlag) {
temp_a0 = var_s0->actorProp.marker;
temp_v0_7 = temp_a0->unk18;
if (temp_v0_7 != NULL) {
if (temp_v0_7->unk4 != NULL) {
var_v0 = temp_v0_7->unk4(temp_a0, arg1, arg2, arg3, arg4, arg5, flags);
if (var_v0 != 0) {
spD8 = var_v0;
}
}
}
}
var_s0++;
var_s3--;
} }
return spD8; else
if ((var_s0->markerFlag && var_s0->unk8_3) && var_s0->unk8_4)
{
temp_v0_3 = func_80330DE4(var_s0->actorProp.marker);
pad9C = temp_v0_3;
if (temp_v0_3 == 0)
{
continue;
}
temp_v0_2 = func_8033A084(pad9C);
if (temp_v0_2 == 0)
{
continue;
}
temp_v0_6 = marker_getActor(var_s0->actorProp.marker);
temp_a1 = func_80330C74(temp_v0_6);
{
sp98[0] = (f32) var_s0->actorProp.x;
sp98[1] = (f32) var_s0->actorProp.y;
sp98[2] = (f32) var_s0->actorProp.z;
sp8C[0] = (f32) var_s0->actorProp.marker->pitch;
sp8C[1] = (f32) var_s0->actorProp.marker->yaw;
sp8C[2] = (f32) var_s0->actorProp.marker->roll;
var_v0 = func_802E9118(temp_v0_2, temp_a1, sp98, new_var2, temp_v0_6->scale, arg1, arg2, arg3, arg4, arg5, flags);
}
if (var_v0 != 0)
{
spD8 = var_v0;
}
}
else
if (var_s0->markerFlag)
{
temp_a0 = var_s0->actorProp.marker;
temp_v0_7 = temp_a0->unk18;
if (temp_v0_7 == 0)
{
continue;
}
if (temp_v0_7->unk4 != 0)
{
var_v0 = temp_v0_7->unk4(temp_a0, arg1, arg2, arg3, arg4, arg5, flags);
if (var_v0 != 0)
{
spD8 = var_v0;
}
}
}
}
return spD8;
} }
#endif
#ifndef NONMATCHING #ifndef NONMATCHING
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_A5BC0/func_803319C0.s") #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_A5BC0/func_803319C0.s")