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

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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