Documented map Mad Monster Mansion

This commit is contained in:
Owlenuff 2024-09-30 11:05:42 +02:00
parent ea4b9ab1a6
commit d1e9b74dc2
4 changed files with 22 additions and 11 deletions

View File

@ -2305,6 +2305,17 @@ enum mm_specific_flags {
MM_SPECIFIC_FLAG_A_UNKNOWN
};
enum mmm_specific_flags {
MMM_SPECIFIC_FLAG_0_UNKNOWN,
MMM_SPECIFIC_FLAG_1_UNKNOWN,
MMM_SPECIFIC_FLAG_2_UNKNOWN,
MMM_SPECIFIC_FLAG_3_UNKNOWN,
MMM_SPECIFIC_FLAG_4_UNKNOWN,
MMM_SPECIFIC_FLAG_5_UNKNOWN,
MMM_SPECIFIC_FLAG_6_UNKNOWN,
MMM_SPECIFIC_FLAG_7_UNKNOWN
};
enum item_e
{
ITEM_0_HOURGLASS_TIMER = 0x0,

View File

@ -287,7 +287,7 @@ void func_80388BDC(Actor *this) {
f64 phi_f0;
func_802D3D74(this);
mapSpecificFlags_set(1, BOOL((this->yaw > 260.0f) && (this->yaw < 330.0f)));
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_1_UNKNOWN, BOOL((this->yaw > 260.0f) && (this->yaw < 330.0f)));
if (!this->volatile_initialized) {
if (this->yaw != 0.0f) {
this->lifetime_value = 0.5f;
@ -304,11 +304,11 @@ void func_80388BDC(Actor *this) {
switch (this->state) {
case 1:
this->yaw = 0.0f;
if(mapSpecificFlags_get(0)) {
if(mapSpecificFlags_get(MMM_SPECIFIC_FLAG_0_UNKNOWN)) {
func_802BAFE4(0x21);
subaddie_set_state(this, 6);
func_80244BB0(0, 0x6A, 0x7FF8, 0.3f);
mapSpecificFlags_set(2, 0);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_2_UNKNOWN, FALSE);
func_8025A6EC(COMUSIC_4_MMM_CLOCK_VERSION, -1);
func_8025AE0C(2000, 3.0f);
}
@ -350,7 +350,7 @@ void func_80388BDC(Actor *this) {
subaddie_set_state(this, 1U);
this->yaw = 0.0f;
func_8030E540(SFX_7F_HEAVYDOOR_SLAM);
mapSpecificFlags_set(0, 0);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_0_UNKNOWN, FALSE);
func_80244C78(0);
if (!this->unk38_31) {
func_8025A6EC(COMUSIC_3C_MINIGAME_LOSS, 0x7FF8);

View File

@ -72,21 +72,21 @@ void func_8038A140(UNK_TYPE(s32) arg0) {
if (arg0 == 2) {
func_80324E38(0.3f, 3);
timed_setStaticCameraToNode(0.3f, 1);
timedFunc_set_2(0.3f, mapSpecificFlags_set, 3, 1);
timedFunc_set_2(0.3f, mapSpecificFlags_set, MMM_SPECIFIC_FLAG_3_UNKNOWN, TRUE);
func_80324E38(3.0f, 0);
timed_exitStaticCamera(3.0f);
timedFunc_set_1(3.0f, func_8038A140, 3);
}
if (arg0 == 3) {
if (MMM_D_8038C510.unk8 == 1) {
mapSpecificFlags_set(3, 1);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_3_UNKNOWN, 1);
}
item_set(ITEM_0_HOURGLASS_TIMER, 75*60 - 1);
item_set(6, 1);
}
if (MMM_D_8038C510.unk8 == 3) {
item_set(6, 0);
mapSpecificFlags_set(4, 1);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_4_UNKNOWN, 1);
}
if (arg0 == 4) {
func_8028F66C(BS_INTR_F);

View File

@ -100,7 +100,7 @@ void MMM_func_8038ADF0(Struct_MMM_47D0_0 *arg0, Struct68s *arg1) {
}
void func_8038AF0C(ActorMarker *marker, enum asset_e text_id, s32 arg2) {
mapSpecificFlags_set(1, 1);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_1_UNKNOWN, TRUE);
}
void func_8038AF3C(Struct_MMM_47D0_0 *arg0, s32 arg1) {
@ -177,15 +177,15 @@ void func_8038AF90(Struct_MMM_47D0_0 *arg0, Struct68s *arg1, f32 arg2) {
}
player_getPosition(sp48);
func_8035179C(arg1, sp54);
if (!mapSpecificFlags_get(0) && (arg0->unk4 == 0) && (func_80258640(sp54, sp48) < 250.0f)){
if (!mapSpecificFlags_get(MMM_SPECIFIC_FLAG_0_UNKNOWN) && (arg0->unk4 == 0) && (func_80258640(sp54, sp48) < 250.0f)){
if(gcdialog_showText(0xADA, 0, NULL, NULL, NULL, NULL)) {
mapSpecificFlags_set(0, TRUE);
}
}
if ((arg0->unk4 == 1) && mapSpecificFlags_get(1)) {
if ((arg0->unk4 == 1) && mapSpecificFlags_get(MMM_SPECIFIC_FLAG_1_UNKNOWN)) {
arg0->unk4 = 2U;
arg0->unk8 = 0.0f;
mapSpecificFlags_set(1, 0);
mapSpecificFlags_set(MMM_SPECIFIC_FLAG_1_UNKNOWN, FALSE);
FUNC_8030E8B4(SFX_11B_TUMBLAR_DISAPPEARING_1, 1.0f, 30000, sp54, 500, 2500);
}