Fix new level transition synchronization softlock
This commit is contained in:
parent
a6b3ddcc69
commit
c86c7f7280
|
@ -2698,7 +2698,7 @@ s16 render_pause_courses_and_castle(void) {
|
||||||
case DIALOG_STATE_OPENING:
|
case DIALOG_STATE_OPENING:
|
||||||
gDialogLineNum = 1;
|
gDialogLineNum = 1;
|
||||||
gDialogTextAlpha = 0;
|
gDialogTextAlpha = 0;
|
||||||
level_set_transition(-1, 0);
|
//level_set_transition(-1, 0);
|
||||||
#if defined(VERSION_JP) || defined(VERSION_SH)
|
#if defined(VERSION_JP) || defined(VERSION_SH)
|
||||||
play_sound(SOUND_MENU_PAUSE, gDefaultSoundArgs);
|
play_sound(SOUND_MENU_PAUSE, gDefaultSoundArgs);
|
||||||
#else
|
#else
|
||||||
|
@ -3128,7 +3128,7 @@ s16 render_course_complete_screen(void) {
|
||||||
render_course_complete_lvl_info_and_hud_str();
|
render_course_complete_lvl_info_and_hud_str();
|
||||||
if (gCourseDoneMenuTimer > 100 && gCourseCompleteCoinsEqual == 1) {
|
if (gCourseDoneMenuTimer > 100 && gCourseCompleteCoinsEqual == 1) {
|
||||||
gDialogBoxState = DIALOG_STATE_VERTICAL;
|
gDialogBoxState = DIALOG_STATE_VERTICAL;
|
||||||
level_set_transition(-1, 0);
|
//level_set_transition(-1, 0);
|
||||||
gDialogTextAlpha = 0;
|
gDialogTextAlpha = 0;
|
||||||
gDialogLineNum = 1;
|
gDialogLineNum = 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -265,7 +265,7 @@ void load_level_init_text(u32 arg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gotAchievement) {
|
if (!gotAchievement) {
|
||||||
level_set_transition(-1, NULL);
|
//level_set_transition(-1, NULL);
|
||||||
create_dialog_box(dialogID);
|
create_dialog_box(dialogID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -995,13 +995,8 @@ static void check_received_warp(void) {
|
||||||
if (!gControlledWarp) {
|
if (!gControlledWarp) {
|
||||||
// force well behaved state
|
// force well behaved state
|
||||||
extern s16 gMenuMode;
|
extern s16 gMenuMode;
|
||||||
reset_dialog_render_state();
|
|
||||||
level_set_transition(1, 0);
|
|
||||||
gMenuMode = -1;
|
gMenuMode = -1;
|
||||||
gPauseScreenMode = 1;
|
reset_dialog_render_state();
|
||||||
gSaveOptSelectIndex = 0;
|
|
||||||
gMarioStates[0].action = (gMarioStates[0].pos[1] <= gMarioStates[0].waterLevel) ? ACT_WATER_IDLE : ACT_IDLE;
|
|
||||||
gCameraMovementFlags &= ~CAM_MOVE_PAUSE_SCREEN;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
set_play_mode((sWarpDest.type == WARP_TYPE_CHANGE_LEVEL)
|
set_play_mode((sWarpDest.type == WARP_TYPE_CHANGE_LEVEL)
|
||||||
|
@ -1012,10 +1007,6 @@ static void check_received_warp(void) {
|
||||||
if (sWarpDest.type == WARP_TYPE_CHANGE_LEVEL && warpCourse == COURSE_NONE) {
|
if (sWarpDest.type == WARP_TYPE_CHANGE_LEVEL && warpCourse == COURSE_NONE) {
|
||||||
sReceivedLoadedActNum = 0;
|
sReceivedLoadedActNum = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*return (sWarpDest.type == WARP_TYPE_CHANGE_LEVEL)
|
|
||||||
? sWarpDest.levelNum
|
|
||||||
: 0;*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int gPressedStart = 0;
|
int gPressedStart = 0;
|
||||||
|
|
Loading…
Reference in New Issue