documented volatile flag functions and enums and some Actor struct members
This commit is contained in:
117
include/enums.h
117
include/enums.h
@@ -229,59 +229,80 @@ enum file_progress_e{
|
|||||||
FILEPROG_FD_BANNED_CHEATCODES_ENTERED //2 bit
|
FILEPROG_FD_BANNED_CHEATCODES_ENTERED //2 bit
|
||||||
};
|
};
|
||||||
|
|
||||||
enum volatile_progress_e{
|
enum volatile_flags_e {
|
||||||
VOLAPROG_0_UNKNOWN
|
VOLATILE_FLAG_0, // FFQ
|
||||||
};
|
VOLATILE_FLAG_1,
|
||||||
|
VOLATILE_FLAG_2,
|
||||||
|
VOLATILE_FLAG_3,
|
||||||
|
VOLATILE_FLAG_4,
|
||||||
|
VOLATILE_FLAG_5,
|
||||||
|
VOLATILE_FLAG_6_HAS_SEEN_BOSS_BOOM_BOX_FF_MINIGAME = 0x6,
|
||||||
|
VOLATILE_FLAG_7_HAS_SEEN_VILE_FF_MINIGAME,
|
||||||
|
VOLATILE_FLAG_8_HAS_SEEN_MATCHING_PYRAMID_FF_MINIGAME,
|
||||||
|
VOLATILE_FLAG_9_HAS_SEEN_ZUBBAS_FF_MINIGAME,
|
||||||
|
VOLATILE_FLAG_A_HAS_SEEN_TIPTUP_FF_MINIGAME,
|
||||||
|
VOLATILE_FLAG_B_HAS_SEEN_SANDCASTLE_FF_MINIGAME,
|
||||||
|
VOLATILE_FLAG_C,
|
||||||
|
VOLATILE_FLAG_D,
|
||||||
|
VOLATILE_FLAG_E,
|
||||||
|
VOLATILE_FLAG_F,
|
||||||
|
VOLATILE_FLAG_10,
|
||||||
|
VOLATILE_FLAG_11,
|
||||||
|
VOLATILE_FLAG_12,
|
||||||
|
VOLATILE_FLAG_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT = 0x13,
|
||||||
|
VOLATILE_FLAG_14,
|
||||||
|
VOLATILE_FLAG_15,
|
||||||
|
VOLATILE_FLAG_16,
|
||||||
|
VOLATILE_FLAG_17,
|
||||||
|
VOLATILE_FLAG_18,
|
||||||
|
VOLATILE_FLAG_19,
|
||||||
|
VOLATILE_FLAG_1A,
|
||||||
|
VOLATILE_FLAG_1B,
|
||||||
|
VOLATILE_FLAG_1C,
|
||||||
|
VOLATILE_FLAG_1D,
|
||||||
|
VOLATILE_FLAG_1E,
|
||||||
|
VOLATILE_FLAG_1F_IN_CHARACTER_PARADE = 0x1F,
|
||||||
|
VOLATILE_FLAG_20_BEGIN_CHARACTER_PARADE,
|
||||||
|
|
||||||
enum unkflags_1{
|
VOLATILE_FLAG_73_SANDCASTLE_INFINITE_LIVES = 0x73,
|
||||||
UNKFLAGS1_6_HAS_SEEN_BOSS_BOOM_BOX_FF_MINIGAME = 0x6,
|
VOLATILE_FLAG_74_SANDCASTLE_INFINITE_EGGS,
|
||||||
UNKFLAGS1_7_HAS_SEEN_VILE_FF_MINIGAME,
|
VOLATILE_FLAG_75_SANDCASTLE_INFINITE_RED_FEATHERS,
|
||||||
UNKFLAGS1_8_HAS_SEEN_MATCHING_PYRAMID_FF_MINIGAME,
|
VOLATILE_FLAG_76_SANDCASTLE_INFINITE_GOLD_FEATHERS,
|
||||||
UNKFLAGS1_9_HAS_SEEN_ZUBBAS_FF_MINIGAME,
|
|
||||||
UNKFLAGS1_A_HAS_SEEN_TIPTUP_FF_MINIGAME,
|
|
||||||
UNKFLAGS1_B_HAS_SEEN_SANDCASTLE_FF_MINIGAME,
|
|
||||||
|
|
||||||
UNKFLAGS1_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT = 0x13,
|
VOLATILE_FLAG_78_SANDCASTLE_NO_BONUS = 0x78,
|
||||||
|
|
||||||
UNKFLAGS1_1F_IN_CHARACTER_PARADE = 0x1F,
|
VOLATILE_FLAG_7F_SANDCASTLE_OPEN_CC = 0x7F,
|
||||||
UNKFLAGS1_20_BEGIN_CHARACTER_PARADE,
|
|
||||||
|
|
||||||
UNKFLAGS1_73_SANDCASTLE_INFINITE_LIVES = 0x73,
|
VOLATILE_FLAG_84_SANDCASTLE_OPEN_BGS = 0x84,
|
||||||
UNKFLAGS1_74_SANDCASTLE_INFINITE_EGGS,
|
|
||||||
UNKFLAGS1_75_SANDCASTLE_INFINITE_RED_FEATHERS,
|
|
||||||
UNKFLAGS1_76_SANDCASTLE_INFINITE_GOLD_FEATHERS,
|
|
||||||
|
|
||||||
UNKFLAGS1_78_SANDCASTLE_NO_BONUS = 0x78,
|
VOLATILE_FLAG_86_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED = 0x86,
|
||||||
|
VOLATILE_FLAG_87_SANDCASTLE_OPEN_GV,// 0X87
|
||||||
|
|
||||||
UNKFLAGS1_7F_SANDCASTLE_OPEN_CC = 0x7F,
|
VOLATILE_FLAG_8A_SANDCASTLE_FLIGHT_UNLOCKED = 0x8A,// 0X8A
|
||||||
|
VOLATILE_FLAG_8B_SANDCASTLE_OPEN_FP,// 0X8B
|
||||||
|
VOLATILE_FLAG_8C_SANDCASTLE_OPEN_MMM,// 0X8C
|
||||||
|
VOLATILE_FLAG_8D_SANDCASTLE_REMOVE_CRYPT_GATE,// 0X8D
|
||||||
|
VOLATILE_FLAG_8E_SANDCASTLE_REMOVE_CRYPT_COFFIN_LID,// 0X8E
|
||||||
|
VOLATILE_FLAG_8F_SANDCASTLE_REMOVE_GRATE_NEAR_WATER_SWITCH,// 0X8F
|
||||||
|
VOLATILE_FLAG_90_SANDCASTLE_OPEN_RBB,
|
||||||
|
|
||||||
UNKFLAGS1_84_SANDCASTLE_OPEN_BGS = 0x84,
|
VOLATILE_FLAG_93_SANDCASTLE_OPEN_CCW = 0x93,
|
||||||
|
VOLATILE_FLAG_94_SANDCASTLE_INFINITE_HEALTH,// 0X94
|
||||||
|
VOLATILE_FLAG_95_SANDCASTLE_INFINTE_MUMBO_TOKENS,// 0X95
|
||||||
|
VOLATILE_FLAG_96_SANDCASTLE_INFINITE_AIR,// 0X96
|
||||||
|
VOLATILE_FLAG_97_SANDCASTLE_BOTTLES_BONUS_1,// 0X97
|
||||||
|
VOLATILE_FLAG_98_SANDCASTLE_BOTTLES_BONUS_2,// 0X98
|
||||||
|
VOLATILE_FLAG_99_SANDCASTLE_BOTTLES_BONUS_3,// 0X99
|
||||||
|
VOLATILE_FLAG_9A_SANDCASTLE_BOTTLES_BONUS_4,// 0X9A
|
||||||
|
VOLATILE_FLAG_9B_SANDCASTLE_BOTTLES_BONUS_5,// 0X9B
|
||||||
|
VOLATILE_FLAG_9C_SANDCASTLE_BOTTLES_BONUS_6,// 0X9C
|
||||||
|
VOLATILE_FLAG_9D_SANDCASTLE_WISHY_WASHY,// 0X9D
|
||||||
|
|
||||||
UNKFLAGS1_86_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED = 0x86,
|
VOLATILE_FLAG_C0_BEGIN_FINAL_CHARACTER_PARADE = 0xC0,
|
||||||
UNKFLAGS1_87_SANDCASTLE_OPEN_GV,// 0X87
|
VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE,
|
||||||
|
VOLATILE_FLAG_C2_UNUSED,
|
||||||
UNKFLAGS1_8A_SANDCASTLE_FLIGHT_UNLOCKED = 0x8A,// 0X8A
|
VOLATILE_FLAG_C3, // unk
|
||||||
UNKFLAGS1_8B_SANDCASTLE_OPEN_FP,// 0X8B
|
VOLATILE_FLAG_C4_WOZZA_HIDE_IN_SNS_PARADE
|
||||||
UNKFLAGS1_8C_SANDCASTLE_OPEN_MMM,// 0X8C
|
|
||||||
UNKFLAGS1_8D_SANDCASTLE_REMOVE_CRYPT_GATE,// 0X8D
|
|
||||||
UNKFLAGS1_8E_SANDCASTLE_REMOVE_CRYPT_COFFIN_LID,// 0X8E
|
|
||||||
UNKFLAGS1_8F_SANDCASTLE_REMOVE_GRATE_NEAR_WATER_SWITCH,// 0X8F
|
|
||||||
UNKFLAGS1_90_SANDCASTLE_OPEN_RBB,
|
|
||||||
|
|
||||||
UNKFLAGS1_93_SANDCASTLE_OPEN_CCW = 0x93,
|
|
||||||
UNKFLAGS1_94_SANDCASTLE_INFINITE_HEALTH,// 0X94
|
|
||||||
UNKFLAGS1_95_SANDCASTLE_INFINTE_MUMBO_TOKENS,// 0X95
|
|
||||||
UNKFLAGS1_96_SANDCASTLE_INFINITE_AIR,// 0X96
|
|
||||||
UNKFLAGS1_97_SANDCASTLE_BOTTLES_BONUS_1,// 0X97
|
|
||||||
UNKFLAGS1_98_SANDCASTLE_BOTTLES_BONUS_2,// 0X98
|
|
||||||
UNKFLAGS1_99_SANDCASTLE_BOTTLES_BONUS_3,// 0X99
|
|
||||||
UNKFLAGS1_9A_SANDCASTLE_BOTTLES_BONUS_4,// 0X9A
|
|
||||||
UNKFLAGS1_9B_SANDCASTLE_BOTTLES_BONUS_5,// 0X9B
|
|
||||||
UNKFLAGS1_9C_SANDCASTLE_BOTTLES_BONUS_6,// 0X9C
|
|
||||||
UNKFLAGS1_9D_SANDCASTLE_WISHY_WASHY,// 0X9D
|
|
||||||
|
|
||||||
UNKFLAGS1_C0_BEGIN_FINAL_CHARACTER_PARADE = 0xC0,
|
|
||||||
UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum level_flags_e
|
enum level_flags_e
|
||||||
@@ -4691,4 +4712,10 @@ enum nc_first_person_state{
|
|||||||
FIRSTPERSON_STATE_4_DONE
|
FIRSTPERSON_STATE_4_DONE
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum marker_collision_func_type_e {
|
||||||
|
MARKER_COLLISION_FUNC_0, // active?
|
||||||
|
MARKER_COLLISION_FUNC_1, // passive?
|
||||||
|
MARKER_COLLISION_FUNC_2_DIE
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -20,6 +20,8 @@
|
|||||||
#include "bsint.h"
|
#include "bsint.h"
|
||||||
#include "generic.h"
|
#include "generic.h"
|
||||||
|
|
||||||
|
#include "enums.h"
|
||||||
|
|
||||||
extern f32 fabsf(f32);
|
extern f32 fabsf(f32);
|
||||||
#pragma intrinsic (fabsf)
|
#pragma intrinsic (fabsf)
|
||||||
|
|
||||||
@@ -561,5 +563,8 @@ extern void spawnableActorList_add(ActorInfo *arg0, Actor *(*arg1)(s32[3], s32,
|
|||||||
extern void spawnableActorList_addIfMapVisited(ActorInfo *arg0, Actor *(*arg1)(s32[3], s32, ActorInfo *, u32), u32 arg2, enum map_e arg3);
|
extern void spawnableActorList_addIfMapVisited(ActorInfo *arg0, Actor *(*arg1)(s32[3], s32, ActorInfo *, u32), u32 arg2, enum map_e arg3);
|
||||||
extern void marker_setActorUpdateFunc(ActorMarker *marker, ActorUpdateFunc method);
|
extern void marker_setActorUpdateFunc(ActorMarker *marker, ActorUpdateFunc method);
|
||||||
extern void marker_setActorUpdate2Func(ActorMarker *marker, ActorUpdateFunc method);
|
extern void marker_setActorUpdate2Func(ActorMarker *marker, ActorUpdateFunc method);
|
||||||
|
extern void marker_callCollisionFunc(ActorMarker *, ActorMarker *, enum marker_collision_func_type_e);
|
||||||
|
extern enum marker_collision_func_type_e func_8033D574(struct5Cs *arg0);
|
||||||
|
extern s32 volatileFlag_get(s32); // get volatile flag
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -217,7 +217,7 @@ typedef struct actor_s{
|
|||||||
|
|
||||||
};
|
};
|
||||||
//u8 padAC[0x44];
|
//u8 padAC[0x44];
|
||||||
f32 unkEC; //animCtrl???
|
f32 stored_animctrl_timer; // animCtrlTimer
|
||||||
f32 stored_animctrl_duration; //animCtrlDuration
|
f32 stored_animctrl_duration; //animCtrlDuration
|
||||||
u32 unkF4_31:1;
|
u32 unkF4_31:1;
|
||||||
u32 unkF4_30:1; // has something to do with vertices
|
u32 unkF4_30:1; // has something to do with vertices
|
||||||
@@ -303,7 +303,7 @@ typedef struct actor_info_s{
|
|||||||
s16 startAnimation;
|
s16 startAnimation;
|
||||||
ActorAnimationInfo* animations;
|
ActorAnimationInfo* animations;
|
||||||
void (* update_func)(Actor *);
|
void (* update_func)(Actor *);
|
||||||
void (* unk10)(Actor *);
|
void (* update2_func)(Actor *);
|
||||||
Actor* (* draw_func)(ActorMarker *, Gfx **, Mtx **, Vtx **);
|
Actor* (* draw_func)(ActorMarker *, Gfx **, Mtx **, Vtx **);
|
||||||
u16 unk18;
|
u16 unk18;
|
||||||
u16 draw_distance;
|
u16 draw_distance;
|
||||||
|
@@ -111,10 +111,10 @@ void func_80388848(ActorMarker *this){
|
|||||||
if(sp1C != ++unqPtr->unk0)
|
if(sp1C != ++unqPtr->unk0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
item_set(ITEM_6_HOURGLASS,0);
|
item_set(ITEM_6_HOURGLASS,0);
|
||||||
func_803204E4(3,0);
|
volatileFlag_set(3,0);
|
||||||
func_803204E4(5,1);
|
volatileFlag_set(5,1);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
BGS_func_80388660(thisActor->marker);
|
BGS_func_80388660(thisActor->marker);
|
||||||
@@ -173,12 +173,12 @@ void BGS_func_803888E4(Actor *this, s32 arg1){
|
|||||||
}//L80388B7C
|
}//L80388B7C
|
||||||
|
|
||||||
timed_exitStaticCamera(tmpf += 2.5);
|
timed_exitStaticCamera(tmpf += 2.5);
|
||||||
if(!unqPtr->unkA && !func_803203FC(2)){
|
if(!unqPtr->unkA && !volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_80324DBC(tmpf + 0.5, 0xc73, 0xe, this->position, this->marker, func_80388784, 0);
|
func_80324DBC(tmpf + 0.5, 0xc73, 0xe, this->position, this->marker, func_80388784, 0);
|
||||||
unqPtr->unkA = 1;
|
unqPtr->unkA = 1;
|
||||||
}
|
}
|
||||||
func_80324E38(sp54 = tmpf + 0.6, 0);
|
func_80324E38(sp54 = tmpf + 0.6, 0);
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
timedFunc_set_1(sp54, (GenFunction_1)func_803886F4, reinterpret_cast(s32, this->marker));
|
timedFunc_set_1(sp54, (GenFunction_1)func_803886F4, reinterpret_cast(s32, this->marker));
|
||||||
}else{
|
}else{
|
||||||
this->state = 0x05;
|
this->state = 0x05;
|
||||||
@@ -243,7 +243,7 @@ void func_80388E94(ActorMarker *this, s32 arg1){
|
|||||||
else{
|
else{
|
||||||
func_8028F55C(1, thisActor->marker);
|
func_8028F55C(1, thisActor->marker);
|
||||||
timedFunc_set_0(0.5f, BGS_func_80388760);
|
timedFunc_set_0(0.5f, BGS_func_80388760);
|
||||||
if(!mapSpecificFlags_get(1) && !func_803203FC(2) && func_80311480(0xc75, 0, NULL, NULL, NULL, NULL))
|
if(!mapSpecificFlags_get(1) && !volatileFlag_get(VOLATILE_FLAG_2) && func_80311480(0xc75, 0, NULL, NULL, NULL, NULL))
|
||||||
mapSpecificFlags_set(1,TRUE);
|
mapSpecificFlags_set(1,TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -292,12 +292,12 @@ void func_80389080(Actor *this){
|
|||||||
unqPtr->unkA = fileProgressFlag_getN(0,2);
|
unqPtr->unkA = fileProgressFlag_getN(0,2);
|
||||||
unqPtr->unkB = 0;
|
unqPtr->unkB = 0;
|
||||||
unqPtr->unkC = 0.0f;
|
unqPtr->unkC = 0.0f;
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
unqPtr->unkA = 3;
|
unqPtr->unkA = 3;
|
||||||
this->position_y = this->position_y - 300.0f;
|
this->position_y = this->position_y - 300.0f;
|
||||||
}
|
}
|
||||||
BGS_func_803888E4(this, 1);
|
BGS_func_803888E4(this, 1);
|
||||||
if(jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP) && !func_803203FC(2) && !func_803203FC(1))
|
if(jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP) && !volatileFlag_get(VOLATILE_FLAG_2) && !volatileFlag_get(VOLATILE_FLAG_1))
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -312,8 +312,8 @@ void func_80389080(Actor *this){
|
|||||||
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp38, &sp34, &sp30);
|
func_80258A4C(this->position, this->yaw - 90.0f, player_position, &sp38, &sp34, &sp30);
|
||||||
this->yaw = this->yaw + 5.0f*sp30;
|
this->yaw = this->yaw + 5.0f*sp30;
|
||||||
if(this->state == 1){
|
if(this->state == 1){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
if(func_803203FC(3)){
|
if(volatileFlag_get(VOLATILE_FLAG_3)){
|
||||||
func_80324E38(0.0f,0);
|
func_80324E38(0.0f,0);
|
||||||
BGS_func_803888E4(this, 3);
|
BGS_func_803888E4(this, 3);
|
||||||
}
|
}
|
||||||
@@ -325,11 +325,11 @@ void func_80389080(Actor *this){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(this->state == 5){
|
if(this->state == 5){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
if(item_empty(ITEM_0_HOURGLASS_TIMER)){
|
if(item_empty(ITEM_0_HOURGLASS_TIMER)){
|
||||||
item_set(ITEM_6_HOURGLASS,1);
|
item_set(ITEM_6_HOURGLASS,1);
|
||||||
func_803204E4(3,0);
|
volatileFlag_set(3,0);
|
||||||
func_803204E4(5,0);
|
volatileFlag_set(5,0);
|
||||||
}
|
}
|
||||||
} //L80389370
|
} //L80389370
|
||||||
else{
|
else{
|
||||||
|
@@ -154,7 +154,7 @@ bool func_80386A34(Actor * this){
|
|||||||
f32 plyrPos[3];
|
f32 plyrPos[3];
|
||||||
bool out;
|
bool out;
|
||||||
|
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE))
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
player_getPosition(plyrPos);
|
player_getPosition(plyrPos);
|
||||||
|
@@ -80,7 +80,7 @@ void func_80389668(Actor *this) {
|
|||||||
local->tiptup_marker = NULL;
|
local->tiptup_marker = NULL;
|
||||||
local->unk8 = 1.0f;
|
local->unk8 = 1.0f;
|
||||||
func_80389488(this, 1);
|
func_80389488(this, 1);
|
||||||
if (jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP) && !func_803203FC(2) && !func_803203FC(1)) {
|
if (jiggyscore_isSpawned(JIGGY_27_BGS_TIPTUP) && !volatileFlag_get(VOLATILE_FLAG_2) && !volatileFlag_get(VOLATILE_FLAG_1)) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
@@ -362,7 +362,7 @@ void func_8038A068(Actor *this, s32 next_state) {
|
|||||||
local->current_type = YUMBLIE;
|
local->current_type = YUMBLIE;
|
||||||
local->player_score = 0;
|
local->player_score = 0;
|
||||||
local->vile_score = 0;
|
local->vile_score = 0;
|
||||||
if (func_803203FC(2) != 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_2) != 0) {
|
||||||
local->type_change_timer = 5.0f;
|
local->type_change_timer = 5.0f;
|
||||||
} else {
|
} else {
|
||||||
local->type_change_timer = 10.0f;
|
local->type_change_timer = 10.0f;
|
||||||
@@ -640,7 +640,7 @@ void chvilegame_update(Actor *this) {
|
|||||||
local->unkC = 3;
|
local->unkC = 3;
|
||||||
local->unkD = 3;
|
local->unkD = 3;
|
||||||
}
|
}
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
local->unkC = 2;
|
local->unkC = 2;
|
||||||
local->unkD = 3;
|
local->unkD = 3;
|
||||||
}
|
}
|
||||||
@@ -651,8 +651,8 @@ void chvilegame_update(Actor *this) {
|
|||||||
local->vile_marker = actorArray_findClosestActorFromActorId(this->position, 0x13A, -1, &sp4C)->marker;
|
local->vile_marker = actorArray_findClosestActorFromActorId(this->position, 0x13A, -1, &sp4C)->marker;
|
||||||
}
|
}
|
||||||
if (this->state == 1) {
|
if (this->state == 1) {
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
if (func_803203FC(3)) {
|
if (volatileFlag_get(VOLATILE_FLAG_3)) {
|
||||||
func_8038A068(this, 5);
|
func_8038A068(this, 5);
|
||||||
}
|
}
|
||||||
} else if (func_8038C2A8(local->vile_marker)) {
|
} else if (func_8038C2A8(local->vile_marker)) {
|
||||||
@@ -670,7 +670,7 @@ void chvilegame_update(Actor *this) {
|
|||||||
if ((local->unkC == 3) || (local->unkC == 6)) {
|
if ((local->unkC == 3) || (local->unkC == 6)) {
|
||||||
if (ml_timer_update(&local->type_change_timer, sp50)) {
|
if (ml_timer_update(&local->type_change_timer, sp50)) {
|
||||||
local->current_type = !local->current_type;
|
local->current_type = !local->current_type;
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
local->type_change_timer = 5.0f;
|
local->type_change_timer = 5.0f;
|
||||||
} else {
|
} else {
|
||||||
local->type_change_timer = 10.0f;
|
local->type_change_timer = 10.0f;
|
||||||
@@ -691,9 +691,9 @@ void chvilegame_update(Actor *this) {
|
|||||||
itemPrint_reset();
|
itemPrint_reset();
|
||||||
}
|
}
|
||||||
if (item_empty(ITEM_6_HOURGLASS)) {
|
if (item_empty(ITEM_6_HOURGLASS)) {
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, ( local->vile_score < local->player_score) ? TRUE : FALSE);
|
volatileFlag_set(5, ( local->vile_score < local->player_score) ? TRUE : FALSE);
|
||||||
func_8038A068(this, 1);
|
func_8038A068(this, 1);
|
||||||
} else if (local->vile_score < local->player_score) {
|
} else if (local->vile_score < local->player_score) {
|
||||||
if (local->unkC == 3) {
|
if (local->unkC == 3) {
|
||||||
|
@@ -30,7 +30,7 @@ static bool __playerIsWithinTrigger(s32 x, s32 z, s32 distance) {
|
|||||||
|
|
||||||
void chVacationTextTrigger_update(Actor* this) {
|
void chVacationTextTrigger_update(Actor* this) {
|
||||||
// Despawn if already triggered
|
// Despawn if already triggered
|
||||||
if (func_803203FC(UNKFLAGS1_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT)) {
|
if (volatileFlag_get(VOLATILE_FLAG_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT)) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -38,6 +38,6 @@ void chVacationTextTrigger_update(Actor* this) {
|
|||||||
// Start dialog if player is within trigger
|
// Start dialog if player is within trigger
|
||||||
if (__playerIsWithinTrigger(0, -107, 188) != 0) {
|
if (__playerIsWithinTrigger(0, -107, 188) != 0) {
|
||||||
func_80311480(0xDA9, 4, NULL, NULL, NULL, NULL);
|
func_80311480(0xDA9, 4, NULL, NULL, NULL, NULL);
|
||||||
func_803204E4(UNKFLAGS1_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT, 1);
|
volatileFlag_set(VOLATILE_FLAG_13_HAS_TRIGGERED_MUMBO_VACATION_TEXT, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -41,7 +41,7 @@ void func_803865F4(Actor *this, s32 next_state) {
|
|||||||
local = (ActorLocal_CCW_160 *)&this->local;
|
local = (ActorLocal_CCW_160 *)&this->local;
|
||||||
local->unkC = 0.0f;
|
local->unkC = 0.0f;
|
||||||
if (next_state == 2) {
|
if (next_state == 2) {
|
||||||
if (!func_80320454(0xB5, 1)) {
|
if (!volatileFlag_getAndSet(0xB5, 1)) {
|
||||||
func_80311480(0xCE2, 4, NULL, this->marker, func_803865C4, NULL);
|
func_80311480(0xCE2, 4, NULL, this->marker, func_803865C4, NULL);
|
||||||
} else {
|
} else {
|
||||||
func_80311480(0xCE3, 4, NULL, NULL, NULL, NULL);
|
func_80311480(0xCE3, 4, NULL, NULL, NULL, NULL);
|
||||||
@@ -57,10 +57,10 @@ void func_803865F4(Actor *this, s32 next_state) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (next_state == 4) {
|
if (next_state == 4) {
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
item_set(ITEM_6_HOURGLASS, FALSE);
|
item_set(ITEM_6_HOURGLASS, FALSE);
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 1);
|
volatileFlag_set(5, 1);
|
||||||
} else {
|
} else {
|
||||||
func_80311480(0xCE4, 4, NULL, NULL, NULL, NULL);
|
func_80311480(0xCE4, 4, NULL, NULL, NULL, NULL);
|
||||||
func_8025A58C(-1, 400);
|
func_8025A58C(-1, 400);
|
||||||
@@ -133,7 +133,7 @@ void func_8038687C(Actor *this) {
|
|||||||
local->unk4 = 0;
|
local->unk4 = 0;
|
||||||
local->unk8 = 0;
|
local->unk8 = 0;
|
||||||
local->unkC = 0.0f;
|
local->unkC = 0.0f;
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
this->position_y -= 300.0f;
|
this->position_y -= 300.0f;
|
||||||
}
|
}
|
||||||
func_803865F4(this, 1);
|
func_803865F4(this, 1);
|
||||||
@@ -141,7 +141,7 @@ void func_8038687C(Actor *this) {
|
|||||||
}
|
}
|
||||||
if ((s32)local->unk0 == 1) {
|
if ((s32)local->unk0 == 1) {
|
||||||
other = actorArray_findActorFromActorId(0x46);
|
other = actorArray_findActorFromActorId(0x46);
|
||||||
if(func_803203FC(2)) {
|
if(volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
local->unk0 = NULL;
|
local->unk0 = NULL;
|
||||||
if (other != NULL) {
|
if (other != NULL) {
|
||||||
actor_collisionOff(other);
|
actor_collisionOff(other);
|
||||||
@@ -198,7 +198,7 @@ void func_8038687C(Actor *this) {
|
|||||||
local->unkC = randf2(0.5 - ((local->unk8 / 10) * 0.4), 1.0 - ((local->unk8 / 10) * 0.8));
|
local->unkC = randf2(0.5 - ((local->unk8 / 10) * 0.4), 1.0 - ((local->unk8 / 10) * 0.8));
|
||||||
}
|
}
|
||||||
if (this->state == 1) {
|
if (this->state == 1) {
|
||||||
if (func_803203FC(2) && func_803203FC(3)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2) && volatileFlag_get(VOLATILE_FLAG_3)) {
|
||||||
item_set(ITEM_6_HOURGLASS, 1);
|
item_set(ITEM_6_HOURGLASS, 1);
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 1800 - 1);
|
item_set(ITEM_0_HOURGLASS_TIMER, 1800 - 1);
|
||||||
func_803865F4(this, 3);
|
func_803865F4(this, 3);
|
||||||
@@ -209,9 +209,9 @@ void func_8038687C(Actor *this) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((this->state == 3) && func_803203FC(2) && item_empty(ITEM_0_HOURGLASS_TIMER)) {
|
if ((this->state == 3) && volatileFlag_get(VOLATILE_FLAG_2) && item_empty(ITEM_0_HOURGLASS_TIMER)) {
|
||||||
item_set(ITEM_6_HOURGLASS, 0);
|
item_set(ITEM_6_HOURGLASS, 0);
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 0);
|
volatileFlag_set(5, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -152,9 +152,9 @@ void chcaterpillar_update(Actor *this){
|
|||||||
|
|
||||||
if(ml_distance_vec3f(this->position, sp74) < 50.0f){
|
if(ml_distance_vec3f(this->position, sp74) < 50.0f){
|
||||||
func_8028F030(ACTOR_2A2_CATERPILLAR);
|
func_8028F030(ACTOR_2A2_CATERPILLAR);
|
||||||
if(!func_803203FC(0xb2)){
|
if(!volatileFlag_get(0xb2)){
|
||||||
func_80311480(0xcc7, 4, NULL, NULL, NULL, NULL);
|
func_80311480(0xcc7, 4, NULL, NULL, NULL, NULL);
|
||||||
func_803204E4(0xb2, TRUE);
|
volatileFlag_set(0xb2, TRUE);
|
||||||
}
|
}
|
||||||
FUNC_8030E8B4(SFX_C5_TWINKLY_POP, 1.0f, 25000, this->position, 0x1f4, 0x9c4);
|
FUNC_8030E8B4(SFX_C5_TWINKLY_POP, 1.0f, 25000, this->position, 0x1f4, 0x9c4);
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
|
@@ -80,7 +80,7 @@ void func_8038AA8C(Actor *this) {
|
|||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
mapSpecificFlags_set(5, FALSE);
|
mapSpecificFlags_set(5, FALSE);
|
||||||
if( (!fileProgressFlag_get(FILEPROG_E8_AUTMN_EYRIE_FED) || jiggyscore_isSpawned(JIGGY_49_CCW_EYRIE))
|
if( (!fileProgressFlag_get(FILEPROG_E8_AUTMN_EYRIE_FED) || jiggyscore_isSpawned(JIGGY_49_CCW_EYRIE))
|
||||||
&& !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
&& !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
) {
|
) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
|
@@ -109,7 +109,7 @@ void func_8038A384(Actor *this){
|
|||||||
}//L8038A4A0
|
}//L8038A4A0
|
||||||
|
|
||||||
if( jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|
if( jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|
||||||
|| func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)
|
|| volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)
|
||||||
){
|
){
|
||||||
subaddie_set_state_with_direction(this, 2, randf2(0.0f, 0.9f), 1);
|
subaddie_set_state_with_direction(this, 2, randf2(0.0f, 0.9f), 1);
|
||||||
}
|
}
|
||||||
|
@@ -115,7 +115,7 @@ void func_8038794C(Actor *this){
|
|||||||
this->unk38_31 = 1;
|
this->unk38_31 = 1;
|
||||||
ml_vec3f_copy(this->velocity, this->position);
|
ml_vec3f_copy(this->velocity, this->position);
|
||||||
|
|
||||||
if(func_803203FC(1))
|
if(volatileFlag_get(VOLATILE_FLAG_1))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(!jiggyscore_isCollected(JIGGY_2A_FP_BOGGY_1) && jiggyscore_isSpawned(JIGGY_2A_FP_BOGGY_1)){
|
if(!jiggyscore_isCollected(JIGGY_2A_FP_BOGGY_1) && jiggyscore_isSpawned(JIGGY_2A_FP_BOGGY_1)){
|
||||||
|
@@ -143,9 +143,9 @@ void func_80388B18(Actor *this, u8 arg1){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{//L80388BB8
|
else{//L80388BB8
|
||||||
if(!func_803203FC(0xb3)){
|
if(!volatileFlag_get(0xb3)){
|
||||||
if(func_80311480(0xc01, 0xe, this->position, this->marker, func_80388D70, NULL)){
|
if(func_80311480(0xc01, 0xe, this->position, this->marker, func_80388D70, NULL)){
|
||||||
func_803204E4(0xb3, TRUE);
|
volatileFlag_set(0xb3, TRUE);
|
||||||
func_80388A50(this);
|
func_80388A50(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -153,9 +153,9 @@ void func_80388B18(Actor *this, u8 arg1){
|
|||||||
}
|
}
|
||||||
else{//L80388C08
|
else{//L80388C08
|
||||||
if(player_getTransformation() == TRANSFORM_4_WALRUS){
|
if(player_getTransformation() == TRANSFORM_4_WALRUS){
|
||||||
if(!func_803203FC(0xb4)){
|
if(!volatileFlag_get(0xb4)){
|
||||||
if(func_80311480(0xc08, 0xe, this->position, this->marker, func_80388D70, NULL)){
|
if(func_80311480(0xc08, 0xe, this->position, this->marker, func_80388D70, NULL)){
|
||||||
func_803204E4(0xb4, TRUE);
|
volatileFlag_set(0xb4, TRUE);
|
||||||
func_80388A50(this);
|
func_80388A50(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -476,13 +476,13 @@ void func_803896FC(Actor *this){
|
|||||||
){
|
){
|
||||||
if( local->unk19 == 1
|
if( local->unk19 == 1
|
||||||
&& player_getTransformation() != TRANSFORM_4_WALRUS
|
&& player_getTransformation() != TRANSFORM_4_WALRUS
|
||||||
&& func_803203FC(0xb3)
|
&& volatileFlag_get(0xb3)
|
||||||
){
|
){
|
||||||
func_80311480(0xC01, 0xf, this->position, this->marker, func_80388D70, NULL);
|
func_80311480(0xC01, 0xf, this->position, this->marker, func_80388D70, NULL);
|
||||||
}
|
}
|
||||||
else if( local->unk19 == 2){
|
else if( local->unk19 == 2){
|
||||||
if( player_getTransformation() == TRANSFORM_4_WALRUS
|
if( player_getTransformation() == TRANSFORM_4_WALRUS
|
||||||
&& func_803203FC(0xb4)
|
&& volatileFlag_get(0xb4)
|
||||||
){
|
){
|
||||||
func_80311480(0xC08, 0xf, this->position, this->marker, func_80388D70, NULL);
|
func_80311480(0xC08, 0xf, this->position, this->marker, func_80388D70, NULL);
|
||||||
}
|
}
|
||||||
|
@@ -20,7 +20,7 @@ extern ActorInfo D_80392700 = { MARKER_20F_WOZZA_IN_CAVE, ACTOR_33F_WOZZA_IN_CAV
|
|||||||
|
|
||||||
/* .code */
|
/* .code */
|
||||||
void func_80390630(Actor *this){
|
void func_80390630(Actor *this){
|
||||||
if(func_803203FC(0xC4)){
|
if(volatileFlag_get(VOLATILE_FLAG_C4_WOZZA_HIDE_IN_SNS_PARADE)){
|
||||||
if(!this->unk16C_4){
|
if(!this->unk16C_4){
|
||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
this->marker->propPtr->unk8_3 = FALSE;
|
this->marker->propPtr->unk8_3 = FALSE;
|
||||||
|
@@ -242,7 +242,7 @@ void func_8038C8F0(ActorMarker *marker){
|
|||||||
|
|
||||||
void func_8038C94C(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
void func_8038C94C(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||||
Actor *this = marker_getActor(caller);
|
Actor *this = marker_getActor(caller);
|
||||||
if(!func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(!volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
subaddie_set_state(this, 6);
|
subaddie_set_state(this, 6);
|
||||||
__spawnQueue_add_1((GenFunction_1)func_8038C8F0, reinterpret_cast(s32, this->marker));
|
__spawnQueue_add_1((GenFunction_1)func_8038C8F0, reinterpret_cast(s32, this->marker));
|
||||||
}
|
}
|
||||||
|
@@ -302,14 +302,14 @@ void func_8038D6C8(Actor *this){
|
|||||||
this->velocity[1] = 0.0f;
|
this->velocity[1] = 0.0f;
|
||||||
this->unk1C[0] = -1.0f;
|
this->unk1C[0] = -1.0f;
|
||||||
func_8028F8F8(7, FALSE);
|
func_8028F8F8(7, FALSE);
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -1){
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -1){
|
||||||
subaddie_set_state_with_direction(this, 3, 0.001f, 1);
|
subaddie_set_state_with_direction(this, 3, 0.001f, 1);
|
||||||
actor_playAnimationOnce(this);
|
actor_playAnimationOnce(this);
|
||||||
this->velocity[0] = 1.0f;
|
this->velocity[0] = 1.0f;
|
||||||
}
|
}
|
||||||
}//L8038D844
|
}//L8038D844
|
||||||
|
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
this->velocity[0] = 1.0f;
|
this->velocity[0] = 1.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -112,7 +112,7 @@ void func_8038E094(Actor *this){
|
|||||||
func_8038DDC8(this);
|
func_8038DDC8(this);
|
||||||
}
|
}
|
||||||
if(this->unkF4_8 == 2){
|
if(this->unkF4_8 == 2){
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -2){
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -2){
|
||||||
func_8038DDC8(this);
|
func_8038DDC8(this);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@@ -172,7 +172,7 @@ void FP_func_8038F758(ActorMarker *marker){
|
|||||||
void FP_func_8038F7AC(Actor *this){
|
void FP_func_8038F7AC(Actor *this){
|
||||||
ActorLocal_Wozza * local = (ActorLocal_Wozza *)&this->local;
|
ActorLocal_Wozza * local = (ActorLocal_Wozza *)&this->local;
|
||||||
|
|
||||||
if(func_803203FC(0xC4)){
|
if(volatileFlag_get(VOLATILE_FLAG_C4_WOZZA_HIDE_IN_SNS_PARADE)){
|
||||||
if(!this->unk16C_4){
|
if(!this->unk16C_4){
|
||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
this->marker->propPtr->unk8_3 = FALSE;
|
this->marker->propPtr->unk8_3 = FALSE;
|
||||||
@@ -228,7 +228,7 @@ void FP_func_8038F7AC(Actor *this){
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(func_80329530(this, 1000) && !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(func_80329530(this, 1000) && !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
func_8038F454(this);
|
func_8038F454(this);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -42,7 +42,7 @@ void __chXmasTree_80386EF4(Actor *this, int arg1){
|
|||||||
void __chXmasTree_80386F3C(void){
|
void __chXmasTree_80386F3C(void){
|
||||||
levelSpecificFlags_set(0x29, TRUE);
|
levelSpecificFlags_set(0x29, TRUE);
|
||||||
func_803228D8();
|
func_803228D8();
|
||||||
func_803204E4(0xe, 1);
|
volatileFlag_set(0xe, 1);
|
||||||
func_802E4078(MAP_53_FP_CHRISTMAS_TREE, 1, 0);
|
func_802E4078(MAP_53_FP_CHRISTMAS_TREE, 1, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -130,7 +130,7 @@ void chGobi1_update(Actor *this){
|
|||||||
this->unk1C[0] = 0.0f;
|
this->unk1C[0] = 0.0f;
|
||||||
this->unk1C[1] = 0.0f;
|
this->unk1C[1] = 0.0f;
|
||||||
chGobi1_setState(this, 1);
|
chGobi1_setState(this, 1);
|
||||||
if(jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1) && ! func_803203FC(1)){
|
if(jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1) && ! volatileFlag_get(VOLATILE_FLAG_1)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
@@ -112,7 +112,7 @@ void chGobiRock_update(Actor *this){
|
|||||||
this->position_z = sp28->position_z;
|
this->position_z = sp28->position_z;
|
||||||
}
|
}
|
||||||
__chGobiRock_setState(this, 1);
|
__chGobiRock_setState(this, 1);
|
||||||
if(jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1) && !func_803203FC(1)){
|
if(jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1) && !volatileFlag_get(VOLATILE_FLAG_1)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -49,7 +49,7 @@ void chGobiRope_update(Actor *this){
|
|||||||
}
|
}
|
||||||
chGobiRope_setState(this, 1);
|
chGobiRope_setState(this, 1);
|
||||||
if( jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1)
|
if( jiggyscore_isSpawned(JIGGY_44_GV_GOBI_1)
|
||||||
&& !func_803203FC(1)
|
&& !volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
){
|
){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
|
@@ -118,7 +118,7 @@ void func_8038DBDC(Actor *this){
|
|||||||
func_8038DB4C(0);
|
func_8038DB4C(0);
|
||||||
this->unk1C[0] = 0.0f;
|
this->unk1C[0] = 0.0f;
|
||||||
}//L8038DC90
|
}//L8038DC90
|
||||||
if(func_8038E178() != (s32)this->unk1C[0] || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(func_8038E178() != (s32)this->unk1C[0] || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
if(15.0f <= this->unk60){
|
if(15.0f <= this->unk60){
|
||||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||||
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE);
|
animctrl_setPlaybackType(this->animctrl, ANIMCTRL_ONCE);
|
||||||
|
@@ -61,7 +61,7 @@ void chTrucker_update(Actor *this){
|
|||||||
marker->propPtr->unk8_3 = TRUE;
|
marker->propPtr->unk8_3 = TRUE;
|
||||||
actor_collisionOff(this);
|
actor_collisionOff(this);
|
||||||
mapSpecificFlags_set(0xC, FALSE);
|
mapSpecificFlags_set(0xC, FALSE);
|
||||||
if(jiggyscore_isSpawned(JIGGY_45_GV_GOBI_2) && !func_803203FC(1)){
|
if(jiggyscore_isSpawned(JIGGY_45_GV_GOBI_2) && !volatileFlag_get(VOLATILE_FLAG_1)){
|
||||||
__chTrucker_setState(this, 3);
|
__chTrucker_setState(this, 3);
|
||||||
}
|
}
|
||||||
else{//L803891CC
|
else{//L803891CC
|
||||||
|
@@ -64,7 +64,7 @@ void func_8038D47C(Actor *this){
|
|||||||
if(!this->unk16C_4){
|
if(!this->unk16C_4){
|
||||||
mapSpecificFlags_set(0x10, 0);
|
mapSpecificFlags_set(0x10, 0);
|
||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -3){
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) && gcparade_8031B4F4() == -3){
|
||||||
timedFunc_set_1(1.5f, (GenFunction_1)func_8038D450, reinterpret_cast(s32, this->marker));
|
timedFunc_set_1(1.5f, (GenFunction_1)func_8038D450, reinterpret_cast(s32, this->marker));
|
||||||
}
|
}
|
||||||
}//L8038D5EC
|
}//L8038D5EC
|
||||||
@@ -121,7 +121,7 @@ void func_8038D47C(Actor *this){
|
|||||||
FUNC_8030E624(SFX_D6_UGH, 0.8f, 32750);
|
FUNC_8030E624(SFX_D6_UGH, 0.8f, 32750);
|
||||||
}
|
}
|
||||||
if(actor_animationIsAt(this, 0.94f)){
|
if(actor_animationIsAt(this, 0.94f)){
|
||||||
if(!func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(!volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
mapSpecificFlags_set(0x10, 1);
|
mapSpecificFlags_set(0x10, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -69,7 +69,7 @@ void __matchingGame_spawnJIggy(void){
|
|||||||
void __matchingGame_setState(s32 next_state){
|
void __matchingGame_setState(s32 next_state){
|
||||||
if(next_state == 2){
|
if(next_state == 2){
|
||||||
item_set(ITEM_6_HOURGLASS, 1);
|
item_set(ITEM_6_HOURGLASS, 1);
|
||||||
if(func_803203FC(2))
|
if(volatileFlag_get(VOLATILE_FLAG_2))
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 4499);
|
item_set(ITEM_0_HOURGLASS_TIMER, 4499);
|
||||||
else
|
else
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 5999);
|
item_set(ITEM_0_HOURGLASS_TIMER, 5999);
|
||||||
@@ -79,9 +79,9 @@ void __matchingGame_setState(s32 next_state){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(next_state == 3){
|
if(next_state == 3){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 0);
|
volatileFlag_set(5, 0);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
func_8028F66C(BS_INTR_F);
|
func_8028F66C(BS_INTR_F);
|
||||||
@@ -89,9 +89,9 @@ void __matchingGame_setState(s32 next_state){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(next_state == 4){
|
if(next_state == 4){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 1);
|
volatileFlag_set(5, 1);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
|
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
|
||||||
@@ -120,7 +120,7 @@ void gv_matchingGame_init(void){
|
|||||||
matchingGame.state = 0;
|
matchingGame.state = 0;
|
||||||
if(map_get() == MAP_13_GV_MEMORY_GAME){
|
if(map_get() == MAP_13_GV_MEMORY_GAME){
|
||||||
if( !jiggyscore_isSpawned(JIGGY_40_GV_MATCHING_GAME) //jiggy is collected
|
if( !jiggyscore_isSpawned(JIGGY_40_GV_MATCHING_GAME) //jiggy is collected
|
||||||
|| func_803203FC(2) //in FF minigame
|
|| volatileFlag_get(VOLATILE_FLAG_2) //in FF minigame
|
||||||
){
|
){
|
||||||
matchingGame.match_count = 0;
|
matchingGame.match_count = 0;
|
||||||
matchingGame.tile_a = NULL;
|
matchingGame.tile_a = NULL;
|
||||||
@@ -222,8 +222,8 @@ void gv_matchingGame_update(void){
|
|||||||
}//L803907F0
|
}//L803907F0
|
||||||
|
|
||||||
if( matchingGame.state == 1
|
if( matchingGame.state == 1
|
||||||
&& func_803203FC(2)
|
&& volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
&& func_803203FC(3)
|
&& volatileFlag_get(VOLATILE_FLAG_3)
|
||||||
){
|
){
|
||||||
__matchingGame_setState(2);
|
__matchingGame_setState(2);
|
||||||
}
|
}
|
||||||
|
@@ -39,7 +39,7 @@ void __waterCtrl_setState(s32 arg0){
|
|||||||
if(GV_D_80391B00.state == 3){
|
if(GV_D_80391B00.state == 3){
|
||||||
levelSpecificFlags_set(6, TRUE);
|
levelSpecificFlags_set(6, TRUE);
|
||||||
func_803228D8();
|
func_803228D8();
|
||||||
func_803204E4(0xe, 1);
|
volatileFlag_set(0xe, 1);
|
||||||
func_802E4078(MAP_12_GV_GOBIS_VALLEY, 0, 0);
|
func_802E4078(MAP_12_GV_GOBIS_VALLEY, 0, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -152,7 +152,7 @@ int func_803872EC(void){
|
|||||||
|
|
||||||
return text_id == ASSET_B37_TEXT_CONGA_SAFE_UP_HERE
|
return text_id == ASSET_B37_TEXT_CONGA_SAFE_UP_HERE
|
||||||
|| text_id == ASSET_B38_TEXT_CONGA_DEFEAT
|
|| text_id == ASSET_B38_TEXT_CONGA_DEFEAT
|
||||||
|| func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
|| volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
|| text_id == ASSET_B3B_TEXT_CONGA_ORANGE_PAD_JIGGY
|
|| text_id == ASSET_B3B_TEXT_CONGA_ORANGE_PAD_JIGGY
|
||||||
|| text_id == ASSET_B45_TEXT_JIGGY_COLLECT_10
|
|| text_id == ASSET_B45_TEXT_JIGGY_COLLECT_10
|
||||||
|| text_id == ASSET_B51_TEXT_BOTTLES_HOW_TO_EXIT_LEVEL;
|
|| text_id == ASSET_B51_TEXT_BOTTLES_HOW_TO_EXIT_LEVEL;
|
||||||
|
@@ -175,7 +175,7 @@ void chnapper_update(Actor *this){
|
|||||||
__chnapper_setState(this, 2);
|
__chnapper_setState(this, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(MMM_func_80389530() || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(MMM_func_80389530() || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
__chnapper_setState(this, 3);
|
__chnapper_setState(this, 3);
|
||||||
}
|
}
|
||||||
}//L80386F74
|
}//L80386F74
|
||||||
|
@@ -21,7 +21,7 @@ void __chAnchorSwitch_setState(Actor *this, s32 arg1){
|
|||||||
this->position_y -= 35.0f;
|
this->position_y -= 35.0f;
|
||||||
if(this->state == 1){
|
if(this->state == 1){
|
||||||
levelSpecificFlags_set(0x30, TRUE);
|
levelSpecificFlags_set(0x30, TRUE);
|
||||||
func_803204E4(0xe, 1);
|
volatileFlag_set(0xe, 1);
|
||||||
timedFunc_set_0(1.0f, func_803228D8);
|
timedFunc_set_0(1.0f, func_803228D8);
|
||||||
timedFunc_set_3(1.0f, (GenFunction_3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
|
timedFunc_set_3(1.0f, (GenFunction_3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
|
||||||
}
|
}
|
||||||
|
@@ -313,7 +313,7 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
|
|||||||
timed_playSfx(1.25f, SFX_6C_LOCKUP_CLOSING, 1.05f, 0x7d00);
|
timed_playSfx(1.25f, SFX_6C_LOCKUP_CLOSING, 1.05f, 0x7d00);
|
||||||
timed_playSfx(1.35f, SFX_6C_LOCKUP_CLOSING, 1.0f, 0x7d00);
|
timed_playSfx(1.35f, SFX_6C_LOCKUP_CLOSING, 1.0f, 0x7d00);
|
||||||
timed_playSfx(1.8f, SFX_6C_LOCKUP_CLOSING, 1.0f, 0x7d00);
|
timed_playSfx(1.8f, SFX_6C_LOCKUP_CLOSING, 1.0f, 0x7d00);
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
item_set(ITEM_6_HOURGLASS, 1);
|
item_set(ITEM_6_HOURGLASS, 1);
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 0x1067);
|
item_set(ITEM_0_HOURGLASS_TIMER, 0x1067);
|
||||||
timed_exitStaticCamera(2.4f);
|
timed_exitStaticCamera(2.4f);
|
||||||
@@ -360,10 +360,10 @@ void RBB_func_8038CC9C(Actor *this, s32 new_state){
|
|||||||
func_8025A58C(-1, 0x190);
|
func_8025A58C(-1, 0x190);
|
||||||
comusic_8025AB44(COMUSIC_62_RBB_BOOMBOX, 0, 0x190);
|
comusic_8025AB44(COMUSIC_62_RBB_BOOMBOX, 0, 0x190);
|
||||||
func_8025AABC(COMUSIC_62_RBB_BOOMBOX);
|
func_8025AABC(COMUSIC_62_RBB_BOOMBOX);
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
item_set(ITEM_6_HOURGLASS, 0);
|
item_set(ITEM_6_HOURGLASS, 0);
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 1);
|
volatileFlag_set(5, 1);
|
||||||
}
|
}
|
||||||
else{//L8038D220
|
else{//L8038D220
|
||||||
timedFunc_set_3(0.0f, (GenFunction_3)chbossboombox_respawnJiggy, (s32)this->position_x, (s32)this->position_y, (s32)this->position_z);
|
timedFunc_set_3(0.0f, (GenFunction_3)chbossboombox_respawnJiggy, (s32)this->position_x, (s32)this->position_y, (s32)this->position_z);
|
||||||
@@ -523,13 +523,13 @@ void func_8038D8BC(Actor *this){
|
|||||||
RBB_func_8038CC9C(this, 7);
|
RBB_func_8038CC9C(this, 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(jiggyscore_isSpawned(JIGGY_56_RBB_BOSS_BOOM_BOX) && !func_803203FC(2))
|
if(jiggyscore_isSpawned(JIGGY_56_RBB_BOSS_BOOM_BOX) && !volatileFlag_get(VOLATILE_FLAG_2))
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
|
|
||||||
if(func_803203FC(2))
|
if(volatileFlag_get(VOLATILE_FLAG_2))
|
||||||
chbossboombox_hideJiggy();
|
chbossboombox_hideJiggy();
|
||||||
|
|
||||||
if(func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
chbossboombox_hideJiggy();
|
chbossboombox_hideJiggy();
|
||||||
skeletalAnim_set(this->unk148, ASSET_146_ANIM_BOSS_BOOMBOX_APPEAR, 0.0f, 2.4f);
|
skeletalAnim_set(this->unk148, ASSET_146_ANIM_BOSS_BOOMBOX_APPEAR, 0.0f, 2.4f);
|
||||||
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
skeletalAnim_setBehavior(this->unk148, SKELETAL_ANIM_2_ONCE);
|
||||||
@@ -540,8 +540,8 @@ void func_8038D8BC(Actor *this){
|
|||||||
|
|
||||||
player_getPosition(player_position);
|
player_getPosition(player_position);
|
||||||
if(this->state == 1){
|
if(this->state == 1){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
if(func_803203FC(3)){
|
if(volatileFlag_get(VOLATILE_FLAG_3)){
|
||||||
RBB_func_8038CC9C(this, 2);
|
RBB_func_8038CC9C(this, 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -572,10 +572,10 @@ void func_8038D8BC(Actor *this){
|
|||||||
}//L8038DC48
|
}//L8038DC48
|
||||||
|
|
||||||
if(this->state == 3 || this->state == 4){
|
if(this->state == 3 || this->state == 4){
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
if(item_empty(ITEM_0_HOURGLASS_TIMER)){
|
if(item_empty(ITEM_0_HOURGLASS_TIMER)){
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 0);
|
volatileFlag_set(5, 0);
|
||||||
RBB_func_8038CC9C(this, 8);
|
RBB_func_8038CC9C(this, 8);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -21,7 +21,7 @@ void chBossBoomBoxCtrl_update(Actor *this){
|
|||||||
if(!this->unk16C_4){
|
if(!this->unk16C_4){
|
||||||
|
|
||||||
this->unk16C_4 = 1;
|
this->unk16C_4 = 1;
|
||||||
if(jiggyscore_isSpawned(JIGGY_56_RBB_BOSS_BOOM_BOX) && !func_803203FC(2)){
|
if(jiggyscore_isSpawned(JIGGY_56_RBB_BOSS_BOOM_BOX) && !volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}else{
|
}else{
|
||||||
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_281_BOSS_BOOM_BOX_LARGEST, reinterpret_cast(s32,this->position_x), reinterpret_cast(s32,this->position_y), reinterpret_cast(s32,this->position_z));
|
__spawnQueue_add_4((GenFunction_4)func_802C4140, ACTOR_281_BOSS_BOOM_BOX_LARGEST, reinterpret_cast(s32,this->position_x), reinterpret_cast(s32,this->position_y), reinterpret_cast(s32,this->position_z));
|
||||||
|
@@ -132,7 +132,7 @@ void chAttackTutorial_update(Actor *this){
|
|||||||
if(mapSpecificFlags_get(4))
|
if(mapSpecificFlags_get(4))
|
||||||
chAttackTutorial_setState(this, 5);
|
chAttackTutorial_setState(this, 5);
|
||||||
|
|
||||||
if(func_803874C4() || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE))
|
if(func_803874C4() || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE))
|
||||||
chAttackTutorial_setState(this, 4);
|
chAttackTutorial_setState(this, 4);
|
||||||
break;
|
break;
|
||||||
case 2://L80387658
|
case 2://L80387658
|
||||||
|
@@ -246,7 +246,7 @@ void func_80387E64(Actor *this){
|
|||||||
void func_80387F00(Actor *this){
|
void func_80387F00(Actor *this){
|
||||||
ChVeg *local = (ChVeg *)&this->local;
|
ChVeg *local = (ChVeg *)&this->local;
|
||||||
|
|
||||||
this->position_y += (mapSpecificFlags_get(0xC) || func_803203FC(0xC1)) ? 120.0 : 180.0;
|
this->position_y += (mapSpecificFlags_get(0xC) || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)) ? 120.0 : 180.0;
|
||||||
local->unk0_x = this->position_x;
|
local->unk0_x = this->position_x;
|
||||||
local->unk0_y = this->position_y;
|
local->unk0_y = this->position_y;
|
||||||
local->unk0_z = this->position_z;
|
local->unk0_z = this->position_z;
|
||||||
@@ -329,9 +329,9 @@ void func_80388080(Actor *this){
|
|||||||
switch (this->state)
|
switch (this->state)
|
||||||
{
|
{
|
||||||
case 1: //L803882B0
|
case 1: //L803882B0
|
||||||
if(mapSpecificFlags_get(0xC) || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) || this->unk10_12){
|
if(mapSpecificFlags_get(0xC) || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) || this->unk10_12){
|
||||||
//L803882E4
|
//L803882E4
|
||||||
if(mapSpecificFlags_get(0xC) || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){ //L8038830C
|
if(mapSpecificFlags_get(0xC) || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){ //L8038830C
|
||||||
this->unk1C_y += (local->unkC == 3)? 120.0 : 0.0;
|
this->unk1C_y += (local->unkC == 3)? 120.0 : 0.0;
|
||||||
}else{//L80388350
|
}else{//L80388350
|
||||||
this->unk1C_y += (local->unkC == 3)? 270.0 : 85.0;
|
this->unk1C_y += (local->unkC == 3)? 270.0 : 85.0;
|
||||||
@@ -372,7 +372,7 @@ void func_80388080(Actor *this){
|
|||||||
}else{//L80388520
|
}else{//L80388520
|
||||||
if(local->unkC == 1){
|
if(local->unkC == 1){
|
||||||
this->unk28 = 3.0f;
|
this->unk28 = 3.0f;
|
||||||
if(mapSpecificFlags_get(0xC) || func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){//L80388554
|
if(mapSpecificFlags_get(0xC) || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){//L80388554
|
||||||
if(!func_80329030(this, 0) && func_80329480(this)){
|
if(!func_80329030(this, 0) && func_80329480(this)){
|
||||||
func_80328CEC(this, (s32)this->yaw, 0x78, 0xb4);
|
func_80328CEC(this, (s32)this->yaw, 0x78, 0xb4);
|
||||||
this->unk38_0 = 1;
|
this->unk38_0 = 1;
|
||||||
@@ -396,7 +396,7 @@ void func_80388080(Actor *this){
|
|||||||
func_80328CEC(this, (s32)this->yaw, 0x78, 0xB4);
|
func_80328CEC(this, (s32)this->yaw, 0x78, 0xB4);
|
||||||
this->unk38_0 = 1;
|
this->unk38_0 = 1;
|
||||||
}//L80388698
|
}//L80388698
|
||||||
if(mapSpecificFlags_get(0xC) || (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) && func_803292E0(this))){
|
if(mapSpecificFlags_get(0xC) || (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) && func_803292E0(this))){
|
||||||
this->yaw_ideal = func_80329784(this);
|
this->yaw_ideal = func_80329784(this);
|
||||||
}else{//L803886E4
|
}else{//L803886E4
|
||||||
if(randf() < 0.02){//D_8038B1D0){
|
if(randf() < 0.02){//D_8038B1D0){
|
||||||
@@ -427,7 +427,7 @@ void func_80388080(Actor *this){
|
|||||||
func_80387E64(this);
|
func_80387E64(this);
|
||||||
}
|
}
|
||||||
this->unk28 = 5.0f;
|
this->unk28 = 5.0f;
|
||||||
if(mapSpecificFlags_get(0xC) || (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE))){ //L8038892C
|
if(mapSpecificFlags_get(0xC) || (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE))){ //L8038892C
|
||||||
if(!func_80387FA8(this, local, (s32)this->yaw, (s32)this->unk28)){
|
if(!func_80387FA8(this, local, (s32)this->yaw, (s32)this->unk28)){
|
||||||
if(func_80329480(this)){
|
if(func_80329480(this)){
|
||||||
func_80328CEC(this, (s32)this->yaw, 0x78, 0xb4);
|
func_80328CEC(this, (s32)this->yaw, 0x78, 0xb4);
|
||||||
|
@@ -420,7 +420,7 @@ void chsmmole_Update(Actor * this){
|
|||||||
this->unk28 = nodeprop_getRadius(sp40);
|
this->unk28 = nodeprop_getRadius(sp40);
|
||||||
}//L80389A8C
|
}//L80389A8C
|
||||||
if(this->unkF4_8 == 1){
|
if(this->unkF4_8 == 1){
|
||||||
if(func_803203FC(1) || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_1) || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
func_80388FA0(this, 3);
|
func_80388FA0(this, 3);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -85,8 +85,8 @@ bool __chClam_updateTarget(Actor *this, f32 arg1) {
|
|||||||
|
|
||||||
this->unk28 = phi_f2 / arg1;
|
this->unk28 = phi_f2 / arg1;
|
||||||
this->yaw_ideal = func_80257204(this->position[0], this->position[2], target_position[0], target_position[2]);
|
this->yaw_ideal = func_80257204(this->position[0], this->position[2], target_position[0], target_position[2]);
|
||||||
if ((func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11) < this->unk28) {
|
if ((volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11) < this->unk28) {
|
||||||
this->unk28 = (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f;
|
this->unk28 = (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) ? 0.0f : 17.0f;
|
||||||
} else if (sp38 == 0) {
|
} else if (sp38 == 0) {
|
||||||
__chClam_func_803863F0(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f);
|
__chClam_func_803863F0(SFX_AE_YUMYUM_TALKING, randf2(0.9f, 1.0f), 22000, this->position, 500.0f, 2000.0f);
|
||||||
}
|
}
|
||||||
@@ -108,13 +108,13 @@ bool __chClam_rotateTowardTarget(Actor *this, s32 arg1) {
|
|||||||
if (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) {
|
if (((f64) animctrl_getAnimTimer(this->animctrl) < 0.1) && ((f64) randf() < 0.5)) {
|
||||||
if (this->unk1C[0] != 0.0f) {
|
if (this->unk1C[0] != 0.0f) {
|
||||||
arg1 *= 2;
|
arg1 *= 2;
|
||||||
this->unk28 = (f32) randi2(0, 0.5*(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11));
|
this->unk28 = (f32) randi2(0, 0.5*(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11));
|
||||||
this->yaw_ideal += (f32) randi2(-arg1, arg1);
|
this->yaw_ideal += (f32) randi2(-arg1, arg1);
|
||||||
} else if ((f64) randf() < 0.4) {
|
} else if ((f64) randf() < 0.4) {
|
||||||
this->unk28 = 0.0f;
|
this->unk28 = 0.0f;
|
||||||
this->yaw_ideal += (f32) randi2(-arg1, arg1);
|
this->yaw_ideal += (f32) randi2(-arg1, arg1);
|
||||||
} else {
|
} else {
|
||||||
this->unk28 = (f32) randi2(0.33 * (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11), func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11);
|
this->unk28 = (f32) randi2(0.33 * (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11), volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0 : 0x11);
|
||||||
this->yaw_ideal = this->yaw;
|
this->yaw_ideal = this->yaw;
|
||||||
}
|
}
|
||||||
this->unk1C[0] = 0.0f;
|
this->unk1C[0] = 0.0f;
|
||||||
|
@@ -48,7 +48,7 @@ void chtreasure_update(Actor *this){
|
|||||||
|
|
||||||
if(!this->initialized){
|
if(!this->initialized){
|
||||||
this->initialized = TRUE;
|
this->initialized = TRUE;
|
||||||
if(this->unkF4_8 == 1 && !func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(this->unkF4_8 == 1 && !volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -116,7 +116,7 @@ void func_8038A23C( s32 arg0, BKVtxRef *vtx_ref, Vtx *vtx, s32 arg2){
|
|||||||
|
|
||||||
void func_8038A258(s32 arg0) {
|
void func_8038A258(s32 arg0) {
|
||||||
if (arg0 == 1) {
|
if (arg0 == 1) {
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 3000 - 1);
|
item_set(ITEM_0_HOURGLASS_TIMER, 3000 - 1);
|
||||||
} else {
|
} else {
|
||||||
item_set(ITEM_0_HOURGLASS_TIMER, 6000 - 1);
|
item_set(ITEM_0_HOURGLASS_TIMER, 6000 - 1);
|
||||||
@@ -247,14 +247,14 @@ void func_8038ABA0(u32 arg0){
|
|||||||
if(arg0 & 0x400){
|
if(arg0 & 0x400){
|
||||||
func_80356560(0xC5);
|
func_80356560(0xC5);
|
||||||
}
|
}
|
||||||
func_803204E4(0x78, 0);
|
volatileFlag_set(0x78, 0);
|
||||||
for(i = 4; i < 0xb; i++){
|
for(i = 4; i < 0xb; i++){
|
||||||
if( arg0 & (1 << i)){
|
if( arg0 & (1 << i)){
|
||||||
func_803204E4(0x93 + i, TRUE);
|
volatileFlag_set(0x93 + i, TRUE);
|
||||||
func_803204E4(0x78, TRUE);
|
volatileFlag_set(0x78, TRUE);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
func_803204E4(0x93 + i, FALSE);
|
volatileFlag_set(0x93 + i, FALSE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -269,7 +269,7 @@ void func_8038AC48(LetterFloorTile *arg0) {
|
|||||||
s32 phi_s1;
|
s32 phi_s1;
|
||||||
bool phi_s7;
|
bool phi_s7;
|
||||||
|
|
||||||
temp_s5 = func_803203FC(2);
|
temp_s5 = volatileFlag_get(VOLATILE_FLAG_2);
|
||||||
phi_s7 = FALSE;
|
phi_s7 = FALSE;
|
||||||
sp3C = func_8038BD10(arg0);
|
sp3C = func_8038BD10(arg0);
|
||||||
for(i_ptr = codesTable; i_ptr->code != 0; i_ptr++){
|
for(i_ptr = codesTable; i_ptr->code != 0; i_ptr++){
|
||||||
@@ -284,7 +284,7 @@ void func_8038AC48(LetterFloorTile *arg0) {
|
|||||||
phi_s1 |= (0x10 << i);
|
phi_s1 |= (0x10 << i);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if (func_803203FC(0x78)) {
|
if (volatileFlag_get(0x78)) {
|
||||||
phi_s1 |= 0x800;
|
phi_s1 |= 0x800;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -310,8 +310,8 @@ void func_8038AC48(LetterFloorTile *arg0) {
|
|||||||
|
|
||||||
if (temp_s5) {
|
if (temp_s5) {
|
||||||
item_set(ITEM_6_HOURGLASS, FALSE);
|
item_set(ITEM_6_HOURGLASS, FALSE);
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
func_803204E4(5, 1);
|
volatileFlag_set(5, 1);
|
||||||
func_8038A258(2);
|
func_8038A258(2);
|
||||||
} else {
|
} else {
|
||||||
var_v0 = i_ptr->unk4;
|
var_v0 = i_ptr->unk4;
|
||||||
@@ -366,7 +366,7 @@ void func_8038AFC8(void){
|
|||||||
iPtr->unk6 = 0;
|
iPtr->unk6 = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(func_803203FC(2))
|
if(volatileFlag_get(VOLATILE_FLAG_2))
|
||||||
strcpy(codesTable[0].code, "j4663n86pink"); //EIOOZAKOJNAB
|
strcpy(codesTable[0].code, "j4663n86pink"); //EIOOZAKOJNAB
|
||||||
else
|
else
|
||||||
strcpy(codesTable[0].code, "knip68n3664j"); //BANJOKAZOOIE
|
strcpy(codesTable[0].code, "knip68n3664j"); //BANJOKAZOOIE
|
||||||
@@ -410,7 +410,7 @@ void func_8038B094(void){
|
|||||||
func_803228D8();
|
func_803228D8();
|
||||||
timedFunc_set_3(2.0f, (GenFunction_3) func_802E4078, MAP_7_TTC_TREASURE_TROVE_COVE, 1, 0);
|
timedFunc_set_3(2.0f, (GenFunction_3) func_802E4078, MAP_7_TTC_TREASURE_TROVE_COVE, 1, 0);
|
||||||
}
|
}
|
||||||
else if(levelSpecificFlags_get(2) || func_803203FC(2)){
|
else if(levelSpecificFlags_get(2) || volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_8034E71C(sp2C, -500, 0.0f);
|
func_8034E71C(sp2C, -500, 0.0f);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -437,7 +437,7 @@ void func_8038B094(void){
|
|||||||
func_8038AFC8();
|
func_8038AFC8();
|
||||||
|
|
||||||
if( jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
if( jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
||||||
&& !func_803203FC(2)
|
&& !volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
){
|
){
|
||||||
BKModel_transformMesh(D_8038D720.model2, 0x3C, func_8038A23C, 0);
|
BKModel_transformMesh(D_8038D720.model2, 0x3C, func_8038A23C, 0);
|
||||||
D_8038D720.unk8 = 3;
|
D_8038D720.unk8 = 3;
|
||||||
@@ -461,20 +461,20 @@ void func_8038B2F0(void) {
|
|||||||
if (D_8038D720.model1 != 0) {
|
if (D_8038D720.model1 != 0) {
|
||||||
func_8038AA2C();
|
func_8038AA2C();
|
||||||
player_getPosition(sp2C);
|
player_getPosition(sp2C);
|
||||||
if ((D_8038D720.unk10 == 0) && func_803203FC(2) && func_803203FC(3)) {
|
if ((D_8038D720.unk10 == 0) && volatileFlag_get(VOLATILE_FLAG_2) && volatileFlag_get(VOLATILE_FLAG_3)) {
|
||||||
func_8038A258(1);
|
func_8038A258(1);
|
||||||
}
|
}
|
||||||
if ((D_8038D720.unk10 == 1) && item_empty(ITEM_0_HOURGLASS_TIMER)) {
|
if ((D_8038D720.unk10 == 1) && item_empty(ITEM_0_HOURGLASS_TIMER)) {
|
||||||
func_8038A258(2);
|
func_8038A258(2);
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
func_803204E4(3, FALSE);
|
volatileFlag_set(3, FALSE);
|
||||||
func_803204E4(5, FALSE);
|
volatileFlag_set(5, FALSE);
|
||||||
} else {
|
} else {
|
||||||
func_8028F66C(BS_INTR_F);
|
func_8028F66C(BS_INTR_F);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((D_8038D720.unk8 == 0) || (D_8038D720.unk8 == 3)) {
|
if ((D_8038D720.unk8 == 0) || (D_8038D720.unk8 == 3)) {
|
||||||
if( (levelSpecificFlags_get(2) || func_803203FC(3))
|
if( (levelSpecificFlags_get(2) || volatileFlag_get(VOLATILE_FLAG_3))
|
||||||
&& (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER)
|
&& (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER)
|
||||||
&& func_8028F20C()
|
&& func_8028F20C()
|
||||||
) {
|
) {
|
||||||
@@ -483,7 +483,7 @@ void func_8038B2F0(void) {
|
|||||||
temp_v0_3 = func_8038A2DC(mesh_id);
|
temp_v0_3 = func_8038A2DC(mesh_id);
|
||||||
if ((temp_v0_3 != NULL) && ((temp_v0_3->unk3 == 2) || (D_8038D720.unk8 == 3))) {
|
if ((temp_v0_3 != NULL) && ((temp_v0_3->unk3 == 2) || (D_8038D720.unk8 == 3))) {
|
||||||
func_8038AC48(temp_v0_3);
|
func_8038AC48(temp_v0_3);
|
||||||
if ((D_8038D720.unk8 == 0) && (D_8038D720.unk10 == 0) && (func_803203FC(2) == 0)) {
|
if ((D_8038D720.unk8 == 0) && (D_8038D720.unk10 == 0) && (volatileFlag_get(VOLATILE_FLAG_2) == 0)) {
|
||||||
func_8038A258(1);
|
func_8038A258(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -613,7 +613,7 @@ u32 func_8038B600(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void TTC_func_8038B6D4(s32 arg0, s32 secretCodeIndex, s32 arg2, enum file_progress_e prog_id, s32 prog_val, s32 prog_bit_size, enum file_progress_e arg6){
|
void TTC_func_8038B6D4(s32 arg0, s32 secretCodeIndex, s32 arg2, enum file_progress_e prog_id, s32 prog_val, s32 prog_bit_size, enum file_progress_e arg6){
|
||||||
if( ((arg2 + 20 == secretCodesTable[secretCodeIndex].id) && func_803203FC(arg2))
|
if( ((arg2 + 20 == secretCodesTable[secretCodeIndex].id) && volatileFlag_get(arg2))
|
||||||
|| arg0 == 3
|
|| arg0 == 3
|
||||||
){
|
){
|
||||||
fileProgressFlag_setN(prog_id, prog_val, prog_bit_size);
|
fileProgressFlag_setN(prog_id, prog_val, prog_bit_size);
|
||||||
@@ -657,8 +657,8 @@ void func_8038B800(s32 secretCodeIndex) {
|
|||||||
func_8038B564(secretCodeIndex, 7, MAP_7F_FP_WOZZAS_CAVE, 0x89, 0x21);
|
func_8038B564(secretCodeIndex, 7, MAP_7F_FP_WOZZAS_CAVE, 0x89, 0x21);
|
||||||
if (secretCode->id >= 0x14) {
|
if (secretCode->id >= 0x14) {
|
||||||
func_8030E58C(SFX_2B_BULL_MOO_1, 1.5f);
|
func_8030E58C(SFX_2B_BULL_MOO_1, 1.5f);
|
||||||
func_803204E4(0x65, 1);
|
volatileFlag_set(0x65, 1);
|
||||||
func_803204E4(sp38, 1);
|
volatileFlag_set(sp38, 1);
|
||||||
}
|
}
|
||||||
TTC_func_8038B6D4(0, secretCodeIndex, 0x6C, FILEPROG_60_CC_PUZZLE_PIECES_PLACED, 5, 3, FILEPROG_33_CC_OPEN);
|
TTC_func_8038B6D4(0, secretCodeIndex, 0x6C, FILEPROG_60_CC_PUZZLE_PIECES_PLACED, 5, 3, FILEPROG_33_CC_OPEN);
|
||||||
TTC_func_8038B6D4(0, secretCodeIndex, 0x6D, FILEPROG_63_BGS_PUZZLE_PIECES_PLACED, 7, 3, FILEPROG_34_BGS_OPEN);
|
TTC_func_8038B6D4(0, secretCodeIndex, 0x6D, FILEPROG_63_BGS_PUZZLE_PIECES_PLACED, 7, 3, FILEPROG_34_BGS_OPEN);
|
||||||
@@ -694,7 +694,7 @@ void TTC_func_8038BBA0(s32 secretCodeIndex) {
|
|||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
if ((s32) secretCodesTable[secretCodeIndex].id >= 0x14) {
|
if ((s32) secretCodesTable[secretCodeIndex].id >= 0x14) {
|
||||||
if (func_803203FC(secretCodesTable[secretCodeIndex].id - 0x14)) {
|
if (volatileFlag_get(secretCodesTable[secretCodeIndex].id - 0x14)) {
|
||||||
func_8038B5B4();
|
func_8038B5B4();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -173,7 +173,7 @@ void mainLoop(void){
|
|||||||
}//L8023DE54
|
}//L8023DE54
|
||||||
if( !func_8032056C()
|
if( !func_8032056C()
|
||||||
|| !levelSpecificFlags_validateCRC1()
|
|| !levelSpecificFlags_validateCRC1()
|
||||||
|| !func_80320240()
|
|| !dummy_func_80320240()
|
||||||
){
|
){
|
||||||
s32 offset;
|
s32 offset;
|
||||||
//render weird CRC failure image
|
//render weird CRC failure image
|
||||||
|
@@ -182,9 +182,9 @@ void pfsManager_update(void) {
|
|||||||
temp_t6 = demo_readInput(&pfsManagerContPadData, &sp5C) == 0;
|
temp_t6 = demo_readInput(&pfsManagerContPadData, &sp5C) == 0;
|
||||||
if ((D_802812D0.button & s0) || temp_t6) {
|
if ((D_802812D0.button & s0) || temp_t6) {
|
||||||
if (D_802812D0.button & s0) {
|
if (D_802812D0.button & s0) {
|
||||||
func_803204E4(0x64, 1);
|
volatileFlag_set(0x64, 1);
|
||||||
} else {
|
} else {
|
||||||
func_803204E4(0x63, 1);
|
volatileFlag_set(0x63, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
func_8033DD04(sp5C);
|
func_8033DD04(sp5C);
|
||||||
|
@@ -181,8 +181,8 @@ void func_8024AF00(s32 arg0, s32 arg1){
|
|||||||
void func_8024AF48(void){
|
void func_8024AF48(void){
|
||||||
|
|
||||||
if(!D_802806F4) return;
|
if(!D_802806F4) return;
|
||||||
if(func_803203FC(1)) return;
|
if(volatileFlag_get(VOLATILE_FLAG_1)) return;
|
||||||
if(func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) return;
|
if(volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) return;
|
||||||
if(func_802D686C()) return;
|
if(func_802D686C()) return;
|
||||||
if(func_8028F22C()) return;
|
if(func_8028F22C()) return;
|
||||||
if(gctransition_8030BDC0()) return;
|
if(gctransition_8030BDC0()) return;
|
||||||
|
@@ -57,7 +57,7 @@ void animCache_flushAll(void){
|
|||||||
|
|
||||||
for(i = 0; i<340; i++){
|
for(i = 0; i<340; i++){
|
||||||
if(D_80379E20[i].alive){
|
if(D_80379E20[i].alive){
|
||||||
func_803203FC(0);
|
volatileFlag_get(VOLATILE_FLAG_0);
|
||||||
D_80379E20[i].life = 0;
|
D_80379E20[i].life = 0;
|
||||||
boneTransformList_free(D_80379E20[i].bone_xform);
|
boneTransformList_free(D_80379E20[i].bone_xform);
|
||||||
D_80379E20[i].bone_xform = NULL;
|
D_80379E20[i].bone_xform = NULL;
|
||||||
|
@@ -83,11 +83,11 @@ void __baanim_applyBottlesBonus(s32 arg0, s32 arg1) {
|
|||||||
|
|
||||||
|
|
||||||
sp28 = func_802E4B38();
|
sp28 = func_802E4B38();
|
||||||
if (func_803203FC(UNKFLAGS1_78_SANDCASTLE_NO_BONUS) == 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_78_SANDCASTLE_NO_BONUS) == 0) {
|
||||||
D_8037BF4C = 0;
|
D_8037BF4C = 0;
|
||||||
} else {
|
} else {
|
||||||
for(phi_s0 = 0; phi_s0 < 7; phi_s0++){
|
for(phi_s0 = 0; phi_s0 < 7; phi_s0++){
|
||||||
if (func_803203FC(phi_s0 + UNKFLAGS1_97_SANDCASTLE_BOTTLES_BONUS_1)) {
|
if (volatileFlag_get(phi_s0 + VOLATILE_FLAG_97_SANDCASTLE_BOTTLES_BONUS_1)) {
|
||||||
D_8037BF4C = D_803635EC[phi_s0];
|
D_8037BF4C = D_803635EC[phi_s0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -205,10 +205,10 @@ void __baMarker_8028BB1C(s32 arg0, u32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 a
|
|||||||
|
|
||||||
if(arg1 & 0x400000){
|
if(arg1 & 0x400000){
|
||||||
sp24 = arg1 + 0xFFC00000;
|
sp24 = arg1 + 0xFFC00000;
|
||||||
if(!func_803203FC(sp24)){
|
if(!volatileFlag_get(sp24)){
|
||||||
func_803204E4(sp24, 1);
|
volatileFlag_set(sp24, 1);
|
||||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||||
func_803204E4(0xBF, 1);
|
volatileFlag_set(0xBF, 1);
|
||||||
func_802D6264(1.0f, arg2, arg3, arg4, arg5, arg6);
|
func_802D6264(1.0f, arg2, arg3, arg4, arg5, arg6);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -216,7 +216,7 @@ void __baMarker_8028BB1C(s32 arg0, u32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 a
|
|||||||
if(!fileProgressFlag_get(arg1)){
|
if(!fileProgressFlag_get(arg1)){
|
||||||
fileProgressFlag_set(arg1, 1);
|
fileProgressFlag_set(arg1, 1);
|
||||||
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
func_8030E6D4(SFX_90_SWITCH_PRESS);
|
||||||
func_803204E4(0xBF, 1);
|
volatileFlag_set(0xBF, 1);
|
||||||
func_802D6264(1.0f, arg2, arg3, arg4, arg5, arg6);
|
func_802D6264(1.0f, arg2, arg3, arg4, arg5, arg6);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -231,8 +231,8 @@ int __baMarker_8028BC60(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void __baMarker_resolveCollision(Prop *other_prop){
|
void __baMarker_resolveCollision(Prop *other_prop){
|
||||||
s32 plyr_collision_type;
|
enum marker_collision_func_type_e plyr_collision_type;
|
||||||
s32 obj_collision_type;
|
enum marker_collision_func_type_e obj_collision_type;
|
||||||
s32 plyr_hitbox_type;
|
s32 plyr_hitbox_type;
|
||||||
int i;
|
int i;
|
||||||
ActorMarker *marker; //0xbc
|
ActorMarker *marker; //0xbc
|
||||||
@@ -253,8 +253,8 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
s32 tmp1;
|
s32 tmp1;
|
||||||
|
|
||||||
if(*((u32*)(((u32)other_prop) + 8)) & 1){
|
if(*((u32*)(((u32)other_prop) + 8)) & 1){
|
||||||
plyr_collision_type = 0;
|
plyr_collision_type = MARKER_COLLISION_FUNC_0;
|
||||||
obj_collision_type = 0;
|
obj_collision_type = MARKER_COLLISION_FUNC_0;
|
||||||
marker = other_prop->actorProp.marker;
|
marker = other_prop->actorProp.marker;
|
||||||
actor = NULL;
|
actor = NULL;
|
||||||
if(marker->unk3E_0){
|
if(marker->unk3E_0){
|
||||||
@@ -273,12 +273,12 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
switch(marker->id){
|
switch(marker->id){
|
||||||
case 0x125: //L8028BE88
|
case 0x125: //L8028BE88
|
||||||
case 0x126: //L8028BE88
|
case 0x126: //L8028BE88
|
||||||
obj_collision_type = 1;
|
obj_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x97: //L8028BE94
|
case MARKER_97_BOGGY_2: //L8028BE94
|
||||||
plyr_collision_type = 1;
|
plyr_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
obj_collision_type = 1;
|
obj_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0xBA: //L8028BEA8
|
case 0xBA: //L8028BEA8
|
||||||
@@ -289,7 +289,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
|| marker->unk40_31 == 5
|
|| marker->unk40_31 == 5
|
||||||
|| marker->unk40_31 == 6
|
|| marker->unk40_31 == 6
|
||||||
){
|
){
|
||||||
obj_collision_type = 1;
|
obj_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -314,7 +314,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
case 0xA1: //L8028BF54
|
case 0xA1: //L8028BF54
|
||||||
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER){
|
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER){
|
||||||
func_802A02B4(1);
|
func_802A02B4(1);
|
||||||
obj_collision_type = 2;
|
obj_collision_type = MARKER_COLLISION_FUNC_2_DIE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -327,7 +327,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(plyr_hitbox_type != HITBOX_6_WONDERWING){
|
if(plyr_hitbox_type != HITBOX_6_WONDERWING){
|
||||||
plyr_collision_type = 2;
|
plyr_collision_type = MARKER_COLLISION_FUNC_2_DIE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -389,7 +389,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
spAC[1] += 40.0f;
|
spAC[1] += 40.0f;
|
||||||
if(func_802458E0(spAC, actor, 0x87) == 0)
|
if(func_802458E0(spAC, actor, 0x87) == 0)
|
||||||
return;
|
return;
|
||||||
func_803204E4(0x1E, 1);
|
volatileFlag_set(0x1E, 1);
|
||||||
if(fileProgressFlag_get(((actor->unkF4_8 - 1) ^ 1) + 0x49)){
|
if(fileProgressFlag_get(((actor->unkF4_8 - 1) ^ 1) + 0x49)){
|
||||||
actor->unk10_12 = 2;
|
actor->unk10_12 = 2;
|
||||||
}
|
}
|
||||||
@@ -516,7 +516,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
case MARKER_F3_GV_KAZOOIE_TARGET: //L8028C64C
|
case MARKER_F3_GV_KAZOOIE_TARGET: //L8028C64C
|
||||||
if(plyr_hitbox_type == HITBOX_3_BEAK_BOMB){
|
if(plyr_hitbox_type == HITBOX_3_BEAK_BOMB){
|
||||||
mapSpecificFlags_set(6,1);
|
mapSpecificFlags_set(6,1);
|
||||||
obj_collision_type = 1;
|
obj_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -583,7 +583,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
||||||
&& func_803203FC(0)
|
&& volatileFlag_get(VOLATILE_FLAG_0)
|
||||||
&& !fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)
|
&& !fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)
|
||||||
){
|
){
|
||||||
func_80356540(FILEPROG_A6_FURNACE_FUN_COMPLETE);
|
func_80356540(FILEPROG_A6_FURNACE_FUN_COMPLETE);
|
||||||
@@ -695,7 +695,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
if(__baMarker_8028BC20(marker))
|
if(__baMarker_8028BC20(marker))
|
||||||
return;
|
return;
|
||||||
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
if( map_get() == MAP_8E_GL_FURNACE_FUN
|
||||||
&& func_803203FC(0)
|
&& volatileFlag_get(VOLATILE_FLAG_0)
|
||||||
&& !fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)
|
&& !fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)
|
||||||
){
|
){
|
||||||
func_80356540(FILEPROG_A7_NEAR_PUZZLE_PODIUM_TEXT);
|
func_80356540(FILEPROG_A7_NEAR_PUZZLE_PODIUM_TEXT);
|
||||||
@@ -715,7 +715,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
if(ability_isUnlocked(ABILITY_D_SHOCK_JUMP)){
|
if(ability_isUnlocked(ABILITY_D_SHOCK_JUMP)){
|
||||||
miscflag_set(MISC_FLAG_2_ON_SPRING_PAD);
|
miscflag_set(MISC_FLAG_2_ON_SPRING_PAD);
|
||||||
}else{
|
}else{
|
||||||
if(!func_80320454(0xC, 1)){
|
if(!volatileFlag_getAndSet(0xC, 1)){
|
||||||
func_80311480(0xA24, 4, 0, 0, 0, 0);
|
func_80311480(0xA24, 4, 0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -727,7 +727,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
if(ability_isUnlocked(ABILITY_9_FLIGHT)){
|
if(ability_isUnlocked(ABILITY_9_FLIGHT)){
|
||||||
miscflag_set(MISC_FLAG_1_ON_FLIGHT_PAD);
|
miscflag_set(MISC_FLAG_1_ON_FLIGHT_PAD);
|
||||||
}
|
}
|
||||||
else if(! func_80320454(0xD, 1)){
|
else if(! volatileFlag_getAndSet(0xD, 1)){
|
||||||
func_80311480(0xA25, 4, 0, 0, 0, 0);
|
func_80311480(0xA25, 4, 0, 0, 0, 0);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -775,33 +775,33 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
chtrainers_pickup(actor);
|
chtrainers_pickup(actor);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x1AE: //L8028CFEC
|
case MARKER_1AE_ZUBBA: //L8028CFEC
|
||||||
switch(plyr_hitbox_type){
|
switch(plyr_hitbox_type){
|
||||||
case HITBOX_1_BEAK_BUSTER:
|
case HITBOX_1_BEAK_BUSTER:
|
||||||
case HITBOX_2_BEAK_BARGE:
|
case HITBOX_2_BEAK_BARGE:
|
||||||
case HITBOX_5_PECK:
|
case HITBOX_5_PECK:
|
||||||
case HITBOX_6_WONDERWING:
|
case HITBOX_6_WONDERWING:
|
||||||
obj_collision_type = 2;
|
obj_collision_type = MARKER_COLLISION_FUNC_2_DIE;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
plyr_collision_type = 2;
|
plyr_collision_type = MARKER_COLLISION_FUNC_2_DIE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MARKER_1B1_CCW_GOBI: //L8028D024
|
case MARKER_1B1_CCW_GOBI: //L8028D024
|
||||||
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER)
|
if(plyr_hitbox_type == HITBOX_1_BEAK_BUSTER)
|
||||||
obj_collision_type = 1;
|
obj_collision_type = MARKER_COLLISION_FUNC_1;
|
||||||
break;
|
break;
|
||||||
}//L8028D034
|
}//L8028D034
|
||||||
if(func_80297C6C() == 3){
|
if(func_80297C6C() == 3){
|
||||||
plyr_collision_type = 0;
|
plyr_collision_type = MARKER_COLLISION_FUNC_0;
|
||||||
}
|
}
|
||||||
if(obj_collision_type){
|
if(obj_collision_type){
|
||||||
miscflag_set(8);
|
miscflag_set(8);
|
||||||
}
|
}
|
||||||
func_8032FFF4(playerMarker, marker, plyr_collision_type);
|
marker_callCollisionFunc(playerMarker, marker, plyr_collision_type);
|
||||||
func_8032FFF4(marker, playerMarker, obj_collision_type);
|
marker_callCollisionFunc(marker, playerMarker, obj_collision_type);
|
||||||
if(marker->unk3E_0){
|
if(marker->unk3E_0){
|
||||||
func_8032B258(actor, obj_collision_type);
|
func_8032B258(actor, obj_collision_type);
|
||||||
}
|
}
|
||||||
|
@@ -44,7 +44,7 @@ void chBeehive_update(Actor *this){
|
|||||||
this->marker->propPtr->unk8_3 = 1;
|
this->marker->propPtr->unk8_3 = 1;
|
||||||
this->unk44_31 = func_8030D90C();
|
this->unk44_31 = func_8030D90C();
|
||||||
this->unk16C_4 = 1;
|
this->unk16C_4 = 1;
|
||||||
this->unk38_0 = func_803203FC(1)| func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE);
|
this->unk38_0 = volatileFlag_get(VOLATILE_FLAG_1)| volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE);
|
||||||
}//L802CE960
|
}//L802CE960
|
||||||
if(map_get() == MAP_27_FP_FREEZEEZY_PEAK){
|
if(map_get() == MAP_27_FP_FREEZEEZY_PEAK){
|
||||||
if(func_8038BFA0()){
|
if(func_8038BFA0()){
|
||||||
|
@@ -44,7 +44,7 @@ void func_802C5E80(Actor *this){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_802C5EB8(Actor *this){
|
void func_802C5EB8(Actor *this){
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE))
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(this->unk38_31){
|
if(this->unk38_31){
|
||||||
|
@@ -77,7 +77,7 @@ void func_802D77D4(Actor *this) {
|
|||||||
ml_vec3f_diff_copy(sp4C, this->position, sp40);
|
ml_vec3f_diff_copy(sp4C, this->position, sp40);
|
||||||
if (((sp4C[0] * sp4C[0]) + (sp4C[2] * sp4C[2])) < (sp3C * sp3C)) {
|
if (((sp4C[0] * sp4C[0]) + (sp4C[2] * sp4C[2])) < (sp3C * sp3C)) {
|
||||||
if ((this->position[1] < sp40[1]) && (sp40[1] <= local->unk0[1])) {
|
if ((this->position[1] < sp40[1]) && (sp40[1] <= local->unk0[1])) {
|
||||||
if (func_803203FC(2) == 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_2) == 0) {
|
||||||
func_8028F738(this->position, local->unk0, (f32)this->unkF4_8, local->unkC);
|
func_8028F738(this->position, local->unk0, (f32)this->unkF4_8, local->unkC);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -36,7 +36,7 @@ void func_802CD8C0(Actor *this){
|
|||||||
this->marker->unk2C_1 = 1;
|
this->marker->unk2C_1 = 1;
|
||||||
this->marker->collidable = 0;
|
this->marker->collidable = 0;
|
||||||
*(s32*)this->unkBC = 0; //TODO Make struct
|
*(s32*)this->unkBC = 0; //TODO Make struct
|
||||||
if(func_803203FC(1) || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_1) || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -154,8 +154,8 @@ void chCollectible_update(Actor *this) {
|
|||||||
if(!this->unk38_0)
|
if(!this->unk38_0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (func_80320424(0x23, 3) != this->unk10_12) {
|
if (volatileFlag_getN(0x23, 3) != this->unk10_12) {
|
||||||
func_802D8C98(this, func_80320424(0x23, 3));
|
func_802D8C98(this, volatileFlag_getN(0x23, 3));
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (this->state) {
|
switch (this->state) {
|
||||||
|
@@ -246,14 +246,14 @@ void chCrab_update(Actor *this) {
|
|||||||
if (!jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)) {
|
if (!jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)) {
|
||||||
mapSpecificFlags_set(1, 0);
|
mapSpecificFlags_set(1, 0);
|
||||||
}
|
}
|
||||||
if (func_803203FC(2)) {
|
if (volatileFlag_get(VOLATILE_FLAG_2)) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) != 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) {
|
||||||
if (this->unkF4_8 != 1) {
|
if (this->unkF4_8 != 1) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
@@ -279,7 +279,7 @@ void chCrab_update(Actor *this) {
|
|||||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||||
if( !mapSpecificFlags_get(0)
|
if( !mapSpecificFlags_get(0)
|
||||||
&& levelSpecificFlags_get(2)
|
&& levelSpecificFlags_get(2)
|
||||||
&& !func_803203FC(2)
|
&& !volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
&& !jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
&& !jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
||||||
&& func_80329530(this, 1600)
|
&& func_80329530(this, 1600)
|
||||||
) {
|
) {
|
||||||
|
@@ -176,7 +176,7 @@ void func_8035B6CC(Actor *this){
|
|||||||
void func_8035B75C(Actor *this){
|
void func_8035B75C(Actor *this){
|
||||||
subaddie_set_state_with_direction(this, 3, 0.01f, 1);
|
subaddie_set_state_with_direction(this, 3, 0.01f, 1);
|
||||||
actor_loopAnimation(this);
|
actor_loopAnimation(this);
|
||||||
this->unk28 = func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) ? 0.0 : 12.0;
|
this->unk28 = volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) ? 0.0 : 12.0;
|
||||||
func_8030E878(0x3F4, randf2(1.0f, 1.2f), 32000, this->position, this->scale*400.0f, this->scale*1800.0f);
|
func_8030E878(0x3F4, randf2(1.0f, 1.2f), 32000, this->position, this->scale*400.0f, this->scale*1800.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -303,7 +303,7 @@ void chicecube_update(Actor *this){
|
|||||||
case 1: // L8035AC9C
|
case 1: // L8035AC9C
|
||||||
animctrl_setAnimTimer(this->animctrl, 0.0f);
|
animctrl_setAnimTimer(this->animctrl, 0.0f);
|
||||||
if( func_80359DF4(this, 900)
|
if( func_80359DF4(this, 900)
|
||||||
|| (this->unkF4_8 == 2 && func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE))
|
|| (this->unkF4_8 == 2 && volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE))
|
||||||
){
|
){
|
||||||
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
subaddie_set_state_with_direction(this, 2, 0.0001f, 1);
|
||||||
actor_playAnimationOnce(this);
|
actor_playAnimationOnce(this);
|
||||||
|
@@ -110,7 +110,7 @@ void chJinjo_update(Actor * this){
|
|||||||
local->unk8 = (this->position_y < func_80309B24(this->position));
|
local->unk8 = (this->position_y < func_80309B24(this->position));
|
||||||
this->marker->collisionFunc = __chJinjo_802CDBA8;
|
this->marker->collisionFunc = __chJinjo_802CDBA8;
|
||||||
marker_setFreeMethod(this->marker, __chJinjo_802CDD3C);
|
marker_setFreeMethod(this->marker, __chJinjo_802CDD3C);
|
||||||
if(func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
}//L802CDE24
|
}//L802CDE24
|
||||||
|
@@ -332,7 +332,7 @@ void chSnacker_spawn(void) {
|
|||||||
|
|
||||||
|
|
||||||
_player_getPosition(spawn_position);
|
_player_getPosition(spawn_position);
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) != 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) != 0) {
|
||||||
nodeprop_getPosition(func_80304CAC(0x3CB, spawn_position), spawn_position);
|
nodeprop_getPosition(func_80304CAC(0x3CB, spawn_position), spawn_position);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -372,7 +372,7 @@ void chSnacker_spawn(void) {
|
|||||||
marker_despawn(s_chSnacker_marker);
|
marker_despawn(s_chSnacker_marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE) == 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE) == 0) {
|
||||||
func_8032BB88(snacker, 5000, 750);
|
func_8032BB88(snacker, 5000, 750);
|
||||||
func_8024BD08(0);
|
func_8024BD08(0);
|
||||||
func_8025A6EC(COMUSIC_34_SNACKER_DANGER, 0);
|
func_8025A6EC(COMUSIC_34_SNACKER_DANGER, 0);
|
||||||
|
@@ -66,23 +66,23 @@ void chtrainers_update(Actor *this){
|
|||||||
ml_vec3f_copy(this->unk1C, this->position);
|
ml_vec3f_copy(this->unk1C, this->position);
|
||||||
this->velocity[0] = this->yaw;
|
this->velocity[0] = this->yaw;
|
||||||
this->velocity[1] = 0.0f;
|
this->velocity[1] = 0.0f;
|
||||||
this->unk10_12 = !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE) && !func_803203FC(0x1);
|
this->unk10_12 = !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE) && !volatileFlag_get(0x1);
|
||||||
subaddie_set_state(this, 0);
|
subaddie_set_state(this, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!func_803203FC(0xF) && ability_isUnlocked(ABILITY_11_TURBO_TALON)){
|
if(!volatileFlag_get(0xF) && ability_isUnlocked(ABILITY_11_TURBO_TALON)){
|
||||||
func_803204E4(0xF, TRUE);
|
volatileFlag_set(0xF, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch(this->state){
|
switch(this->state){
|
||||||
case 0://L802CA5A8
|
case 0://L802CA5A8
|
||||||
if(func_803296D8(this, 2000) || sp2C){
|
if(func_803296D8(this, 2000) || sp2C){
|
||||||
if( func_80329530(this, 0xfa)
|
if( func_80329530(this, 0xfa)
|
||||||
&& !func_803203FC(0xf)
|
&& !volatileFlag_get(0xf)
|
||||||
&& player_getTransformation() == TRANSFORM_1_BANJO
|
&& player_getTransformation() == TRANSFORM_1_BANJO
|
||||||
){
|
){
|
||||||
if(func_80311480(0xda4, 0, NULL, NULL, NULL, NULL)){
|
if(func_80311480(0xda4, 0, NULL, NULL, NULL, NULL)){
|
||||||
func_803204E4(0xf, TRUE);
|
volatileFlag_set(0xf, TRUE);
|
||||||
}
|
}
|
||||||
}//L802CA620
|
}//L802CA620
|
||||||
_chtrainers_802CA378(this, sp2C);
|
_chtrainers_802CA378(this, sp2C);
|
||||||
|
@@ -41,12 +41,12 @@ void chwadingboots_update(Actor *this){
|
|||||||
if(!this->initialized){
|
if(!this->initialized){
|
||||||
this->initialized = TRUE;
|
this->initialized = TRUE;
|
||||||
this->velocity[0] = this->yaw;
|
this->velocity[0] = this->yaw;
|
||||||
this->unk10_12 = !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE) && !func_803203FC(0x1);
|
this->unk10_12 = !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE) && !volatileFlag_get(0x1);
|
||||||
subaddie_set_state(this, 0);
|
subaddie_set_state(this, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!func_803203FC(0x10) && ability_isUnlocked(ABILITY_E_WADING_BOOTS)){
|
if(!volatileFlag_get(0x10) && ability_isUnlocked(ABILITY_E_WADING_BOOTS)){
|
||||||
func_803204E4(0x10, TRUE);
|
volatileFlag_set(0x10, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch(this->state){
|
switch(this->state){
|
||||||
@@ -65,12 +65,12 @@ void chwadingboots_update(Actor *this){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(func_803203FC(0x10)) break;
|
if(volatileFlag_get(0x10)) break;
|
||||||
if(!func_80329530(this, 250)) break;
|
if(!func_80329530(this, 250)) break;
|
||||||
if(player_getTransformation() != TRANSFORM_1_BANJO) break;
|
if(player_getTransformation() != TRANSFORM_1_BANJO) break;
|
||||||
|
|
||||||
if(func_80311480(ASSET_DA5_DIALOG_WADINGBOOTS_MEET, 0, NULL, NULL, NULL, NULL)){
|
if(func_80311480(ASSET_DA5_DIALOG_WADINGBOOTS_MEET, 0, NULL, NULL, NULL, NULL)){
|
||||||
func_803204E4(0x10, TRUE);
|
volatileFlag_set(0x10, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
@@ -336,7 +336,7 @@ void func_8029B85C(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_8029B890(void){
|
void func_8029B890(void){
|
||||||
if(!fileProgressFlag_get(FILEPROG_A8_HAS_DIED) && !func_803203FC(2)){
|
if(!fileProgressFlag_get(FILEPROG_A8_HAS_DIED) && !volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_803114D0();
|
func_803114D0();
|
||||||
if(bs_getState() == 0x54){
|
if(bs_getState() == 0x54){
|
||||||
func_8029B62C();
|
func_8029B62C();
|
||||||
|
@@ -338,10 +338,10 @@ void func_802BC2CC(s32 arg0) {
|
|||||||
f32 *sp20 = D_8037D918;
|
f32 *sp20 = D_8037D918;
|
||||||
s32 sp1C;
|
s32 sp1C;
|
||||||
|
|
||||||
if (func_803203FC(0xE) != 0) {
|
if (volatileFlag_get(0xE) != 0) {
|
||||||
func_80347A14(0);
|
func_80347A14(0);
|
||||||
}
|
}
|
||||||
if (func_80320454(0xE, 0) || func_802D686C() || (arg0 == 0x63) || !func_802BB720(arg0, D_8037D908, D_8037D918, &sp1C)) {
|
if (volatileFlag_getAndSet(0xE, 0) || func_802D686C() || (arg0 == 0x63) || !func_802BB720(arg0, D_8037D908, D_8037D918, &sp1C)) {
|
||||||
if (ncCameraType == CAMERA_TYPE_2_DYNAMIC) {
|
if (ncCameraType == CAMERA_TYPE_2_DYNAMIC) {
|
||||||
func_802BE794();
|
func_802BE794();
|
||||||
}
|
}
|
||||||
|
@@ -133,7 +133,7 @@ int func_8028ADB4(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
int func_8028ADF0(void){
|
int func_8028ADF0(void){
|
||||||
return func_803203FC(0x9d);
|
return volatileFlag_get(0x9d);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool func_8028AE10(void) {
|
bool func_8028AE10(void) {
|
||||||
|
@@ -14,7 +14,7 @@ void chextralife_update(Actor *this){
|
|||||||
if(!this->initialized){
|
if(!this->initialized){
|
||||||
func_8032AA58(this, 0.8f);
|
func_8032AA58(this, 0.8f);
|
||||||
this->initialized = TRUE;
|
this->initialized = TRUE;
|
||||||
if(func_803203FC(1) || func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_1) || volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -104,8 +104,8 @@ void chHoneycomb_update(Actor *this){
|
|||||||
if(local->uid == 0)
|
if(local->uid == 0)
|
||||||
local->uid = (!this->unk44_2)? D_8037DDC0 : func_802C9C40(this);
|
local->uid = (!this->unk44_2)? D_8037DDC0 : func_802C9C40(this);
|
||||||
if( honeycombscore_get(local->uid)
|
if( honeycombscore_get(local->uid)
|
||||||
|| func_803203FC(1)
|
|| volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
|| func_803203FC(2)
|
|| volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
){
|
){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
|
@@ -47,7 +47,7 @@ extern struct43s chFightFlightPad_D_80366FB4 = {
|
|||||||
/* .code */
|
/* .code */
|
||||||
void chShockJump_update(Actor *this){
|
void chShockJump_update(Actor *this){
|
||||||
this->marker->propPtr->unk8_3 = TRUE;
|
this->marker->propPtr->unk8_3 = TRUE;
|
||||||
if(func_803203FC(UNKFLAGS1_86_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED)){
|
if(volatileFlag_get(VOLATILE_FLAG_86_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED)){
|
||||||
ability_unlock(ABILITY_D_SHOCK_JUMP);
|
ability_unlock(ABILITY_D_SHOCK_JUMP);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,7 +61,7 @@ void chShockJump_update(Actor *this){
|
|||||||
|
|
||||||
void chFlightPad_update(Actor *this){
|
void chFlightPad_update(Actor *this){
|
||||||
this->marker->propPtr->unk8_3 = TRUE;
|
this->marker->propPtr->unk8_3 = TRUE;
|
||||||
if(func_803203FC(UNKFLAGS1_8A_SANDCASTLE_FLIGHT_UNLOCKED)){
|
if(volatileFlag_get(VOLATILE_FLAG_8A_SANDCASTLE_FLIGHT_UNLOCKED)){
|
||||||
ability_unlock(ABILITY_9_FLIGHT);
|
ability_unlock(ABILITY_9_FLIGHT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -372,7 +372,7 @@ void func_802CCC5C(Actor *this) {
|
|||||||
}
|
}
|
||||||
if (local->unk4 >= 1.0f) {
|
if (local->unk4 >= 1.0f) {
|
||||||
local->unk4 = 1.0f;
|
local->unk4 = 1.0f;
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)) {
|
||||||
local->unk3A = 0;
|
local->unk3A = 0;
|
||||||
} else {
|
} else {
|
||||||
if (this->state == 2) {
|
if (this->state == 2) {
|
||||||
|
@@ -378,7 +378,7 @@ void chBeeSwarm_update(Actor *this) {
|
|||||||
subaddie_set_state(this, (this->unk100 != NULL) ? 1 : 2);
|
subaddie_set_state(this, (this->unk100 != NULL) ? 1 : 2);
|
||||||
this->unk60 = 0.0f;
|
this->unk60 = 0.0f;
|
||||||
chBeeSwarm_802CF040(this);
|
chBeeSwarm_802CF040(this);
|
||||||
this->unk38_0 = func_803203FC(1) | func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE);
|
this->unk38_0 = volatileFlag_get(VOLATILE_FLAG_1) | volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!subaddie_playerIsWithinSphere(this, 0xFA0))
|
if (!subaddie_playerIsWithinSphere(this, 0xFA0))
|
||||||
|
@@ -123,7 +123,7 @@ void chMumbo_func_802D18B4(Actor *this) {
|
|||||||
} else {
|
} else {
|
||||||
player_is_within_range = chMumbo_withinHorzDistToPlayer(0, -107, 188);
|
player_is_within_range = chMumbo_withinHorzDistToPlayer(0, -107, 188);
|
||||||
}
|
}
|
||||||
if(player_is_within_range || func_803203FC(1) || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(player_is_within_range || volatileFlag_get(VOLATILE_FLAG_1) || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
subaddie_set_state_forward(this, 2);
|
subaddie_set_state_forward(this, 2);
|
||||||
if( !fileProgressFlag_get(FILEPROG_11_HAS_MET_MUMBO)
|
if( !fileProgressFlag_get(FILEPROG_11_HAS_MET_MUMBO)
|
||||||
|| (!fileProgressFlag_get(FILEPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE) && this->unk38_0)
|
|| (!fileProgressFlag_get(FILEPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE) && this->unk38_0)
|
||||||
@@ -221,8 +221,8 @@ void chMumbo_update(Actor *this) {
|
|||||||
f32 temp_f12;
|
f32 temp_f12;
|
||||||
|
|
||||||
this->unk130 = func_803255FC;
|
this->unk130 = func_803255FC;
|
||||||
if( !func_803203FC(1)
|
if( !volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
&& !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
&& !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
&& map_get() != MAP_7A_GL_CRYPT) {
|
&& map_get() != MAP_7A_GL_CRYPT) {
|
||||||
item_adjustByDiffWithHud(ITEM_1C_MUMBO_TOKEN, 0);
|
item_adjustByDiffWithHud(ITEM_1C_MUMBO_TOKEN, 0);
|
||||||
}
|
}
|
||||||
@@ -278,8 +278,8 @@ void chMumbo_update(Actor *this) {
|
|||||||
actor_playAnimationOnce(this);
|
actor_playAnimationOnce(this);
|
||||||
if (actor_animationIsAt(this, 0.999f)) {
|
if (actor_animationIsAt(this, 0.999f)) {
|
||||||
if( !fileProgressFlag_get(FILEPROG_11_HAS_MET_MUMBO)
|
if( !fileProgressFlag_get(FILEPROG_11_HAS_MET_MUMBO)
|
||||||
&& !func_803203FC(1)
|
&& !volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
&& !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
&& !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
) {
|
) {
|
||||||
subaddie_set_state(this, 3);
|
subaddie_set_state(this, 3);
|
||||||
func_80311480(ASSET_D8F_DIALOG_MUMBO_MEET, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL);
|
func_80311480(ASSET_D8F_DIALOG_MUMBO_MEET, 0xE, this->position, this->marker, __chMumbo_textCallback, NULL);
|
||||||
@@ -288,8 +288,8 @@ void chMumbo_update(Actor *this) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if( !fileProgressFlag_get(FILEPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE)
|
if( !fileProgressFlag_get(FILEPROG_DC_HAS_HAD_ENOUGH_TOKENS_BEFORE)
|
||||||
&& !func_803203FC(1)
|
&& !volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
&& !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
&& !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
&& this->unk38_0
|
&& this->unk38_0
|
||||||
){
|
){
|
||||||
subaddie_set_state(this, 3);
|
subaddie_set_state(this, 3);
|
||||||
@@ -428,7 +428,7 @@ void chMumbo_update(Actor *this) {
|
|||||||
|
|
||||||
case 7: //L802D2704
|
case 7: //L802D2704
|
||||||
chMumbo_func_802D186C(this);
|
chMumbo_func_802D186C(this);
|
||||||
if (func_803203FC(FILEPROG_11_HAS_MET_MUMBO) == 0) {
|
if (volatileFlag_get(FILEPROG_11_HAS_MET_MUMBO) == 0) {
|
||||||
if (map_get() == MAP_7A_GL_CRYPT) {
|
if (map_get() == MAP_7A_GL_CRYPT) {
|
||||||
sp48 = chMumbo_withinHorzDistToPlayer(0x453, 0, 0xBC);
|
sp48 = chMumbo_withinHorzDistToPlayer(0x453, 0, 0xBC);
|
||||||
} else {
|
} else {
|
||||||
@@ -436,7 +436,7 @@ void chMumbo_update(Actor *this) {
|
|||||||
}
|
}
|
||||||
if (sp48 != 0) {
|
if (sp48 != 0) {
|
||||||
func_80311480(ASSET_DA7_DIALOG_MUMBO_CCW_SUMMER, 7, NULL, NULL, NULL, NULL);
|
func_80311480(ASSET_DA7_DIALOG_MUMBO_CCW_SUMMER, 7, NULL, NULL, NULL, NULL);
|
||||||
func_803204E4(FILEPROG_11_HAS_MET_MUMBO, TRUE);
|
volatileFlag_set(FILEPROG_11_HAS_MET_MUMBO, TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
actor_loopAnimation(this);
|
actor_loopAnimation(this);
|
||||||
@@ -444,7 +444,7 @@ void chMumbo_update(Actor *this) {
|
|||||||
|
|
||||||
case 8: //L802D2790
|
case 8: //L802D2790
|
||||||
chMumbo_func_802D186C(this);
|
chMumbo_func_802D186C(this);
|
||||||
if (func_803203FC(FILEPROG_12_HAS_TRANSFORMED_BEFORE) == 0) {
|
if (volatileFlag_get(FILEPROG_12_HAS_TRANSFORMED_BEFORE) == 0) {
|
||||||
if (map_get() == MAP_7A_GL_CRYPT) {
|
if (map_get() == MAP_7A_GL_CRYPT) {
|
||||||
sp48 = chMumbo_withinHorzDistToPlayer(0x453, 0, 0xBC);
|
sp48 = chMumbo_withinHorzDistToPlayer(0x453, 0, 0xBC);
|
||||||
} else {
|
} else {
|
||||||
@@ -452,7 +452,7 @@ void chMumbo_update(Actor *this) {
|
|||||||
}
|
}
|
||||||
if (sp48 != 0) {
|
if (sp48 != 0) {
|
||||||
func_80311480(ASSET_DA8_DIALOG_MUMBO_CCW_AUTUMN, 7, NULL, NULL, NULL, NULL);
|
func_80311480(ASSET_DA8_DIALOG_MUMBO_CCW_AUTUMN, 7, NULL, NULL, NULL, NULL);
|
||||||
func_803204E4(FILEPROG_12_HAS_TRANSFORMED_BEFORE, TRUE);
|
volatileFlag_set(FILEPROG_12_HAS_TRANSFORMED_BEFORE, TRUE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
actor_loopAnimation(this);
|
actor_loopAnimation(this);
|
||||||
|
@@ -14,7 +14,7 @@ ActorInfo D_803675C0 = { MARKER_1E9_MUMBO_COST_SIGN, ACTOR_36C_25_MUMBO_TOKEN_SI
|
|||||||
void chMumboSign_update(Actor *this) {
|
void chMumboSign_update(Actor *this) {
|
||||||
if (!this->unk16C_4) {
|
if (!this->unk16C_4) {
|
||||||
if( fileProgressFlag_get(this->modelCacheIndex - ACTOR_368_5_MUMBO_TOKEN_SIGN + FILEPROG_90_PAID_TERMITE_COST)
|
if( fileProgressFlag_get(this->modelCacheIndex - ACTOR_368_5_MUMBO_TOKEN_SIGN + FILEPROG_90_PAID_TERMITE_COST)
|
||||||
|| func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
|| volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
) {
|
) {
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
|
@@ -14,7 +14,7 @@ extern void ml_vec3f_assign(f32[3], f32, f32, f32);
|
|||||||
extern void func_802EE2E8(Actor *arg0, s32 arg1, s32 cnt, s32 arg3, f32 arg4, f32 arg5, f32 arg6);
|
extern void func_802EE2E8(Actor *arg0, s32 arg1, s32 cnt, s32 arg3, f32 arg4, f32 arg5, f32 arg6);
|
||||||
extern void func_80319EA4(void);
|
extern void func_80319EA4(void);
|
||||||
extern void fileProgressFlag_set(s32, bool);
|
extern void fileProgressFlag_set(s32, bool);
|
||||||
extern void func_803204E4(s32, bool);
|
extern void volatileFlag_set(s32, bool);
|
||||||
|
|
||||||
void func_802D3D54(Actor *this);
|
void func_802D3D54(Actor *this);
|
||||||
void func_802D3DA4(Actor *this);
|
void func_802D3DA4(Actor *this);
|
||||||
@@ -137,17 +137,20 @@ void func_802D2FB0(Actor *this, s32 arg1, s32 arg2, s32 arg3, f32 arg4, s32 arg5
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_802D3138(ActorMarker *marker, ActorMarker *other_marker){
|
// collision function if player shoots egg at spider webs
|
||||||
if(marker->id == 0x224 || marker->id == 0x225){
|
void func_802D3138(ActorMarker *marker, ActorMarker *other_marker) {
|
||||||
|
if(marker->id == MARKER_224_BREAKABLE_FLOOR_COBWEB || marker->id == MARKER_225_BREAKABLE_WALL_COBWEB) {
|
||||||
func_8025A70C(COMUSIC_2B_DING_B);
|
func_8025A70C(COMUSIC_2B_DING_B);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_802D317C(ActorMarker *marker, enum file_progress_e prog_flag_id){
|
// called from collision die function below, set according file flag and despawns object
|
||||||
|
void func_802D317C(ActorMarker *marker, enum file_progress_e prog_flag_id) {
|
||||||
fileProgressFlag_set(prog_flag_id, TRUE);
|
fileProgressFlag_set(prog_flag_id, TRUE);
|
||||||
marker_despawn(marker);
|
marker_despawn(marker);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// collision die function for several objects in Lair
|
||||||
void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
||||||
Actor *sp2C;
|
Actor *sp2C;
|
||||||
|
|
||||||
@@ -166,7 +169,7 @@ void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
|||||||
FUNC_8030E624(SFX_82_METAL_BREAK, 0.6f, 32736);
|
FUNC_8030E624(SFX_82_METAL_BREAK, 0.6f, 32736);
|
||||||
func_802D2FB0(sp2C, 0x14, -0x1E, 0x190, 3.0f, 0x15E, 0x50, 0x96);
|
func_802D2FB0(sp2C, 0x14, -0x1E, 0x190, 3.0f, 0x15E, 0x50, 0x96);
|
||||||
sp2C->unk60 = 1.0f;
|
sp2C->unk60 = 1.0f;
|
||||||
fileProgressFlag_set(0xA5, 1);
|
fileProgressFlag_set(FILEPROG_A5_LAIR_CRYPT_GATE_OPEN, 1);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MARKER_109_BREAKABLE_BRICK_WALL:
|
case MARKER_109_BREAKABLE_BRICK_WALL:
|
||||||
@@ -261,21 +264,21 @@ void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
|||||||
func_8030E540(SFX_D9_WOODEN_CRATE_BREAKING_1);
|
func_8030E540(SFX_D9_WOODEN_CRATE_BREAKING_1);
|
||||||
func_802EE2E8(sp2C, 7, 9, 0x78, 0.43f, 1.3f, 3.0f);
|
func_802EE2E8(sp2C, 7, 9, 0x78, 0.43f, 1.3f, 3.0f);
|
||||||
func_802EE2E8(sp2C, 3, 6, 0x78, 0.43f, 1.3f, 3.0f);
|
func_802EE2E8(sp2C, 3, 6, 0x78, 0.43f, 1.3f, 3.0f);
|
||||||
func_802D317C(arg0, 0xC5);
|
func_802D317C(arg0, FILEPROG_C5_RAREWARE_BOX_BROKEN);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x11A:
|
case 0x11A:
|
||||||
func_8030E540(SFX_82_METAL_BREAK);
|
func_8030E540(SFX_82_METAL_BREAK);
|
||||||
func_802EE278(sp2C, 0xE, 0xD, 0x32, 0.8f, 0.9f);
|
func_802EE278(sp2C, 0xE, 0xD, 0x32, 0.8f, 0.9f);
|
||||||
func_802EE278(sp2C, 0xE, 0xD, 0xAA, 0.8f, 0.9f);
|
func_802EE278(sp2C, 0xE, 0xD, 0xAA, 0.8f, 0.9f);
|
||||||
func_802D317C(arg0, 0xC2);
|
func_802D317C(arg0, FILEPROG_C2_GRATE_TO_RBB_PUZZLE_OPEN);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x118:
|
case 0x118:
|
||||||
func_8030E540(SFX_82_METAL_BREAK);
|
func_8030E540(SFX_82_METAL_BREAK);
|
||||||
func_802EE278(sp2C, 0xE, 0xD, 0x50, 1.2f, 0.9f);
|
func_802EE278(sp2C, 0xE, 0xD, 0x50, 1.2f, 0.9f);
|
||||||
func_802EE278(sp2C, 0xE, 0xD, 0xB4, 1.2f, 0.9f);
|
func_802EE278(sp2C, 0xE, 0xD, 0xB4, 1.2f, 0.9f);
|
||||||
func_802D317C(arg0, 0xCD);
|
func_802D317C(arg0, FILEPROG_CD_GRATE_TO_WATER_SWITCH_3_OPEN);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x119:
|
case 0x119:
|
||||||
@@ -283,7 +286,7 @@ void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
|||||||
func_802EE278(sp2C, 0xE, 9, 0x50, 1.2f, 0.9f);
|
func_802EE278(sp2C, 0xE, 9, 0x50, 1.2f, 0.9f);
|
||||||
func_802EE278(sp2C, 0xE, 9, 0xAA, 1.2f, 0.9f);
|
func_802EE278(sp2C, 0xE, 9, 0xAA, 1.2f, 0.9f);
|
||||||
func_802EE278(sp2C, 0xE, 9, 0x104, 1.2f, 0.9f);
|
func_802EE278(sp2C, 0xE, 9, 0x104, 1.2f, 0.9f);
|
||||||
func_802D317C(arg0, 0xCE);
|
func_802D317C(arg0, FILEPROG_CE_GRATE_TO_MMM_PUZZLE_OPEN);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x22D:
|
case 0x22D:
|
||||||
@@ -315,7 +318,7 @@ void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
|||||||
func_802EE278(sp2C, 4, 0x32, 0x50, 1.0f, 1.4f);
|
func_802EE278(sp2C, 4, 0x32, 0x50, 1.0f, 1.4f);
|
||||||
func_802EE278(sp2C, 4, 0x32, 0xA0, 1.0f, 1.4f);
|
func_802EE278(sp2C, 4, 0x32, 0xA0, 1.0f, 1.4f);
|
||||||
func_802EE278(sp2C, 4, 0x1E, 0xF0, 0.8f, 1.1f);
|
func_802EE278(sp2C, 4, 0x1E, 0xF0, 0.8f, 1.1f);
|
||||||
func_802D317C(arg0, 0xC3);
|
func_802D317C(arg0, FILEPROG_C3_ICE_BALL_TO_CHEATO_BROKEN);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MARKER_121_GLASS_EYE:
|
case MARKER_121_GLASS_EYE:
|
||||||
@@ -572,7 +575,7 @@ void func_802D4680(Actor *this){
|
|||||||
if(func_80258640(this->position, sp1C) < 150.0f && func_8028F20C()){
|
if(func_80258640(this->position, sp1C) < 150.0f && func_8028F20C()){
|
||||||
if(func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT){
|
if(func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT){
|
||||||
if(map_get() == MAP_8E_GL_FURNACE_FUN){
|
if(map_get() == MAP_8E_GL_FURNACE_FUN){
|
||||||
func_803204E4(0, 0);
|
volatileFlag_set(0, 0);
|
||||||
func_802D4614(MAP_80_GL_FF_ENTRANCE);
|
func_802D4614(MAP_80_GL_FF_ENTRANCE);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -624,7 +627,7 @@ void func_802D4928(Actor *this, s32 arg1, s32 arg2, s32 arg3) {
|
|||||||
this->marker->propPtr->unk8_3 = TRUE;
|
this->marker->propPtr->unk8_3 = TRUE;
|
||||||
if( ( (((arg1 & 0xC00000) == 0) && mapSpecificFlags_get(arg1 - 0))
|
if( ( (((arg1 & 0xC00000) == 0) && mapSpecificFlags_get(arg1 - 0))
|
||||||
|| (((arg1 & 0xC00000) == 0x800000) && fileProgressFlag_get(arg1 - 0x800000))
|
|| (((arg1 & 0xC00000) == 0x800000) && fileProgressFlag_get(arg1 - 0x800000))
|
||||||
|| (((arg1 & 0xC00000) == 0x400000) && func_803203FC(arg1 - 0x400000))
|
|| (((arg1 & 0xC00000) == 0x400000) && volatileFlag_get(arg1 - 0x400000))
|
||||||
)
|
)
|
||||||
&& (arg2 != this->state)
|
&& (arg2 != this->state)
|
||||||
) {
|
) {
|
||||||
@@ -633,7 +636,7 @@ void func_802D4928(Actor *this, s32 arg1, s32 arg2, s32 arg3) {
|
|||||||
}
|
}
|
||||||
if( ( (((arg1 & 0xC00000) == 0) && !mapSpecificFlags_get(arg1 - 0))
|
if( ( (((arg1 & 0xC00000) == 0) && !mapSpecificFlags_get(arg1 - 0))
|
||||||
|| (((arg1 & 0xC00000) == 0x800000) && !fileProgressFlag_get(arg1 - 0x800000))
|
|| (((arg1 & 0xC00000) == 0x800000) && !fileProgressFlag_get(arg1 - 0x800000))
|
||||||
|| (((arg1 & 0xC00000) == 0x400000) && !func_803203FC(arg1 - 0x400000))
|
|| (((arg1 & 0xC00000) == 0x400000) && !volatileFlag_get(arg1 - 0x400000))
|
||||||
)
|
)
|
||||||
&& (arg2 == this->state)
|
&& (arg2 == this->state)
|
||||||
) {
|
) {
|
||||||
@@ -652,10 +655,10 @@ void func_802D4AC0(Actor *this, s32 arg1, s32 arg2) {
|
|||||||
fileProgressFlag_set(arg1 + 0xFF800000, 1);
|
fileProgressFlag_set(arg1 + 0xFF800000, 1);
|
||||||
}
|
}
|
||||||
if (arg1 & 0x400000) {
|
if (arg1 & 0x400000) {
|
||||||
func_803204E4(arg1 + 0xFFC00000, 1);
|
volatileFlag_set(arg1 + 0xFFC00000, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( (((arg1 & 0x800000) && (fileProgressFlag_get(arg1 + 0xFF800000))) || ((arg1 & 0x400000) && (func_803203FC(arg1 + 0xFFC00000))))
|
if( (((arg1 & 0x800000) && (fileProgressFlag_get(arg1 + 0xFF800000))) || ((arg1 & 0x400000) && (volatileFlag_get(arg1 + 0xFFC00000))))
|
||||||
&& (fileProgressFlag_get(arg2)) && (this->animctrl == NULL)
|
&& (fileProgressFlag_get(arg2)) && (this->animctrl == NULL)
|
||||||
) {
|
) {
|
||||||
subaddie_set_state_with_direction(this, 8, 0.0f, 1);
|
subaddie_set_state_with_direction(this, 8, 0.0f, 1);
|
||||||
@@ -761,7 +764,7 @@ void func_802D5000(enum map_e map_id){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_802D5058(enum map_e map_id, s32 arg1, bool arg2) {
|
void func_802D5058(enum map_e map_id, s32 arg1, bool arg2) {
|
||||||
func_803204E4(1, 1);
|
volatileFlag_set(1, 1);
|
||||||
D_80367684 = map_id;
|
D_80367684 = map_id;
|
||||||
D_80367688 = arg1;
|
D_80367688 = arg1;
|
||||||
if (arg2) {
|
if (arg2) {
|
||||||
@@ -784,7 +787,7 @@ void func_802D5058(enum map_e map_id, s32 arg1, bool arg2) {
|
|||||||
|
|
||||||
|
|
||||||
void func_802D5140(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
void func_802D5140(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||||
itemscore_noteScores_get(func_80320424(0x19, 4));
|
itemscore_noteScores_get(volatileFlag_getN(0x19, 4));
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_802D5178(s32 arg0, enum file_progress_e arg1, s32 arg2, enum map_e arg3, s32 arg4, s32 arg5, enum actor_e arg6, s32 arg7){
|
void func_802D5178(s32 arg0, enum file_progress_e arg1, s32 arg2, enum map_e arg3, s32 arg4, s32 arg5, enum actor_e arg6, s32 arg7){
|
||||||
@@ -798,7 +801,7 @@ void func_802D5178(s32 arg0, enum file_progress_e arg1, s32 arg2, enum map_e arg
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_802D520C(Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
void func_802D520C(Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
||||||
if(func_803203FC(1) && map_get() != MAP_8E_GL_FURNACE_FUN){
|
if(volatileFlag_get(VOLATILE_FLAG_1) && map_get() != MAP_8E_GL_FURNACE_FUN){
|
||||||
func_80319214(gfx, mtx, vtx);
|
func_80319214(gfx, mtx, vtx);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1020,16 +1023,16 @@ void func_802D5628(void){
|
|||||||
func_802D5178(0x24, 0x30, 0x37, MAP_79_GL_CCW_LOBBY, 0xF, 0xB, ACTOR_234_CCW_ENTRANCE_DOOR, 0xA);
|
func_802D5178(0x24, 0x30, 0x37, MAP_79_GL_CCW_LOBBY, 0xF, 0xB, ACTOR_234_CCW_ENTRANCE_DOOR, 0xA);
|
||||||
func_802D5178(0x20, 0x2C, 0x38, MAP_6F_GL_FP_LOBBY, 0x11, 0xA, ACTOR_235_FP_ENTANCE_DOOR, 0xA);
|
func_802D5178(0x20, 0x2C, 0x38, MAP_6F_GL_FP_LOBBY, 0x11, 0xA, ACTOR_235_FP_ENTANCE_DOOR, 0xA);
|
||||||
func_802D5178(0x3F, 0xE2, 0x40, MAP_93_GL_DINGPOT, 0x10, 0xA, ACTOR_2E5_DOOR_OF_GRUNTY, 0x28);
|
func_802D5178(0x3F, 0xE2, 0x40, MAP_93_GL_DINGPOT, 0x10, 0xA, ACTOR_2E5_DOOR_OF_GRUNTY, 0x28);
|
||||||
if(func_803203FC(0x18)){
|
if(volatileFlag_get(0x18)){
|
||||||
if(!fileProgressFlag_get(FILEPROG_99_PAST_50_NOTE_DOOR_TEXT)){
|
if(!fileProgressFlag_get(FILEPROG_99_PAST_50_NOTE_DOOR_TEXT)){
|
||||||
func_80311174(0xF75, 0xE, NULL, NULL, NULL, NULL, func_802D5140);
|
func_80311174(0xF75, 0xE, NULL, NULL, NULL, NULL, func_802D5140);
|
||||||
fileProgressFlag_set(FILEPROG_99_PAST_50_NOTE_DOOR_TEXT, TRUE);
|
fileProgressFlag_set(FILEPROG_99_PAST_50_NOTE_DOOR_TEXT, TRUE);
|
||||||
func_803204E4(0x18, 0);
|
volatileFlag_set(0x18, 0);
|
||||||
}
|
}
|
||||||
else{//L802D5DD8
|
else{//L802D5DD8
|
||||||
if(!func_803203FC(0x16)){
|
if(!volatileFlag_get(0x16)){
|
||||||
func_80311174(0xF77, 0x4, NULL, NULL, NULL, NULL, func_802D5140);
|
func_80311174(0xF77, 0x4, NULL, NULL, NULL, NULL, func_802D5140);
|
||||||
func_803204E4(0x18, 0);
|
volatileFlag_set(0x18, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}//L802D5E18
|
}//L802D5E18
|
||||||
@@ -1042,7 +1045,7 @@ void func_802D5628(void){
|
|||||||
&& !fileProgressFlag_get(FILEPROG_FC_DEFEAT_GRUNTY)
|
&& !fileProgressFlag_get(FILEPROG_FC_DEFEAT_GRUNTY)
|
||||||
){
|
){
|
||||||
D_8037DE04 += time_getDelta();
|
D_8037DE04 += time_getDelta();
|
||||||
if(D_80367680 < D_8037DE04 && !func_803203FC(0x16)){
|
if(D_80367680 < D_8037DE04 && !volatileFlag_get(0x16)){
|
||||||
if(fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)){
|
if(fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)){
|
||||||
sp4C = 0xF9D;
|
sp4C = 0xF9D;
|
||||||
}
|
}
|
||||||
@@ -1054,10 +1057,10 @@ void func_802D5628(void){
|
|||||||
D_8037DE00 = randi2(0xF86, sp4C);
|
D_8037DE00 = randi2(0xF86, sp4C);
|
||||||
}//L802D5F1C
|
}//L802D5F1C
|
||||||
|
|
||||||
if(func_803203FC(0x22)){
|
if(volatileFlag_get(0x22)){
|
||||||
if(func_80311480(0xF82, 4, NULL, NULL, NULL, NULL)){
|
if(func_80311480(0xF82, 4, NULL, NULL, NULL, NULL)){
|
||||||
fileProgressFlag_set(FILEPROG_C1_BADDIES_ESCAPE_TEXT, TRUE);
|
fileProgressFlag_set(FILEPROG_C1_BADDIES_ESCAPE_TEXT, TRUE);
|
||||||
func_803204E4(0x22, 0);
|
volatileFlag_set(0x22, 0);
|
||||||
D_8037DE04 = 0.0f;
|
D_8037DE04 = 0.0f;
|
||||||
D_80367680 += 60.0;
|
D_80367680 += 60.0;
|
||||||
if(300.0 < D_80367680)
|
if(300.0 < D_80367680)
|
||||||
@@ -1109,7 +1112,7 @@ void func_802D6114(void){
|
|||||||
if(map_getLevel(sp24) != map_getLevel(map_get())){
|
if(map_getLevel(sp24) != map_getLevel(map_get())){
|
||||||
func_802E4A70();
|
func_802E4A70();
|
||||||
}//L802D6194
|
}//L802D6194
|
||||||
func_803204E4(0x21, 1);
|
volatileFlag_set(0x21, 1);
|
||||||
if(sp24 != 0x1C || !func_8025ADBC(COMUSIC_23_MMM_INSIDE_CHURCH)){
|
if(sp24 != 0x1C || !func_8025ADBC(COMUSIC_23_MMM_INSIDE_CHURCH)){
|
||||||
func_803228D8();
|
func_803228D8();
|
||||||
}
|
}
|
||||||
@@ -1194,7 +1197,7 @@ void func_802D63D4(void){
|
|||||||
default: //L802D6460
|
default: //L802D6460
|
||||||
func_802BAFE4(D_80367688);
|
func_802BAFE4(D_80367688);
|
||||||
timedFuncQueue_update();
|
timedFuncQueue_update();
|
||||||
func_803204E4(0xbf, 0);
|
volatileFlag_set(0xbf, 0);
|
||||||
func_802D6750();
|
func_802D6750();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -1216,43 +1219,43 @@ void func_802D6494(void){
|
|||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
break;
|
break;
|
||||||
case ACTOR_212_CC_ENTRANCE_BARS:// L802D6550
|
case ACTOR_212_CC_ENTRANCE_BARS:// L802D6550
|
||||||
if(map_get() == MAP_70_GL_CC_LOBBY && !func_803203FC(UNKFLAGS1_7F_SANDCASTLE_OPEN_CC)){
|
if(map_get() == MAP_70_GL_CC_LOBBY && !volatileFlag_get(VOLATILE_FLAG_7F_SANDCASTLE_OPEN_CC)){
|
||||||
func_802D4830(actorArray_findActorFromActorId(ACTOR_212_CC_ENTRANCE_BARS), SFX_9A_MECHANICAL_CLOSING, 0.5f);
|
func_802D4830(actorArray_findActorFromActorId(ACTOR_212_CC_ENTRANCE_BARS), SFX_9A_MECHANICAL_CLOSING, 0.5f);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_234_CCW_ENTRANCE_DOOR:// L802D65A0
|
case ACTOR_234_CCW_ENTRANCE_DOOR:// L802D65A0
|
||||||
if(map_get() == MAP_79_GL_CCW_LOBBY && !func_803203FC(UNKFLAGS1_93_SANDCASTLE_OPEN_CCW)){
|
if(map_get() == MAP_79_GL_CCW_LOBBY && !volatileFlag_get(VOLATILE_FLAG_93_SANDCASTLE_OPEN_CCW)){
|
||||||
func_802D485C(actorArray_findActorFromActorId(ACTOR_234_CCW_ENTRANCE_DOOR), SFX_3EC_CCW_DOOR_OPENING, 0.8f, 15000);
|
func_802D485C(actorArray_findActorFromActorId(ACTOR_234_CCW_ENTRANCE_DOOR), SFX_3EC_CCW_DOOR_OPENING, 0.8f, 15000);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_210_BGS_ENTRANCE_DOOR:// L802D65F8
|
case ACTOR_210_BGS_ENTRANCE_DOOR:// L802D65F8
|
||||||
if(!func_803203FC(0x84)){
|
if(!volatileFlag_get(0x84)){
|
||||||
FUNC_8030E624(SFX_6B_LOCKUP_OPENING, 0.6f, 32000);
|
FUNC_8030E624(SFX_6B_LOCKUP_OPENING, 0.6f, 32000);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_235_FP_ENTANCE_DOOR:// L802D6624
|
case ACTOR_235_FP_ENTANCE_DOOR:// L802D6624
|
||||||
if(map_get() == MAP_6F_GL_FP_LOBBY && !func_803203FC(UNKFLAGS1_8B_SANDCASTLE_OPEN_FP)){
|
if(map_get() == MAP_6F_GL_FP_LOBBY && !volatileFlag_get(VOLATILE_FLAG_8B_SANDCASTLE_OPEN_FP)){
|
||||||
func_802D4830(actorArray_findActorFromActorId(ACTOR_235_FP_ENTANCE_DOOR), SFX_18_BIGBUTT_SLIDE, 0.5f);
|
func_802D4830(actorArray_findActorFromActorId(ACTOR_235_FP_ENTANCE_DOOR), SFX_18_BIGBUTT_SLIDE, 0.5f);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_226_GV_ENTRANCE:// L802D6674
|
case ACTOR_226_GV_ENTRANCE:// L802D6674
|
||||||
if(map_get() == MAP_6E_GL_GV_LOBBY && !func_803203FC(UNKFLAGS1_87_SANDCASTLE_OPEN_GV)){
|
if(map_get() == MAP_6E_GL_GV_LOBBY && !volatileFlag_get(VOLATILE_FLAG_87_SANDCASTLE_OPEN_GV)){
|
||||||
func_802D485C(actorArray_findActorFromActorId(ACTOR_226_GV_ENTRANCE), SFX_3EC_CCW_DOOR_OPENING, 0.8f, 15000);
|
func_802D485C(actorArray_findActorFromActorId(ACTOR_226_GV_ENTRANCE), SFX_3EC_CCW_DOOR_OPENING, 0.8f, 15000);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_228_MMM_ENTRANCE_DOOR:// L802D66CC
|
case ACTOR_228_MMM_ENTRANCE_DOOR:// L802D66CC
|
||||||
if(!func_803203FC(UNKFLAGS1_8C_SANDCASTLE_OPEN_MMM)){
|
if(!volatileFlag_get(VOLATILE_FLAG_8C_SANDCASTLE_OPEN_MMM)){
|
||||||
FUNC_8030E624(SFX_6B_LOCKUP_OPENING, 0.6f, 32000);
|
FUNC_8030E624(SFX_6B_LOCKUP_OPENING, 0.6f, 32000);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ACTOR_20F_RBB_ENTRANCE_DOOR:// L802D66F8
|
case ACTOR_20F_RBB_ENTRANCE_DOOR:// L802D66F8
|
||||||
if(map_get() == MAP_77_GL_RBB_LOBBY && !func_803203FC(UNKFLAGS1_90_SANDCASTLE_OPEN_RBB)){
|
if(map_get() == MAP_77_GL_RBB_LOBBY && !volatileFlag_get(VOLATILE_FLAG_90_SANDCASTLE_OPEN_RBB)){
|
||||||
func_802D4830(actorArray_findActorFromActorId(ACTOR_20F_RBB_ENTRANCE_DOOR), SFX_9A_MECHANICAL_CLOSING, 0.5f);
|
func_802D4830(actorArray_findActorFromActorId(ACTOR_20F_RBB_ENTRANCE_DOOR), SFX_9A_MECHANICAL_CLOSING, 0.5f);
|
||||||
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
func_8025A6CC(COMUSIC_64_WORLD_OPENING_A, 32000);
|
||||||
}
|
}
|
||||||
@@ -1311,14 +1314,14 @@ s32 func_802D683C(s32 arg0){
|
|||||||
}
|
}
|
||||||
|
|
||||||
int func_802D686C(void){
|
int func_802D686C(void){
|
||||||
if(func_803203FC(0x1E)){
|
if(volatileFlag_get(0x1E)){
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
return map_get() == D_80367684;
|
return map_get() == D_80367684;
|
||||||
}
|
}
|
||||||
|
|
||||||
int func_802D68B4(void){
|
int func_802D68B4(void){
|
||||||
return func_802D686C() || func_803203FC(0x21);
|
return func_802D686C() || volatileFlag_get(0x21);
|
||||||
}
|
}
|
||||||
|
|
||||||
//BREAK????
|
//BREAK????
|
||||||
|
@@ -36,7 +36,7 @@ void func_802DAA14(Actor *this){
|
|||||||
s32 tmp;
|
s32 tmp;
|
||||||
s32 text_id;
|
s32 text_id;
|
||||||
|
|
||||||
if(func_803203FC(1) || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_1) || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -247,7 +247,7 @@ void func_802DB5A0(Actor *this) {
|
|||||||
this->unk124_0 = this->unk138_31 = FALSE;
|
this->unk124_0 = this->unk138_31 = FALSE;
|
||||||
local->unk38 = 0;
|
local->unk38 = 0;
|
||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) {
|
||||||
subaddie_set_state(this, 2U);
|
subaddie_set_state(this, 2U);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -133,7 +133,7 @@ void func_802DEE1C(Actor *this) {
|
|||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
if(animctrl_isStopped(this->animctrl)) {
|
if(animctrl_isStopped(this->animctrl)) {
|
||||||
func_803204E4(0xC3, 1);
|
volatileFlag_set(VOLATILE_FLAG_C3, 1);
|
||||||
this->state = 4;
|
this->state = 4;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@@ -69,9 +69,9 @@ void func_802E0B10(Actor *this){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( mumboscore_get(local->uid)
|
if( mumboscore_get(local->uid)
|
||||||
|| func_803203FC(1)
|
|| volatileFlag_get(VOLATILE_FLAG_1)
|
||||||
|| func_803203FC(2)
|
|| volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
|| func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)
|
|| volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)
|
||||||
){
|
){
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
|
@@ -214,7 +214,7 @@ void func_802E3BF8(enum game_mode_e next_mode, s32 arg1){
|
|||||||
if(arg1){
|
if(arg1){
|
||||||
sp20 = FALSE;
|
sp20 = FALSE;
|
||||||
if(next_mode == GAME_MODE_3_NORMAL){
|
if(next_mode == GAME_MODE_3_NORMAL){
|
||||||
if(func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)){
|
if(volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)){
|
||||||
sp20 = TRUE;
|
sp20 = TRUE;
|
||||||
sp1C = 7;
|
sp1C = 7;
|
||||||
}
|
}
|
||||||
@@ -265,8 +265,8 @@ void func_802E3E7C(enum game_mode_e mode){
|
|||||||
sp28 = D_8037E8E0.exit;
|
sp28 = D_8037E8E0.exit;
|
||||||
prev_mode = D_8037E8E0.unk0;
|
prev_mode = D_8037E8E0.unk0;
|
||||||
func_802E3BF8(GAME_MODE_2_UNKNOWN, 0);
|
func_802E3BF8(GAME_MODE_2_UNKNOWN, 0);
|
||||||
if(!func_80320454(0x21, 0) || map_getLevel(map_get()) == map_getLevel(D_8037E8E0.map)){
|
if(!volatileFlag_getAndSet(0x21, 0) || map_getLevel(map_get()) == map_getLevel(D_8037E8E0.map)){
|
||||||
if(!func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE))
|
if(!volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE))
|
||||||
mapSavestate_save(map_get());
|
mapSavestate_save(map_get());
|
||||||
}
|
}
|
||||||
func_802E398C(1);
|
func_802E398C(1);
|
||||||
@@ -547,7 +547,7 @@ bool func_802E4424(void) {
|
|||||||
&& !func_8028F22C()
|
&& !func_8028F22C()
|
||||||
&& func_8032056C()
|
&& func_8032056C()
|
||||||
&& levelSpecificFlags_validateCRC1()
|
&& levelSpecificFlags_validateCRC1()
|
||||||
&& func_80320248()
|
&& dummy_func_80320248()
|
||||||
) {
|
) {
|
||||||
func_802E3BF8(GAME_MODE_4_PAUSED, 0U);
|
func_802E3BF8(GAME_MODE_4_PAUSED, 0U);
|
||||||
} else if ((func_8024E67C(0) == 1) && (D_8037E8E0.unk0 != 0)) {
|
} else if ((func_8024E67C(0) == 1) && (D_8037E8E0.unk0 != 0)) {
|
||||||
|
@@ -189,7 +189,7 @@ void func_8028E4B0(void) {
|
|||||||
sp20 = exit_get();
|
sp20 = exit_get();
|
||||||
D_8037BFB8 = 0;
|
D_8037BFB8 = 0;
|
||||||
player_setPosition(D_803636C0);
|
player_setPosition(D_803636C0);
|
||||||
if (func_803203FC(0xE) || func_802D686C() || (sp20 == 0x65)){
|
if (volatileFlag_get(0xE) || func_802D686C() || (sp20 == 0x65)){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (sp20 == 0x63) {
|
if (sp20 == 0x63) {
|
||||||
|
@@ -1265,7 +1265,7 @@ Actor * func_803055E0(enum actor_e arg0, s32 arg1[3], s32 arg2, s32 arg3, s32 ar
|
|||||||
|
|
||||||
Actor *spawn_actor(enum actor_e arg0, s32 arg1[3], s32 arg2) {
|
Actor *spawn_actor(enum actor_e arg0, s32 arg1[3], s32 arg2) {
|
||||||
s32 i;
|
s32 i;
|
||||||
arg0 = (!func_80320248()) ? (ACTOR_4_BIGBUTT) : (arg0);
|
arg0 = (!dummy_func_80320248()) ? (ACTOR_4_BIGBUTT) : (arg0);
|
||||||
for (i = 0; i < sSpawnableActorSize; i++) {
|
for (i = 0; i < sSpawnableActorSize; i++) {
|
||||||
if (arg0 == sSpawnableActorList[i].infoPtr->actorId) {
|
if (arg0 == sSpawnableActorList[i].infoPtr->actorId) {
|
||||||
return sSpawnableActorList[i].spawnFunc(arg1, arg2, ((0, sSpawnableActorList[i])).infoPtr, sSpawnableActorList[i].unk8);
|
return sSpawnableActorList[i].spawnFunc(arg1, arg2, ((0, sSpawnableActorList[i])).infoPtr, sSpawnableActorList[i].unk8);
|
||||||
|
@@ -905,7 +905,7 @@ void sfx_play(enum sfx_e uid, f32 arg1, u32 sampleRate, f32 position[3], f32 min
|
|||||||
__sfx_getPlayerPositionIfPresent(plyr_pos);
|
__sfx_getPlayerPositionIfPresent(plyr_pos);
|
||||||
if( !(maxFadeDistance <= ml_distance_vec3f(plyr_pos, position))
|
if( !(maxFadeDistance <= ml_distance_vec3f(plyr_pos, position))
|
||||||
&& levelSpecificFlags_validateCRC2()
|
&& levelSpecificFlags_validateCRC2()
|
||||||
&& func_80320240()
|
&& dummy_func_80320240()
|
||||||
){
|
){
|
||||||
sfxsource = func_8030D90C();
|
sfxsource = func_8030D90C();
|
||||||
if(sfxsource){
|
if(sfxsource){
|
||||||
|
@@ -163,7 +163,7 @@ s32 func_80318F60(enum ff_question_type_e question_type, s32 q_indx, s32 arg2) {
|
|||||||
phi_v1 = arg2;
|
phi_v1 = arg2;
|
||||||
} else {
|
} else {
|
||||||
if (question_type == FFQT_3_GRUNTY) {
|
if (question_type == FFQT_3_GRUNTY) {
|
||||||
phi_a0 = func_80320424((q_indx * 2) + 0x26, 2);
|
phi_a0 = volatileFlag_getN((q_indx * 2) + 0x26, 2);
|
||||||
} else {
|
} else {
|
||||||
phi_a0 = 0;
|
phi_a0 = 0;
|
||||||
}
|
}
|
||||||
|
@@ -120,9 +120,9 @@ void __chMinigame_setState(Actor *this, u32 arg1) {
|
|||||||
if (this->unk10_12 == MINIGAME_1_VILE) {
|
if (this->unk10_12 == MINIGAME_1_VILE) {
|
||||||
func_80347A14(0);
|
func_80347A14(0);
|
||||||
}
|
}
|
||||||
if (func_803203FC(this->unk10_12 + 6) == 0) {
|
if (volatileFlag_get(this->unk10_12 + 6) == 0) {
|
||||||
func_80324DBC(2.0f, this->unk10_12 + 0x1026, 0xA2, NULL, this->marker, __chMinigame_textCallback1, __chMinigame_transformToCroc);
|
func_80324DBC(2.0f, this->unk10_12 + 0x1026, 0xA2, NULL, this->marker, __chMinigame_textCallback1, __chMinigame_transformToCroc);
|
||||||
func_803204E4(this->unk10_12 + 6, 1);
|
volatileFlag_set(this->unk10_12 + 6, 1);
|
||||||
this->unk138_23 = TRUE;
|
this->unk138_23 = TRUE;
|
||||||
} else {
|
} else {
|
||||||
func_80324DBC(2.0f, 0xD38, 0x20, NULL, this->marker, __chMinigame_textCallback1, NULL);
|
func_80324DBC(2.0f, 0xD38, 0x20, NULL, this->marker, __chMinigame_textCallback1, NULL);
|
||||||
@@ -130,15 +130,15 @@ void __chMinigame_setState(Actor *this, u32 arg1) {
|
|||||||
break;
|
break;
|
||||||
case MINIGAME_STATE_2_IN_PROGESS:
|
case MINIGAME_STATE_2_IN_PROGESS:
|
||||||
func_8028F918(0);
|
func_8028F918(0);
|
||||||
func_803204E4(3, 1);
|
volatileFlag_set(3, 1);
|
||||||
break;
|
break;
|
||||||
case MINIGAME_STATE_3_RETURN_TO_FF:
|
case MINIGAME_STATE_3_RETURN_TO_FF:
|
||||||
func_803204E4(4, 1);
|
volatileFlag_set(4, 1);
|
||||||
func_8028F918(2);
|
func_8028F918(2);
|
||||||
func_8025AB00();
|
func_8025AB00();
|
||||||
func_8025A70C((func_803203FC(5)) ? COMUSIC_3B_MINIGAME_VICTORY : COMUSIC_3C_MINIGAME_LOSS);
|
func_8025A70C((volatileFlag_get(VOLATILE_FLAG_5)) ? COMUSIC_3B_MINIGAME_VICTORY : COMUSIC_3C_MINIGAME_LOSS);
|
||||||
func_802E4A70();
|
func_802E4A70();
|
||||||
func_803204E4(0x21, TRUE);
|
volatileFlag_set(0x21, TRUE);
|
||||||
timedFunc_set_3(2.0f, (GenFunction_3)func_802E4078, MAP_8E_GL_FURNACE_FUN, 1, 1);
|
timedFunc_set_3(2.0f, (GenFunction_3)func_802E4078, MAP_8E_GL_FURNACE_FUN, 1, 1);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -146,7 +146,7 @@ void __chMinigame_setState(Actor *this, u32 arg1) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void __chMinigame_free(Actor *this){
|
void __chMinigame_free(Actor *this){
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void chMinigame_update(Actor *this){
|
void chMinigame_update(Actor *this){
|
||||||
@@ -154,7 +154,7 @@ void chMinigame_update(Actor *this){
|
|||||||
this->unk16C_4 = 1;
|
this->unk16C_4 = 1;
|
||||||
this->unk10_12 = __chminigame_getCurrentMapId();
|
this->unk10_12 = __chminigame_getCurrentMapId();
|
||||||
actor_collisionOff(this);
|
actor_collisionOff(this);
|
||||||
if(!func_803203FC(2)){
|
if(!volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
func_8031A678(this);
|
func_8031A678(this);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -169,12 +169,12 @@ void chMinigame_update(Actor *this){
|
|||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
func_803204E4(5, 0);
|
volatileFlag_set(5, 0);
|
||||||
func_803204E4(3, 0);
|
volatileFlag_set(3, 0);
|
||||||
__chMinigame_setState(this, MINIGAME_STATE_1_INTRODUCE_GAME);
|
__chMinigame_setState(this, MINIGAME_STATE_1_INTRODUCE_GAME);
|
||||||
gcpausemenu_80314AC8(0);
|
gcpausemenu_80314AC8(0);
|
||||||
}
|
}
|
||||||
if(func_803203FC(2)){
|
if(volatileFlag_get(VOLATILE_FLAG_2)){
|
||||||
switch(this->state){
|
switch(this->state){
|
||||||
case MINIGAME_STATE_1_INTRODUCE_GAME://L8031AB2C
|
case MINIGAME_STATE_1_INTRODUCE_GAME://L8031AB2C
|
||||||
if(this->unk138_24)
|
if(this->unk138_24)
|
||||||
@@ -184,7 +184,7 @@ void chMinigame_update(Actor *this){
|
|||||||
func_8028FA14(MAP_8E_GL_FURNACE_FUN, 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, 0);
|
item_set(ITEM_6_HOURGLASS, 0);
|
||||||
if(!func_803203FC(3)){
|
if(!volatileFlag_get(VOLATILE_FLAG_3)){
|
||||||
__chMinigame_setState(this, MINIGAME_STATE_3_RETURN_TO_FF);
|
__chMinigame_setState(this, MINIGAME_STATE_3_RETURN_TO_FF);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@@ -9,8 +9,8 @@ extern s32 fileProgressFlag_get(s32);
|
|||||||
extern s32 fileProgressFlag_getN(s32 offset, s32 numBits);
|
extern s32 fileProgressFlag_getN(s32 offset, s32 numBits);
|
||||||
extern void func_8031FFAC(void);
|
extern void func_8031FFAC(void);
|
||||||
extern void fileProgressFlag_set(s32 index, s32 set);
|
extern void fileProgressFlag_set(s32 index, s32 set);
|
||||||
extern void func_8032048C(void);
|
extern void volatileFlag_clear(void);
|
||||||
extern void func_803204E4(s32 arg0, s32 arg1);
|
extern void volatileFlag_set(s32 arg0, s32 arg1);
|
||||||
extern void ml_vec3h_to_vec3f(f32 *, s32);
|
extern void ml_vec3h_to_vec3f(f32 *, s32);
|
||||||
extern NodeProp *func_80304ED0(void*, f32 *);
|
extern NodeProp *func_80304ED0(void*, f32 *);
|
||||||
extern void func_8031CD44(s32, s32, f32, f32, s32);
|
extern void func_8031CD44(s32, s32, f32, f32, s32);
|
||||||
@@ -299,7 +299,7 @@ void warp_gvEnterMatchingPyramid(s32 arg0, s32 arg1) {
|
|||||||
|
|
||||||
void warp_gvEnterWaterPyramidUpper(s32 arg0, s32 arg1) {
|
void warp_gvEnterWaterPyramidUpper(s32 arg0, s32 arg1) {
|
||||||
func_80244C78(0);
|
func_80244C78(0);
|
||||||
func_803204E4(0xAC, 1);
|
volatileFlag_set(0xAC, 1);
|
||||||
func_8031CC8C(arg0, 0x1502);
|
func_8031CC8C(arg0, 0x1502);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -536,7 +536,7 @@ void func_8031DAA8(s32 arg0, s32 arg1) {
|
|||||||
|
|
||||||
void func_8031DAE0(s32 arg0, s32 arg1) {
|
void func_8031DAE0(s32 arg0, s32 arg1) {
|
||||||
if (mapSpecificFlags_get(2) == 0) {
|
if (mapSpecificFlags_get(2) == 0) {
|
||||||
func_803204E4(0xAD, 1);
|
volatileFlag_set(0xAD, 1);
|
||||||
func_80244C78(0);
|
func_80244C78(0);
|
||||||
mapSpecificFlags_set(2, 1);
|
mapSpecificFlags_set(2, 1);
|
||||||
func_8025A6EC(COMUSIC_3B_MINIGAME_VICTORY, 0x6D60);
|
func_8025A6EC(COMUSIC_3B_MINIGAME_VICTORY, 0x6D60);
|
||||||
@@ -1498,7 +1498,7 @@ void func_8031FBA0(void) {
|
|||||||
jiggyscore_clearAll();
|
jiggyscore_clearAll();
|
||||||
honeycombscore_clear();
|
honeycombscore_clear();
|
||||||
mumboscore_clear();
|
mumboscore_clear();
|
||||||
func_8032048C();
|
volatileFlag_clear();
|
||||||
func_802D6344();
|
func_802D6344();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -6,10 +6,10 @@ void func_8031FFAC(void);
|
|||||||
void fileProgressFlag_set(s32 index, s32 set);
|
void fileProgressFlag_set(s32 index, s32 set);
|
||||||
s32 bitfield_get_bit(u8 *array, s32 index);
|
s32 bitfield_get_bit(u8 *array, s32 index);
|
||||||
s32 bitfield_get_n_bits(u8 *array, s32 offset, s32 numBits);
|
s32 bitfield_get_n_bits(u8 *array, s32 offset, s32 numBits);
|
||||||
void setBitToArray(u8 *array, s32 index, s32 set);
|
void bitfield_set_bit(u8 *array, s32 index, s32 set);
|
||||||
void func_803201C8(u8 *array, s32 startIndex, s32 set, s32 length);
|
void bitfield_set_n_bits(u8 *array, s32 startIndex, s32 set, s32 length);
|
||||||
void func_8032048C(void);
|
void volatileFlag_clear(void);
|
||||||
void func_803204E4(s32 arg0, s32 arg1);
|
void volatileFlag_set(s32 arg0, s32 arg1);
|
||||||
s32 fileProgressFlag_getN(s32 offset, s32 numBits);
|
s32 fileProgressFlag_getN(s32 offset, s32 numBits);
|
||||||
void func_8031CE70(f32 *arg0, s32 arg1, s32 arg2);
|
void func_8031CE70(f32 *arg0, s32 arg1, s32 arg2);
|
||||||
void ml_vec3h_to_vec3f(f32 *, s32);
|
void ml_vec3h_to_vec3f(f32 *, s32);
|
||||||
@@ -22,22 +22,22 @@ void func_80256E24(f32 *, f32, f32, f32, f32, f32);
|
|||||||
|
|
||||||
|
|
||||||
/* .data */
|
/* .data */
|
||||||
s32 D_8036DDF0 = 0x24;
|
s32 gVolatileFlagsSize = 0x24; // sizeof(gVolatileFlags)
|
||||||
|
|
||||||
/* .bss */
|
/* .bss */
|
||||||
struct {
|
struct {
|
||||||
s32 unk0;
|
s32 unk0;
|
||||||
s32 unk4;
|
s32 unk4;
|
||||||
u8 unk8[0x25];
|
u8 unk8[0x25];
|
||||||
} D_803831A0;
|
} gFileProgressFlags;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
s32 unk0;
|
s32 unk0;
|
||||||
s32 unk4;
|
s32 unk4;
|
||||||
u8 unk8[0x19];
|
u8 unk8[0x19];
|
||||||
} D_803831D0;
|
} gVolatileFlags;
|
||||||
|
|
||||||
u8 D_803831F8[0x21]; //copy of D_803831D0
|
u8 glVolatileFlagsCopy[0x21]; //copy of gVolatileFlags
|
||||||
|
|
||||||
|
|
||||||
/* .code */
|
/* .code */
|
||||||
@@ -53,16 +53,16 @@ void func_8031FC40(void) {
|
|||||||
u32 v1;
|
u32 v1;
|
||||||
|
|
||||||
//obsucre address
|
//obsucre address
|
||||||
t0 = (((s32)&D_803831A0.unk8 & 0xE0000000) >> 15) +
|
t0 = (((s32)&gFileProgressFlags.unk8 & 0xE0000000) >> 15) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x1FC00000) >> 22) +
|
(((s32)&gFileProgressFlags.unk8 & 0x1FC00000) >> 22) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00300000) << 10) +
|
(((s32)&gFileProgressFlags.unk8 & 0x00300000) << 10) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x000F0000) << 7) +
|
(((s32)&gFileProgressFlags.unk8 & 0x000F0000) << 7) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x0000E000) << 14) +
|
(((s32)&gFileProgressFlags.unk8 & 0x0000E000) << 14) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00001800) >> 4) +
|
(((s32)&gFileProgressFlags.unk8 & 0x00001800) >> 4) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00000780) << 10) +
|
(((s32)&gFileProgressFlags.unk8 & 0x00000780) << 10) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00000060) << 4) +
|
(((s32)&gFileProgressFlags.unk8 & 0x00000060) << 4) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00000018) << 18) +
|
(((s32)&gFileProgressFlags.unk8 & 0x00000018) << 18) +
|
||||||
(((s32)&D_803831A0.unk8 & 0x00000007) << 11);
|
(((s32)&gFileProgressFlags.unk8 & 0x00000007) << 11);
|
||||||
|
|
||||||
//unobscure address
|
//unobscure address
|
||||||
t1 = ((t0 & 0x1E0600) << 0xB) | ((s32) (t0 & 0x603800) / 8);
|
t1 = ((t0 & 0x1E0600) << 0xB) | ((s32) (t0 & 0x603800) / 8);
|
||||||
@@ -79,7 +79,7 @@ void func_8031FC40(void) {
|
|||||||
v0 = (((v0 - ptr[v1]) & 0x1F) << 0xF) ^ ((ptr[v1]* 0x1B) + (v0 >> 0xB));
|
v0 = (((v0 - ptr[v1]) & 0x1F) << 0xF) ^ ((ptr[v1]* 0x1B) + (v0 >> 0xB));
|
||||||
}
|
}
|
||||||
|
|
||||||
scrambled_ptr = (s32 *) ((((s32) &D_803831A0 & 0x55555555) << 1) + (((s32) &D_803831A0 & 0xAAAAAAAA) >> 1));
|
scrambled_ptr = (s32 *) ((((s32) &gFileProgressFlags & 0x55555555) << 1) + (((s32) &gFileProgressFlags & 0xAAAAAAAA) >> 1));
|
||||||
unscrambled_ptr = (s32 *) ((((s32) scrambled_ptr & 0x55555555) << 1) | (((s32) scrambled_ptr & 0xAAAAAAAA) >> 1));
|
unscrambled_ptr = (s32 *) ((((s32) scrambled_ptr & 0x55555555) << 1) | (((s32) scrambled_ptr & 0xAAAAAAAA) >> 1));
|
||||||
*unscrambled_ptr = v0;
|
*unscrambled_ptr = v0;
|
||||||
}
|
}
|
||||||
@@ -92,7 +92,7 @@ u32 func_8031FE40(void) {
|
|||||||
|
|
||||||
var_v1 = 0xDE1C05;
|
var_v1 = 0xDE1C05;
|
||||||
var_v0 = 0x25;
|
var_v0 = 0x25;
|
||||||
obscured_addr = (u8*)OBSCURE(&D_803831A0.unk8[0]);
|
obscured_addr = (u8*)OBSCURE(&gFileProgressFlags.unk8[0]);
|
||||||
for(var_a2 = 0; var_a2 < var_v0; var_a2++){
|
for(var_a2 = 0; var_a2 < var_v0; var_a2++){
|
||||||
var_v1 += ((var_v1 % 4) + var_a2) * obscured_addr[var_a2];
|
var_v1 += ((var_v1 % 4) + var_a2) * obscured_addr[var_a2];
|
||||||
}
|
}
|
||||||
@@ -101,16 +101,16 @@ u32 func_8031FE40(void) {
|
|||||||
|
|
||||||
void func_8031FEC0(void) {
|
void func_8031FEC0(void) {
|
||||||
u32 *obscured_addr;
|
u32 *obscured_addr;
|
||||||
obscured_addr = (u32*)OBSCURE(&D_803831A0.unk4);
|
obscured_addr = (u32*)OBSCURE(&gFileProgressFlags.unk4);
|
||||||
*obscured_addr = func_8031FE40();
|
*obscured_addr = func_8031FE40();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool fileProgressFlag_get(enum file_progress_e index) {
|
bool fileProgressFlag_get(enum file_progress_e index) {
|
||||||
return bitfield_get_bit(D_803831A0.unk8, index);
|
return bitfield_get_bit(gFileProgressFlags.unk8, index);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 fileProgressFlag_getN(s32 offset, s32 numBits) {
|
s32 fileProgressFlag_getN(s32 offset, s32 numBits) {
|
||||||
return bitfield_get_n_bits(D_803831A0.unk8, offset, numBits);
|
return bitfield_get_n_bits(gFileProgressFlags.unk8, offset, numBits);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 fileProgressFlag_getAndSet(s32 index, s32 set) {
|
s32 fileProgressFlag_getAndSet(s32 index, s32 set) {
|
||||||
@@ -125,27 +125,27 @@ void func_8031FFAC(void) {
|
|||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
for (i = 0; i < 37; i++) {
|
for (i = 0; i < 37; i++) {
|
||||||
D_803831A0.unk8[i] = 0;
|
gFileProgressFlags.unk8[i] = 0;
|
||||||
}
|
}
|
||||||
func_8031FC40();
|
func_8031FC40();
|
||||||
func_8031FEC0();
|
func_8031FEC0();
|
||||||
}
|
}
|
||||||
|
|
||||||
void fileProgressFlag_set(s32 index, s32 set) {
|
void fileProgressFlag_set(s32 index, s32 set) {
|
||||||
setBitToArray(D_803831A0.unk8, index, set);
|
bitfield_set_bit(gFileProgressFlags.unk8, index, set);
|
||||||
func_8031FC40();
|
func_8031FC40();
|
||||||
func_8031FEC0();
|
func_8031FEC0();
|
||||||
}
|
}
|
||||||
|
|
||||||
void fileProgressFlag_setN(s32 startIndex, s32 set, s32 length) {
|
void fileProgressFlag_setN(s32 startIndex, s32 set, s32 length) {
|
||||||
func_803201C8(D_803831A0.unk8, startIndex, set, length);
|
bitfield_set_n_bits(gFileProgressFlags.unk8, startIndex, set, length);
|
||||||
func_8031FC40();
|
func_8031FC40();
|
||||||
func_8031FEC0();
|
func_8031FEC0();
|
||||||
}
|
}
|
||||||
|
|
||||||
void progressflags_getSizeAndPtr(s32 *size, u8 **addr) {
|
void fileProgressFlag_getSizeAndPtr(s32 *size, u8 **addr) {
|
||||||
*size = 0x25;
|
*size = 0x25;
|
||||||
*addr = D_803831A0.unk8;
|
*addr = gFileProgressFlags.unk8;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns a single bit from a byte array
|
// Returns a single bit from a byte array
|
||||||
@@ -171,7 +171,7 @@ s32 bitfield_get_n_bits(u8 *array, s32 offset, s32 numBits) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Sets or clears a single bit in a byte array
|
// Sets or clears a single bit in a byte array
|
||||||
void setBitToArray(u8 *array, s32 index, s32 set) {
|
void bitfield_set_bit(u8 *array, s32 index, s32 set) {
|
||||||
if (set) {
|
if (set) {
|
||||||
array[index / 8] |= (1 << (index & 7));
|
array[index / 8] |= (1 << (index & 7));
|
||||||
} else {
|
} else {
|
||||||
@@ -180,21 +180,21 @@ void setBitToArray(u8 *array, s32 index, s32 set) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Sets or clears a range of bits in a byte array
|
// Sets or clears a range of bits in a byte array
|
||||||
void func_803201C8(u8 *array, s32 startIndex, s32 set, s32 length) {
|
void bitfield_set_n_bits(u8 *array, s32 startIndex, s32 set, s32 length) {
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
for (i = 0; i < length; i++) {
|
for (i = 0; i < length; i++) {
|
||||||
setBitToArray(array, startIndex + i, (1 << i) & set);
|
bitfield_set_bit(array, startIndex + i, (1 << i) & set);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 func_80320240(void){return 1;}
|
s32 dummy_func_80320240(void){return 1;}
|
||||||
|
|
||||||
s32 func_80320248(void){return 1;}
|
s32 dummy_func_80320248(void){return 1;}
|
||||||
|
|
||||||
u32 func_80320250(void) {
|
u32 func_80320250(void) {
|
||||||
u32 checksum = 0x6CE9E91F;
|
u32 checksum = 0x6CE9E91F;
|
||||||
u8 *obscured_addr = (u8*)OBSCURE(&D_803831D0.unk8[0]);
|
u8 *obscured_addr = (u8*)OBSCURE(&gVolatileFlags.unk8[0]);
|
||||||
s32 len = 25;
|
s32 len = 25;
|
||||||
u32 i;
|
u32 i;
|
||||||
|
|
||||||
@@ -207,7 +207,7 @@ u32 func_80320250(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_803202D0(void) {
|
void func_803202D0(void) {
|
||||||
s32 addr = (s32) &D_803831D0.unk0;
|
s32 addr = (s32) &gVolatileFlags.unk0;
|
||||||
addr ^= 0x7EDDF5F4;
|
addr ^= 0x7EDDF5F4;
|
||||||
addr ^= 0x7BEF9D80;
|
addr ^= 0x7BEF9D80;
|
||||||
addr ^= 0x5326874;
|
addr ^= 0x5326874;
|
||||||
@@ -215,7 +215,7 @@ void func_803202D0(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
s32 func_80320320(void) {
|
s32 func_80320320(void) {
|
||||||
s32 addr = (s32) &D_803831D0.unk8[0];
|
s32 addr = (s32) &gVolatileFlags.unk8[0];
|
||||||
s32 checksum = 0x281E421C;
|
s32 checksum = 0x281E421C;
|
||||||
s32 len = 25;
|
s32 len = 25;
|
||||||
s32 scrambled;
|
s32 scrambled;
|
||||||
@@ -238,44 +238,44 @@ s32 func_80320320(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_803203A0(void) {
|
void func_803203A0(void) {
|
||||||
u32 *obscured_addr = (u32*)OBSCURE(&D_803831D0.unk4);
|
u32 *obscured_addr = (u32*)OBSCURE(&gVolatileFlags.unk4);
|
||||||
|
|
||||||
*obscured_addr = func_80320320();
|
*obscured_addr = func_80320320();
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 func_803203FC(s32 index) {
|
s32 volatileFlag_get(s32 index) {
|
||||||
return bitfield_get_bit(D_803831D0.unk8, index);
|
return bitfield_get_bit(gVolatileFlags.unk8, index);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80320424(s32 index, s32 numBits) {
|
void volatileFlag_getN(s32 index, s32 numBits) {
|
||||||
bitfield_get_n_bits(D_803831D0.unk8, index, numBits);
|
bitfield_get_n_bits(gVolatileFlags.unk8, index, numBits);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 func_80320454(s32 index, s32 arg1) {
|
s32 volatileFlag_getAndSet(s32 index, s32 arg1) {
|
||||||
s32 temp_v0;
|
s32 temp_v0;
|
||||||
|
|
||||||
temp_v0 = func_803203FC(index);
|
temp_v0 = volatileFlag_get(index);
|
||||||
func_803204E4(index, arg1);
|
volatileFlag_set(index, arg1);
|
||||||
return temp_v0;
|
return temp_v0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_8032048C(void) {
|
void volatileFlag_clear(void) {
|
||||||
s32 i;
|
s32 i;
|
||||||
for (i = 0; i < 25; i++) {
|
for (i = 0; i < 25; i++) {
|
||||||
D_803831D0.unk8[i] = 0;
|
gVolatileFlags.unk8[i] = 0;
|
||||||
}
|
}
|
||||||
func_803202D0();
|
func_803202D0();
|
||||||
func_803203A0();
|
func_803203A0();
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_803204E4(s32 index, s32 set) {
|
void volatileFlag_set(s32 index, s32 set) {
|
||||||
setBitToArray(D_803831D0.unk8, index, set);
|
bitfield_set_bit(gVolatileFlags.unk8, index, set);
|
||||||
func_803202D0();
|
func_803202D0();
|
||||||
func_803203A0();
|
func_803203A0();
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80320524(s32 startIndex, s32 set, s32 length) {
|
void volatileFlag_setN(s32 startIndex, s32 set, s32 length) {
|
||||||
func_803201C8(D_803831D0.unk8, startIndex, set, length);
|
bitfield_set_n_bits(gVolatileFlags.unk8, startIndex, set, length);
|
||||||
func_803202D0();
|
func_803202D0();
|
||||||
func_803203A0();
|
func_803203A0();
|
||||||
}
|
}
|
||||||
@@ -285,7 +285,7 @@ s32 func_8032056C(void) {
|
|||||||
s32 temp_a1;
|
s32 temp_a1;
|
||||||
s32 temp_a1_2;
|
s32 temp_a1_2;
|
||||||
s32 phi_t9;
|
s32 phi_t9;
|
||||||
s32 addr = (s32)&D_803831D0;
|
s32 addr = (s32)&gVolatileFlags;
|
||||||
s32 temp_v1;
|
s32 temp_v1;
|
||||||
|
|
||||||
temp_v1 = ((addr & 0xE0000000) >> 15) +
|
temp_v1 = ((addr & 0xE0000000) >> 15) +
|
||||||
@@ -312,31 +312,32 @@ s32 func_80320708(void) {
|
|||||||
u16 temp_t6;
|
u16 temp_t6;
|
||||||
s32 addr;
|
s32 addr;
|
||||||
|
|
||||||
temp_t6 = ((s32) &D_803831D0.unk4 >> 0x10);
|
temp_t6 = ((s32) &gVolatileFlags.unk4 >> 0x10);
|
||||||
addr = (s32) &D_803831D0.unk4 ^ temp_t6;
|
addr = (s32) &gVolatileFlags.unk4 ^ temp_t6;
|
||||||
return func_80320320() == *(s32*)(addr ^ temp_t6);
|
return func_80320320() == *(s32*)(addr ^ temp_t6);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80320748(void) {
|
void volatileFlag_backupAll(void) {
|
||||||
s32 var_v0;
|
s32 i;
|
||||||
u8 *var_a0;
|
u8 *dst;
|
||||||
u8 *var_a1;
|
u8 *src;
|
||||||
|
|
||||||
var_a1 = &D_803831D0;
|
src = (u8 *) &gVolatileFlags;
|
||||||
var_a0 = D_803831F8;
|
dst = glVolatileFlagsCopy;
|
||||||
for(var_v0 = 0; var_v0 < D_8036DDF0; var_v0++){
|
for(i = 0; i < gVolatileFlagsSize; i++){
|
||||||
var_a0[var_v0] = var_a1[var_v0];
|
dst[i] = src[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80320798(void) {
|
void volatileFlag_restoreAll(void) {
|
||||||
s32 var_v0;
|
s32 i;
|
||||||
u8 *var_a0;
|
u8 *dst;
|
||||||
u8 *var_a1;
|
u8 *src;
|
||||||
|
|
||||||
var_a1 = D_803831F8;
|
src = glVolatileFlagsCopy;
|
||||||
var_a0 = &D_803831D0;
|
dst = (u8 *) &gVolatileFlags;
|
||||||
for(var_v0 = 0; var_v0 < D_8036DDF0; var_v0++){
|
|
||||||
var_a0[var_v0] = var_a1[var_v0];
|
for(i = 0; i < gVolatileFlagsSize; i++) {
|
||||||
|
dst[i] = src[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -37,12 +37,12 @@ void func_803216D0(enum map_e map){
|
|||||||
levelSpecificFlags_clear();
|
levelSpecificFlags_clear();
|
||||||
bsStoredState_clearTimers();
|
bsStoredState_clearTimers();
|
||||||
func_803219A8();
|
func_803219A8();
|
||||||
if( func_80320454(0x17, FALSE)
|
if( volatileFlag_getAndSet(0x17, FALSE)
|
||||||
&& getGameMode() != 0
|
&& getGameMode() != 0
|
||||||
&& D_80383300.level != LEVEL_D_CUTSCENE
|
&& D_80383300.level != LEVEL_D_CUTSCENE
|
||||||
&& map != MAP_91_FILE_SELECT
|
&& map != MAP_91_FILE_SELECT
|
||||||
){
|
){
|
||||||
func_803204E4(0x18, TRUE);
|
volatileFlag_set(0x18, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(D_80383300.level == LEVEL_9_RUSTY_BUCKET_BAY){
|
if(D_80383300.level == LEVEL_9_RUSTY_BUCKET_BAY){
|
||||||
@@ -74,7 +74,7 @@ void func_80321854(void){
|
|||||||
&& fileProgressFlag_get(FILEPROG_31_MM_OPEN)
|
&& fileProgressFlag_get(FILEPROG_31_MM_OPEN)
|
||||||
&& !fileProgressFlag_get(FILEPROG_C1_BADDIES_ESCAPE_TEXT)
|
&& !fileProgressFlag_get(FILEPROG_C1_BADDIES_ESCAPE_TEXT)
|
||||||
){
|
){
|
||||||
func_803204E4(0x22, 1);
|
volatileFlag_set(0x22, 1);
|
||||||
}
|
}
|
||||||
bsStoredState_8029A924(); //null
|
bsStoredState_8029A924(); //null
|
||||||
func_803465BC(); //null
|
func_803465BC(); //null
|
||||||
|
@@ -286,8 +286,8 @@ void __overlay_bgs_release(void){ return; }
|
|||||||
|
|
||||||
void func_80322D38(void){
|
void func_80322D38(void){
|
||||||
if( map_get() == MAP_10_BGS_MR_VILE
|
if( map_get() == MAP_10_BGS_MR_VILE
|
||||||
&& func_803203FC(2)
|
&& volatileFlag_get(VOLATILE_FLAG_2)
|
||||||
&& func_803203FC(7)
|
&& volatileFlag_get(VOLATILE_FLAG_7_HAS_SEEN_VILE_FF_MINIGAME)
|
||||||
){
|
){
|
||||||
player_setTransformation(TRANSFORM_5_CROC);
|
player_setTransformation(TRANSFORM_5_CROC);
|
||||||
}
|
}
|
||||||
|
@@ -19,7 +19,6 @@ f32 func_80257204(f32, f32, f32, f32);
|
|||||||
extern Actor *func_802C4260(enum actor_e actor_id, s32 x, s32 y, s32 z, s32 yaw);
|
extern Actor *func_802C4260(enum actor_e actor_id, s32 x, s32 y, s32 z, s32 yaw);
|
||||||
f32 func_8033229C(ActorMarker *);
|
f32 func_8033229C(ActorMarker *);
|
||||||
f32 player_getYaw(void);
|
f32 player_getYaw(void);
|
||||||
extern void func_8032FFF4(ActorMarker *, ActorMarker *, s32);
|
|
||||||
extern void func_802C9334(s32, Actor *);
|
extern void func_802C9334(s32, Actor *);
|
||||||
extern void func_8032B3A0(Actor *, ActorMarker *);
|
extern void func_8032B3A0(Actor *, ActorMarker *);
|
||||||
extern void func_8032EE0C(GenFunction_2, s32);
|
extern void func_8032EE0C(GenFunction_2, s32);
|
||||||
@@ -529,7 +528,7 @@ void func_803268B4(void) {
|
|||||||
|
|
||||||
|
|
||||||
if (suBaddieActorArray != NULL) {
|
if (suBaddieActorArray != NULL) {
|
||||||
sp54 = func_803203FC(101);
|
sp54 = volatileFlag_get(101);
|
||||||
for(temp_v1 = suBaddieActorArray->cnt - 1; temp_v1 >= 0; temp_v1--){
|
for(temp_v1 = suBaddieActorArray->cnt - 1; temp_v1 >= 0; temp_v1--){
|
||||||
actor = &suBaddieActorArray->data[temp_v1];
|
actor = &suBaddieActorArray->data[temp_v1];
|
||||||
actor_info = actor->actor_info;
|
actor_info = actor->actor_info;
|
||||||
@@ -538,7 +537,7 @@ void func_803268B4(void) {
|
|||||||
temp_s1 = actor->actor_info->unk18;
|
temp_s1 = actor->actor_info->unk18;
|
||||||
if (marker->propPtr->unk8_4) {
|
if (marker->propPtr->unk8_4) {
|
||||||
if(sp54){
|
if(sp54){
|
||||||
if ( actor->actor_info->unk20 && func_803203FC( actor->actor_info->unk20)) {
|
if ( actor->actor_info->unk20 && volatileFlag_get( actor->actor_info->unk20)) {
|
||||||
marker_despawn(marker);
|
marker_despawn(marker);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -724,7 +723,7 @@ Actor **actorArray_findJiggyActors(void) {
|
|||||||
return suBaddieJiggyArray;
|
return suBaddieJiggyArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool func_803270B8(f32 arg0[3], f32 arg1, s32 arg2, int (*arg3)(Actor *), ActorMarker * arg4){
|
bool func_803270B8(f32 arg0[3], f32 arg1, enum marker_collision_func_type_e arg2, int (*arg3)(Actor *), ActorMarker * arg4){
|
||||||
bool var_s4;
|
bool var_s4;
|
||||||
Actor * start;
|
Actor * start;
|
||||||
Actor * i_ptr;
|
Actor * i_ptr;
|
||||||
@@ -741,7 +740,7 @@ bool func_803270B8(f32 arg0[3], f32 arg1, s32 arg2, int (*arg3)(Actor *), ActorM
|
|||||||
) {
|
) {
|
||||||
var_s4 = TRUE;
|
var_s4 = TRUE;
|
||||||
if (!func_8033D410(arg4, i_ptr->marker)) {
|
if (!func_8033D410(arg4, i_ptr->marker)) {
|
||||||
func_8032FFF4(i_ptr->marker, arg4, arg2);
|
marker_callCollisionFunc(i_ptr->marker, arg4, arg2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -849,7 +848,7 @@ Actor *actor_new(s32 position[3], s32 yaw, ActorInfo* actorInfo, u32 flags){
|
|||||||
func_8032FFD4(suLastBaddie->marker, suBaddieActorArray->cnt - 1);
|
func_8032FFD4(suLastBaddie->marker, suBaddieActorArray->cnt - 1);
|
||||||
marker_setModelId(suLastBaddie->marker, actorInfo->modelId);
|
marker_setModelId(suLastBaddie->marker, actorInfo->modelId);
|
||||||
marker_setActorUpdateFunc(suLastBaddie->marker, actorInfo->update_func);
|
marker_setActorUpdateFunc(suLastBaddie->marker, actorInfo->update_func);
|
||||||
marker_setActorUpdate2Func(suLastBaddie->marker, actorInfo->unk10);
|
marker_setActorUpdate2Func(suLastBaddie->marker, actorInfo->update2_func);
|
||||||
ml_vec3f_clear(suLastBaddie->unk1C);
|
ml_vec3f_clear(suLastBaddie->unk1C);
|
||||||
ml_vec3f_clear(suLastBaddie->velocity);
|
ml_vec3f_clear(suLastBaddie->velocity);
|
||||||
ml_vec3f_clear(suLastBaddie->spawn_position);
|
ml_vec3f_clear(suLastBaddie->spawn_position);
|
||||||
@@ -859,7 +858,7 @@ Actor *actor_new(s32 position[3], s32 yaw, ActorInfo* actorInfo, u32 flags){
|
|||||||
suLastBaddie->stored_animctrl_forwards = 0;
|
suLastBaddie->stored_animctrl_forwards = 0;
|
||||||
suLastBaddie->stored_animctrl_smoothTransistion = 0;
|
suLastBaddie->stored_animctrl_smoothTransistion = 0;
|
||||||
suLastBaddie->stored_animctrl_duration = 0.0f;
|
suLastBaddie->stored_animctrl_duration = 0.0f;
|
||||||
suLastBaddie->unkEC = 0.0f;
|
suLastBaddie->stored_animctrl_timer = 0.0f;
|
||||||
suLastBaddie->unk138_19 = 0;
|
suLastBaddie->unk138_19 = 0;
|
||||||
suLastBaddie->stored_animctrl_subrangeMin = 0.0f;
|
suLastBaddie->stored_animctrl_subrangeMin = 0.0f;
|
||||||
suLastBaddie->stored_animctrl_subrangeMax = 1.0f;
|
suLastBaddie->stored_animctrl_subrangeMax = 1.0f;
|
||||||
@@ -868,7 +867,7 @@ Actor *actor_new(s32 position[3], s32 yaw, ActorInfo* actorInfo, u32 flags){
|
|||||||
suLastBaddie->unk138_29 = 0;
|
suLastBaddie->unk138_29 = 0;
|
||||||
suLastBaddie->unk18 = actorInfo->animations;
|
suLastBaddie->unk18 = actorInfo->animations;
|
||||||
suLastBaddie->animctrl = NULL;
|
suLastBaddie->animctrl = NULL;
|
||||||
suLastBaddie->unkEC = 0.0f;
|
suLastBaddie->stored_animctrl_timer = 0.0f;
|
||||||
suLastBaddie->unk130 = 0;
|
suLastBaddie->unk130 = 0;
|
||||||
suLastBaddie->unk124_5 = 0;
|
suLastBaddie->unk124_5 = 0;
|
||||||
suLastBaddie->unk124_3 = 0;
|
suLastBaddie->unk124_3 = 0;
|
||||||
@@ -1518,7 +1517,7 @@ bool func_803294F0(Actor *this, s32 arg1, s32 arg2){
|
|||||||
|
|
||||||
bool func_80329530(Actor *this, s32 dist){
|
bool func_80329530(Actor *this, s32 dist){
|
||||||
if( func_8028F098()
|
if( func_8028F098()
|
||||||
&& !func_803203FC(0xBF)
|
&& !volatileFlag_get(0xBF)
|
||||||
&& subaddie_playerIsWithinSphere(this, dist)
|
&& subaddie_playerIsWithinSphere(this, dist)
|
||||||
){
|
){
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -1684,7 +1683,7 @@ void func_80329B68(Actor *this){
|
|||||||
animctrl_setDirection(this->animctrl, this->stored_animctrl_forwards);
|
animctrl_setDirection(this->animctrl, this->stored_animctrl_forwards);
|
||||||
animctrl_setSmoothTransition(this->animctrl, this->stored_animctrl_smoothTransistion);
|
animctrl_setSmoothTransition(this->animctrl, this->stored_animctrl_smoothTransistion);
|
||||||
animctrl_setDuration(this->animctrl, this->stored_animctrl_duration);
|
animctrl_setDuration(this->animctrl, this->stored_animctrl_duration);
|
||||||
animctrl_setStart(this->animctrl, this->unkEC);
|
animctrl_setStart(this->animctrl, this->stored_animctrl_timer);
|
||||||
animctrl_setSubRange(this->animctrl, this->stored_animctrl_subrangeMin, this->stored_animctrl_subrangeMax);
|
animctrl_setSubRange(this->animctrl, this->stored_animctrl_subrangeMin, this->stored_animctrl_subrangeMax);
|
||||||
animctrl_start(this->animctrl, "subaddie.c", 0x8fd);
|
animctrl_start(this->animctrl, "subaddie.c", 0x8fd);
|
||||||
animctrl_setTimer(this->animctrl, this->sound_timer);
|
animctrl_setTimer(this->animctrl, this->sound_timer);
|
||||||
@@ -1761,7 +1760,7 @@ void *actors_appendToSavestate(void * begin, u32 end){
|
|||||||
s0->stored_animctrl_forwards = animctrl_isPlayedForwards(s0->animctrl);
|
s0->stored_animctrl_forwards = animctrl_isPlayedForwards(s0->animctrl);
|
||||||
s0->stored_animctrl_smoothTransistion = animctrl_isSmoothTransistion(s0->animctrl);
|
s0->stored_animctrl_smoothTransistion = animctrl_isSmoothTransistion(s0->animctrl);
|
||||||
s0->stored_animctrl_duration = animctrl_getDuration(s0->animctrl);
|
s0->stored_animctrl_duration = animctrl_getDuration(s0->animctrl);
|
||||||
s0->unkEC = animctrl_getAnimTimer(s0->animctrl);
|
s0->stored_animctrl_timer = animctrl_getAnimTimer(s0->animctrl);
|
||||||
animctrl_getSubRange(s0->animctrl, &s0->stored_animctrl_subrangeMin, &s0->stored_animctrl_subrangeMax);
|
animctrl_getSubRange(s0->animctrl, &s0->stored_animctrl_subrangeMin, &s0->stored_animctrl_subrangeMax);
|
||||||
}
|
}
|
||||||
s0->animctrl = NULL;
|
s0->animctrl = NULL;
|
||||||
@@ -2231,7 +2230,7 @@ void func_8032B5C0(ActorMarker *arg0, ActorMarker *arg1, struct5Cs *arg2) {
|
|||||||
s32 sp70;
|
s32 sp70;
|
||||||
s32 sp6C;
|
s32 sp6C;
|
||||||
s32 sp68;
|
s32 sp68;
|
||||||
s32 sp64;
|
enum marker_collision_func_type_e sp64;
|
||||||
s32 var_v0;
|
s32 var_v0;
|
||||||
f32 player_yaw;
|
f32 player_yaw;
|
||||||
f32 sp50[3];
|
f32 sp50[3];
|
||||||
@@ -2311,7 +2310,7 @@ void func_8032B5C0(ActorMarker *arg0, ActorMarker *arg1, struct5Cs *arg2) {
|
|||||||
}
|
}
|
||||||
func_8032EE20();
|
func_8032EE20();
|
||||||
}
|
}
|
||||||
func_8032FFF4(arg0, arg1, sp64);
|
marker_callCollisionFunc(arg0, arg1, sp64);
|
||||||
}
|
}
|
||||||
if ((sp64 != 0) && (sp6C != 0)) {
|
if ((sp64 != 0) && (sp6C != 0)) {
|
||||||
FUNC_8030E8B4(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 25984, this->position, (s32)((500.0f + func_8033229C(arg0)) * 0.5), (s32)((500.0f + func_8033229C(arg0)) * 5));
|
FUNC_8030E8B4(SFX_1D_HITTING_AN_ENEMY_1, 1.0f, 25984, this->position, (s32)((500.0f + func_8033229C(arg0)) * 0.5), (s32)((500.0f + func_8033229C(arg0)) * 5));
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
#include <ultra64.h>
|
#include <ultra64.h>
|
||||||
#include "functions.h"
|
#include "functions.h"
|
||||||
#include "variables.h"
|
#include "variables.h"
|
||||||
|
#include "enums.h"
|
||||||
|
|
||||||
#define AssetCacheSize 0x3D5
|
#define AssetCacheSize 0x3D5
|
||||||
|
|
||||||
@@ -887,7 +888,7 @@ void cube_fromFile(Struct61s *file_ptr, Cube *cube) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (file_getByte_ifExpected(file_ptr, 8, &sp47)) {
|
if (file_getByte_ifExpected(file_ptr, 8, &sp47)) {
|
||||||
sp34 = func_803203FC(1) + func_803203FC(2) + func_803203FC(0x1F);
|
sp34 = volatileFlag_get(VOLATILE_FLAG_1) + volatileFlag_get(VOLATILE_FLAG_2) + volatileFlag_get(0x1F);
|
||||||
|
|
||||||
if ((sp34) && gcparade_8031B4CC()) {
|
if ((sp34) && gcparade_8031B4CC()) {
|
||||||
sp34 = 0;
|
sp34 = 0;
|
||||||
@@ -1219,17 +1220,17 @@ void func_8032FFEC(ActorMarker *this, s32 arg1){
|
|||||||
this->unk28 = arg1;
|
this->unk28 = arg1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_8032FFF4(ActorMarker *this, ActorMarker *other, s32 type){
|
void marker_callCollisionFunc(ActorMarker *this, ActorMarker *other, enum marker_collision_func_type_e type){
|
||||||
switch(type){
|
switch(type){
|
||||||
case 0: //ow
|
case MARKER_COLLISION_FUNC_0: //ow
|
||||||
if(this->collisionFunc)
|
if(this->collisionFunc)
|
||||||
this->collisionFunc(this, other);
|
this->collisionFunc(this, other);
|
||||||
break;
|
break;
|
||||||
case 1:
|
case MARKER_COLLISION_FUNC_1:
|
||||||
if(this->collision2Func)
|
if(this->collision2Func)
|
||||||
this->collision2Func(this, other);
|
this->collision2Func(this, other);
|
||||||
break;
|
break;
|
||||||
case 2: //die
|
case MARKER_COLLISION_FUNC_2_DIE: //die
|
||||||
if(this->dieFunc)
|
if(this->dieFunc)
|
||||||
this->dieFunc(this, other);
|
this->dieFunc(this, other);
|
||||||
break;
|
break;
|
||||||
|
@@ -112,7 +112,7 @@ void savedata_init(void){ //savedata_init
|
|||||||
jiggyscore_getSizeAndPtr(&jiggy_size, &jiggy_addr);
|
jiggyscore_getSizeAndPtr(&jiggy_size, &jiggy_addr);
|
||||||
honeycombscore_getSizeAndPtr(&honeycomb_size, &honeycomb_addr);
|
honeycombscore_getSizeAndPtr(&honeycomb_size, &honeycomb_addr);
|
||||||
mumboscore_getSizeAndPtr(&mumbotoken_size, &mumbotoken_addr);
|
mumboscore_getSizeAndPtr(&mumbotoken_size, &mumbotoken_addr);
|
||||||
progressflags_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
fileProgressFlag_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
||||||
notescore_getSizeAndPtr(¬escores_size, ¬escores_addr);
|
notescore_getSizeAndPtr(¬escores_size, ¬escores_addr);
|
||||||
timeScores_getSizeAndPtr(×cores_size, ×cores_addr);
|
timeScores_getSizeAndPtr(×cores_size, ×cores_addr);
|
||||||
saveditem_getSizeAndPtr(&saved_item_size, &saved_item_addr);
|
saveditem_getSizeAndPtr(&saved_item_size, &saved_item_addr);
|
||||||
@@ -194,7 +194,7 @@ void func_8033C460(u8 *savedata){ //global_progress
|
|||||||
u8 *progressflags_addr;
|
u8 *progressflags_addr;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
progressflags_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
fileProgressFlag_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
||||||
for(i = progressflagsOffset; i < progressflagsOffset + progressflags_size; i++){
|
for(i = progressflagsOffset; i < progressflagsOffset + progressflags_size; i++){
|
||||||
progressflags_addr[i - progressflagsOffset] = savedata[i];
|
progressflags_addr[i - progressflagsOffset] = savedata[i];
|
||||||
}
|
}
|
||||||
@@ -287,7 +287,7 @@ void __savedata_8033C8A0(u8 *savedata){ //global_progress
|
|||||||
u8 *progressflags_addr;
|
u8 *progressflags_addr;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
progressflags_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
fileProgressFlag_getSizeAndPtr(&progressflags_size, &progressflags_addr);
|
||||||
for(i = progressflagsOffset; i < progressflagsOffset + progressflags_size; i++){
|
for(i = progressflagsOffset; i < progressflagsOffset + progressflags_size; i++){
|
||||||
savedata[i] = progressflags_addr[i - progressflagsOffset];
|
savedata[i] = progressflags_addr[i - progressflagsOffset];
|
||||||
}
|
}
|
||||||
@@ -360,14 +360,14 @@ void saveData_load(SaveData *savedata){
|
|||||||
func_8033C4E4(savedata);
|
func_8033C4E4(savedata);
|
||||||
__savedata_load_abilities(savedata);
|
__savedata_load_abilities(savedata);
|
||||||
for(i = 0; D_80370A20[i].unk0 != -1; i++){
|
for(i = 0; D_80370A20[i].unk0 != -1; i++){
|
||||||
func_803204E4(D_80370A20[i].unk0, fileProgressFlag_get(D_80370A20[i].unk2));
|
volatileFlag_set(D_80370A20[i].unk0, fileProgressFlag_get(D_80370A20[i].unk2));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void saveData_create(SaveData *savedata){
|
void saveData_create(SaveData *savedata){
|
||||||
int i;
|
int i;
|
||||||
for(i = 0; D_80370A20[i].unk0 != -1; i++){
|
for(i = 0; D_80370A20[i].unk0 != -1; i++){
|
||||||
fileProgressFlag_set(D_80370A20[i].unk2, func_803203FC(D_80370A20[i].unk0));
|
fileProgressFlag_set(D_80370A20[i].unk2, volatileFlag_get(D_80370A20[i].unk0));
|
||||||
}
|
}
|
||||||
savedata_clear(savedata);
|
savedata_clear(savedata);
|
||||||
__savedata_save_magic(savedata);
|
__savedata_save_magic(savedata);
|
||||||
|
@@ -291,7 +291,7 @@ s32 func_8033D564(struct5Cs *arg0){
|
|||||||
return arg0->unk0_15;
|
return arg0->unk0_15;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 func_8033D574(struct5Cs *arg0){
|
enum marker_collision_func_type_e func_8033D574(struct5Cs *arg0){
|
||||||
return arg0->unk0_11;
|
return arg0->unk0_11;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -66,11 +66,11 @@ s32 item_adjustByDiff(enum item_e item, s32 diff, s32 no_hud){
|
|||||||
diff = 0;
|
diff = 0;
|
||||||
|
|
||||||
if(diff < 0){
|
if(diff < 0){
|
||||||
if( (item == ITEM_D_EGGS && func_803203FC(UNKFLAGS1_74_SANDCASTLE_INFINITE_EGGS))
|
if( (item == ITEM_D_EGGS && volatileFlag_get(VOLATILE_FLAG_74_SANDCASTLE_INFINITE_EGGS))
|
||||||
|| (item == ITEM_16_LIFE && func_803203FC(UNKFLAGS1_73_SANDCASTLE_INFINITE_LIVES))
|
|| (item == ITEM_16_LIFE && volatileFlag_get(VOLATILE_FLAG_73_SANDCASTLE_INFINITE_LIVES))
|
||||||
|| (item == ITEM_F_RED_FEATHER && func_803203FC(UNKFLAGS1_75_SANDCASTLE_INFINITE_RED_FEATHERS))
|
|| (item == ITEM_F_RED_FEATHER && volatileFlag_get(VOLATILE_FLAG_75_SANDCASTLE_INFINITE_RED_FEATHERS))
|
||||||
|| (item == ITEM_10_GOLD_FEATHER && func_803203FC(UNKFLAGS1_76_SANDCASTLE_INFINITE_GOLD_FEATHERS))
|
|| (item == ITEM_10_GOLD_FEATHER && volatileFlag_get(VOLATILE_FLAG_76_SANDCASTLE_INFINITE_GOLD_FEATHERS))
|
||||||
|| (item == ITEM_17_AIR && func_803203FC(UNKFLAGS1_96_SANDCASTLE_INFINITE_AIR))
|
|| (item == ITEM_17_AIR && volatileFlag_get(VOLATILE_FLAG_96_SANDCASTLE_INFINITE_AIR))
|
||||||
){
|
){
|
||||||
diff = 0;
|
diff = 0;
|
||||||
}
|
}
|
||||||
@@ -253,7 +253,7 @@ void func_803465E4(void){
|
|||||||
}//L8034667C
|
}//L8034667C
|
||||||
|
|
||||||
if(D_80385FE0){
|
if(D_80385FE0){
|
||||||
if(gctransition_done() || func_803203FC(0)){
|
if(gctransition_done() || volatileFlag_get(VOLATILE_FLAG_0)){
|
||||||
if(D_80385FE4){
|
if(D_80385FE4){
|
||||||
item_dec(ITEM_16_LIFE);
|
item_dec(ITEM_16_LIFE);
|
||||||
func_802FACA4(ITEM_14_HEALTH);
|
func_802FACA4(ITEM_14_HEALTH);
|
||||||
@@ -308,7 +308,7 @@ void func_803465E4(void){
|
|||||||
}//L803469E4
|
}//L803469E4
|
||||||
}//L803469E4
|
}//L803469E4
|
||||||
|
|
||||||
if(!func_803203FC(0xbf)){
|
if(!volatileFlag_get(0xbf)){
|
||||||
for(i = 0; i < 6; i++){
|
for(i = 0; i < 6; i++){
|
||||||
if(D_80385F30[ITEM_6_HOURGLASS + i]){
|
if(D_80385F30[ITEM_6_HOURGLASS + i]){
|
||||||
func_80345EB0(ITEM_0_HOURGLASS_TIMER + i);
|
func_80345EB0(ITEM_0_HOURGLASS_TIMER + i);
|
||||||
@@ -327,7 +327,7 @@ void func_803465E4(void){
|
|||||||
}//L80346B6C
|
}//L80346B6C
|
||||||
|
|
||||||
if((globalTimer_getTime() & 7) == 6){
|
if((globalTimer_getTime() & 7) == 6){
|
||||||
if(!func_80320708() || !func_80320248()){
|
if(!func_80320708() || !dummy_func_80320248()){
|
||||||
D_80385F30[randi2(0, 0x2C)] = 1;
|
D_80385F30[randi2(0, 0x2C)] = 1;
|
||||||
D_80385FF0[randi2(0, 0xE)] = 1;
|
D_80385FF0[randi2(0, 0xE)] = 1;
|
||||||
D_80386000[randi2(0, 0xE)] = 1.0f;
|
D_80386000[randi2(0, 0xE)] = 1.0f;
|
||||||
@@ -406,9 +406,9 @@ void func_80346DB4(s32 note_count) {
|
|||||||
if (!levelSpecificFlags_get(0x34) && (func_80311480(0xF76, 0, NULL, NULL, NULL, NULL))) {
|
if (!levelSpecificFlags_get(0x34) && (func_80311480(0xF76, 0, NULL, NULL, NULL, NULL))) {
|
||||||
levelSpecificFlags_set(0x34, TRUE);
|
levelSpecificFlags_set(0x34, TRUE);
|
||||||
}
|
}
|
||||||
if (func_803203FC(0x17) == 0) {
|
if (volatileFlag_get(0x17) == 0) {
|
||||||
func_803204E4(0x17, 1);
|
volatileFlag_set(0x17, 1);
|
||||||
func_80320524(0x19, level_id, 4);
|
volatileFlag_setN(0x19, level_id, 4);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -537,7 +537,7 @@ void func_8034789C(void) {
|
|||||||
} else {
|
} else {
|
||||||
D_80385F30[ITEM_15_HEALTH_TOTAL] = 5 + MIN(3, (sp1C / 6));
|
D_80385F30[ITEM_15_HEALTH_TOTAL] = 5 + MIN(3, (sp1C / 6));
|
||||||
}
|
}
|
||||||
if (func_803203FC(0x94)) {
|
if (volatileFlag_get(0x94)) {
|
||||||
temp_v0 = D_80385F30[ITEM_15_HEALTH_TOTAL];
|
temp_v0 = D_80385F30[ITEM_15_HEALTH_TOTAL];
|
||||||
if (temp_v0 >= 9) {
|
if (temp_v0 >= 9) {
|
||||||
D_80385F30[ITEM_15_HEALTH_TOTAL] = temp_v0;
|
D_80385F30[ITEM_15_HEALTH_TOTAL] = temp_v0;
|
||||||
@@ -591,16 +591,16 @@ void func_80347A70(void){
|
|||||||
s32 D_80386068;
|
s32 D_80386068;
|
||||||
|
|
||||||
void func_80347A7C(void){
|
void func_80347A7C(void){
|
||||||
func_80320748();
|
volatileFlag_backupAll();
|
||||||
D_80386068 = item_getCount(ITEM_16_LIFE);
|
D_80386068 = item_getCount(ITEM_16_LIFE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80347AA8(void) {
|
void func_80347AA8(void) {
|
||||||
func_80320798();
|
volatileFlag_restoreAll();
|
||||||
func_803204E4(0x1F, FALSE);
|
volatileFlag_set(0x1F, FALSE);
|
||||||
func_803204E4(0x20, FALSE);
|
volatileFlag_set(0x20, FALSE);
|
||||||
func_803204E4(0xC1, FALSE);
|
volatileFlag_set(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE, FALSE);
|
||||||
func_803204E4(0xC0, FALSE);
|
volatileFlag_set(VOLATILE_FLAG_C0_BEGIN_FINAL_CHARACTER_PARADE, FALSE);
|
||||||
item_set(ITEM_16_LIFE, D_80386068);
|
item_set(ITEM_16_LIFE, D_80386068);
|
||||||
itemPrint_reset();
|
itemPrint_reset();
|
||||||
}
|
}
|
||||||
|
@@ -77,7 +77,7 @@ void func_80349FB0(DemoInput *input_ptr, u32 size, int arg2){
|
|||||||
func_8031FBA0();
|
func_8031FBA0();
|
||||||
func_803216D0(map_get());
|
func_803216D0(map_get());
|
||||||
func_8030AFA0(map_get());
|
func_8030AFA0(map_get());
|
||||||
func_803204E4(0xc4, 1);
|
volatileFlag_set(VOLATILE_FLAG_C4_WOZZA_HIDE_IN_SNS_PARADE, 1);
|
||||||
func_8024F224();
|
func_8024F224();
|
||||||
rand_reset();
|
rand_reset();
|
||||||
globalTimer_reset();
|
globalTimer_reset();
|
||||||
|
@@ -207,7 +207,7 @@ void func_8034B8C0(enum map_e map_id, s32 demo_id) {
|
|||||||
demo_load(map_id,demo_id);
|
demo_load(map_id,demo_id);
|
||||||
D_80386118 = D_8038611C = 0;
|
D_80386118 = D_8038611C = 0;
|
||||||
if (D_80386114->unk1 == 6) {
|
if (D_80386114->unk1 == 6) {
|
||||||
func_803204E4(0x1F, 1);
|
volatileFlag_set(0x1F, 1);
|
||||||
func_802E4A70();
|
func_802E4A70();
|
||||||
}
|
}
|
||||||
if ((demo_id == 0x5B) || (demo_id == 0x5F)) {
|
if ((demo_id == 0x5B) || (demo_id == 0x5F)) {
|
||||||
@@ -297,16 +297,16 @@ void func_8034BB90(void) {
|
|||||||
D_80386118 = 1;
|
D_80386118 = 1;
|
||||||
}
|
}
|
||||||
func_8034B580(D_80386114->unk1);
|
func_8034B580(D_80386114->unk1);
|
||||||
if (func_803203FC(0xC3)) {
|
if (volatileFlag_get(VOLATILE_FLAG_C3)) {
|
||||||
func_803204E4(0xC3, 0);
|
volatileFlag_set(VOLATILE_FLAG_C3, 0);
|
||||||
func_8034B9E4();
|
func_8034B9E4();
|
||||||
}
|
}
|
||||||
if( !sp1C
|
if( !sp1C
|
||||||
&& sp18
|
&& sp18
|
||||||
&& !D_8038611C
|
&& !D_8038611C
|
||||||
&& (getGameMode() != GAME_MODE_8_BOTTLES_BONUS)
|
&& (getGameMode() != GAME_MODE_8_BOTTLES_BONUS)
|
||||||
&& ((func_803203FC(0x64) && (getGameMode() != GAME_MODE_A_SNS_PICTURE))
|
&& ((volatileFlag_get(0x64) && (getGameMode() != GAME_MODE_A_SNS_PICTURE))
|
||||||
|| func_803203FC(0x63))
|
|| volatileFlag_get(0x63))
|
||||||
) {
|
) {
|
||||||
func_8034B7F0(D_80386114->unk1);
|
func_8034B7F0(D_80386114->unk1);
|
||||||
if (getGameMode() == GAME_MODE_9_BANJO_AND_KAZOOIE) {
|
if (getGameMode() == GAME_MODE_9_BANJO_AND_KAZOOIE) {
|
||||||
@@ -317,7 +317,7 @@ void func_8034BB90(void) {
|
|||||||
} else {
|
} else {
|
||||||
func_802DF0C8();
|
func_802DF0C8();
|
||||||
}
|
}
|
||||||
} else if (func_803203FC(0x64)) {
|
} else if (volatileFlag_get(0x64)) {
|
||||||
func_802E412C(1, D_80386114->unk5);
|
func_802E412C(1, D_80386114->unk5);
|
||||||
func_8034B994();
|
func_8034B994();
|
||||||
} else {
|
} else {
|
||||||
@@ -329,8 +329,8 @@ void func_8034BB90(void) {
|
|||||||
func_8025A58C(0, 800);
|
func_8025A58C(0, 800);
|
||||||
func_8025AB00();
|
func_8025AB00();
|
||||||
}
|
}
|
||||||
func_803204E4(0x64, 0);
|
volatileFlag_set(0x64, 0);
|
||||||
func_803204E4(0x63, 0);
|
volatileFlag_set(0x63, 0);
|
||||||
D_8038611C = 1;
|
D_8038611C = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -338,7 +338,7 @@ void func_8034BB90(void) {
|
|||||||
s32 func_8034BDA4(enum map_e map_id, s32 exit_id) {
|
s32 func_8034BDA4(enum map_e map_id, s32 exit_id) {
|
||||||
s32 phi_v0;
|
s32 phi_v0;
|
||||||
|
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) {
|
||||||
return D_80371F70.unk3;
|
return D_80371F70.unk3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -104,15 +104,15 @@ void func_8035646C(enum file_progress_e progress_flag) {
|
|||||||
s32 func_8035648C(s32 arg0, s32 arg1) {
|
s32 func_8035648C(s32 arg0, s32 arg1) {
|
||||||
s32 index;
|
s32 index;
|
||||||
|
|
||||||
if (func_803203FC() != 0) {
|
if (volatileFlag_get(arg0) != 0) {
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
||||||
index = __findIndex(volatileProgressDialogMap, arg0);
|
index = __findIndex(volatileProgressDialogMap, arg0);
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
if (func_80311480(volatileProgressDialogMap[index].value, arg1, 0, 0, 0, 0) != 0) {
|
if (func_80311480(volatileProgressDialogMap[index].value, arg1, 0, 0, 0, 0) != 0) {
|
||||||
func_803204E4(arg0, 1);
|
volatileFlag_set(arg0, 1);
|
||||||
}
|
}
|
||||||
return func_803203FC(arg0);
|
return volatileFlag_get(arg0);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@@ -357,7 +357,7 @@ void func_80358684(Actor *this) {
|
|||||||
}
|
}
|
||||||
if (local->unk4 >= 1.0f) {
|
if (local->unk4 >= 1.0f) {
|
||||||
local->unk4 = 1.0f;
|
local->unk4 = 1.0f;
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)) {
|
||||||
local->unk39 = 0;
|
local->unk39 = 0;
|
||||||
} else {
|
} else {
|
||||||
if (this->state == 2) {
|
if (this->state == 2) {
|
||||||
|
@@ -130,7 +130,7 @@ void func_8035DA1C(Actor *this) {
|
|||||||
this->unk138_25 = TRUE;
|
this->unk138_25 = TRUE;
|
||||||
this->unk28 = 4.0f;
|
this->unk28 = 4.0f;
|
||||||
LOCAL_D6600(this)->unk4 =(map_get() == MAP_71_GL_STATUE_ROOM) ? 8 : 0xf;
|
LOCAL_D6600(this)->unk4 =(map_get() == MAP_71_GL_STATUE_ROOM) ? 8 : 0xf;
|
||||||
if (func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)) {
|
||||||
this->unk28 = 0.0f;
|
this->unk28 = 0.0f;
|
||||||
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
subaddie_set_state_with_direction(this, 1, 0.0f, 1);
|
||||||
}
|
}
|
||||||
@@ -151,7 +151,7 @@ void func_8035DA1C(Actor *this) {
|
|||||||
func_80328FB0(this, 0.5f);
|
func_80328FB0(this, 0.5f);
|
||||||
func_80328FF0(this, 0.5f);
|
func_80328FF0(this, 0.5f);
|
||||||
func_8032CA80(this, LOCAL_D6600(this)->unk4);
|
func_8032CA80(this, LOCAL_D6600(this)->unk4);
|
||||||
if (subaddie_maybe_set_state(this, 2, 0.05f) && !func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)) {
|
if (subaddie_maybe_set_state(this, 2, 0.05f) && !volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)) {
|
||||||
this->unk28 = 4.0f;
|
this->unk28 = 4.0f;
|
||||||
}
|
}
|
||||||
func_8035D65C(this);
|
func_8035D65C(this);
|
||||||
|
@@ -43,7 +43,7 @@ void func_8035F970(Actor *this){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_8035F99C(Actor *this){
|
void func_8035F99C(Actor *this){
|
||||||
if(!func_803203FC(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE)){
|
if(!volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)){
|
||||||
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
subaddie_set_state_with_direction(this, 2, 0.01f, 1);
|
||||||
actor_playAnimationOnce(this);
|
actor_playAnimationOnce(this);
|
||||||
this->unk28 = 5.0f;
|
this->unk28 = 5.0f;
|
||||||
|
@@ -33,8 +33,8 @@ int func_803616F0(Actor *this){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void func_80361828(Actor *this){
|
void func_80361828(Actor *this){
|
||||||
if(func_803203FC(0x16) && level_get() == LEVEL_6_LAIR){
|
if(volatileFlag_get(0x16) && level_get() == LEVEL_6_LAIR){
|
||||||
func_803204E4(0x16, 0);
|
volatileFlag_set(0x16, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,19 +54,19 @@ void func_80361870(Actor *this){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(func_803616F0(this)){
|
else if(func_803616F0(this)){
|
||||||
sp28 = (func_803203FC(0x16)?0xf6e:0xf68) + this->unkF4_8 - 1;
|
sp28 = (volatileFlag_get(0x16)?0xf6e:0xf68) + this->unkF4_8 - 1;
|
||||||
if(!func_803203FC(0x16) && level_get() == LEVEL_6_LAIR){
|
if(!volatileFlag_get(0x16) && level_get() == LEVEL_6_LAIR){
|
||||||
this->unk138_24 = TRUE;
|
this->unk138_24 = TRUE;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(func_80311480(sp28, 0, 0, 0, 0, 0)){
|
if(func_80311480(sp28, 0, 0, 0, 0, 0)){
|
||||||
this->unk138_24 = TRUE;
|
this->unk138_24 = TRUE;
|
||||||
func_803204E4(0x16, 0);
|
volatileFlag_set(0x16, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{//L80361A14
|
else{//L80361A14
|
||||||
func_803204E4(0x16, 0);
|
volatileFlag_set(0x16, 0);
|
||||||
}
|
}
|
||||||
}//L80361A20
|
}//L80361A20
|
||||||
}
|
}
|
||||||
|
@@ -228,7 +228,7 @@ void func_8030F338(void){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(g_Dialog.unk128_31 & 0x8){
|
if(g_Dialog.unk128_31 & 0x8){
|
||||||
if((!func_802E4A08() && !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) || !g_Dialog.unk128_3){
|
if((!func_802E4A08() && !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) || !g_Dialog.unk128_3){
|
||||||
func_8028F918(0);
|
func_8028F918(0);
|
||||||
}
|
}
|
||||||
}//L8030F3E8
|
}//L8030F3E8
|
||||||
@@ -710,13 +710,13 @@ void func_803106BC(s32 text_id, s32 arg1, ActorMarker *marker, void(*callback)(A
|
|||||||
g_Dialog.active_zoombox = 1;
|
g_Dialog.active_zoombox = 1;
|
||||||
}//L8031095C
|
}//L8031095C
|
||||||
g_Dialog.unk128_6 = 1;
|
g_Dialog.unk128_6 = 1;
|
||||||
g_Dialog.unk12C_23 = ((func_802E4A08() || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3) ? 1 : -1;
|
g_Dialog.unk12C_23 = ((func_802E4A08() || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3) ? 1 : -1;
|
||||||
g_Dialog.caller = marker;
|
g_Dialog.caller = marker;
|
||||||
g_Dialog.unk13C = callback;
|
g_Dialog.unk13C = callback;
|
||||||
g_Dialog.unk140 = arg4;
|
g_Dialog.unk140 = arg4;
|
||||||
g_Dialog.unk144 = (void *)arg5;
|
g_Dialog.unk144 = (void *)arg5;
|
||||||
g_Dialog.unk138 = (marker != NULL )? ((marker->unk5C)? marker->unk5C : -1) : 0;
|
g_Dialog.unk138 = (marker != NULL )? ((marker->unk5C)? marker->unk5C : -1) : 0;
|
||||||
gcdialog_setState(((func_802E4A08() || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3) ? 6 : 1);
|
gcdialog_setState(((func_802E4A08() || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3) ? 6 : 1);
|
||||||
//L803109EC
|
//L803109EC
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -795,7 +795,7 @@ void func_80310D2C(void){
|
|||||||
|
|
||||||
g_Dialog.unk138 = sp24->unk14;
|
g_Dialog.unk138 = sp24->unk14;
|
||||||
func_8025A55C(8000, 300, 2);
|
func_8025A55C(8000, 300, 2);
|
||||||
if((sp24->unk2 & 0x8) && !((func_802E4A08() || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3)){//L80310E6C
|
if((sp24->unk2 & 0x8) && !((func_802E4A08() || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) && g_Dialog.unk128_3)){//L80310E6C
|
||||||
func_8028F918(0);
|
func_8028F918(0);
|
||||||
if( 0.0f == sp24->unk4_x
|
if( 0.0f == sp24->unk4_x
|
||||||
&& 0.0f == sp24->unk4_y
|
&& 0.0f == sp24->unk4_y
|
||||||
@@ -871,13 +871,13 @@ int func_80311174(s32 text_id, s32 arg1, f32 *pos, ActorMarker *marker, void(*ca
|
|||||||
f32 pad;
|
f32 pad;
|
||||||
s32 temp_v1;
|
s32 temp_v1;
|
||||||
|
|
||||||
if(func_803203FC(1) || func_802D686C())
|
if(volatileFlag_get(VOLATILE_FLAG_1) || func_802D686C())
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if(!func_803114B0()){
|
if(!func_803114B0()){
|
||||||
func_80310B1C(text_id, arg1, marker, (void *)callback, (void *)arg5, arg6);
|
func_80310B1C(text_id, arg1, marker, (void *)callback, (void *)arg5, arg6);
|
||||||
if(arg1 & 8){
|
if(arg1 & 8){
|
||||||
if(!(func_802E4A08() || func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) || !g_Dialog.unk128_3){//L80311214
|
if(!(func_802E4A08() || volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) || !g_Dialog.unk128_3){//L80311214
|
||||||
if(pos != NULL){
|
if(pos != NULL){
|
||||||
func_8028F94C(((g_Dialog.string_cmd[1] < 0)? 1 : 3), pos);
|
func_8028F94C(((g_Dialog.string_cmd[1] < 0)? 1 : 3), pos);
|
||||||
}else{//L8031126C
|
}else{//L8031126C
|
||||||
@@ -922,7 +922,7 @@ int func_80311174(s32 text_id, s32 arg1, f32 *pos, ActorMarker *marker, void(*ca
|
|||||||
g_Dialog.unk148[temp_v1].unk20 = arg6;
|
g_Dialog.unk148[temp_v1].unk20 = arg6;
|
||||||
g_Dialog.unk12C_15++;
|
g_Dialog.unk12C_15++;
|
||||||
if(arg1 & 0x08){
|
if(arg1 & 0x08){
|
||||||
if(!( func_802E4A08() || func_803203FC(0x1f, &g_Dialog)) || !g_Dialog.unk128_3){//L8031141C
|
if(!( func_802E4A08() || volatileFlag_get(0x1f)) || !g_Dialog.unk128_3){//L8031141C
|
||||||
if(!func_8028EC04()){
|
if(!func_8028EC04()){
|
||||||
if(pos != NULL){
|
if(pos != NULL){
|
||||||
func_8028F94C(2, pos);
|
func_8028F94C(2, pos);
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
extern void func_8028F918(s32);
|
extern void func_8028F918(s32);
|
||||||
extern void func_80311714(int);
|
extern void func_80311714(int);
|
||||||
extern void func_803204E4(s32, s32);
|
extern void volatileFlag_set(s32, s32);
|
||||||
|
|
||||||
typedef struct struct_1C_s{
|
typedef struct struct_1C_s{
|
||||||
u8 map;
|
u8 map;
|
||||||
@@ -166,9 +166,9 @@ void gcparade_8031ABF8(void) {
|
|||||||
func_80347A7C();
|
func_80347A7C();
|
||||||
func_8031FBF8();
|
func_8031FBF8();
|
||||||
func_8031FBA0();
|
func_8031FBA0();
|
||||||
func_803204E4(0x1F, 1);
|
volatileFlag_set(0x1F, 1);
|
||||||
if (D_803830F0.parade_id == PARADE_1_POST_GRUNTY_BATTLE) {
|
if (D_803830F0.parade_id == PARADE_1_POST_GRUNTY_BATTLE) {
|
||||||
func_803204E4(UNKFLAGS1_C1_IN_FINAL_CHARACTER_PARADE, TRUE);
|
volatileFlag_set(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE, TRUE);
|
||||||
}
|
}
|
||||||
func_803228D8();
|
func_803228D8();
|
||||||
func_802E4A70();
|
func_802E4A70();
|
||||||
@@ -203,7 +203,7 @@ void gcparade_setState(enum parade_state_e next_state) {
|
|||||||
gcparade_8031AC8C();
|
gcparade_8031AC8C();
|
||||||
break;
|
break;
|
||||||
case PARADE_STATE_2_INIT_FINAL_PARADE: //parade 1 init
|
case PARADE_STATE_2_INIT_FINAL_PARADE: //parade 1 init
|
||||||
func_803204E4(0xC1, TRUE);
|
volatileFlag_set(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE, TRUE);
|
||||||
D_803830F0.parade_element = D_8036DAE4;
|
D_803830F0.parade_element = D_8036DAE4;
|
||||||
D_803830F0.indx = 0;
|
D_803830F0.indx = 0;
|
||||||
D_803830F0.parade_id = PARADE_1_POST_GRUNTY_BATTLE;
|
D_803830F0.parade_id = PARADE_1_POST_GRUNTY_BATTLE;
|
||||||
@@ -243,8 +243,8 @@ void gcparade_setState(enum parade_state_e next_state) {
|
|||||||
timedFunc_set_1(0.25f, (GenFunction_1)gcparade_setState, (D_803830F0.indx == D_803830F0.count) ? PARADE_STATE_8_END : PARADE_STATE_3_WARP);
|
timedFunc_set_1(0.25f, (GenFunction_1)gcparade_setState, (D_803830F0.indx == D_803830F0.count) ? PARADE_STATE_8_END : PARADE_STATE_3_WARP);
|
||||||
break;
|
break;
|
||||||
case PARADE_STATE_8_END:
|
case PARADE_STATE_8_END:
|
||||||
func_803204E4(0x1F, 0);
|
volatileFlag_set(0x1F, 0);
|
||||||
func_803204E4(0xC1, FALSE);
|
volatileFlag_set(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE, FALSE);
|
||||||
func_802E412C(1, 8);
|
func_802E412C(1, 8);
|
||||||
func_802E40C4(0xA);
|
func_802E40C4(0xA);
|
||||||
if (D_803830F0.parade_id == 0) {
|
if (D_803830F0.parade_id == 0) {
|
||||||
@@ -286,7 +286,7 @@ void gcparade_update(void) {
|
|||||||
gcparade_beginFinalParade();
|
gcparade_beginFinalParade();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE) != 0) {
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE) != 0) {
|
||||||
snackerctl_update();
|
snackerctl_update();
|
||||||
switch (D_803830F0.state) {
|
switch (D_803830F0.state) {
|
||||||
case PARADE_STATE_3_WARP:
|
case PARADE_STATE_3_WARP:
|
||||||
@@ -333,9 +333,9 @@ void gcparade_update(void) {
|
|||||||
void gcparade_free(void){}
|
void gcparade_free(void){}
|
||||||
|
|
||||||
void gcparade_start(void){
|
void gcparade_start(void){
|
||||||
func_803204E4(UNKFLAGS1_20_BEGIN_CHARACTER_PARADE, FALSE);
|
volatileFlag_set(VOLATILE_FLAG_20_BEGIN_CHARACTER_PARADE, FALSE);
|
||||||
func_803204E4(0x1F, TRUE);
|
volatileFlag_set(0x1F, TRUE);
|
||||||
if(func_80320454(UNKFLAGS1_C0_BEGIN_FINAL_CHARACTER_PARADE, FALSE))
|
if(volatileFlag_getAndSet(VOLATILE_FLAG_C0_BEGIN_FINAL_CHARACTER_PARADE, FALSE))
|
||||||
gcparade_setState(PARADE_STATE_2_INIT_FINAL_PARADE);
|
gcparade_setState(PARADE_STATE_2_INIT_FINAL_PARADE);
|
||||||
else
|
else
|
||||||
gcparade_setState(PARADE_STATE_1_INIT_FF_PARADE);
|
gcparade_setState(PARADE_STATE_1_INIT_FF_PARADE);
|
||||||
@@ -348,11 +348,11 @@ void gcparade_init(void) {
|
|||||||
s32 temp_v0;
|
s32 temp_v0;
|
||||||
s32 var_s2;
|
s32 var_s2;
|
||||||
|
|
||||||
if (func_803203FC(UNKFLAGS1_20_BEGIN_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_20_BEGIN_CHARACTER_PARADE)) {
|
||||||
gcparade_start();
|
gcparade_start();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) {
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) {
|
||||||
func_80347A14(0);
|
func_80347A14(0);
|
||||||
if ((D_803830F0.state == 3)){
|
if ((D_803830F0.state == 3)){
|
||||||
var_s2 = FALSE;
|
var_s2 = FALSE;
|
||||||
@@ -390,18 +390,18 @@ int gcparade_8031B4F4(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void gcparade_beginFFParade(void){
|
void gcparade_beginFFParade(void){
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) return;
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) return;
|
||||||
|
|
||||||
func_803204E4(UNKFLAGS1_20_BEGIN_CHARACTER_PARADE, TRUE);
|
volatileFlag_set(VOLATILE_FLAG_20_BEGIN_CHARACTER_PARADE, TRUE);
|
||||||
gcparade_init();
|
gcparade_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
void gcparade_beginFinalParade(void){
|
void gcparade_beginFinalParade(void){
|
||||||
|
|
||||||
if (func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE)) return;
|
if (volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE)) return;
|
||||||
|
|
||||||
func_803204E4(UNKFLAGS1_20_BEGIN_CHARACTER_PARADE, TRUE);
|
volatileFlag_set(VOLATILE_FLAG_20_BEGIN_CHARACTER_PARADE, TRUE);
|
||||||
func_803204E4(UNKFLAGS1_C0_BEGIN_FINAL_CHARACTER_PARADE, TRUE);
|
volatileFlag_set(VOLATILE_FLAG_C0_BEGIN_FINAL_CHARACTER_PARADE, TRUE);
|
||||||
D_803830F0.jiggyscore = jiggyscore_total();
|
D_803830F0.jiggyscore = jiggyscore_total();
|
||||||
gcparade_init();
|
gcparade_init();
|
||||||
}
|
}
|
||||||
|
@@ -24,7 +24,7 @@ typedef struct struct_1A_s{
|
|||||||
|
|
||||||
extern void func_802C5994(void);
|
extern void func_802C5994(void);
|
||||||
extern void func_802E412C(s32, s32);
|
extern void func_802E412C(s32, s32);
|
||||||
void func_803204E4(s32, s32);
|
void volatileFlag_set(s32, s32);
|
||||||
f32 func_8024DE1C(f32, f32, f32 *, f32 *);
|
f32 func_8024DE1C(f32, f32, f32 *, f32 *);
|
||||||
void mlMtxApply(Mtx*);
|
void mlMtxApply(Mtx*);
|
||||||
void func_80310D2C(void);
|
void func_80310D2C(void);
|
||||||
@@ -988,9 +988,9 @@ s32 gcPauseMenu_update(void){
|
|||||||
D_80383010.unk3_7 = 1;
|
D_80383010.unk3_7 = 1;
|
||||||
break;
|
break;
|
||||||
case 1://L80313908 //return to lair
|
case 1://L80313908 //return to lair
|
||||||
func_803204E4(0x16, 1);
|
volatileFlag_set(0x16, 1);
|
||||||
if(map_get() == MAP_8E_GL_FURNACE_FUN){
|
if(map_get() == MAP_8E_GL_FURNACE_FUN){
|
||||||
func_803204E4(0,0);
|
volatileFlag_set(0,0);
|
||||||
func_802E4078(MAP_80_GL_FF_ENTRANCE, 2, 1);
|
func_802E4078(MAP_80_GL_FF_ENTRANCE, 2, 1);
|
||||||
}else{
|
}else{
|
||||||
func_802E4078(D_8036C560[level-1].map, D_8036C560[level-1].exit, 1);
|
func_802E4078(D_8036C560[level-1].map, D_8036C560[level-1].exit, 1);
|
||||||
@@ -1003,7 +1003,7 @@ s32 gcPauseMenu_update(void){
|
|||||||
break;
|
break;
|
||||||
case 3://L8031399C
|
case 3://L8031399C
|
||||||
func_802C5994();
|
func_802C5994();
|
||||||
func_803204E4(0,0);
|
volatileFlag_set(0,0);
|
||||||
if(!fileProgressFlag_get(FILEPROG_BD_ENTER_LAIR_CUTSCENE) || fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)){
|
if(!fileProgressFlag_get(FILEPROG_BD_ENTER_LAIR_CUTSCENE) || fileProgressFlag_get(FILEPROG_A6_FURNACE_FUN_COMPLETE)){
|
||||||
gcPauseMenu_setState(0x14);
|
gcPauseMenu_setState(0x14);
|
||||||
}else{
|
}else{
|
||||||
@@ -1431,7 +1431,7 @@ void gcpausemenu_80314B24(void){
|
|||||||
void gcpausemenu_returnToLair(void){
|
void gcpausemenu_returnToLair(void){
|
||||||
s32 level = level_get();
|
s32 level = level_get();
|
||||||
if(0 < level && level < 0xC && D_8036C560[level-1].map != -1){
|
if(0 < level && level < 0xC && D_8036C560[level-1].map != -1){
|
||||||
func_803204E4(0x16, TRUE);
|
volatileFlag_set(0x16, TRUE);
|
||||||
func_802E4078(D_8036C560[level-1].map, D_8036C560[level-1].exit, 1);
|
func_802E4078(D_8036C560[level-1].map, D_8036C560[level-1].exit, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -990,7 +990,7 @@ void gczoombox_draw(GcZoombox *this, Gfx **gdl, Mtx ** mptr, void *vptr){
|
|||||||
|| ( getGameMode() != GAME_MODE_3_NORMAL
|
|| ( getGameMode() != GAME_MODE_3_NORMAL
|
||||||
&& getGameMode() != GAME_MODE_8_BOTTLES_BONUS
|
&& getGameMode() != GAME_MODE_8_BOTTLES_BONUS
|
||||||
&& getGameMode() != GAME_MODE_A_SNS_PICTURE
|
&& getGameMode() != GAME_MODE_A_SNS_PICTURE
|
||||||
&& !func_803203FC(UNKFLAGS1_1F_IN_CHARACTER_PARADE))
|
&& !volatileFlag_get(VOLATILE_FLAG_1F_IN_CHARACTER_PARADE))
|
||||||
){//L80316C64
|
){//L80316C64
|
||||||
func_80316764(this, 0);
|
func_80316764(this, 0);
|
||||||
}
|
}
|
||||||
|
@@ -84,13 +84,13 @@ void levelSpecificFlags_clear(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void levelSpecificFlags_set(s32 index, s32 val){
|
void levelSpecificFlags_set(s32 index, s32 val){
|
||||||
setBitToArray(&D_80383320.unk8, index, val);
|
bitfield_set_bit(&D_80383320.unk8, index, val);
|
||||||
_levelSpecificFlags_updateCRC1();
|
_levelSpecificFlags_updateCRC1();
|
||||||
_levelSpecificFlags_updateCRC2();
|
_levelSpecificFlags_updateCRC2();
|
||||||
}
|
}
|
||||||
|
|
||||||
void levelSpecificFlags_setN(s32 index, s32 val, s32 n){
|
void levelSpecificFlags_setN(s32 index, s32 val, s32 n){
|
||||||
func_803201C8(&D_80383320.unk8, index, val, n);
|
bitfield_set_n_bits(&D_80383320.unk8, index, val, n);
|
||||||
_levelSpecificFlags_updateCRC1();
|
_levelSpecificFlags_updateCRC1();
|
||||||
_levelSpecificFlags_updateCRC2();
|
_levelSpecificFlags_updateCRC2();
|
||||||
}
|
}
|
||||||
|
@@ -237,7 +237,7 @@ f32 func_80308FDC(f32 arg0[3], u32 arg1) {
|
|||||||
void mapModel_opa_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
void mapModel_opa_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
||||||
s32 temp_a0;
|
s32 temp_a0;
|
||||||
|
|
||||||
if (func_80320708() && levelSpecificFlags_validateCRC2() && func_80320248()) {
|
if (func_80320708() && levelSpecificFlags_validateCRC2() && dummy_func_80320248()) {
|
||||||
if (mapModel_getOpaModelId() == ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA) {
|
if (mapModel_getOpaModelId() == ASSET_14CF_MODEL_SM_SPIRAL_MOUNTAIN_OPA) {
|
||||||
func_8033A45C(1, 0);
|
func_8033A45C(1, 0);
|
||||||
func_8033A45C(2, 1);
|
func_8033A45C(2, 1);
|
||||||
@@ -332,7 +332,7 @@ void mapModel_opa_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
|||||||
case MAP_93_GL_DINGPOT:
|
case MAP_93_GL_DINGPOT:
|
||||||
func_8033A45C(4, 1);
|
func_8033A45C(4, 1);
|
||||||
func_8033A45C(5, 1);
|
func_8033A45C(5, 1);
|
||||||
func_8033A45C(6, (func_8038EAE0(0xA) || fileProgressFlag_get(FILEPROG_E2_DOOR_OF_GRUNTY_OPEN) || func_803203FC(0xC1)));
|
func_8033A45C(6, (func_8038EAE0(0xA) || fileProgressFlag_get(FILEPROG_E2_DOOR_OF_GRUNTY_OPEN) || volatileFlag_get(VOLATILE_FLAG_C1_IN_FINAL_CHARACTER_PARADE)));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
func_8033A450(mapModel.unk24);
|
func_8033A450(mapModel.unk24);
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user