fix paused anywhere

This commit is contained in:
Isaac0-dev 2025-01-06 23:13:07 +10:00
parent 68debf9d54
commit 83002e06e4
2 changed files with 2 additions and 2 deletions

View file

@ -251,7 +251,7 @@ u16 level_control_timer(s32 timerOp) {
u32 pressed_pause(void) {
if (gServerSettings.pauseAnywhere) {
if (get_dialog_id() < 0 && !gWarpTransition.isActive && sDelayedWarpOp == WARP_OP_NONE) {
if (get_dialog_id() < 0 && sCurrPlayMode == PLAY_MODE_NORMAL) {
return gPlayer1Controller->buttonPressed & START_BUTTON;
}
} else {
@ -1351,6 +1351,7 @@ s32 play_mode_paused(void) {
if (gDebugLevelSelect) {
fade_into_special_warp(-9, 1);
} else {
gCamera->cutscene = 0;
initiate_warp(gLevelValues.exitCastleLevel, gLevelValues.exitCastleArea, gLevelValues.exitCastleWarpNode, 0);
fade_into_special_warp(0, 0);
gSavedCourseNum = COURSE_NONE;

View file

@ -162,7 +162,6 @@ void djui_render(void) {
djui_panel_update();
djui_popup_update();
djui_base_set_visible(&gDjuiPauseOptions->base, (sCurrPlayMode == PLAY_MODE_PAUSED));
djui_base_set_visible(&gDjuiPauseOptions->base, (sCurrPlayMode == PLAY_MODE_PAUSED) && !gDjuiPanelPauseCreated);
if (gDjuiRoot != NULL) {
djui_base_render(&gDjuiRoot->base);