BGS overlay 100%

This commit is contained in:
Banjo Kazooie
2022-11-09 20:05:06 -06:00
parent c0873407e6
commit 9187a22da6
4 changed files with 135 additions and 110 deletions

View File

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

View File

@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="101" height="20"> <svg xmlns="http://www.w3.org/2000/svg" width="108" height="20">
<linearGradient id="b" x2="0" y2="100%"> <linearGradient id="b" x2="0" y2="100%">
<stop offset="0" stop-color="#bbb" stop-opacity=".1"/> <stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
<stop offset="1" stop-opacity=".1"/> <stop offset="1" stop-opacity=".1"/>
</linearGradient> </linearGradient>
<mask id="anybadge_1"> <mask id="anybadge_1">
<rect width="101" height="20" rx="3" fill="#fff"/> <rect width="108" height="20" rx="3" fill="#fff"/>
</mask> </mask>
<g mask="url(#anybadge_1)"> <g mask="url(#anybadge_1)">
<path fill="#555" d="M0 0h34v20H0z"/> <path fill="#555" d="M0 0h34v20H0z"/>
<path fill="#0de000" d="M34 0h67v20H34z"/> <path fill="#00e000" d="M34 0h74v20H34z"/>
<path fill="url(#b)" d="M0 0h101v20H0z"/> <path fill="url(#b)" d="M0 0h108v20H0z"/>
</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="18.0" y="15" fill="#010101" fill-opacity=".3">BGS</text> <text x="18.0" y="15" fill="#010101" fill-opacity=".3">BGS</text>
<text x="17.0" y="14">BGS</text> <text x="17.0" y="14">BGS</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="68.5" y="15" fill="#010101" fill-opacity=".3">97.1656%</text> <text x="72.0" y="15" fill="#010101" fill-opacity=".3">100.0000%</text>
<text x="67.5" y="14">97.1656%</text> <text x="71.0" y="14">100.0000%</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">94.1800%</text> <text x="184.5" y="15" fill="#010101" fill-opacity=".3">94.2550%</text>
<text x="183.5" y="14">94.1800%</text> <text x="183.5" y="14">94.2550%</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -92,81 +92,100 @@ void func_8038F610(Actor *this) {
void func_8028F94C(s32, f32[3]); void func_8028F94C(s32, f32[3]);
void func_8028F918(s32); void func_8028F918(s32);
#ifndef NONMATCHING void func_8038F6A4(Actor *this)
#pragma GLOBAL_ASM("asm/nonmatchings/BGS/ch/tanktup/func_8038F6A4.s") {
#else ActorLocal_TanktupBody *local = (ActorLocal_TanktupBody *) (&this->local);
void func_8038F6A4(Actor *this) {
ActorLocal_TanktupBody * local = (ActorLocal_TanktupBody *)&this->local;
f32 sp48[3]; f32 sp48[3];
s32 sp44; s32 sp44;
NodeProp *temp_v0; Prop *temp_v0;
f32 sp34[3]; if (!this->initialized)
{
if(!this->initialized){
temp_v0 = func_80304C38(ACTOR_32B_UNKNOWN, this); temp_v0 = func_80304C38(ACTOR_32B_UNKNOWN, this);
if (temp_v0 == NULL) { if (temp_v0 == 0)
{
local->unk18[0] = 3672.0f; local->unk18[0] = 3672.0f;
local->unk18[1] = 100.0f; local->unk18[1] = 100.0f;
local->unk18[2] = 987.0f; local->unk18[2] = 987.0f;
} else { }
else
{
nodeprop_getPosition(temp_v0, local->unk18); nodeprop_getPosition(temp_v0, local->unk18);
} }
this->unk138_24 = FALSE; this->unk138_24 = 0;
this->initialized = TRUE; this->initialized = 1;
} }
if (!this->unk16C_4)
if(!this->unk16C_4){ {
this->unk16C_4 = TRUE; this->unk16C_4 = 1;
this->marker->propPtr->unk8_3 = TRUE; this->marker->propPtr->unk8_3 = 1;
actor_collisionOff(this); actor_collisionOff(this);
this->scale = 1.0f; this->scale = 1.0f;
for(sp44 = 0; sp44 < 4; sp44++){ for (sp44 = 0; sp44 < 4; sp44++)
if (local->unk0[sp44] == 0) { {
func_802C3E10(func_8038F470, this->marker, local->unk0[sp44], sp44); if (local->unk0[sp44] == 0)
{
func_802C3E10(func_8038F470, *((s32 *) (&this->marker)), local->unk0[sp44], sp44);
} }
} }
if (local)
{
;
} }
switch(this->state){ }
switch (this->state)
{
case 1: case 1:
func_8038F610(this); func_8038F610(this);
player_getPosition(&sp48); player_getPosition(sp48);
if (!this->unk138_24) { if (!this->unk138_24)
if( ml_vec3f_distance(local->unk18, &sp48) < 250.0f {
&& ml_vec3f_distance(local->unk18, &sp48) > 80.0f if ((((ml_vec3f_distance(local->unk18, sp48) < 250.0f) && (ml_vec3f_distance(local->unk18, sp48) > 80.0f)) && (!func_8028ECAC())) && (player_getTransformation() == TRANSFORM_1_BANJO))
&& !func_8028ECAC() {
&& player_getTransformation() == TRANSFORM_1_BANJO func_80311480(0xC7E, 0, 0, 0, 0, 0);
) { this->unk138_24 = 1;
func_80311480(0xC7E, 0, NULL, NULL, NULL, NULL);
this->unk138_24 = TRUE;
} }
} }
if (local->unk10) { if (local->unk10)
{
func_80328B8C(this, 2, 0.0f, -1); func_80328B8C(this, 2, 0.0f, -1);
local->unk10 = 0; local->unk10 = 0;
local->unk14 = TRUE;\ sp44 = 0;
for(sp44 = 0; sp44 < 4; sp44++){ if(&sp44);
if(local->unk0[sp44] == 0){ local->unk14 = 1;
local->unk14 = FALSE; for (; sp44 < 4; sp44++)
{
if (local->unk0[sp44] == 0)
{
local->unk14 = 0;
} }
} }
if(!this->unk138_23 && !local->unk14){
if(func_80311480(0xC80, 0, NULL, NULL, NULL, NULL)) if ((!this->unk138_23) && (!local->unk14))
this->unk138_23 = TRUE; {
if (func_80311480(0xC80, 0, 0, 0, 0, 0))
{
this->unk138_23 = 1;
}
} }
} }
break; break;
case 2: case 2:
func_8038F610(this); func_8038F610(this);
if (actor_animationIsAt(this, 0.6f) && local->unk14) { if (actor_animationIsAt(this, 0.6f) && local->unk14)
{
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000); func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 28000);
func_8028F94C(2, local->unk18); func_8028F94C(2, local->unk18);
} }
if (actor_animationIsAt(this, 0.99f)) { if (actor_animationIsAt(this, 0.99f))
if (!local->unk14) { {
if (!local->unk14)
{
func_80328B8C(this, 1, 0.0f, -1); func_80328B8C(this, 1, 0.0f, -1);
} }
else{ else
{
func_80328B8C(this, 3, 0.0f, -1); func_80328B8C(this, 3, 0.0f, -1);
actor_playAnimationOnce(this); actor_playAnimationOnce(this);
} }
@@ -174,31 +193,37 @@ void func_8038F6A4(Actor *this) {
break; break;
case 3: case 3:
// (local); if (actor_animationIsAt(this, 0.1f) != 0)
if (actor_animationIsAt(this, 0.1f) != 0) { {
timed_setCameraToNode(0.0f, 0xD); timed_setCameraToNode(0.0f, 0xD);
} }
if (actor_animationIsAt(this, 0.55f) != 0) { if (actor_animationIsAt(this, 0.55f) != 0)
{
func_8030E624(0x797FF885U); func_8030E624(0x797FF885U);
} }
if (actor_animationIsAt(this, 0.4f) != 0) { if (actor_animationIsAt(this, 0.4f) != 0)
{
f32 sp34[3];
func_8034A174(this->marker->unk44, 6, sp34); func_8034A174(this->marker->unk44, 6, sp34);
func_802C8F70(this->yaw); func_802C8F70(this->yaw);
sp34[1] -= 125.0f; sp34[1] -= 125.0f;
jiggySpawn(JIGGY_26_BGS_TANKTUP, sp34); jiggySpawn(JIGGY_26_BGS_TANKTUP, sp34);
} }
if (actor_animationIsAt(this, 0.9f) != 0) { if (actor_animationIsAt(this, 0.9f) != 0)
{
func_8028F918(0); func_8028F918(0);
if (jiggyscore_isCollected(JIGGY_26_BGS_TANKTUP) == 0) { if (jiggyscore_isCollected(JIGGY_26_BGS_TANKTUP) == 0)
func_80311480(0xC7F, 0xF, this->position, this->marker, func_8038F5E4, NULL); {
func_80311480(0xC7F, 0xF, this->position, this->marker, func_8038F5E4, 0);
} }
else{ else
{
func_8038F5E4(this->marker, 0xC7F, -1); func_8038F5E4(this->marker, 0xC7F, -1);
} }
} }
break; break;
}
}
#endif
}
}