Merge branch 'level_specific_flags' into 'master'

Document level specific flags

See merge request banjo.decomp/banjo-kazooie!88
This commit is contained in:
Banjo Kazooie
2024-10-08 06:07:43 +00:00
47 changed files with 274 additions and 173 deletions

View File

@@ -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);
}
}

View File

@@ -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;
}

View File

@@ -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);
}
}

View File

@@ -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;
}

View File

@@ -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;

View File

@@ -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);
}
}