Merge branch 'level_specific_flags' into 'master'
Document level specific flags See merge request banjo.decomp/banjo-kazooie!88
This commit is contained in:
commit
01b63ee455
|
@ -376,7 +376,62 @@ enum volatile_flags_e {
|
|||
enum level_flags_e
|
||||
{
|
||||
LEVEL_FLAG_0_CC_TOKEN_TOOTH_OPEN = 0,
|
||||
LEVEL_FLAG_1_CC_JIGGY_TOOTH_OPEN = 1
|
||||
LEVEL_FLAG_1_CC_JIGGY_TOOTH_OPEN,
|
||||
LEVEL_FLAG_2_TTC_UNKNOWN,
|
||||
LEVEL_FLAG_3_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_4_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_5_TTC_UNKNOWN,
|
||||
LEVEL_FLAG_6_GV_UNKNOWN,
|
||||
|
||||
LEVEL_FLAG_B_MM_UNKNOWN = 0xB,
|
||||
LEVEL_FLAG_C_MM_UNKNOWN,
|
||||
LEVEL_FLAG_D_MM_UNKNOWN,
|
||||
LEVEL_FLAG_E_CC_UNKNOWN,
|
||||
|
||||
LEVEL_FLAG_10_CCW_UNKNOWN = 0x10,
|
||||
LEVEL_FLAG_11_FP_UNKNOWN,
|
||||
LEVEL_FLAG_12_FP_UNKNOWN,
|
||||
LEVEL_FLAG_13_FP_UNKNOWN,
|
||||
LEVEL_FLAG_14_TTC_UNKNOWN,
|
||||
LEVEL_FLAG_15_GV_UNKNOWN,
|
||||
LEVEL_FLAG_16_GV_UNKNOWN,
|
||||
LEVEL_FLAG_17_GV_UNKNOWN,
|
||||
|
||||
LEVEL_FLAG_19_FP_UNKNOWN = 0x19,
|
||||
LEVEL_FLAG_1A_UNKNOWN,
|
||||
LEVEL_FLAG_1B_MMM_UNKNOWN,
|
||||
LEVEL_FLAG_1C_MM_UNKNOWN,
|
||||
LEVEL_FLAG_1D_TTC_UNKNOWN,
|
||||
LEVEL_FLAG_1E_CC_UNKNOWN,
|
||||
LEVEL_FLAG_1F_BGS_UNKNOWN,
|
||||
LEVEL_FLAG_20_FP_UNKNOWN,
|
||||
LEVEL_FLAG_21_GV_UNKNOWN,
|
||||
LEVEL_FLAG_22_MMM_UNKNOWN,
|
||||
LEVEL_FLAG_23_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_24_CCW_UNKNOWN,
|
||||
LEVEL_FLAG_25_CCW_UNKNOWN,
|
||||
LEVEL_FLAG_26_FP_UNKNOWN,
|
||||
LEVEL_FLAG_27_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_28_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_29_FP_UNKNOWN,
|
||||
LEVEL_FLAG_2A_FP_UNKNOWN,
|
||||
LEVEL_FLAG_2B_FP_UNKNOWN,
|
||||
LEVEL_FLAG_2C_FP_UNKNOWN,
|
||||
LEVEL_FLAG_2D_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_2E_MMM_UNKNOWN,
|
||||
LEVEL_FLAG_2F_MMM_UNKNOWN,
|
||||
LEVEL_FLAG_30_RBB_UNKNOWN,
|
||||
LEVEL_FLAG_31_FP_UNKNOWN,
|
||||
LEVEL_FLAG_32_FP_UNKNOWN,
|
||||
LEVEL_FLAG_33_MMM_UNKNOWN,
|
||||
LEVEL_FLAG_34_UNKNOWN,
|
||||
|
||||
LEVEL_FLAG_38_CCW_UNKNOWN = 0x38,
|
||||
|
||||
LEVEL_FLAG_3C_LAIR_UNKNOWN = 0x3C,
|
||||
LEVEL_FLAG_3D_LAIR_UNKNOWN,
|
||||
LEVEL_FLAG_3E_UNKNOWN,
|
||||
LEVEL_FLAG_3F_LAIR_UNKNOWN
|
||||
};
|
||||
|
||||
enum transformation_e
|
||||
|
|
|
@ -39,7 +39,7 @@ void CC_func_80386FE0(Actor *this, s32 next_state){
|
|||
}
|
||||
else if(this->state == 3){
|
||||
if(prev_state == 2){
|
||||
levelSpecificFlags_set((local->unk0 == 1) ? 0 : 1, TRUE);
|
||||
levelSpecificFlags_set((local->unk0 == 1) ? LEVEL_FLAG_0_CC_TOKEN_TOOTH_OPEN : LEVEL_FLAG_1_CC_JIGGY_TOOTH_OPEN, TRUE);
|
||||
}
|
||||
if(local->unk0 == 1){
|
||||
this->yaw = -30.0f;
|
||||
|
|
|
@ -11,7 +11,7 @@ ActorInfo D_8038EB74 = { 0x1AC, 0x29A, 0x445, 0x0, NULL, func_803864B8, NULL, ac
|
|||
void CCW_func_803863F0(Actor *this, s32 next_state){
|
||||
if(next_state == 2){
|
||||
FUNC_8030E8B4(SFX_2F_ORANGE_SPLAT, 1.0f, 32000, this->position, 500, 3000);
|
||||
levelSpecificFlags_set(0x10, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_10_CCW_UNKNOWN, TRUE);
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
this->state = next_state;
|
||||
|
@ -30,7 +30,8 @@ void func_803864B8(Actor *this){
|
|||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
marker_setCollisionScripts(this->marker, NULL, NULL, func_80386468);
|
||||
CCW_func_803863F0(this, 1);
|
||||
if(levelSpecificFlags_get(0x10)){
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_10_CCW_UNKNOWN)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -97,12 +97,15 @@ void func_8038CC4C(Actor *this) {
|
|||
local->unk0++;
|
||||
}
|
||||
func_8038CB40(this, 1);
|
||||
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY)) {
|
||||
levelSpecificFlags_set(0x25, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_25_CCW_UNKNOWN, TRUE);
|
||||
}
|
||||
if ((local->unk0->unk2 != 0) && levelSpecificFlags_get(0x25)) {
|
||||
|
||||
if ((local->unk0->unk2 != 0) && levelSpecificFlags_get(LEVEL_FLAG_25_CCW_UNKNOWN)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -85,9 +85,9 @@ void func_8038CFB4(Actor *this) {
|
|||
this->has_met_before = FALSE;
|
||||
func_8038CEB0(this, 1);
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY) != 0) {
|
||||
levelSpecificFlags_set(0x25, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_25_CCW_UNKNOWN, TRUE);
|
||||
}
|
||||
if (levelSpecificFlags_get(0x25) != 0) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_25_CCW_UNKNOWN) != FALSE) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
return;
|
||||
|
@ -121,7 +121,8 @@ void func_8038CFB4(Actor *this) {
|
|||
this->has_met_before = TRUE;
|
||||
}
|
||||
}
|
||||
if (levelSpecificFlags_get(0x25) != 0) {
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_25_CCW_UNKNOWN) != FALSE) {
|
||||
func_8038CEB0(this, 2);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -39,9 +39,10 @@ void func_8038D2B0(Actor *this, s32 next_state) {
|
|||
}
|
||||
|
||||
Actor *func_8038D30C(ActorMarker* marker, Gfx** gfx, Mtx** mtx, Vtx** vtx) {
|
||||
if (levelSpecificFlags_get(0x25) == 0) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_25_CCW_UNKNOWN) == FALSE) {
|
||||
return func_80325340(marker, gfx, mtx, vtx);
|
||||
}
|
||||
|
||||
return actor_draw(marker, gfx, mtx, vtx);
|
||||
}
|
||||
|
||||
|
@ -61,7 +62,7 @@ void func_8038D368(Actor *this) {
|
|||
|
||||
func_8038D2B0(this, 1);
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY)) {
|
||||
levelSpecificFlags_set(0x25, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_25_CCW_UNKNOWN, TRUE);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -78,7 +78,7 @@ void func_8038D6D8(Actor *this, s32 next_state) {
|
|||
FUNC_8030E624(SFX_9B_BOULDER_BREAKING_1, 0.9f, 15000);
|
||||
func_80324E38(0.0f, 3);
|
||||
timed_setStaticCameraToNode(0.5f, 3);
|
||||
timedFunc_set_2(0.5f, levelSpecificFlags_set, 0x25, TRUE);
|
||||
timedFunc_set_2(0.5f, levelSpecificFlags_set, LEVEL_FLAG_25_CCW_UNKNOWN, TRUE);
|
||||
timed_exitStaticCamera(4.0f);
|
||||
func_80324E38(4.0f, 0);
|
||||
local->unk0 = 0.5f;
|
||||
|
@ -107,10 +107,12 @@ void func_8038D85C(Actor *this) {
|
|||
this->volatile_initialized = TRUE;
|
||||
marker_setCollisionScripts(this->marker, 0, &func_8038D81C, 0);
|
||||
func_8038D6D8(this, 1);
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY) != 0) {
|
||||
levelSpecificFlags_set(0x25, 1);
|
||||
|
||||
if (jiggyscore_isCollected(JIGGY_4B_CCW_GNAWTY) != FALSE) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_25_CCW_UNKNOWN, TRUE);
|
||||
}
|
||||
if ((levelSpecificFlags_get(0x25) != 0) && (map_get() != MAP_43_CCW_SPRING)) {
|
||||
|
||||
if ((levelSpecificFlags_get(LEVEL_FLAG_25_CCW_UNKNOWN) != FALSE) && (map_get() != MAP_43_CCW_SPRING)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
return;
|
||||
|
|
|
@ -83,7 +83,8 @@ void func_8038DAB0(Actor *this){
|
|||
if(!this->initialized){
|
||||
func_802D3CE8(this);
|
||||
this->initialized = TRUE;
|
||||
if(levelSpecificFlags_get(0x38)){
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_38_CCW_UNKNOWN)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -41,9 +41,9 @@ ActorInfo D_80391E50 = { MARKER_1FC_POLAR_BEAR_CUB_RED, ACTOR_1EC_POLAR_BEAR_CUB
|
|||
|
||||
f32 FP_D_80391E74[3] = {-5.0f, 180.0f, 1.0f};
|
||||
Struct_FP_3E00 D_80391E80[] ={
|
||||
{0x11, MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE, 0x1EE},
|
||||
{0x12, MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE, 0x1F0},
|
||||
{0x13, MARKER_1FF_RED_PRESENT_COLLECTIBLE, ACTOR_1F1_RED_PRESENT_COLLECTIBLE, 0x1F2}
|
||||
{LEVEL_FLAG_11_FP_UNKNOWN, MARKER_1FD_BLUE_PRESENT_COLLECTIBLE, ACTOR_1ED_BLUE_PRESENT_COLLECTIBLE, 0x1EE},
|
||||
{LEVEL_FLAG_12_FP_UNKNOWN, MARKER_1FE_GREEN_PRESENT_COLLECTIBLE, ACTOR_1EF_GREEN_PRESENT_COLLECTIBLE, 0x1F0},
|
||||
{LEVEL_FLAG_13_FP_UNKNOWN, MARKER_1FF_RED_PRESENT_COLLECTIBLE, ACTOR_1F1_RED_PRESENT_COLLECTIBLE, 0x1F2}
|
||||
};
|
||||
|
||||
/* .code */
|
||||
|
@ -123,7 +123,7 @@ void func_8038A384(Actor *this){
|
|||
}
|
||||
}//L8038A4E4
|
||||
|
||||
sp34 = levelSpecificFlags_get(0x11) + levelSpecificFlags_get(0x12) + levelSpecificFlags_get(0x13);
|
||||
sp34 = levelSpecificFlags_get(LEVEL_FLAG_11_FP_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_12_FP_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_13_FP_UNKNOWN);
|
||||
sp38 = (sp34 == 1) ? ASSET_C17_TEXT_UNKNOWN
|
||||
: (sp34 == 2) ? ASSET_C18_TEXT_UNKNOWN
|
||||
: ASSET_C19_TEXT_UNKNOWN;
|
||||
|
@ -134,14 +134,14 @@ void func_8038A384(Actor *this){
|
|||
|
||||
switch(this->state){
|
||||
case 1://L8038A5B0
|
||||
if(!levelSpecificFlags_get(0x19) && func_80329530(this, 0xfa)){
|
||||
if(!levelSpecificFlags_get(LEVEL_FLAG_19_FP_UNKNOWN) && func_80329530(this, 0xfa)){
|
||||
if(func_8028ECAC() == 0 || func_8028ECAC() == BSGROUP_8_TROT){
|
||||
if(sp34 == 0
|
||||
&& !jiggyscore_isCollected(JIGGY_2C_FP_BOGGY_3)
|
||||
&& !jiggyscore_isSpawned(JIGGY_2C_FP_BOGGY_3)
|
||||
){
|
||||
if (gcdialog_showText(ASSET_C1A_TEXT_UNKNOWN, 0x2a, NULL, NULL, NULL, NULL)) {
|
||||
levelSpecificFlags_set(0x19, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_19_FP_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,10 +35,11 @@ Actor *func_80390290(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
|||
}
|
||||
|
||||
|
||||
int func_80390334(void){
|
||||
if( levelSpecificFlags_get(0x11) && levelSpecificFlags_get(0x12) && levelSpecificFlags_get(0x13)){
|
||||
return TRUE;
|
||||
}
|
||||
int func_80390334(void) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_11_FP_UNKNOWN) && levelSpecificFlags_get(LEVEL_FLAG_12_FP_UNKNOWN) && levelSpecificFlags_get(LEVEL_FLAG_13_FP_UNKNOWN)) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
@ -47,9 +48,9 @@ void func_80390388(Actor *this){
|
|||
if(!this->volatile_initialized){
|
||||
this->volatile_initialized = TRUE;
|
||||
if(jiggyscore_isSpawned(JIGGY_2E_FP_PRESENTS) || jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)){
|
||||
levelSpecificFlags_set(0x11, TRUE);
|
||||
levelSpecificFlags_set(0x12, TRUE);
|
||||
levelSpecificFlags_set(0x13, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_11_FP_UNKNOWN, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_12_FP_UNKNOWN, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_13_FP_UNKNOWN, TRUE);
|
||||
}
|
||||
if(jiggyscore_isCollected(JIGGY_2C_FP_BOGGY_3) || jiggyscore_isSpawned(JIGGY_2C_FP_BOGGY_3)){
|
||||
this->unk38_31 = FALSE;
|
||||
|
|
|
@ -34,7 +34,7 @@ void func_80390630(Actor *this){
|
|||
this->volatile_initialized = TRUE;
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
actor_collisionOn(this);
|
||||
this->unk38_31 = jiggyscore_isCollected(JIGGY_32_FP_WOZZA) || levelSpecificFlags_get(0x26) ? 0 : 1;
|
||||
this->unk38_31 = jiggyscore_isCollected(JIGGY_32_FP_WOZZA) || levelSpecificFlags_get(LEVEL_FLAG_26_FP_UNKNOWN) ? 0 : 1;
|
||||
}//L80390714
|
||||
|
||||
if(this->unk38_31){
|
||||
|
@ -66,18 +66,18 @@ void func_80390630(Actor *this){
|
|||
}
|
||||
}
|
||||
|
||||
if(func_80329530(this, 350)){
|
||||
if(player_getTransformation() == TRANSFORM_4_WALRUS){
|
||||
if(!levelSpecificFlags_get(0x31)){
|
||||
if(gcdialog_showText(ASSET_C27_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)){
|
||||
levelSpecificFlags_set(0x31, TRUE);
|
||||
if (func_80329530(this, 350)) {
|
||||
if (player_getTransformation() == TRANSFORM_4_WALRUS) {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_31_FP_UNKNOWN)) {
|
||||
if (gcdialog_showText(ASSET_C27_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_31_FP_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(!levelSpecificFlags_get(0x32)){
|
||||
if(gcdialog_showText(ASSET_C26_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)){
|
||||
levelSpecificFlags_set(0x32, TRUE);
|
||||
else {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_32_FP_UNKNOWN)) {
|
||||
if (gcdialog_showText(ASSET_C26_TEXT_UNKNOWN, 0x23, NULL, NULL, NULL, NULL)) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_32_FP_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -192,7 +192,7 @@ void FP_func_8038F7AC(Actor *this){
|
|||
return;
|
||||
}
|
||||
|
||||
if(levelSpecificFlags_get(0x26)){
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_26_FP_UNKNOWN)) {
|
||||
this->unk38_31 = TRUE;
|
||||
func_8038F274();
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ void func_8038FF54(Actor *this){
|
|||
sp40[2] = (f32)(s32)sp40[2];
|
||||
bundle_setYaw(this->yaw + 90.0f);
|
||||
jiggy_spawn(JIGGY_32_FP_WOZZA, sp40);
|
||||
levelSpecificFlags_set(0x26, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_26_FP_UNKNOWN, TRUE);
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
else if(this->marker->unk14_21){//L8039016C
|
||||
|
|
|
@ -40,7 +40,7 @@ void __chXmasTree_80386EF4(Actor *this, int arg1){
|
|||
}
|
||||
|
||||
void __chXmasTree_80386F3C(void){
|
||||
levelSpecificFlags_set(0x29, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_29_FP_UNKNOWN, TRUE);
|
||||
func_803228D8();
|
||||
volatileFlag_set(VOLATILE_FLAG_E, 1);
|
||||
func_802E4078(MAP_53_FP_CHRISTMAS_TREE, 1, 0);
|
||||
|
@ -107,7 +107,8 @@ void chXmasTree_update(Actor *this){
|
|||
}
|
||||
|
||||
this->depth_mode = 1;
|
||||
if(jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(0x29)){
|
||||
|
||||
if (jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(LEVEL_FLAG_29_FP_UNKNOWN)) {
|
||||
__chXmasTree_80386EF4(this, 1);
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -83,18 +83,18 @@ void func_80390B70(Actor *this){
|
|||
timedFunc_set_1(2.5f, (GenFunction_1)func_80390B2C, reinterpret_cast(s32, this->marker));
|
||||
}
|
||||
|
||||
void func_80390BDC(Actor *this){
|
||||
void func_80390BDC(Actor *this) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
actor_collisionOff(this);
|
||||
if(!this->volatile_initialized){
|
||||
|
||||
if (!this->volatile_initialized) {
|
||||
this->volatile_initialized = TRUE;
|
||||
if(jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE)){
|
||||
|
||||
if (jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
else{
|
||||
if(levelSpecificFlags_get(0x29)){
|
||||
func_80390B70(this);
|
||||
}
|
||||
else if (levelSpecificFlags_get(LEVEL_FLAG_29_FP_UNKNOWN)) {
|
||||
func_80390B70(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,7 +67,7 @@ void func_8038E840(f32 position[3], s32 cnt, enum asset_e sprite_id){
|
|||
}
|
||||
|
||||
void func_8038E940(Actor *this){
|
||||
if(jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(0x29)){
|
||||
if (jiggyscore_isCollected(JIGGY_2F_FP_XMAS_TREE) || levelSpecificFlags_get(LEVEL_FLAG_29_FP_UNKNOWN)) {
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
this->marker->collidable = FALSE;
|
||||
subaddie_set_state_with_direction(this, 3, 0.95f, 0);
|
||||
|
|
|
@ -83,9 +83,10 @@ void __chMazeCtrl_setState(Actor *this, s32 next_state){
|
|||
else{//L8038F754
|
||||
timed_playSfx(1.0f, SFX_7F_HEAVYDOOR_SLAM, 1.0f, 32000);
|
||||
}
|
||||
if(!levelSpecificFlags_get(0x16)){
|
||||
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_16_GV_UNKNOWN)) {
|
||||
gcdialog_showText(ASSET_A82_TEXT_SANDYBUTT_START_MAZE, 4, NULL, NULL, NULL, NULL);
|
||||
levelSpecificFlags_set(0x16, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_16_GV_UNKNOWN, TRUE);
|
||||
}
|
||||
}//L8038F794
|
||||
|
||||
|
@ -133,9 +134,9 @@ void __chMazeCtrl_setState(Actor *this, s32 next_state){
|
|||
if(++local->unk4 == 1)
|
||||
func_8025A6EC(COMUSIC_2D_PUZZLE_SOLVED_FANFARE, 0x7fff);
|
||||
|
||||
if(!levelSpecificFlags_get(0x17)){
|
||||
if(!levelSpecificFlags_get(LEVEL_FLAG_17_GV_UNKNOWN)){
|
||||
gcdialog_showText(ASSET_A83_TEXT_SANDYBUTT_DONE, 4, NULL, NULL, NULL, NULL);
|
||||
levelSpecificFlags_set(0x17, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_17_GV_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -165,7 +166,7 @@ void chMazeCtrl_update(Actor *this){
|
|||
local->unk8 = 1.0f;
|
||||
}//L8038FA8C
|
||||
if(jiggyscore_isCollected(JIGGY_41_GV_MAZE))
|
||||
levelSpecificFlags_set(0x17, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_17_GV_UNKNOWN, TRUE);
|
||||
}//L8038FAA4
|
||||
|
||||
player_getPosition(sp3C);
|
||||
|
@ -174,11 +175,12 @@ void chMazeCtrl_update(Actor *this){
|
|||
if(sp38 != NULL && func_8034DC80(sp38, sp3C)){
|
||||
__chMazeCtrl_setState(this, 2);
|
||||
}
|
||||
if( !levelSpecificFlags_get(0x15)
|
||||
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_15_GV_UNKNOWN)
|
||||
&& ml_timer_update(&local->unk8, sp34)
|
||||
&& gcdialog_showText(ASSET_A81_TEXT_SANDYBUTT_ENTER, 0, NULL, NULL, NULL, NULL)
|
||||
){
|
||||
levelSpecificFlags_set(0x15, TRUE);
|
||||
) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_15_GV_UNKNOWN, TRUE);
|
||||
}
|
||||
}//L8038FB34
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@ void func_80390000(s32 arg0){
|
|||
}//L803900AC
|
||||
|
||||
if(GV_D_80391AD0 == 2){
|
||||
levelSpecificFlags_set(6, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_6_GV_UNKNOWN, FALSE);
|
||||
func_803228D8();
|
||||
func_802E4078(MAP_15_GV_WATER_PYRAMID, 1, 0);
|
||||
}
|
||||
|
@ -40,7 +40,8 @@ void func_803900F8(void){}
|
|||
|
||||
void func_80390100(void){
|
||||
GV_D_80391AD0 = 0;
|
||||
if(levelSpecificFlags_get(6)){
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_6_GV_UNKNOWN)) {
|
||||
func_80390000(1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ void __waterCtrl_setState(s32 arg0){
|
|||
}
|
||||
|
||||
if(GV_D_80391B00.state == 3){
|
||||
levelSpecificFlags_set(6, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_6_GV_UNKNOWN, TRUE);
|
||||
func_803228D8();
|
||||
volatileFlag_set(VOLATILE_FLAG_E, 1);
|
||||
func_802E4078(MAP_12_GV_GOBIS_VALLEY, 0, 0);
|
||||
|
|
|
@ -70,8 +70,9 @@ void chLoggo_update(Actor *this){
|
|||
subaddie_set_state_with_direction(this, 1, 0.01f, 1);
|
||||
actor_loopAnimation(this);
|
||||
this->lifetime_value = 0.0f;
|
||||
if(!fileProgressFlag_get(FILEPROG_8A_EXITED_LOGGO) && levelSpecificFlags_get(0x33)){
|
||||
if(gcdialog_showText(ASSET_AE0_TEXT_EXIT_LOGGO, 4, NULL, NULL, NULL, NULL)){
|
||||
|
||||
if (!fileProgressFlag_get(FILEPROG_8A_EXITED_LOGGO) && levelSpecificFlags_get(LEVEL_FLAG_33_MMM_UNKNOWN)) {
|
||||
if (gcdialog_showText(ASSET_AE0_TEXT_EXIT_LOGGO, 4, NULL, NULL, NULL, NULL)) {
|
||||
fileProgressFlag_set(FILEPROG_8A_EXITED_LOGGO, TRUE);
|
||||
}
|
||||
}
|
||||
|
@ -107,7 +108,7 @@ void chLoggo_update(Actor *this){
|
|||
if(actor_animationIsAt(this, 0.46f)){
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
FUNC_8030E8B4(SFX_92_TOILET_FLUSH, 1.0f, 32000, this->position, 600, 1500);
|
||||
levelSpecificFlags_set(0x33, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_33_MMM_UNKNOWN, TRUE);
|
||||
ml_vec3f_assign(sp38, this->position_x - 50.0f, this->position_y + 50.0f, this->position_z);
|
||||
func_8028F6E4(BS_INTR_2F_LOGGO, sp38);
|
||||
}
|
||||
|
|
|
@ -370,10 +370,13 @@ void func_80388FE4(Actor *this) {
|
|||
|
||||
void func_80389004(Actor *this){
|
||||
func_802D3CE8(this);
|
||||
if(!this->volatile_initialized){
|
||||
|
||||
if (!this->volatile_initialized) {
|
||||
this->volatile_initialized = TRUE;
|
||||
if(levelSpecificFlags_get(0x2e))
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_2E_MMM_UNKNOWN)) {
|
||||
marker_despawn(this->marker);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -104,11 +104,12 @@ void func_8038966C(void){
|
|||
if((s32)(tmp_v0->flags << 4) < 0){
|
||||
FUNC_8030E624(SFX_6B_LOCKUP_OPENING, 1.4f, 32750);
|
||||
MMM_D_8038C4E0.unk1 = 2;
|
||||
if(!levelSpecificFlags_get(0x1b)){
|
||||
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_1B_MMM_UNKNOWN)) {
|
||||
func_80324E38(0.0f, 3);
|
||||
timed_setStaticCameraToNode(0.0f, 0);
|
||||
func_80324DBC(0.0f, 0xad7, 6, NULL, NULL, func_803895D8, NULL);
|
||||
levelSpecificFlags_set(0x1b, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1B_MMM_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -251,11 +251,11 @@ void func_8038AA44(void){
|
|||
&& MMM_D_8038C510.unkC != NULL
|
||||
&& func_8038AD4C(MMM_D_8038C510.unkC, MMM_D_8038C510.unk10)
|
||||
){
|
||||
if(!levelSpecificFlags_get(0x2f)){
|
||||
levelSpecificFlags_set(0x2f, TRUE);
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_2F_MMM_UNKNOWN)) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2F_MMM_UNKNOWN, TRUE);
|
||||
func_8038A140(2);
|
||||
}
|
||||
else{
|
||||
else {
|
||||
func_8038A140(3);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -53,10 +53,13 @@ void __chAnchorCtrl_setState(Actor *this, s32 new_state){
|
|||
void chAnchorCtrl_update(Actor *this){
|
||||
if(!this->volatile_initialized){
|
||||
this->volatile_initialized = TRUE;
|
||||
if(levelSpecificFlags_getSet(0x30, FALSE))
|
||||
|
||||
if (levelSpecificFlags_getSet(LEVEL_FLAG_30_RBB_UNKNOWN, FALSE)) {
|
||||
__chAnchorCtrl_setState(this, 2);
|
||||
else
|
||||
}
|
||||
else {
|
||||
__chAnchorCtrl_setState(this, 1);
|
||||
}
|
||||
|
||||
if(jiggyscore_isSpawned(JIGGY_53_RBB_SNORKEL))
|
||||
marker_despawn(this->marker);
|
||||
|
|
|
@ -20,7 +20,7 @@ void __chAnchorSwitch_setState(Actor *this, s32 arg1){
|
|||
actor_collisionOff(this);
|
||||
this->position_y -= 35.0f;
|
||||
if(this->state == 1){
|
||||
levelSpecificFlags_set(0x30, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_30_RBB_UNKNOWN, TRUE);
|
||||
volatileFlag_set(VOLATILE_FLAG_E, 1);
|
||||
timedFunc_set_0(1.0f, func_803228D8);
|
||||
timedFunc_set_3(1.0f, (GenFunction_3)func_802E4078, MAP_31_RBB_RUSTY_BUCKET_BAY, 0, 0);
|
||||
|
|
|
@ -58,8 +58,8 @@ ActorInfo D_8039083C = {
|
|||
f32 D_80390860[3] = {1.0f, 0.5f, 0.5f};
|
||||
|
||||
/* .code */
|
||||
f32 func_8038A4E0(void){
|
||||
return D_80390860[2*levelSpecificFlags_get(0x27) + levelSpecificFlags_get(0x28)];
|
||||
f32 func_8038A4E0(void) {
|
||||
return D_80390860[2 * levelSpecificFlags_get(LEVEL_FLAG_27_RBB_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_28_RBB_UNKNOWN)];
|
||||
}
|
||||
|
||||
void func_8038A524(Actor *this, s32 arg1){
|
||||
|
|
|
@ -23,8 +23,8 @@ ActorInfo D_803906E0 = {
|
|||
s32 D_80390704[4] = {0x258, 0x12C, 0x12C, 0};
|
||||
|
||||
/*.code */
|
||||
f32 __chPropellor_getSpeed(void){
|
||||
return (f32) D_80390704[2*levelSpecificFlags_get(0x27) + levelSpecificFlags_get(0x28)];
|
||||
f32 __chPropellor_getSpeed(void) {
|
||||
return (f32) D_80390704[2 * levelSpecificFlags_get(LEVEL_FLAG_27_RBB_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_28_RBB_UNKNOWN)];
|
||||
}
|
||||
|
||||
void __chPropellor_setState(Actor *this, s32 arg1){
|
||||
|
@ -50,7 +50,8 @@ void func_80389B80(Actor *this, f32 arg1){
|
|||
func_802F9DB8(local->unk0, arg1, arg1, 0.0f);
|
||||
func_802F9F80(local->unk0, 0.0f, 8999999488.0f, 0.0f);
|
||||
func_802FA060(local->unk0, 0x4650, 0x4650, 0.0f);
|
||||
if(!levelSpecificFlags_get(3) && !levelSpecificFlags_get(4)){
|
||||
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_3_RBB_UNKNOWN) && !levelSpecificFlags_get(LEVEL_FLAG_4_RBB_UNKNOWN)) {
|
||||
func_802F9EC4(local->unk0, &this->position, 0x1f4, 0x7d0);
|
||||
func_802FA0B0(local->unk0, 1);
|
||||
}
|
||||
|
@ -90,7 +91,8 @@ void chPropellor_update(Actor *this){
|
|||
local->unk4 = 0.0f;
|
||||
local->unkC = 0.0f;
|
||||
__chPropellor_setState(this, 1);
|
||||
if(levelSpecificFlags_get(local->unk8 ? 4 : 3)){
|
||||
|
||||
if (levelSpecificFlags_get(local->unk8 ? LEVEL_FLAG_4_RBB_UNKNOWN : LEVEL_FLAG_3_RBB_UNKNOWN)) {
|
||||
ncStaticCamera_setToNode(9);
|
||||
func_80324E38(0.0f, 3);
|
||||
timedFunc_set_2(0.1f, (GenFunction_2)levelSpecificFlags_set, local->unk8 ? 0x28 : 0x27, 1);
|
||||
|
@ -107,10 +109,12 @@ void chPropellor_update(Actor *this){
|
|||
if( (0.0f < tmp && this->pitch <= 0.0f)
|
||||
|| (180.0f < tmp && this->pitch <= 180.0f)
|
||||
){
|
||||
if(levelSpecificFlags_get(3) || levelSpecificFlags_get(4))
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_3_RBB_UNKNOWN) || levelSpecificFlags_get(LEVEL_FLAG_4_RBB_UNKNOWN)) {
|
||||
func_8030E760(SFX_2_CLAW_SWIPE, 0.4f, 20000);
|
||||
else
|
||||
}
|
||||
else {
|
||||
func_8030E988(SFX_2_CLAW_SWIPE, 0.4f, 20000, &this->position, 500.0f, 1000.0f);
|
||||
}
|
||||
}//L80389F94
|
||||
if(this->pitch < 0.0f)
|
||||
this->pitch += 360.0f;
|
||||
|
|
|
@ -114,8 +114,8 @@ void chPropellorSwitch_update(Actor *this){
|
|||
}//L8038A47C
|
||||
if(this->state == 2){
|
||||
if( !levelSpecificFlags_get(local->unk0->unkA)
|
||||
&& !levelSpecificFlags_get(3)
|
||||
&& !levelSpecificFlags_get(4)
|
||||
&& !levelSpecificFlags_get(LEVEL_FLAG_3_RBB_UNKNOWN)
|
||||
&& !levelSpecificFlags_get(LEVEL_FLAG_4_RBB_UNKNOWN)
|
||||
){
|
||||
__chPropellorSwitch_setState(this, 1);
|
||||
}
|
||||
|
|
|
@ -210,7 +210,7 @@ void func_803881E8(Actor *this, s32 arg1){
|
|||
func_80324E38(0.2f, 3);
|
||||
timed_setStaticCameraToNode(1.1f, 7);
|
||||
timedFunc_set_1(1.6f, (GenFunction_1)func_80388154, (s32)this->marker);
|
||||
levelSpecificFlags_set(0x2D, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2D_RBB_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -223,12 +223,14 @@ void func_803882B4(ActorMarker *marker, s32 arg1){
|
|||
void RBB_func_803882F4(Actor *this){
|
||||
if(!this->volatile_initialized){
|
||||
this->volatile_initialized = TRUE;
|
||||
if(levelSpecificFlags_get(0x2d)){
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_2D_RBB_UNKNOWN)) {
|
||||
func_80387AC0();
|
||||
RBB_func_80387960(0.0f);
|
||||
func_80387B24();
|
||||
func_803881E8(this, 3);
|
||||
}else{
|
||||
}
|
||||
else {
|
||||
marker_setCollisionScripts(this->marker, NULL, func_803882B4, NULL);
|
||||
func_8032AA58(this, 1.1f);
|
||||
func_803881E8(this, 1);
|
||||
|
|
|
@ -21,8 +21,8 @@ void __propellorCtrl_setState(s32 arg0){
|
|||
}
|
||||
|
||||
if(arg0 == 3 || arg0 == 4){
|
||||
levelSpecificFlags_set(0x27, FALSE);
|
||||
levelSpecificFlags_set(0x28, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_27_RBB_UNKNOWN, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_28_RBB_UNKNOWN, FALSE);
|
||||
item_set(ITEM_9_PROPELLOR,0);
|
||||
if(arg0 == 3 && !jiggyscore_isCollected(JIGGY_57_RBB_PROPELLOR)){
|
||||
timedFunc_set_1(0.5f, (GenFunction_1)func_802FAD64, 3);
|
||||
|
@ -51,9 +51,11 @@ void rbb_propellorCtrl_start(void){
|
|||
}
|
||||
|
||||
void rbb_propellorCtrl_update(void){
|
||||
if( __propellorCtrlState == 0)
|
||||
if(levelSpecificFlags_get(0x27) && levelSpecificFlags_get(0x28))
|
||||
if (__propellorCtrlState == 0) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_27_RBB_UNKNOWN) && levelSpecificFlags_get(LEVEL_FLAG_28_RBB_UNKNOWN)) {
|
||||
__propellorCtrl_setState(1);
|
||||
}
|
||||
}
|
||||
|
||||
if(__propellorCtrlState == 1)
|
||||
if(ml_timer_update(&__propellorTimer,time_getDelta()))
|
||||
|
|
|
@ -39,11 +39,13 @@ void chLeaky_update(Actor *this) {
|
|||
if (!this->volatile_initialized) {
|
||||
this->volatile_initialized = TRUE;
|
||||
this->marker->propPtr->unk8_3 = FALSE;
|
||||
if (levelSpecificFlags_get(5) != 0) {
|
||||
levelSpecificFlags_set(5, FALSE);
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_5_TTC_UNKNOWN) != FALSE) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_5_TTC_UNKNOWN, FALSE);
|
||||
timedFunc_set_1(0.5f, (GenFunction_1)comusic_playTrack, COMUSIC_2D_PUZZLE_SOLVED_FANFARE);
|
||||
}
|
||||
if (levelSpecificFlags_get(2) != 0) {
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN) != FALSE) {
|
||||
temp_v0_2 = func_8034C5AC(300);
|
||||
if (temp_v0_2 != 0) {
|
||||
func_8034E71C(temp_v0_2, -600, 0.0f);
|
||||
|
@ -100,17 +102,20 @@ void __chLeaky_startCutscene(ActorMarker *caller, enum asset_e text_id, s32 arg2
|
|||
|
||||
bool chLeaky_eggCollision(ActorMarker *marker){
|
||||
Actor *this = marker_getActor(marker);
|
||||
|
||||
if(levelSpecificFlags_get(2))
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN)) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
comusic_playTrack(COMUSIC_2B_DING_B);
|
||||
this->unk38_31++;
|
||||
if(this->unk38_31 < 2)
|
||||
return TRUE;
|
||||
|
||||
levelSpecificFlags_set(2, TRUE);
|
||||
levelSpecificFlags_set(5, TRUE);
|
||||
if (this->unk38_31 < 2) {
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2_TTC_UNKNOWN, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_5_TTC_UNKNOWN, TRUE);
|
||||
gcdialog_showText(ASSET_A28_TEXT_LEAKY_DONE, 0x2a, this->position, this->marker, __chLeaky_startCutscene, NULL);
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -387,7 +387,7 @@ void func_8038B094(void){
|
|||
void *sp28;
|
||||
|
||||
if( map_get() == MAP_7_TTC_TREASURE_TROVE_COVE
|
||||
&& levelSpecificFlags_get(0x2)
|
||||
&& levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN)
|
||||
){
|
||||
sp2C = func_8034C5AC(0x12C);
|
||||
if(sp2C){
|
||||
|
@ -401,7 +401,8 @@ void func_8038B094(void){
|
|||
else{
|
||||
sp2C = func_8034C5AC(0x131);
|
||||
sp28 = func_8034C5AC(0x12C);
|
||||
if(levelSpecificFlags_get(5)){
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_5_TTC_UNKNOWN)) {
|
||||
func_8034E71C(sp2C, -500, 10.0f);
|
||||
func_80324E38(0.0f, 3);
|
||||
timed_setStaticCameraToNode(0.0f, 1);
|
||||
|
@ -410,10 +411,10 @@ void func_8038B094(void){
|
|||
func_803228D8();
|
||||
timedFunc_set_3(2.0f, (GenFunction_3) func_802E4078, MAP_7_TTC_TREASURE_TROVE_COVE, 1, 0);
|
||||
}
|
||||
else if(levelSpecificFlags_get(2) || volatileFlag_get(VOLATILE_FLAG_2_FF_IN_MINIGAME)){
|
||||
else if (levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN) || volatileFlag_get(VOLATILE_FLAG_2_FF_IN_MINIGAME)) {
|
||||
func_8034E71C(sp2C, -500, 0.0f);
|
||||
}
|
||||
else{
|
||||
else {
|
||||
func_8034E71C(sp28, -500, 0.0f);
|
||||
}//L8038B1EC
|
||||
|
||||
|
@ -474,7 +475,7 @@ void func_8038B2F0(void) {
|
|||
}
|
||||
}
|
||||
if ((D_8038D720.unk8 == 0) || (D_8038D720.unk8 == 3)) {
|
||||
if( (levelSpecificFlags_get(2) || volatileFlag_get(VOLATILE_FLAG_3))
|
||||
if( (levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN) || volatileFlag_get(VOLATILE_FLAG_3))
|
||||
&& (player_getActiveHitbox(0) == HITBOX_1_BEAK_BUSTER)
|
||||
&& func_8028F20C()
|
||||
) {
|
||||
|
|
|
@ -107,7 +107,7 @@ void func_8024AAB0(void){
|
|||
break;
|
||||
case MAP_41_FP_BOGGYS_IGLOO: //L8024AD08
|
||||
if( jiggyscore_isCollected(JIGGY_2E_FP_PRESENTS)
|
||||
|| (levelSpecificFlags_get(0x11) && levelSpecificFlags_get(0x12) && levelSpecificFlags_get(0x13))
|
||||
|| (levelSpecificFlags_get(LEVEL_FLAG_11_FP_UNKNOWN) && levelSpecificFlags_get(LEVEL_FLAG_12_FP_UNKNOWN) && levelSpecificFlags_get(LEVEL_FLAG_13_FP_UNKNOWN))
|
||||
){
|
||||
D_80280708[2] = 0;
|
||||
}
|
||||
|
|
|
@ -128,7 +128,7 @@ void bsjig_jiggy_end(void){
|
|||
sp2C = 0xa16;
|
||||
break;
|
||||
case 0x17:
|
||||
if(!levelSpecificFlags_get(0) || !levelSpecificFlags_get(1))
|
||||
if(!levelSpecificFlags_get(LEVEL_FLAG_0_CC_TOKEN_TOOTH_OPEN) || !levelSpecificFlags_get(LEVEL_FLAG_1_CC_JIGGY_TOOTH_OPEN))
|
||||
sp2C = 0xd2d;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -90,10 +90,10 @@ void func_80357264(Actor *this, s32 next_state){
|
|||
}
|
||||
|
||||
if(next_state == 5){
|
||||
if(!levelSpecificFlags_get(0x14)
|
||||
if(!levelSpecificFlags_get(LEVEL_FLAG_14_TTC_UNKNOWN)
|
||||
&& !( actorArray_findClosestActorFromActorId(this->position, 0x318, -1, &sp38) && ( sp38 < 250.0f))
|
||||
){
|
||||
levelSpecificFlags_set(0x14, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_14_TTC_UNKNOWN, TRUE);
|
||||
func_80324E38(0.0f, 3);
|
||||
__clucker_setDeathCutsceneCamera(this);
|
||||
timed_exitStaticCamera(2.0f);
|
||||
|
|
|
@ -152,7 +152,7 @@ void __chCrab_mutantTextCallback(ActorMarker *caller, enum asset_e text_id, s32
|
|||
func_80324E38(3.0f, 0);
|
||||
return;
|
||||
}
|
||||
levelSpecificFlags_set(0xE, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_E_CC_UNKNOWN, FALSE);
|
||||
}
|
||||
|
||||
bool __chCrab_802CB76C(ActorMarker *marker, ActorMarker *other) {
|
||||
|
@ -272,13 +272,13 @@ void chCrab_update(Actor *this) {
|
|||
if ((this->state != 6) && (this->state != 5)) {
|
||||
gcdialog_showText(ASSET_D32_DIALOG_MUTANT_CRAB_MEET, 0xF, this->position, NULL, __chCrab_mutantTextCallback, NULL);
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
levelSpecificFlags_set(0xE, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_E_CC_UNKNOWN, TRUE);
|
||||
this->has_met_before = TRUE;
|
||||
}
|
||||
}
|
||||
if (map_get() == MAP_A_TTC_SANDCASTLE) {
|
||||
if( !mapSpecificFlags_get(0)
|
||||
&& levelSpecificFlags_get(2)
|
||||
&& levelSpecificFlags_get(LEVEL_FLAG_2_TTC_UNKNOWN)
|
||||
&& !volatileFlag_get(VOLATILE_FLAG_2_FF_IN_MINIGAME)
|
||||
&& !jiggyscore_isCollected(JIGGY_10_TTC_SANDCASTLE)
|
||||
&& func_80329530(this, 1600)
|
||||
|
@ -290,7 +290,7 @@ void chCrab_update(Actor *this) {
|
|||
mapSpecificFlags_set(1, FALSE);
|
||||
}
|
||||
}
|
||||
if (levelSpecificFlags_get(0xE)) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
if ((this->state != 8) && (this->state != 9)) {
|
||||
subaddie_set_state_with_direction(this, (this->has_met_before) ? 8 : 9, 0.0f, 1);
|
||||
this->has_met_before = FALSE;
|
||||
|
@ -306,7 +306,7 @@ void chCrab_update(Actor *this) {
|
|||
break;
|
||||
|
||||
case 9: //L802CBE6C
|
||||
if (!levelSpecificFlags_get(0xE)) {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
@ -337,7 +337,7 @@ void chCrab_update(Actor *this) {
|
|||
if (func_80329480(this)) {
|
||||
subaddie_set_state(this, 9);
|
||||
this->actor_specific_1_f = 12.0f;
|
||||
} else if (!levelSpecificFlags_get(0xE)) {
|
||||
} else if (!levelSpecificFlags_get(LEVEL_FLAG_E_CC_UNKNOWN)) {
|
||||
subaddie_set_state_with_direction(this, 3, 0.0f, 1);
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -181,10 +181,12 @@ void chjiggy_update(Actor *this){
|
|||
func_802C7B8C(this, 0xd, 0xc, 0x1e, 9, 0xb, VOLATILE_FLAG_AF_BGS_MAZE_JIGGY_MISSED);
|
||||
break;
|
||||
case JIGGY_2F_FP_XMAS_TREE://L802C8048
|
||||
if(levelSpecificFlags_get(0x29))
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_29_FP_UNKNOWN)) {
|
||||
actor_collisionOn(this);
|
||||
else
|
||||
}
|
||||
else {
|
||||
actor_collisionOff(this);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -185,18 +185,18 @@ void chmole_additionalAbilityLearnActions(ActorMarker *marker, enum asset_e arg1
|
|||
switch(arg2){
|
||||
case 1: // Stilt Stride
|
||||
timed_setStaticCameraToNode(0.0f, 0x11);
|
||||
levelSpecificFlags_set(0x1A, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, TRUE);
|
||||
break;
|
||||
case 2:
|
||||
levelSpecificFlags_set(0x1A, 0);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, FALSE);
|
||||
chmole_setStaticCamera(actor);
|
||||
break;
|
||||
case 3: // Turbo Talon Trainer
|
||||
timed_setStaticCameraToNode(0.0f, 0x29);
|
||||
levelSpecificFlags_set(0x1A, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, TRUE);
|
||||
break;
|
||||
case 4:
|
||||
levelSpecificFlags_set(0x1A, 0);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_1A_UNKNOWN, FALSE);
|
||||
chmole_setStaticCamera(actor);
|
||||
break;
|
||||
case 5: // Egg Firing
|
||||
|
|
|
@ -142,12 +142,13 @@ void __chTermite_die(ActorMarker *marker, ActorMarker *other_marker){
|
|||
FUNC_8030E624(SFX_D1_SNORKEL_WAH, 1.4f, 32750);
|
||||
marker_despawn(marker);
|
||||
}
|
||||
void __chTermite_testCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2){
|
||||
|
||||
void __chTermite_testCallback(ActorMarker *caller, enum asset_e text_id, s32 arg2) {
|
||||
Actor *this;
|
||||
|
||||
this = marker_getActor(caller);
|
||||
this->has_met_before = FALSE;
|
||||
levelSpecificFlags_set(0xd, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_D_MM_UNKNOWN, FALSE);
|
||||
}
|
||||
|
||||
void chTermite_update(Actor *this) {
|
||||
|
@ -172,7 +173,7 @@ void chTermite_update(Actor *this) {
|
|||
) {
|
||||
gcdialog_showText(ASSET_B43_DIALOG_TERMITE_MEET_AS_BEAR, 7, this->position, this->marker, __chTermite_testCallback, NULL);
|
||||
mapSpecificFlags_set(0, TRUE);
|
||||
levelSpecificFlags_set(0xD, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_D_MM_UNKNOWN, TRUE);
|
||||
this->has_met_before = TRUE;
|
||||
}
|
||||
|
||||
|
@ -181,13 +182,14 @@ void chTermite_update(Actor *this) {
|
|||
&& func_8028ECAC() == 0
|
||||
&& player_getTransformation() == TRANSFORM_2_TERMITE
|
||||
) {
|
||||
if (!levelSpecificFlags_get(0xB)) {
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_B_MM_UNKNOWN)) {
|
||||
if (gcdialog_showText(ASSET_B41_DIALOG_TERMITE_COOL_SHORTS, 0, NULL, NULL, NULL, NULL)) {
|
||||
levelSpecificFlags_set(0xB, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_B_MM_UNKNOWN, TRUE);
|
||||
this->unk138_23 = TRUE;
|
||||
}
|
||||
} else if (!levelSpecificFlags_get(0xC) && !this->unk138_23 && (gcdialog_showText(ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(0xC, TRUE);
|
||||
}
|
||||
else if (!levelSpecificFlags_get(LEVEL_FLAG_C_MM_UNKNOWN) && !this->unk138_23 && (gcdialog_showText(ASSET_B42_DIALOG_TERMITE_COOL_BACKPACK, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_C_MM_UNKNOWN, TRUE);
|
||||
}
|
||||
}
|
||||
switch (this->state) {
|
||||
|
|
|
@ -56,8 +56,9 @@ void _chtrainers_802CA378(Actor *this, bool arg1){
|
|||
}
|
||||
|
||||
void chtrainers_update(Actor *this){
|
||||
s32 sp2C = levelSpecificFlags_get(0x1a);
|
||||
if(sp2C && this->unkF4_8 != 1){
|
||||
s32 sp2C = levelSpecificFlags_get(LEVEL_FLAG_1A_UNKNOWN);
|
||||
|
||||
if (sp2C && this->unkF4_8 != 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -33,8 +33,9 @@ Actor *chwadingboots_draw(ActorMarker *marker, Gfx **gfx, Mtx **mtx, Vtx **vtx){
|
|||
}
|
||||
|
||||
void chwadingboots_update(Actor *this){
|
||||
s32 sp2C = levelSpecificFlags_get(0x1a);
|
||||
if(sp2C && this->unkF4_8 != 1){
|
||||
s32 sp2C = levelSpecificFlags_get(LEVEL_FLAG_1A_UNKNOWN);
|
||||
|
||||
if (sp2C && this->unkF4_8 != 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -360,8 +360,8 @@ void chMumbo_update(Actor *this) {
|
|||
break;
|
||||
}
|
||||
func_8025A6EC(COMUSIC_2C_BUZZER, 22000);
|
||||
if ((levelSpecificFlags_get(0x3E) == 0) && (gcdialog_showText(ASSET_DAC_DIALOG_MUMBO_FAIL_TO_BUY, 0, NULL, NULL, NULL, NULL) != 0)) {
|
||||
levelSpecificFlags_set(0x3E, 1);
|
||||
if ((levelSpecificFlags_get(LEVEL_FLAG_3E_UNKNOWN) == FALSE) && (gcdialog_showText(ASSET_DAC_DIALOG_MUMBO_FAIL_TO_BUY, 0, NULL, NULL, NULL, NULL) != 0)) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3E_UNKNOWN, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -218,10 +218,10 @@ void func_802D31AC(ActorMarker *arg0, ActorMarker * arg1) {
|
|||
case 0x108:
|
||||
case 0x263:
|
||||
if ((arg0->id == 0x9D) || (arg0->id == 0xE7)) {
|
||||
levelSpecificFlags_set(0x2E, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2E_MMM_UNKNOWN, 1);
|
||||
}
|
||||
if (arg0->id == 0x263) {
|
||||
levelSpecificFlags_set(0x38, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_38_CCW_UNKNOWN, 1);
|
||||
}
|
||||
func_802D2FB0(sp2C, 5, -0x28, 0xC8, 0.85f, 0xDC, 0x3C, 0x64);
|
||||
func_8030E540(SFX_D_EGGSHELL_BREAKING);
|
||||
|
@ -817,46 +817,50 @@ void func_802D5260(void) {
|
|||
: -1;
|
||||
|
||||
if (sp3C == -1) {
|
||||
levelSpecificFlags_set(0x3C, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3C_LAIR_UNKNOWN, FALSE);
|
||||
fileProgressFlag_set(FILEPROG_26_WATER_SWITCH_3_PRESSED, FALSE);
|
||||
fileProgressFlag_set(FILEPROG_27_LAIR_WATER_LEVEL_3, FALSE);
|
||||
levelSpecificFlags_set(0x3D, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3D_LAIR_UNKNOWN, FALSE);
|
||||
return;
|
||||
}
|
||||
sp38 = func_8034C528(sp3C + 0x190);
|
||||
if( fileProgressFlag_get(FILEPROG_27_LAIR_WATER_LEVEL_3)
|
||||
&& !levelSpecificFlags_get(0x3D)
|
||||
&& !levelSpecificFlags_get(0x3C)
|
||||
&& !levelSpecificFlags_get(LEVEL_FLAG_3D_LAIR_UNKNOWN)
|
||||
&& !levelSpecificFlags_get(LEVEL_FLAG_3C_LAIR_UNKNOWN)
|
||||
) {
|
||||
func_802D68F0(30);
|
||||
item_set(ITEM_6_HOURGLASS, TRUE);
|
||||
levelSpecificFlags_set(0x3D, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3D_LAIR_UNKNOWN, TRUE);
|
||||
}
|
||||
if( levelSpecificFlags_get(0x3D)
|
||||
&& !levelSpecificFlags_get(0x3C)
|
||||
if( levelSpecificFlags_get(LEVEL_FLAG_3D_LAIR_UNKNOWN)
|
||||
&& !levelSpecificFlags_get(LEVEL_FLAG_3C_LAIR_UNKNOWN)
|
||||
&& item_getCount(ITEM_6_HOURGLASS) == FALSE
|
||||
) {
|
||||
levelSpecificFlags_set(0x3C, TRUE);
|
||||
levelSpecificFlags_set(0x3D, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3C_LAIR_UNKNOWN, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3D_LAIR_UNKNOWN, FALSE);
|
||||
D_803676A4 = 0.0f;
|
||||
}
|
||||
if (levelSpecificFlags_get(0x3C)) {
|
||||
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_3C_LAIR_UNKNOWN)) {
|
||||
D_803676A4 -= 5.0;
|
||||
|
||||
if (D_803676A8 == 0) {
|
||||
D_803676A8 = func_802F9AA8(SFX_3EC_CCW_DOOR_OPENING);
|
||||
func_802FA060(D_803676A8, 20000, 20000, 0.0f);
|
||||
func_802F9F80(D_803676A8, 0.0f, 1.0e8f, 0.0f);
|
||||
}
|
||||
|
||||
if (D_803679C8[sp3C].unk6 + D_803676A4 <= D_803679C8[sp3C].unk4) {
|
||||
levelSpecificFlags_set(0x3C, FALSE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3C_LAIR_UNKNOWN, FALSE);
|
||||
fileProgressFlag_set(FILEPROG_26_WATER_SWITCH_3_PRESSED, FALSE);
|
||||
fileProgressFlag_set(FILEPROG_27_LAIR_WATER_LEVEL_3, FALSE);
|
||||
fileProgressFlag_set(FILEPROG_27_LAIR_WATER_LEVEL_3, FALSE);
|
||||
func_802F9D38(D_803676A8);
|
||||
D_803676A8 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (sp38 != 0) {
|
||||
if (levelSpecificFlags_get(0x3C) != 0) {
|
||||
if (levelSpecificFlags_get(LEVEL_FLAG_3C_LAIR_UNKNOWN) != FALSE) {
|
||||
sp34 = D_803679C8[sp3C].unk6 + D_803676A4;
|
||||
} else {
|
||||
sp34 = ((s16 *)&D_803679C8[sp3C])[(fileProgressFlag_get(FILEPROG_27_LAIR_WATER_LEVEL_3)) ? 3
|
||||
|
@ -1012,16 +1016,16 @@ void func_802D5628(void){
|
|||
}
|
||||
else{//L802D5B64
|
||||
func_802D5260();
|
||||
func_802D5178(0x1C, 0x28, 0x30, MAP_69_GL_MM_LOBBY, 0x8, 0xA, ACTOR_20E_MM_ENTRANCE_DOOR, 0x28);
|
||||
func_802D5178(0x21, 0x2D, 0x31, MAP_6E_GL_GV_LOBBY, 0xA, 0xA, ACTOR_226_GV_ENTRANCE, 0x12);
|
||||
func_802D5178(0x1E, 0x2A, 0x32, MAP_70_GL_CC_LOBBY, 0xE, 0xA, ACTOR_212_CC_ENTRANCE_BARS, 0xA);
|
||||
func_802D5178(0x1D, 0x29, 0x33, MAP_6D_GL_TTC_LOBBY, 0x9, 0xB, ACTOR_211_TCC_ENTRANCE_CHEST_LID, 0xA);
|
||||
func_802D5178(0x1F, 0x2B, 0x34, MAP_72_GL_BGS_LOBBY, 0xB, 0xB, ACTOR_210_BGS_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(0x23, 0x2F, 0x35, MAP_77_GL_RBB_LOBBY, 0xD, 0x5, ACTOR_20F_RBB_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(0x22, 0x2E, 0x36, MAP_75_GL_MMM_LOBBY, 0xC, 0x6, ACTOR_228_MMM_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(0x3F, 0xE2, 0x40, MAP_93_GL_DINGPOT, 0x10, 0xA, ACTOR_2E5_DOOR_OF_GRUNTY, 0x28);
|
||||
func_802D5178(LEVEL_FLAG_1C_MM_UNKNOWN, 0x28, 0x30, MAP_69_GL_MM_LOBBY, 0x8, 0xA, ACTOR_20E_MM_ENTRANCE_DOOR, 0x28);
|
||||
func_802D5178(LEVEL_FLAG_21_GV_UNKNOWN, 0x2D, 0x31, MAP_6E_GL_GV_LOBBY, 0xA, 0xA, ACTOR_226_GV_ENTRANCE, 0x12);
|
||||
func_802D5178(LEVEL_FLAG_1E_CC_UNKNOWN, 0x2A, 0x32, MAP_70_GL_CC_LOBBY, 0xE, 0xA, ACTOR_212_CC_ENTRANCE_BARS, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_1D_TTC_UNKNOWN, 0x29, 0x33, MAP_6D_GL_TTC_LOBBY, 0x9, 0xB, ACTOR_211_TCC_ENTRANCE_CHEST_LID, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_1F_BGS_UNKNOWN, 0x2B, 0x34, MAP_72_GL_BGS_LOBBY, 0xB, 0xB, ACTOR_210_BGS_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_23_RBB_UNKNOWN, 0x2F, 0x35, MAP_77_GL_RBB_LOBBY, 0xD, 0x5, ACTOR_20F_RBB_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_22_MMM_UNKNOWN, 0x2E, 0x36, MAP_75_GL_MMM_LOBBY, 0xC, 0x6, ACTOR_228_MMM_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_24_CCW_UNKNOWN, 0x30, 0x37, MAP_79_GL_CCW_LOBBY, 0xF, 0xB, ACTOR_234_CCW_ENTRANCE_DOOR, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_20_FP_UNKNOWN, 0x2C, 0x38, MAP_6F_GL_FP_LOBBY, 0x11, 0xA, ACTOR_235_FP_ENTANCE_DOOR, 0xA);
|
||||
func_802D5178(LEVEL_FLAG_3F_LAIR_UNKNOWN, 0xE2, 0x40, MAP_93_GL_DINGPOT, 0x10, 0xA, ACTOR_2E5_DOOR_OF_GRUNTY, 0x28);
|
||||
if(volatileFlag_get(VOLATILE_FLAG_18)){
|
||||
if(!fileProgressFlag_get(FILEPROG_99_PAST_50_NOTE_DOOR_TEXT)){
|
||||
func_80311174(0xF75, 0xE, NULL, NULL, NULL, NULL, func_802D5140);
|
||||
|
|
|
@ -85,7 +85,7 @@ void __chLevelCollectible_presentCollectEmitSparkles(f32 position[3], enum asset
|
|||
}
|
||||
|
||||
s32 __chLevelCollectible_dialogCallback(ActorMarker *marker, enum asset_e text_id, s32 arg2) {
|
||||
return -(levelSpecificFlags_get(0x2A) + levelSpecificFlags_get(0x2B) + levelSpecificFlags_get(0x2C));
|
||||
return -(levelSpecificFlags_get(LEVEL_FLAG_2A_FP_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_2B_FP_UNKNOWN) + levelSpecificFlags_get(LEVEL_FLAG_2C_FP_UNKNOWN));
|
||||
}
|
||||
|
||||
|
||||
|
@ -123,21 +123,21 @@ void __chLevelCollectible_collide(ActorMarker *marker, ActorMarker *other_marker
|
|||
break;
|
||||
|
||||
case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE:
|
||||
levelSpecificFlags_set(0x2A, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2A_FP_UNKNOWN, TRUE);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF);
|
||||
__chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_711_SPRITE_SPARKLE_DARK_BLUE);
|
||||
dialog_id = ASSET_C20_DIALOG_PRESENT_COLLECTIBLE_MEET_BLUE;
|
||||
break;
|
||||
|
||||
case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE:
|
||||
levelSpecificFlags_set(0x2B, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2B_FP_UNKNOWN, TRUE);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF);
|
||||
__chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_712_SPRITE_SPARKLE_GREEN);
|
||||
dialog_id = ASSET_C21_DIALOG_PRESENT_COLLECTIBLE_MEET_GREEN;
|
||||
break;
|
||||
|
||||
case MARKER_1FF_RED_PRESENT_COLLECTIBLE:
|
||||
levelSpecificFlags_set(0x2C, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_2C_FP_UNKNOWN, TRUE);
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 0x7FFF);
|
||||
__chLevelCollectible_presentCollectEmitSparkles(this->position, ASSET_715_SPRITE_SPARKLE_RED);
|
||||
dialog_id = ASSET_C22_DIALOG_PRESENT_COLLECTIBLE_MEET_RED;
|
||||
|
@ -241,15 +241,15 @@ void __chLevelCollectible_returnObj(Actor *this) {
|
|||
break;
|
||||
case MARKER_1FD_BLUE_PRESENT_COLLECTIBLE:
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 32000);
|
||||
levelSpecificFlags_set(0x11, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_11_FP_UNKNOWN, TRUE);
|
||||
break;
|
||||
case MARKER_1FE_GREEN_PRESENT_COLLECTIBLE:
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 32000);
|
||||
levelSpecificFlags_set(0x12, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_12_FP_UNKNOWN, TRUE);
|
||||
break;
|
||||
case MARKER_1FF_RED_PRESENT_COLLECTIBLE:
|
||||
func_8025A6EC(COMUSIC_2B_DING_B, 32000);
|
||||
levelSpecificFlags_set(0x13, 1);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_13_FP_UNKNOWN, TRUE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -278,7 +278,7 @@ void func_803465E4(void){
|
|||
}
|
||||
|
||||
if(!func_8028EC04() && func_8028F070()){
|
||||
if(level_get() != LEVEL_2_TREASURE_TROVE_COVE || !levelSpecificFlags_get(5)){
|
||||
if(level_get() != LEVEL_2_TREASURE_TROVE_COVE || !levelSpecificFlags_get(LEVEL_FLAG_5_TTC_UNKNOWN)){
|
||||
is_underwater = (player_getWaterState() == BSWATERGROUP_2_UNDERWATER);
|
||||
is_on_water_surface = (player_getWaterState() == BSWATERGROUP_1_SURFACE);
|
||||
is_in_polluted_or_winter_water = ((level_get() == LEVEL_9_RUSTY_BUCKET_BAY) || (map_get() == MAP_46_CCW_WINTER));
|
||||
|
@ -398,10 +398,10 @@ void func_80346DB4(s32 note_count) {
|
|||
gcdialog_showText(0xF78, 4, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
if (note_count == 1) {
|
||||
levelSpecificFlags_set(0x34, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_34_UNKNOWN, TRUE);
|
||||
}
|
||||
if (!levelSpecificFlags_get(0x34) && (gcdialog_showText(0xF76, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(0x34, TRUE);
|
||||
if (!levelSpecificFlags_get(LEVEL_FLAG_34_UNKNOWN) && (gcdialog_showText(0xF76, 0, NULL, NULL, NULL, NULL))) {
|
||||
levelSpecificFlags_set(LEVEL_FLAG_34_UNKNOWN, TRUE);
|
||||
}
|
||||
if (volatileFlag_get(VOLATILE_FLAG_17) == 0) {
|
||||
volatileFlag_set(VOLATILE_FLAG_17, 1);
|
||||
|
|
|
@ -252,7 +252,7 @@ void mapModel_opa_draw(Gfx **gfx, Mtx **mtx, Vtx **vtx) {
|
|||
break;
|
||||
|
||||
case MAP_12_GV_GOBIS_VALLEY:
|
||||
func_8033A45C(1, levelSpecificFlags_get(6) ? 1 : 0);
|
||||
func_8033A45C(1, levelSpecificFlags_get(LEVEL_FLAG_6_GV_UNKNOWN) ? 1 : 0);
|
||||
func_8033A45C(2, jiggyscore_isCollected(JIGGY_42_GV_WATER_PYRAMID) ? 0 : 1);
|
||||
func_8033A45C(5, jiggyscore_isCollected(JIGGY_42_GV_WATER_PYRAMID) ? 1 : 0);
|
||||
break;
|
||||
|
|
|
@ -90,7 +90,7 @@ void func_8038EBEC(ActorMarker *marker) {
|
|||
if (this->unkF4_8 == 0xA) {
|
||||
func_8028F918(0);
|
||||
func_8028F918(2);
|
||||
levelSpecificFlags_set(0x3F, TRUE);
|
||||
levelSpecificFlags_set(LEVEL_FLAG_3F_LAIR_UNKNOWN, TRUE);
|
||||
return;
|
||||
}
|
||||
if (this->unkF4_8 == 0xB) {
|
||||
|
|
Loading…
Reference in New Issue