core2/code_935F0.c done

This commit is contained in:
Banjo Kazooie
2022-08-17 23:03:46 -05:00
parent 1b417fb873
commit 51284af959
36 changed files with 787 additions and 527 deletions

View File

@@ -710,6 +710,6 @@ void func_802AE9C8(void);
void func_802AEA2C(void); void func_802AEA2C(void);
void func_802AEB24(void); void func_802AEB24(void);
void func_802AF604(void); void func_802AF604(void);
void func_802AF668(void); void bsdronevanish_update(void);
void func_802AF768(void); void func_802AF768(void);
#endif #endif

View File

@@ -351,6 +351,13 @@ enum button_e{
BUTTON_C_RIGHT = 0xD BUTTON_C_RIGHT = 0xD
}; };
#define FACE_BUTTON(button) (button - BUTTON_A)
enum joystick_e{
JOYSTICK_X = 0x0,
JOYSTICK_Y = 0x1
};
enum map_e enum map_e
{ {
MAP_1_SM_SPIRAL_MOUNTAIN = 0x01, MAP_1_SM_SPIRAL_MOUNTAIN = 0x01,

View File

@@ -318,15 +318,6 @@ typedef struct struct_16_s{
s32 unkC; s32 unkC;
}struct16s; }struct16s;
typedef struct struct_1A_s{
f32 unk0;
f32 unk4;
u8 *str;
s16 unkC;
u8 unkE;
u8 unkF;
}struct1As;
typedef struct struct_1B_s{ typedef struct struct_1B_s{
s16 map; s16 map;
s16 exit; s16 exit;
@@ -338,13 +329,6 @@ typedef struct struct_1C_1_s{
u8 *string; //0x4 u8 *string; //0x4
}struct1Cs_1; }struct1Cs_1;
typedef struct struct_1C_s{
s8 unk0;
s8 unk1;
s16 x; //0x2
u8 *string; //0x4
}struct1Cs;
typedef struct struct_1D_s{ typedef struct struct_1D_s{
BKModel *unk0; BKModel *unk0;
s16 unk4; s16 unk4;
@@ -891,4 +875,8 @@ typedef struct{
s16 count; s16 count;
s32 offset[]; s32 offset[];
}Struct84s; }Struct84s;
typedef struct{
u8 pad0[1];
}struct85s;
#endif #endif

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="#55e000" d="M44 0h67v20H44z"/> <path fill="#54e000" 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">80.9535%</text> <text x="78.5" y="15" fill="#010101" fill-opacity=".3">81.1645%</text>
<text x="77.5" y="14">80.9535%</text> <text x="77.5" y="14">81.1645%</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">84.0543%</text> <text x="184.5" y="15" fill="#010101" fill-opacity=".3">84.1753%</text>
<text x="183.5" y="14">84.0543%</text> <text x="183.5" y="14">84.1753%</text>
</g> </g>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -595,7 +595,7 @@ void chvilegame_update(Actor *this) {
if (this->state == 5) { if (this->state == 5) {
if (local->unkC == 7) { if (local->unkC == 7) {
func_8024E55C(0, sp30); func_8024E55C(0, sp30);
if ((sp30[BUTTON_Z] > 0) && func_8038C2A8(local->vile_marker)) { if ((sp30[FACE_BUTTON(BUTTON_B)] > 0) && func_8038C2A8(local->vile_marker)) {
func_8038A068(this, 0xA); func_8038A068(this, 0xA);
} }
} else { } else {

View File

@@ -473,7 +473,7 @@ void func_803896FC(Actor *this){
&& func_8028ECAC() == 0 && func_8028ECAC() == 0
&& func_8028F20C() && func_8028F20C()
&& func_8028EFC8() && func_8028EFC8()
&& sp3C[1] == 1 && sp3C[FACE_BUTTON(BUTTON_B)] == 1
&& !func_803114B0() && !func_803114B0()
){ ){
if( local->unk19 == 1 if( local->unk19 == 1

View File

@@ -94,7 +94,7 @@ void func_803891E8(s32 x, s32 y, s32 z, s32 yaw){
void func_80389244(s32 x, s32 y, s32 z, s32 yaw){ void func_80389244(s32 x, s32 y, s32 z, s32 yaw){
func_802C3F04(func_803891E8, x, y, z, yaw); func_802C3F04(func_803891E8, x, y, z, yaw);
func_802BB3DC(0, 10.0f, 0.8f); func_802BB3DC(0, 10.0f, 0.8f);
func_80314AC8(1); gcpausemenu_80314AC8(1);
} }
void func_803892A8(ActorMarker **ptr){ void func_803892A8(ActorMarker **ptr){
@@ -113,7 +113,7 @@ void func_803892A8(ActorMarker **ptr){
jujuPtr->unk4 = 0xC; jujuPtr->unk4 = 0xC;
func_8030E484(0x3f6); func_8030E484(0x3f6);
if(i == 3){ if(i == 3){
func_80314AC8(0); gcpausemenu_80314AC8(0);
timedFunc_set_4(1.25f, func_80389244, jujuPtr->unk8_x, jujuPtr->unk8_y, jujuPtr->unk8_z, actorPtr->yaw); timedFunc_set_4(1.25f, func_80389244, jujuPtr->unk8_x, jujuPtr->unk8_y, jujuPtr->unk8_z, actorPtr->yaw);
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x6d60); func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x6d60);
} }

View File

@@ -450,7 +450,7 @@ void func_803899B0(Actor * this){
){ ){
if(this->unkF4_8 != 8 || !func_8031FF1C(0xFC)){ if(this->unkF4_8 != 8 || !func_8031FF1C(0xFC)){
if( func_8028EFC8() if( func_8028EFC8()
&& sp50[1] == 1 && sp50[FACE_BUTTON(BUTTON_B)] == 1
){ ){
if(sp34 || this->unkF4_8 == 1 || this->unkF4_8 == 8){ if(sp34 || this->unkF4_8 == 1 || this->unkF4_8 == 8){
func_80388FA0(this, 5); func_80388FA0(this, 5);
@@ -528,9 +528,9 @@ void func_803899B0(Actor * this){
if(this->unk38_0){ if(this->unk38_0){
this->unk60 += time_getDelta(); this->unk60 += time_getDelta();
if(func_803114C4() != 0xe1d){ if(func_803114C4() != 0xe1d){
if(sp50[0] == 1) if(sp50[FACE_BUTTON(BUTTON_A)] == 1)
sp38 = 1; //A button pressed sp38 = 1; //A button pressed
else if(sp50[1] == 1) else if(sp50[FACE_BUTTON(BUTTON_B)] == 1)
sp38 = 0; //B button pressed sp38 = 0; //B button pressed
}//L8038A218 }//L8038A218

View File

@@ -130,7 +130,7 @@ void func_8038A5D8(Actor *this){
sp5C[2] = this->velocity_z; sp5C[2] = this->velocity_z;
func_8028FAB0(sp5C); func_8028FAB0(sp5C);
if( func_8028EFC8() if( func_8028EFC8()
&& sp44[1] == 1 && sp44[FACE_BUTTON(BUTTON_B)] == 1
&& func_8028F20C() && func_8028F20C()
){ ){
if(this->sm_4070.unk0) if(this->sm_4070.unk0)

View File

@@ -167,9 +167,9 @@ void func_80389CC4(s16 arg0[3], s32 arg1){
func_802EFB98(D_8038D700, &D_8038C928); func_802EFB98(D_8038D700, &D_8038C928);
particleEmitter_emitN(D_8038D700, 5); particleEmitter_emitN(D_8038D700, 5);
D_8038D708[2] += 300.0f; D_8038D708[2] += 300.0f;
func_80314AC8(0); gcpausemenu_80314AC8(0);
timedFunc_set_2(0.1f, (TFQM2) func_8028F45C, 9, (s32)&D_8038D708); timedFunc_set_2(0.1f, (TFQM2) func_8028F45C, 9, (s32)&D_8038D708);
timedFunc_set_1(0.1f, (TFQM1) func_80314AC8, 1); timedFunc_set_1(0.1f, (TFQM1) gcpausemenu_80314AC8, 1);
func_80311480(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL); func_80311480(ASSET_A17_TEXT_BURIED_TREASURE_SPAWNED, 4, NULL, NULL, NULL, NULL);
D_8037DCB4++; D_8037DCB4++;
}//L80389E70 }//L80389E70

View File

@@ -13,7 +13,7 @@ struct_drone D_80364B30[] = {
{02, {func_802AEEF4, func_802AEFB0, func_802AF164, func_80296608}}, {02, {func_802AEEF4, func_802AEFB0, func_802AF164, func_80296608}},
{04, {bsdronexform_init, bsdronexform_update, bsdronexform_end, bsdronexform_interrupt}}, {04, {bsdronexform_init, bsdronexform_update, bsdronexform_end, bsdronexform_interrupt}},
{05, {func_802AE9C8, func_802AEA2C, func_802AEB24, NULL}}, {05, {func_802AE9C8, func_802AEA2C, func_802AEB24, NULL}},
{06, {func_802AF604, func_802AF668, func_802AF768, NULL}}, {06, {func_802AF604, bsdronevanish_update, func_802AF768, NULL}},
{0} {0}
}; };

View File

@@ -98,6 +98,6 @@ void func_802B9B14(void){
} }
void func_802B9D00(void){ void func_802B9D00(void){
if(bs_getInterruptType() == 0xA) if(bs_getInterruptType() == BS_INTR_A)
func_80296608(); func_80296608();
} }

View File

@@ -373,9 +373,9 @@ void func_802C4C14(Actor *this){
break; break;
case 5://L802C5040 case 5://L802C5040
if(D_8037DD2C == 0 && if(D_8037DD2C == 0 &&
(sp5C[0] == 1 || sp5C[1] == 1) (sp5C[FACE_BUTTON(BUTTON_A)] == 1 || sp5C[FACE_BUTTON(BUTTON_B)] == 1)
){ ){
if(sp5C[0] == 1){ if(sp5C[FACE_BUTTON(BUTTON_A)] == 1){
func_802C4AC8(sp84); func_802C4AC8(sp84);
func_8025A6EC(COMUSIC_2B_DING_B, 22000); func_8025A6EC(COMUSIC_2B_DING_B, 22000);
} }
@@ -419,7 +419,7 @@ void func_802C4C14(Actor *this){
func_8025A6EC(COMUSIC_2C_BUZZER, 22000); func_8025A6EC(COMUSIC_2C_BUZZER, 22000);
} }
} }
else if(sp5C[0] == 1){//L802C5250 else if(sp5C[FACE_BUTTON(BUTTON_A)] == 1){//L802C5250
if(func_8033D1BC(sp84)){ if(func_8033D1BC(sp84)){
if(randf() < 0.1){ if(randf() < 0.1){
switch(sp84){ switch(sp84){

View File

@@ -361,7 +361,7 @@ void func_802D9D60(Actor *this){
if( !func_8028ECAC() if( !func_8028ECAC()
&& func_80329530(this, 0xFA) && func_80329530(this, 0xFA)
&& func_8028EFC8() && func_8028EFC8()
&& sp50[BUTTON_Z] == 1 && sp50[FACE_BUTTON(BUTTON_B)] == 1
){ ){
func_802D9CBC(this); func_802D9CBC(this);
} }

View File

@@ -13,8 +13,8 @@ struct {
u8 D_8037D468; u8 D_8037D468;
/* .code */ /* .code */
void func_802AF1B0(s32 arg0) { void bsdronevanish_setState(s32 next_state) {
switch (arg0) { switch (next_state) {
case 1: case 1:
func_8029E3C0(0, 0.3f); func_8029E3C0(0, 0.3f);
break; break;
@@ -24,13 +24,13 @@ void func_802AF1B0(s32 arg0) {
func_8029E3C0(0, 0.4f); func_8029E3C0(0, 0.4f);
break; break;
case 3: case 3:
func_80314B30(); gcpausemenu_returnToLair();
func_802921C8(0); func_802921C8(0);
comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000); comusic_8025AB44(COMUSIC_43_ENTER_LEVEL_GLITTER, 0, 2000);
func_8029E3C0(0, 2.0f); func_8029E3C0(0, 2.0f);
break; break;
} }
D_8037D468 = arg0; D_8037D468 = next_state;
} }
void func_802AF268(void) { void func_802AF268(void) {
@@ -97,10 +97,10 @@ void func_802AF604(void){
func_80294378(6); func_80294378(6);
func_802AF4E0(); func_802AF4E0();
D_8037D468 = 0; D_8037D468 = 0;
func_802AF1B0(1); bsdronevanish_setState(1);
} }
void func_802AF668(void) { void bsdronevanish_update(void) {
s32 next_state; s32 next_state;
bool sp20; bool sp20;
@@ -109,7 +109,7 @@ void func_802AF668(void) {
case 1: case 1:
func_802AF550(); func_802AF550();
if (func_8029E1A8(0)) { if (func_8029E1A8(0)) {
func_802AF1B0(2); bsdronevanish_setState(2);
} }
break; break;
case 2: case 2:
@@ -117,7 +117,7 @@ void func_802AF668(void) {
sp20 = func_8029E1A8(0); sp20 = func_8029E1A8(0);
func_80291FB8((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 0.0f, 255.0f)); func_80291FB8((s32) ml_map_f(func_8029E270(0), 0.0f, 0.4f, 0.0f, 255.0f));
if (sp20) { if (sp20) {
func_802AF1B0(3); bsdronevanish_setState(3);
} }
break; break;
case 3: case 3:

View File

@@ -563,7 +563,7 @@ void func_8028BCA0(Prop *prop){
timedFunc_set_1(2.0f, func_8035644C, 0xB); timedFunc_set_1(2.0f, func_8035644C, 0xB);
item_inc(ITEM_13_EMPTY_HONEYCOMB); item_inc(ITEM_13_EMPTY_HONEYCOMB);
if(!(item_getCount(ITEM_13_EMPTY_HONEYCOMB) < 6)){ if(!(item_getCount(ITEM_13_EMPTY_HONEYCOMB) < 6)){
func_80314AC8(0); gcpausemenu_80314AC8(0);
} }
func_802F36DC(&prop->actorProp.x); func_802F36DC(&prop->actorProp.x);
marker_despawn(marker); marker_despawn(marker);

View File

@@ -141,7 +141,7 @@ void func_802D1998(ActorMarker *caller, enum asset_e text_id, s32 arg2){
case 0xd90: //L802D1A40 case 0xd90: //L802D1A40
func_80320004(BKPROG_12_HAS_TRANSFORMED_BEFORE, TRUE); func_80320004(BKPROG_12_HAS_TRANSFORMED_BEFORE, TRUE);
func_80311480(0xD8F + D_8037DDF0, 4, NULL, NULL, NULL, NULL); func_80311480(0xD8F + D_8037DDF0, 4, NULL, NULL, NULL, NULL);
func_80314AC8(1); gcpausemenu_80314AC8(1);
break; break;
case 0xdaa: //L802D1A7C /* fall-through */ case 0xdaa: //L802D1A7C /* fall-through */
@@ -175,7 +175,7 @@ void func_802D1998(ActorMarker *caller, enum asset_e text_id, s32 arg2){
return; return;
default: //L802D1B64 default: //L802D1B64
func_80314AC8(1); gcpausemenu_80314AC8(1);
break; break;
} }
func_80328A84(this, 4); func_80328A84(this, 4);
@@ -196,7 +196,7 @@ void func_802D1B8C(Actor *this, enum transformation_e transform_id) {
func_80320004(BKPROG_F7_HAS_TRANSFORMED_IN_CRYPT, TRUE); func_80320004(BKPROG_F7_HAS_TRANSFORMED_IN_CRYPT, TRUE);
return; return;
} }
func_80314AC8(1); gcpausemenu_80314AC8(1);
func_80328A84(this, 4U); func_80328A84(this, 4U);
return; return;
} }
@@ -306,7 +306,7 @@ void func_802D1CF0(Actor *this) {
&& func_8028EFC8() && func_8028EFC8()
){ ){
func_8024E55C(0, &sp58); func_8024E55C(0, &sp58);
if(sp58[BUTTON_Z] == 1){ if(sp58[FACE_BUTTON(BUTTON_B)] == 1){
if (D_8037DDF0 == TRANSFORM_7_WISHWASHY) { if (D_8037DDF0 == TRANSFORM_7_WISHWASHY) {
this->unk38_31 = 0; this->unk38_31 = 0;
} else if (player_getTransformation() == TRANSFORM_1_BANJO && !func_8031FF1C(func_802D17A0(D_8037DDF0)) && map_get() != MAP_7A_GL_CRYPT){ } else if (player_getTransformation() == TRANSFORM_1_BANJO && !func_8031FF1C(func_802D17A0(D_8037DDF0)) && map_get() != MAP_7A_GL_CRYPT){
@@ -346,7 +346,7 @@ void func_802D1CF0(Actor *this) {
} }
func_80328A84(this, 5); func_80328A84(this, 5);
} }
func_80314AC8(0); gcpausemenu_80314AC8(0);
break; break;
} }
@@ -412,7 +412,7 @@ void func_802D1CF0(Actor *this) {
func_80311480(0xDAF, 6, NULL, this->marker, func_802D1998, NULL); func_80311480(0xDAF, 6, NULL, this->marker, func_802D1998, NULL);
break; break;
} }
func_80314AC8(1); gcpausemenu_80314AC8(1);
func_80328A84(this, 4); func_80328A84(this, 4);
} }
break; break;

View File

@@ -630,7 +630,7 @@ void func_802D5058(enum map_e map_id, s32 arg1, bool arg2) {
} else { } else {
timedFunc_set_0(0.25f, func_802D63D4); timedFunc_set_0(0.25f, func_802D63D4);
} }
func_80314AC8(0); gcpausemenu_80314AC8(0);
} }
@@ -877,7 +877,7 @@ void func_802D5628(void){
} }
else{//L802D5B24 else{//L802D5B24
func_8024E55C(0, sp50); //get button inputs func_8024E55C(0, sp50); //get button inputs
if(sp50[4] == 1){ if(sp50[FACE_BUTTON(BUTTON_C_UP)] == 1){
func_80324C58(); func_80324C58();
func_802D6114(); func_802D6114();
} }
@@ -1000,7 +1000,7 @@ void func_802D6114(void){
} }
else{//L802D61DC else{//L802D61DC
func_80347A14(1); func_80347A14(1);
func_80314AC8(1); gcpausemenu_80314AC8(1);
} }
} }
@@ -1029,7 +1029,7 @@ void func_802D6264(f32 arg0, enum map_e arg1, s32 arg2, s32 arg3, s32 arg4, enum
else{ else{
timedFunc_set_0(arg0, func_802D63D4); timedFunc_set_0(arg0, func_802D63D4);
} }
func_80314AC8(0); gcpausemenu_80314AC8(0);
} }
void func_802D6310(f32 arg0, enum map_e arg1, s32 arg2, s32 arg3, enum bkprog_e arg4){ void func_802D6310(f32 arg0, enum map_e arg1, s32 arg2, s32 arg3, enum bkprog_e arg4){

View File

@@ -140,7 +140,7 @@ void func_802E39D0(Gfx **gdl, Mtx **mptr, Vtx **vptr, s32 arg3, s32 arg4){
func_8032D474(gdl, mptr, vptr); func_8032D474(gdl, mptr, vptr);
} }
func_80314320(gdl, mptr, vptr); gcpausemenu_draw(gdl, mptr, vptr);
if(!func_802E49F0()){ if(!func_802E49F0()){
func_8025AFC0(gdl, mptr, vptr); func_8025AFC0(gdl, mptr, vptr);
} }
@@ -186,7 +186,7 @@ void func_802E3BF8(enum game_mode_e next_mode, s32 arg1){
} }
if(D_8037E8E0.game_mode == GAME_MODE_4_PAUSED && next_mode != GAME_MODE_4_PAUSED ){ if(D_8037E8E0.game_mode == GAME_MODE_4_PAUSED && next_mode != GAME_MODE_4_PAUSED ){
func_803117E8(); gcpausemenu_free();
} }
//L802E3C84 //L802E3C84
@@ -242,7 +242,7 @@ void func_802E3BF8(enum game_mode_e next_mode, s32 arg1){
func_8024E7C8(); func_8024E7C8();
func_8025A430(0, 2000, 3); func_8025A430(0, 2000, 3);
func_8025A23C(COMUSIC_6F_PAUSE_SCREEN); func_8025A23C(COMUSIC_6F_PAUSE_SCREEN);
func_80312B8C(); gcpausemenu_init();
}//L802E3E6C }//L802E3E6C
} }
@@ -534,7 +534,7 @@ bool func_802E4424(void) {
&& gctransition_8030BD98() && gctransition_8030BD98()
&& (level_get() != 0) && (level_get() != 0)
&& (0.6 < D_8037E8E0.unk10) && (0.6 < D_8037E8E0.unk10)
&& func_80314B00() && gcpausemenu_80314B00()
&& !func_8028F22C() && !func_8028F22C()
&& func_8032056C() && func_8032056C()
&& levelSpecificFlags_validateCRC1() && levelSpecificFlags_validateCRC1()
@@ -549,7 +549,7 @@ bool func_802E4424(void) {
break; break;
case GAME_MODE_4_PAUSED: /* switch 2 */ case GAME_MODE_4_PAUSED: /* switch 2 */
if (func_80313380() || func_8031C880()) { if (gcPauseMenu_update() || func_8031C880()) {
FUNC_8030E624(SFX_C9_PAUSEMENU_ENTER, 0.899316, 32736); FUNC_8030E624(SFX_C9_PAUSEMENU_ENTER, 0.899316, 32736);
func_80335110(1); func_80335110(1);
func_8025A430(-1, 2000, 3); func_8025A430(-1, 2000, 3);
@@ -593,8 +593,8 @@ s32 func_802E48D8(void){
func_802F3300(); func_802F3300();
func_802F542C(); func_802F542C();
gcdialog_defrag(); gcdialog_defrag();
if(D_8037E8E0.game_mode == 4) if(D_8037E8E0.game_mode == GAME_MODE_4_PAUSED)
func_80311740(); gcpausemenu_defrag();
switch(get_loaded_overlay_id()){ switch(get_loaded_overlay_id()){
case OVERLAY_2_WHALE: case OVERLAY_2_WHALE:
func_803894A0(); func_803894A0();

View File

@@ -10,7 +10,7 @@ f32 func_802FDE60(f32);
void timedFunc_set_1(f32, void (*)(s32), s32); void timedFunc_set_1(f32, void (*)(s32), s32);
void timedFunc_set_2(f32, void (*)(s32,s32), s32, s32); void timedFunc_set_2(f32, void (*)(s32,s32), s32, s32);
void item_inc(s32); void item_inc(s32);
void func_80314AC8(s32); void gcpausemenu_80314AC8(s32);
void item_set(s32, s32); void item_set(s32, s32);
@@ -246,7 +246,7 @@ void func_802FE844(s32 arg0, struct8s *arg1){
timedFunc_set_1(1.25f, (TFQM1)item_inc, ITEM_15_HEALTH_TOTAL); timedFunc_set_1(1.25f, (TFQM1)item_inc, ITEM_15_HEALTH_TOTAL);
timedFunc_set_1(1.25f, (TFQM1)func_8030E484, SFX_3EA_UNKNOWN); timedFunc_set_1(1.25f, (TFQM1)func_8030E484, SFX_3EA_UNKNOWN);
timedFunc_set_2(1.25f, (TFQM2)item_set, ITEM_14_HEALTH, item_getCount(ITEM_15_HEALTH_TOTAL)+1); timedFunc_set_2(1.25f, (TFQM2)item_set, ITEM_14_HEALTH, item_getCount(ITEM_15_HEALTH_TOTAL)+1);
timedFunc_set_1(1.5f, (TFQM1)func_80314AC8, 1); timedFunc_set_1(1.5f, (TFQM1)gcpausemenu_80314AC8, 1);
} }
break; break;
case 2://L802FECD4 case 2://L802FECD4

View File

@@ -536,7 +536,7 @@ void gcdialog_update(void) {
break; break;
case 3: /* switch 1 */ case 3: /* switch 1 */
temp_v1_2 = D_80382E20.unk128_31 & 0x80; temp_v1_2 = D_80382E20.unk128_31 & 0x80;
if (D_80382E20.unk128_0 && (sp90[1] == 1)) { if (D_80382E20.unk128_0 && (sp90[FACE_BUTTON(BUTTON_B)] == 1)) {
gcdialog_setState(6); gcdialog_setState(6);
} }
else{ else{
@@ -550,9 +550,9 @@ void gcdialog_update(void) {
break; break;
case 4: /* switch 1 */ case 4: /* switch 1 */
if (sp90[0] == 1) { if (sp90[FACE_BUTTON(BUTTON_A)] == 1) {
D_80382E20.unk12C_23 = 1; D_80382E20.unk12C_23 = 1;
} else if (sp90[1] == (s32) 1) { } else if (sp90[FACE_BUTTON(BUTTON_B)] == 1) {
D_80382E20.unk12C_23 = 0; D_80382E20.unk12C_23 = 0;
} }
if (D_80382E20.unk12C_23 != -1) { if (D_80382E20.unk12C_23 != -1) {

View File

@@ -483,7 +483,7 @@ void func_80319EA4(void) {
switch (D_803830E0->unk10) { switch (D_803830E0->unk10) {
case 1: case 1:
if (func_8028EFC8() && (sp58[BUTTON_Z] == 1)) { if (func_8028EFC8() && (sp58[FACE_BUTTON(BUTTON_B)] == 1)) {
sp44 = func_80319040(0); sp44 = func_80319040(0);
func_803184C8(D_803830E0->unk24[0], 100.0f, 2, 4, sp44, func_80319028(0), 0); func_803184C8(D_803830E0->unk24[0], 100.0f, 2, 4, sp44, func_80319028(0), 0);
return; return;
@@ -511,7 +511,7 @@ void func_80319EA4(void) {
} }
} }
} }
if ((sp58[BUTTON_START] == 1) || (item_empty(ITEM_0_HOURGLASS_TIMER))) { if ((sp58[FACE_BUTTON(BUTTON_A)] == 1) || (item_empty(ITEM_0_HOURGLASS_TIMER))) {
D_803830E0->unk12 = (u8) D_803830E0->unk13; D_803830E0->unk12 = (u8) D_803830E0->unk13;
} }
if ((s8) D_803830E0->unk12 != -1) { if ((s8) D_803830E0->unk12 != -1) {

View File

@@ -2,8 +2,20 @@
#include "functions.h" #include "functions.h"
#include "variables.h" #include "variables.h"
extern void func_8028F918(s32);
void func_8031A9E4(Actor *this); void func_8031A9E4(Actor *this);
enum minigame_e {
MINIGAME_0_BOSS_BOOM_BOX,
MINIGAME_1_VILE,
MINIGAME_2_GV_MATCHING,
MINIGAME_3_ZUBBAS,
MINIGAME_4_TIPTUP,
MINIGAME_5_SANDCASTLE,
MINIGAME_F_INVALID = 0xF
};
/* .data */ /* .data */
extern ActorInfo D_8036D970 = { extern ActorInfo D_8036D970 = {
0x1E1, 0x376, 0x0, 0x1E1, 0x376, 0x0,
@@ -13,35 +25,119 @@ extern ActorInfo D_8036D970 = {
}; };
/* .code */ /* .code */
int func_8031A580(void){ enum minigame_e func_8031A580(void){
switch(map_get()){ switch(map_get()){
case MAP_3A_RBB_BOSS_BOOM_BOX: case MAP_3A_RBB_BOSS_BOOM_BOX:
return 0; return MINIGAME_0_BOSS_BOOM_BOX;
case MAP_10_BGS_MR_VILE: case MAP_10_BGS_MR_VILE:
return 1; return MINIGAME_1_VILE;
case MAP_13_GV_MEMORY_GAME: case MAP_13_GV_MEMORY_GAME:
return 2; return MINIGAME_2_GV_MATCHING;
case MAP_5A_CCW_SUMMER_ZUBBA_HIVE: case MAP_5A_CCW_SUMMER_ZUBBA_HIVE:
case MAP_5B_CCW_SPRING_ZUBBA_HIVE: case MAP_5B_CCW_SPRING_ZUBBA_HIVE:
case MAP_5C_CCW_AUTUMN_ZUBBA_HIVE: case MAP_5C_CCW_AUTUMN_ZUBBA_HIVE:
return 3; return MINIGAME_3_ZUBBAS;
case MAP_11_BGS_TIPTUP: case MAP_11_BGS_TIPTUP:
return 4; return MINIGAME_4_TIPTUP;
case MAP_A_TTC_SANDCASTLE: case MAP_A_TTC_SANDCASTLE:
return 5; return MINIGAME_5_SANDCASTLE;
} }
return 0xf; return MINIGAME_F_INVALID;
} }
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_935F0/func_8031A618.s") void func_8031A618(Actor *this) {
Actor *jiggy;
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_935F0/func_8031A678.s") if (this->unk10_12 == MINIGAME_5_SANDCASTLE) {
jiggy = func_80326EEC(ACTOR_46_JIGGY);
if (jiggy != NULL) {
actor_collisionOff(jiggy);
jiggy->position[1] -= 1000.0f;
}
}
}
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_935F0/func_8031A794.s") void func_8031A678(Actor *this){
Struct6Ds *sp2C;
f32 sp20[3];
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_935F0/func_8031A7C4.s") sp2C = func_8034C528(0x190);
switch (this->unk10_12) {
case MINIGAME_0_BOSS_BOOM_BOX:
sp20[0] = -2000.0f;
sp20[1] = 0.0f;
sp20[2] = 0.0f;
func_8034DDF0(sp2C, sp20, sp20, 0.0f, 1);
return;
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_935F0/func_8031A7F4.s") case MINIGAME_3_ZUBBAS:
if (map_get() != MAP_5B_CCW_SPRING_ZUBBA_HIVE) {
sp20[0] = 0.0f;
sp20[1] = 0.0f;
sp20[2] = -1000.0f;
func_8034DDF0(sp2C, sp20, sp20, 0.0f, 1);
}
break;
case MINIGAME_5_SANDCASTLE:
sp2C = func_8034C528(0x191);
func_8034DEB4(sp2C, -1000.0f);
break;
case MINIGAME_2_GV_MATCHING:
sp2C = func_8034C528(0x1E7);
func_8034DEB4(sp2C, -1000.0f);
break;
case MINIGAME_1_VILE:
case MINIGAME_4_TIPTUP:
func_8034DEB4(sp2C, -1000.0f);
break;
}
}
void func_8031A794(ActorMarker *marker, enum asset_e text_id, s32 arg2){
Actor *this = marker_getActor(marker);
this->unk138_24 = TRUE;
}
void func_8031A7C4(ActorMarker *marker, enum asset_e text_id, s32 arg2){
if(arg2 == 1){
func_8028FB88(TRANSFORM_5_CROC);
}
}
void func_8031A7F4(Actor *this, u32 arg1) {
switch (arg1) {
case 1:
func_8028F918(2);
if (this->unk10_12 == MINIGAME_1_VILE) {
func_80347A14(0);
}
if (func_803203FC(this->unk10_12 + 6) == 0) {
func_80324DBC(2.0f, this->unk10_12 + 0x1026, 0xA2, NULL, this->marker, func_8031A794, func_8031A7C4);
func_803204E4(this->unk10_12 + 6, 1);
this->unk138_23 = TRUE;
} else {
func_80324DBC(2.0f, 0xD38, 0x20, NULL, this->marker, func_8031A794, NULL);
}
break;
case 2:
func_8028F918(0);
func_803204E4(3, 1);
break;
case 3:
func_803204E4(4, 1);
func_8028F918(2);
func_8025AB00();
func_8025A70C((func_803203FC(5)) ? COMUSIC_3B_MINIGAME_VICTORY : COMUSIC_3C_MINIGAME_LOSS);
func_802E4A70();
func_803204E4(0x21, TRUE);
timedFunc_set_3(2.0f, (TFQM3)func_802E4078, MAP_8E_GL_FURNACE_FUN, 1, 1);
break;
}
func_80328A84(this, arg1);
}
void func_8031A9BC(Actor *this){ void func_8031A9BC(Actor *this){
func_803204E4(3, 0); func_803204E4(3, 0);
@@ -70,7 +166,7 @@ void func_8031A9E4(Actor *this){
func_803204E4(5, 0); func_803204E4(5, 0);
func_803204E4(3, 0); func_803204E4(3, 0);
func_8031A7F4(this, 1); func_8031A7F4(this, 1);
func_80314AC8(0); gcpausemenu_80314AC8(0);
} }
if(func_803203FC(2)){ if(func_803203FC(2)){
switch(this->state){ switch(this->state){
@@ -79,9 +175,9 @@ void func_8031A9E4(Actor *this){
func_8031A7F4(this, 2); func_8031A7F4(this, 2);
break; break;
case 2://L8031AB50 case 2://L8031AB50
func_8028FA14(0x8E, 2); func_8028FA14(MAP_8E_GL_FURNACE_FUN, 2);
if(item_getCount(ITEM_14_HEALTH) == 0) if(item_getCount(ITEM_14_HEALTH) == 0)
item_set(ITEM_6_HOURGLASS, FALSE); item_set(ITEM_6_HOURGLASS, 0);
if(!func_803203FC(3)){ if(!func_803203FC(3)){
func_8031A7F4(this, 3); func_8031A7F4(this, 3);
} }

View File

@@ -2,38 +2,152 @@
#include "functions.h" #include "functions.h"
#include "variables.h" #include "variables.h"
extern void func_8028A8D0(void);
extern void func_8028F918(s32);
extern void func_80311714(int);
typedef struct struct_1C_s{
u8 map;
s8 exit;
s16 x; //0x2
char *str; //0x4
s8 unk8;
}struct1Cs;
/* .data */
extern s8 D_8036DD9C[];
extern struct85s D_8036DDAC[];
/* .bss */ /* .bss */
struct{ struct{
u8 pad0[3]; u8 unk0;
u8 unk1;
u8 pad2[1];
s8 unk3; s8 unk3;
u8 pad4[3]; s8 unk4;
s8 unk7; u8 unk5;
u8 pad8[4]; u8 unk6;
s8 unk7; //jiggy total
s32 unk8;
struct1Cs *unkC; struct1Cs *unkC;
}D_803830F0; }D_803830F0;
s32 D_80383100[20]; NodeProp *D_80383100[20];
/* public */
void func_8031B554(void);
/* .code */ /* .code */
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031ABA0.s") void func_8031ABA0(void) {
func_8031FBF8();
func_8031FBA0();
if (D_803830F0.unk8 != -1) {
func_802C5A3C(D_803830F0.unk8);
func_8033D13C(D_803830F0.unk8);
func_80347AA8();
}
}
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031ABF8.s") void func_8031ABF8(void) {
D_803830F0.unk8 = func_802C5A30();
func_8030AFD8(1);
mapSavestate_free_all();
levelSpecificFlags_clear();
func_80347A7C();
func_8031FBF8();
func_8031FBA0();
func_803204E4(0x1F, 1);
if (D_803830F0.unk6 == 1) {
func_803204E4(0xC1, 1);
}
func_803228D8();
func_802E4A70();
}
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031AC8C.s") void func_8031AC8C(void) {
func_803228D8();
if (map_getLevel(D_803830F0.unkC->map) != level_get()) {
func_802E4A70();
}
if (D_803830F0.unkC->exit < 0) {
func_8034BA7C(D_803830F0.unkC->map, 0x5A - D_803830F0.unkC->exit);
} else {
func_802E40D0(D_803830F0.unkC->map, 0x65);
func_802E412C(1, 8);
func_802E40C4(9);
}
D_803830F0.unk5 = 1;
}
void func_8031AD2C(s32);
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031AD2C.s") #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031AD2C.s")
void func_8031B010(void){ void func_8031B010(void){
func_8031AD2C(6); func_8031AD2C(6);
} }
void func_8031B030(ActorMarker *caller, enum asset_e text_id, s32 arg2);
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031B030.s") #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031B030.s")
void func_8031B070(s32 arg0){ void func_8031B070(s32 arg0){
struct1Cs *v0 = D_803830F0.unkC; struct1Cs *v0 = D_803830F0.unkC;
print_bold_overlapping(v0->x, D_803830F0.unk3, -1.2f, v0->string); print_bold_overlapping(v0->x, D_803830F0.unk3, -1.2f, v0->str);
} }
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031B0B0.s") void func_8031B0B0(void) {
s32 sp34;
if ((map_get() == MAP_96_CS_END_BEACH_1) && mapSpecificFlags_get(4)) {
mapSpecificFlags_set(4, FALSE);
func_8031B554();
return;
}
if (func_803203FC(0x1F) != 0) {
func_8028A8D0();
switch (D_803830F0.unk0) {
case 3:
if (D_803830F0.unk5 == 0) {
if (map_get() == D_803830F0.unkC->map) {
if (D_803830F0.unk6 == 0) {
sp34 = 0xA0;
if (D_803830F0.unkC->exit >= 0)
sp34 = 0xA8;
timedFunc_set_1(1.0f, (TFQM1)func_80311714, 0);
func_80324DBC(1.0f, D_803830F0.unk1 + 0x11AF, sp34, NULL, NULL, func_8031B030, NULL);
timedFunc_set_1(1.0f, (TFQM1)func_80311714, 1);
} else if (D_803830F0.unkC->exit >= 0) {
func_8028F918(2);
}
timedFunc_set_1(1.0f, (TFQM1)func_8031AD2C, 4);
D_803830F0.unk5 = 1U;
}
}
break;
case 4:
func_8031B070(D_803830F0.unk1);
D_803830F0.unk4 ++;
D_803830F0.unk3 += D_8036DD9C[D_803830F0.unk4];
if (D_803830F0.unk4 == 0xC) {
func_8031AD2C(5);
}
break;
case 5:
func_8031B070(D_803830F0.unk1);
return;
case 6:
func_8031B070(D_803830F0.unk1);
D_803830F0.unk4--;
D_803830F0.unk3 -= D_8036DD9C[D_803830F0.unk4];
if (D_803830F0.unk4 == 0) {
func_8031AD2C(7);
}
break;
}
}
}
void func_8031B2F0(void){} void func_8031B2F0(void){}
@@ -46,15 +160,56 @@ void func_8031B2F8(void){
func_8031AD2C(1); func_8031AD2C(1);
} }
#ifndef NONMATCHING
#pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031B354.s") #pragma GLOBAL_ASM("asm/nonmatchings/core2/code_93C10/func_8031B354.s")
#else
void func_8031B354(void) {
f32 sp40[3];
u32 var_s0;
u32 temp_v0;
s32 var_s2;
if (func_803203FC(0x20) != 0) {
func_8031B2F8();
return;
}
if (func_803203FC(0x1F) != 0) {
func_80347A14(0);
if ((D_803830F0.unk0 == 3)){
D_803830F0.unk5 = 0;
if(D_803830F0.unkC->exit >= 0) {
func_802BBC58(1);
set_camera_to_node(D_803830F0.unkC->exit);
if (D_803830F0.unkC->unk8 > 0) {
temp_v0 = func_80304FC4(&D_8036DDAC, &D_80383100, 0x14);
for(var_s2 = FALSE, var_s0 = 0; (var_s0 < temp_v0) && (var_s2 == FALSE); var_s0++){
if (temp_v0 > 0) {
if (nodeprop_getRadius(D_80383100[var_s0]) == D_803830F0.unkC->unk8) {
var_s2 = TRUE;
nodeprop_getPosition(D_80383100[var_s0], sp40);
func_8028F85C(sp40);
}
}
}
}
if (var_s2 == FALSE) {
func_802BAEF4(sp40);
func_8028F85C(sp40);
}
}
}
} else {
func_8031AD2C(0);
}
}
#endif
int func_8031B4CC(void){ int func_8031B4CC(void){
return (D_803830F0.unkC && D_803830F0.unkC->unk1 < 0); return ((D_803830F0.unkC != NULL) && (D_803830F0.unkC[0].exit < 0));
} }
int func_8031B4F4(void){ int func_8031B4F4(void){
return (D_803830F0.unkC) ? D_803830F0.unkC[1].unk0 : 0; return (D_803830F0.unkC != NULL) ? D_803830F0.unkC->unk8 : 0;
} }
void func_8031B51C(void){ void func_8031B51C(void){

File diff suppressed because it is too large Load Diff

View File

@@ -278,6 +278,6 @@ void func_8030AFD8(s32 arg0){
} }
func_8034789C(); func_8034789C();
func_80250FC0(); //stop controller motor func_80250FC0(); //stop controller motor
func_80314B24(); gcpausemenu_80314B24();
func_80347A70(); func_80347A70();
} }

View File

@@ -911,7 +911,7 @@ void func_80316764(gczoombox_t *this, s32 arg1) {
return; return;
} }
if (arg1 && this->unk1A4_12 && sp38[0]) { if (arg1 && this->unk1A4_12 && sp38[FACE_BUTTON(BUTTON_A)]) {
if (this->unk110[0] == -1.0f) { if (this->unk110[0] == -1.0f) {
func_80315C90(this, 1); func_80315C90(this, 1);
} else { } else {
@@ -1142,7 +1142,7 @@ void gczoombox_update(gczoombox_t *this){
if(this->unk1A4_19){ if(this->unk1A4_19){
sp44 *= 1.5; sp44 *= 1.5;
} }
if(sp58[0] && this->unk1A4_12){ if(sp58[FACE_BUTTON(BUTTON_A)] && this->unk1A4_12){
sp44 *= 0.5; sp44 *= 0.5;
} }
else if(sp4C[0] && this->unk1A4_12){ else if(sp4C[0] && this->unk1A4_12){
@@ -1152,7 +1152,7 @@ void gczoombox_update(gczoombox_t *this){
while(sp44 < this->unk18C && this->unk15C >= this->unk15E){ while(sp44 < this->unk18C && this->unk15C >= this->unk15E){
this->unk15E++; this->unk15E++;
if(func_803156F0(this->unk60[this->unk15E], this->unk1A4_19)){ if(func_803156F0(this->unk60[this->unk15E], this->unk1A4_19)){
this->unk18C -= (sp58[0] && this->unk1A4_12) ? 0.05 : 0.1; this->unk18C -= (sp58[FACE_BUTTON(BUTTON_A)] && this->unk1A4_12) ? 0.05 : 0.1;
}//L803172B4 }//L803172B4
this->unk18C -= sp44; this->unk18C -= sp44;
}//L803172EC }//L803172EC
@@ -1171,7 +1171,7 @@ void gczoombox_update(gczoombox_t *this){
} }
break; break;
case 0x3: //L80317360 case 0x3: //L80317360
if((sp58[0] && this->unk1A4_12) || this->unk181 < 0){ if((sp58[FACE_BUTTON(BUTTON_A)] && this->unk1A4_12) || this->unk181 < 0){
this->state = 4; this->state = 4;
this->unk183 = 0.5*sp48*this->unk184; this->unk183 = 0.5*sp48*this->unk184;
@@ -1180,7 +1180,7 @@ void gczoombox_update(gczoombox_t *this){
} }
break; break;
case 0x4: //L80317470 case 0x4: //L80317470
if(sp58[0] && this->unk1A4_12){ if(sp58[FACE_BUTTON(BUTTON_A)] && this->unk1A4_12){
this->unk183 = 0.5*sp48*(this->unk184 + 2); this->unk183 = 0.5*sp48*(this->unk184 + 2);
this->unk1A4_23 = 0; this->unk1A4_23 = 0;
} }

View File

@@ -184,7 +184,7 @@ void func_8038BCF0(Actor *this) {
func_80328A84(this, 2); func_80328A84(this, 2);
return; return;
} }
if (func_8028EFC8() && (sp78[BUTTON_Z] == 1)) { if (func_8028EFC8() && (sp78[FACE_BUTTON(BUTTON_B)] == 1)) {
this->unk10_12++; this->unk10_12++;
this->unk10_12 %= 3; this->unk10_12 %= 3;
func_80311174(local->unk0 + this->unk10_12, 0xB, this->position, this->marker, func_8038BADC, NULL, func_8038BA30); func_80311174(local->unk0 + this->unk10_12, 0xB, this->position, this->marker, func_8038BADC, NULL, func_8038BA30);

View File

@@ -703,7 +703,7 @@ void func_8038D670(enum FF_Action next_state) {
} }
} else { } else {
if (D_8037DCB8->unk4->unk8 == FFTT_6_SKULL) { if (D_8037DCB8->unk4->unk8 == FFTT_6_SKULL) {
func_80314AC8(0); gcpausemenu_80314AC8(0);
if (func_80305248(sp30, 0x377, D_8037DCB8->playerPosition)) { if (func_80305248(sp30, 0x377, D_8037DCB8->playerPosition)) {
func_8038D548(1); func_8038D548(1);
func_8028F5F8(sp30); func_8028F5F8(sp30);
@@ -973,7 +973,7 @@ void func_8038E0B0(void) {
func_80356540(0xAA); func_80356540(0xAA);
} }
if ((D_8037DCB8->unk4->unk9 == 2) && (func_8028ECAC() == 0)) { if ((D_8037DCB8->unk4->unk9 == 2) && (func_8028ECAC() == 0)) {
if (func_8028EFEC() && (sp48[BUTTON_START] == 1)) { if (func_8028EFEC() && (sp48[FACE_BUTTON(BUTTON_A)] == 1)) {
func_803114D0(); func_803114D0();
player_getRotation(D_8037DCB8->playerRotation); player_getRotation(D_8037DCB8->playerRotation);
D_8037DCB8->ffQuestionType = func_8038DCD4(sp38); D_8037DCB8->ffQuestionType = func_8038DCD4(sp38);
@@ -981,7 +981,7 @@ void func_8038E0B0(void) {
func_8038D670(3); func_8038D670(3);
return; return;
} }
if (func_8028EFC8() && (sp48[BUTTON_Z] == 1)) { if (func_8028EFC8() && (sp48[FACE_BUTTON(BUTTON_B)] == 1)) {
if ((item_getCount(ITEM_27_JOKER_CARD) > 0) && (sp28 < 0x5B)) { if ((item_getCount(ITEM_27_JOKER_CARD) > 0) && (sp28 < 0x5B)) {
func_8038C640(D_8037DCB8->unk8, D_8037DCB8->unk4); func_8038C640(D_8037DCB8->unk8, D_8037DCB8->unk4);
item_dec(ITEM_27_JOKER_CARD); item_dec(ITEM_27_JOKER_CARD);
@@ -1006,7 +1006,7 @@ void func_8038E0B0(void) {
if ((D_8037DCB8->ffQuestionType == 2) && D_80394354[D_8037DCB8->unkC].unk0 == 2){ if ((D_8037DCB8->ffQuestionType == 2) && D_80394354[D_8037DCB8->unkC].unk0 == 2){
gczoombox_update(D_8037DCB8->unk20); gczoombox_update(D_8037DCB8->unk20);
} }
if ((D_8037DCB8->unk12 == 0) && func_8028EFC8() && (sp48[BUTTON_Z] == 1)) { if ((D_8037DCB8->unk12 == 0) && func_8028EFC8() && (sp48[FACE_BUTTON(BUTTON_B)] == 1)) {
func_80324C58(); func_80324C58();
func_8038D670(4); func_8038D670(4);
} }

View File

@@ -75,7 +75,7 @@ void func_8038EB94(void){
func_80320004(BKPROG_B9_DOUBLE_HEALTH, TRUE); func_80320004(BKPROG_B9_DOUBLE_HEALTH, TRUE);
func_80347958(); func_80347958();
func_803463D4(ITEM_14_HEALTH, 0); func_803463D4(ITEM_14_HEALTH, 0);
func_80314AC8(1); gcpausemenu_80314AC8(1);
} }
void func_8038EBEC(ActorMarker *marker) { void func_8038EBEC(ActorMarker *marker) {
@@ -95,7 +95,7 @@ void func_8038EBEC(ActorMarker *marker) {
} }
if (this->unkF4_8 == 0xB) { if (this->unkF4_8 == 0xB) {
timedFunc_set_0(1.5f, func_8038EB94); timedFunc_set_0(1.5f, func_8038EB94);
func_80314AC8(0); gcpausemenu_80314AC8(0);
} }
} }
@@ -493,13 +493,13 @@ void func_8038F924(Actor *this) {
case 4: //L8038FE28 case 4: //L8038FE28
if ((func_803114C4() != 0xF7C) && (func_803114C4() != 0xF7D)) { if ((func_803114C4() != 0xF7C) && (func_803114C4() != 0xF7D)) {
if (sp7C[BUTTON_START] == 1) { if (sp7C[FACE_BUTTON(BUTTON_A)] == 1) {
func_8038F894(this, 5); func_8038F894(this, 5);
} else if (sp7C[BUTTON_Z] == 1) { } else if (sp7C[FACE_BUTTON(BUTTON_B)] == 1) {
func_8038F350(this, 1); func_8038F350(this, 1);
} else if ((sp6C[0] == 1) && func_8031FF1C(0xE0)) { } else if ((sp6C[0] == 1) && func_8031FF1C(0xE0)) {
func_8038F894(this, 6); func_8038F894(this, 6);
} else if (sp7C[BUTTON_R] == 1) { } else if (sp7C[FACE_BUTTON(BUTTON_C_DOWN)] == 1) {
if (local->unk4) { if (local->unk4) {
func_8038F350(this, 8); func_8038F350(this, 8);
} else { } else {

View File

@@ -108,7 +108,7 @@ void func_803902B8(Actor *this) {
sp58 = func_80259384(this->position, sp5C, 400.0f); sp58 = func_80259384(this->position, sp5C, 400.0f);
if (func_8031FF1C(sp54 + 0xAD)) { if (func_8031FF1C(sp54 + 0xAD)) {
func_8024E55C(0, sp3C); func_8024E55C(0, sp3C);
sp58 &= (sp3C[BUTTON_Z] == TRUE) || func_8028EC04(); sp58 &= (sp3C[FACE_BUTTON(BUTTON_B)] == 1) || func_8028EC04();
} }
if (sp58 && !*(s32 *)&this->local) { if (sp58 && !*(s32 *)&this->local) {
func_80390174(this->marker, 0); func_80390174(this->marker, 0);

View File

@@ -287,8 +287,8 @@ segments:
- [0x7AF80, c, code_7AF80] - [0x7AF80, c, code_7AF80]
- [0x82000, c, code_82000] - [0x82000, c, code_82000]
- [0x83340, c, code_83340] - [0x83340, c, code_83340]
- [0x83D70, c, code_83D70] #DONE - [0x83D70, c, gc/section] #DONE
- [0x840D0, c, code_840D0] #DONE - [0x840D0, c, gc/sky] #DONE
- [0x84470, c, gc/transition] #DONE - [0x84470, c, gc/transition] #DONE
- [0x851D0, c, code_851D0] - [0x851D0, c, code_851D0]
- [0x857B0, c, code_857B0] #DONE - [0x857B0, c, code_857B0] #DONE
@@ -298,7 +298,7 @@ segments:
- [0x8DC20, c, code_8DC20] - [0x8DC20, c, code_8DC20]
- [0x8E270, c, gc/zoombox] #DONE - [0x8E270, c, gc/zoombox] #DONE
- [0x91E10, c, code_91E10] - [0x91E10, c, code_91E10]
- [0x935F0, c, code_935F0] - [0x935F0, c, code_935F0] #DONE #chminigmae
- [0x93C10, c, code_93C10] - [0x93C10, c, code_93C10]
- [0x94620, c, code_94620] #DONE - [0x94620, c, code_94620] #DONE
- [0x94780, c, code_94780] #DONE - [0x94780, c, code_94780] #DONE
@@ -539,8 +539,8 @@ segments:
- [0xE3A20, bin, data_E3A20] - [0xE3A20, bin, data_E3A20]
- [0xE3C50, .data, code_82000] - [0xE3C50, .data, code_82000]
- [0xE4870, bin, data_E4870] - [0xE4870, bin, data_E4870]
- [0xE4880, .data, code_83D70] - [0xE4880, .data, gc/section]
- [0xE4DB0, .data, code_840D0] - [0xE4DB0, .data, gc/sky]
- [0xE51C0, .data, gc/transition] - [0xE51C0, .data, gc/transition]
- [0xE54C0, .data, code_851D0] - [0xE54C0, .data, code_851D0]
- [0xE5540, bin, data_E5540] - [0xE5540, bin, data_E5540]
@@ -762,8 +762,8 @@ segments:
- [0xF0520, .rodata, code_7AF80] - [0xF0520, .rodata, code_7AF80]
# - [0xF0540, bin, data_F0540] # - [0xF0540, bin, data_F0540]
- [0xF05E0, bin, data_F05E0] - [0xF05E0, bin, data_F05E0]
- [0xF07B0, .rodata, code_83D70] - [0xF07B0, .rodata, gc/section]
- [0xF14B0, .rodata, code_840D0] - [0xF14B0, .rodata, gc/sky]
- [0xF14C0, .rodata, gc/transition] - [0xF14C0, .rodata, gc/transition]
- [0xF1520, .rodata, code_85800] - [0xF1520, .rodata, code_85800]
- [0xF1540, .rodata, code_87E30] - [0xF1540, .rodata, code_87E30]
@@ -772,7 +772,8 @@ segments:
- [0xF18F0, .rodata, gc/zoombox] - [0xF18F0, .rodata, gc/zoombox]
# - [0xF1960, bin, data_F1960] # - [0xF1960, bin, data_F1960]
- [0xF19C0, .rodata, code_91E10] - [0xF19C0, .rodata, code_91E10]
- [0xF1A00, bin, data_F1A00] - [0xF1A00, .rodata, code_935F0]
- [0xF1A20, bin, data_F1A20]
- [0xF1DC0, .rodata, code_9A9D0] - [0xF1DC0, .rodata, code_9A9D0]
- [0xF1DF0, .rodata, code_9B180] - [0xF1DF0, .rodata, code_9B180]
- [0xF1E10, .rodata, code_9C170] - [0xF1E10, .rodata, code_9C170]
@@ -1029,8 +1030,8 @@ segments:
- [0xf2c00, .bss, code_7AF80] - [0xf2c00, .bss, code_7AF80]
- [0xf2c00, .bss, code_82000] - [0xf2c00, .bss, code_82000]
- [0xf2c00, .bss, code_83340] - [0xf2c00, .bss, code_83340]
- [0xf2c00, .bss, code_83D70] - [0xf2c00, .bss, gc/section]
- [0xf2c00, .bss, code_840D0] - [0xf2c00, .bss, gc/sky]
- [0xf2c00, .bss, gc/transition] - [0xf2c00, .bss, gc/transition]
- [0xf2c00, .bss, code_851D0] - [0xf2c00, .bss, code_851D0]
- [0xf2c00, .bss, code_857B0] - [0xf2c00, .bss, code_857B0]

View File

@@ -278,6 +278,8 @@ sfxsource_setSfxId = 0x8030DA80;
sfxsource_setSampleRate = 0x8030DABC; sfxsource_setSampleRate = 0x8030DABC;
gcdialog_setState = 0x8030F488; gcdialog_setState = 0x8030F488;
gcdialog_update = 0x8030F990; gcdialog_update = 0x8030F990;
gcpausemenu_getNextPage = 0x8031307C;
gcPauseMenu_setState = 0x803120FC;
gczoombox_free = 0x80315374; gczoombox_free = 0x80315374;
_gczoombox_memClear = 0x80315430; _gczoombox_memClear = 0x80315430;
gczoombox_draw = 0x80316B8C; gczoombox_draw = 0x80316B8C;
@@ -418,6 +420,7 @@ sSpawnableActorSize = 0x8036A9B0;
sSpawnableActorList = 0x8036A9B4; sSpawnableActorList = 0x8036A9B4;
D_8036B810 = 0x8036B810; D_8036B810 = 0x8036B810;
D_8036D940 = 0x8036D940; D_8036D940 = 0x8036D940;
D_8036DD9C = 0x8036DD9C;
D_8036E598 = 0x8036E598; D_8036E598 = 0x8036E598;
D_8036E5B0 = 0x8036E5B0; D_8036E5B0 = 0x8036E5B0;
D_8036E5C0 = 0x8036E5C0; D_8036E5C0 = 0x8036E5C0;

View File

@@ -37,7 +37,7 @@ func_802E4078 = 0x802E4078;
func_8030E484 = 0x8030E484; func_8030E484 = 0x8030E484;
func_8030E510 = 0x8030E510; func_8030E510 = 0x8030E510;
func_80311714 = 0x80311714; func_80311714 = 0x80311714;
func_80314AC8 = 0x80314AC8; gcpausemenu_80314AC8 = 0x80314AC8;
func_8031CC40 = 0x8031CC40; func_8031CC40 = 0x8031CC40;
func_8031F678 = 0x8031F678; func_8031F678 = 0x8031F678;
func_8031FB14 = 0x8031FB14; func_8031FB14 = 0x8031FB14;