func_8032A09C

This commit is contained in:
Banjo Kazooie
2024-05-04 22:26:15 -05:00
parent c8324143e6
commit 255c800b18
4 changed files with 40 additions and 36 deletions

View File

@@ -1,4 +1,4 @@
# banjo (98.8633%) # banjo (98.9505%)
<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="#08e000" d="M44 0h67v20H44z"/> <path fill="#07e000" 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">98.2363%</text> <text x="78.5" y="15" fill="#010101" fill-opacity=".3">98.3883%</text>
<text x="77.5" y="14">98.2363%</text> <text x="77.5" y="14">98.3883%</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">98.8633%</text> <text x="184.5" y="15" fill="#010101" fill-opacity=".3">98.9505%</text>
<text x="183.5" y="14">98.8633%</text> <text x="183.5" y="14">98.9505%</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -1774,27 +1774,23 @@ typedef struct {
Actor *actor_save_state[]; Actor *actor_save_state[];
}ActorListSaveState; }ActorListSaveState;
#ifndef NONMATCHING void func_8032A09C(s32 arg0, ActorListSaveState *arg1) {
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_9E370/func_8032A09C.s") Actor **temp_v1;
#else s32 pad;
void func_8032A09C(s32 arg0, s32 arg1) {
ActorListSaveState *var_s1 = (s32)arg1;
Actor *var_s0; Actor *var_s0;
u32 var_s2; Actor *temp_v0_6;
u32 var_s3; s32 var_s2;
s32 temp_a0;
Actor **sp60; Actor **sp60;
Actor **sp5C; Actor **sp5C;
s32 sp50[3]; s32 sp50[3];
Actor *temp_v0_6; s32 var_s3;
spawnQueue_lock(); spawnQueue_lock();
if (suBaddieActorArray != NULL) { if (suBaddieActorArray != NULL) {
func_803283BC(); func_803283BC();
var_s3 = 0; var_s3 = 0;
var_s0 = var_s1->actor_save_state; var_s0 = arg1->actor_save_state;
for(var_s2 = var_s1->cnt; var_s2 != 0; var_s2--) { for(var_s2 = arg1->cnt; var_s2 != 0; var_s2--) {
if ((var_s0->unk78_13 != 0) && (var_s3 < var_s0->unk78_13)) { if ((var_s0->unk78_13 != 0) && (var_s3 < var_s0->unk78_13)) {
var_s3 = var_s0->unk78_13; var_s3 = var_s0->unk78_13;
} }
@@ -1807,14 +1803,18 @@ void func_8032A09C(s32 arg0, s32 arg1) {
} }
var_s3++; var_s3++;
sp60 = malloc(var_s3*sizeof(Actor *)); sp60 = malloc(var_s3*sizeof(Actor *));
pad = sp5C + var_s2;
sp5C = malloc(var_s3*sizeof(Actor *)); sp5C = malloc(var_s3*sizeof(Actor *));
for (var_s2 = 0; var_s2 < var_s3; var_s2++) { for (var_s2 = 0; var_s2 < var_s3; var_s2++) {
sp60[var_s2] = 0; *(u32*)&sp60[var_s2] = 0;
sp5C[var_s2] = 0; *(u32*)&sp5C[var_s2] = 0;
} }
var_s0 = var_s1->actor_save_state;
for(var_s2 = var_s1->cnt; var_s2 != 0; var_s2--) {
var_s0 = arg1->actor_save_state;
for(var_s2 = arg1->cnt; var_s2 != 0; var_s2--) {
if (var_s0->unk78_13 != 0) { if (var_s0->unk78_13 != 0) {
sp5C[var_s0->unk78_13] = var_s0; sp5C[var_s0->unk78_13] = var_s0;
} }
@@ -1824,34 +1824,39 @@ void func_8032A09C(s32 arg0, s32 arg1) {
if ((var_s0->unk78_13 != 0)) { if ((var_s0->unk78_13 != 0)) {
sp60[var_s0->unk78_13] = var_s0; sp60[var_s0->unk78_13] = var_s0;
} }
var_s0++;
} }
for(var_s2 = 1; var_s2 < var_s3; var_s2++){ for(var_s2 = 1; var_s2 < var_s3; var_s2++){
if ((sp60[var_s2] != NULL) && (sp5C[var_s2] != NULL) && !sp5C[var_s2]->unkF4_22) { pad = sp5C + var_s2;
actor_copy(sp5C[var_s2], sp60[var_s2]); temp_v1 = sp60 + var_s2;
func_80329B68(sp60[var_s2]); if ((*temp_v1 != NULL) && (*(Actor **)pad != NULL) && !(*(Actor **)pad)->unkF4_22) {
func_803299B4(sp60[var_s2]); var_s0 = *(Actor **)pad;
temp_v0_6 = *temp_v1;
actor_copy(var_s0, temp_v0_6);
func_80329B68(temp_v0_6);
func_803299B4(temp_v0_6);
} }
} }
for(var_s2 = 1; var_s2 < var_s3; var_s2++){ for(var_s2 = 1; var_s2 < var_s3; var_s2++){
if ((sp60[var_s2] != NULL) && !sp60[var_s2]->unk58_1 && (sp5C[var_s2] == NULL)) { pad = sp5C + var_s2;
marker_despawn(sp60[var_s2]->marker); temp_v1 = sp60 + var_s2;
sp60[var_s2] = NULL; if ((*temp_v1 != NULL) && !(*temp_v1)->unk58_1 && (*(Actor **)pad == NULL)) {
marker_despawn((*temp_v1)->marker);
*temp_v1 = NULL;
} }
} }
var_s0 = var_s1->actor_save_state; var_s0 = arg1->actor_save_state;
for(var_s2 = var_s1->cnt; var_s2 != 0; var_s2--){ for(var_s2 = arg1->cnt; var_s2 != 0; var_s2--){
if (var_s0->unk78_13 == 0) { if (var_s0->unk78_13 == 0) {
sp50[0] = (s32) var_s0->position[0]; sp50[0] = (s32) var_s0->position[0];
sp50[1] = (s32) var_s0->position[1]; sp50[1] = (s32) var_s0->position[1];
sp50[2] = (s32) var_s0->position[2]; sp50[2] = (s32) var_s0->position[2];
temp_v0_6 = func_8032811C(var_s0->modelCacheIndex, sp50, (s32) var_s0->yaw); pad = var_s0->yaw;
temp_v0_6 = func_8032811C(var_s0->modelCacheIndex, (sp50), pad);
actor_copy(var_s0, temp_v0_6); actor_copy(var_s0, temp_v0_6);
func_80329B68(temp_v0_6); func_80329B68(temp_v0_6);
func_803299B4(temp_v0_6); func_803299B4(temp_v0_6);
if(temp_v0_6);
} }
var_s0++; var_s0++;
} }
@@ -1861,7 +1866,6 @@ void func_8032A09C(s32 arg0, s32 arg1) {
} }
spawnQueue_unlock(); spawnQueue_unlock();
} }
#endif
void func_8032A5F8(void) { void func_8032A5F8(void) {
Actor *var_s0; Actor *var_s0;