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) { u32 pressed_pause(void) {
if (gServerSettings.pauseAnywhere) { 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; return gPlayer1Controller->buttonPressed & START_BUTTON;
} }
} else { } else {
@ -1351,6 +1351,7 @@ s32 play_mode_paused(void) {
if (gDebugLevelSelect) { if (gDebugLevelSelect) {
fade_into_special_warp(-9, 1); fade_into_special_warp(-9, 1);
} else { } else {
gCamera->cutscene = 0;
initiate_warp(gLevelValues.exitCastleLevel, gLevelValues.exitCastleArea, gLevelValues.exitCastleWarpNode, 0); initiate_warp(gLevelValues.exitCastleLevel, gLevelValues.exitCastleArea, gLevelValues.exitCastleWarpNode, 0);
fade_into_special_warp(0, 0); fade_into_special_warp(0, 0);
gSavedCourseNum = COURSE_NONE; gSavedCourseNum = COURSE_NONE;

View file

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