X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=1f5d4230dfd5c489e73647ebc709f4f4f6628599;hb=c834d452858eb10b833fa4d4dc2dab17303b29e2;hp=7181f75029922116de9eb5cfa60d19b3f8b0404c;hpb=530c3496077af2ddf295d252b4ad0c2ad15e1d21;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index 7181f750..1f5d4230 100644 --- a/src/screens.c +++ b/src/screens.c @@ -1394,6 +1394,8 @@ void DrawMainMenu() /* needed if last screen was the playing screen, invoked from level editor */ if (level_editor_test_game) { + CloseDoor(DOOR_CLOSE_ALL); + SetGameStatus(GAME_MODE_EDITOR); DrawLevelEd(); @@ -1442,9 +1444,6 @@ void DrawMainMenu() FadeOut(fade_mask); - /* needed if last screen was the editor screen */ - UndrawSpecialEditorDoor(); - SetDrawtoField(DRAW_BACKBUFFER); /* level_nr may have been set to value over handicap with level editor */ @@ -2155,8 +2154,6 @@ static void DrawInfoScreen_Main() FreeScreenGadgets(); CreateScreenGadgets(); - CloseDoor(DOOR_CLOSE_2); - /* (needed after displaying title screens which disable auto repeat) */ KeyboardAutoRepeatOn(); @@ -2166,10 +2163,10 @@ static void DrawInfoScreen_Main() ChangeViewportPropertiesIfNeeded(); - OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); - ClearField(); + OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); + DrawTextSCentered(mSY - SY + 16, FONT_TITLE_1, "Info Screen"); info_info = info_info_main; @@ -2191,11 +2188,6 @@ static void DrawInfoScreen_Main() PlayMenuSound(); PlayMenuMusic(); -#if 1 - // needed after returning from title screens with different window size - OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); -#endif - DrawMaskedBorder(fade_mask); FadeIn(fade_mask); @@ -3667,14 +3659,12 @@ static void DrawChooseTree(TreeInfo **ti_ptr) FreeScreenGadgets(); CreateScreenGadgets(); - CloseDoor(DOOR_CLOSE_2); - FadeOut(fade_mask); - OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); - ClearField(); + OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); + HandleChooseTree(0, 0, 0, 0, MB_MENU_INITIALIZE, ti_ptr); MapScreenTreeGadgets(*ti_ptr); @@ -4153,9 +4143,6 @@ void DrawHallOfFame(int highlight_position) { int fade_mask = REDRAW_FIELD; - /* required before door position may be changed in next step */ - CloseDoor(DOOR_CLOSE_ALL); - /* needed if different viewport properties defined for scores */ ChangeViewportPropertiesIfNeeded(); @@ -5780,17 +5767,15 @@ static void DrawSetupScreen_Generic() FreeScreenGadgets(); CreateScreenGadgets(); - CloseDoor(DOOR_CLOSE_2); - if (redraw_mask & REDRAW_ALL) redraw_all = TRUE; FadeOut(fade_mask); - OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); - ClearField(); + OpenDoor(GetDoorState() | DOOR_NO_DELAY | DOOR_FORCE_REDRAW); + if (setup_mode == SETUP_MODE_MAIN) { setup_info = setup_info_main;