X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=f38ab8549b031169ce65e9c66ae5fbeea78e62b6;hb=c5728b1ebc2a1d3753a6eea5a0f6335d077eef6b;hp=c0a3b8c64a93b851a9b24380d3cde2c3786cc0b5;hpb=3d97e3d9c20a984e70dae5e63e7c5069fb136c91;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index c0a3b8c6..f38ab854 100644 --- a/src/screens.c +++ b/src/screens.c @@ -58,6 +58,17 @@ void DrawMainMenu() int i; char *name_text = (!options.network && setup.team_mode ? "Team:" : "Name:"); + /* needed if last screen was the playing screen, invoked from level editor */ + if (level_editor_test_game) + { + game_status = LEVELED; + DrawLevelEd(); + return; + } + + /* needed if last screen was the level editor */ + UnmapLevelEditorGadgets(); + FadeSounds(); GetPlayerConfig(); LoadLevel(level_nr); @@ -169,7 +180,8 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button) if (new_level_nr > leveldir[leveldir_nr].levels - 1) new_level_nr = leveldir[leveldir_nr].levels - 1; - if (old_level_nr == new_level_nr || !DelayReached(&level_delay, 150)) + if (old_level_nr == new_level_nr || + !DelayReached(&level_delay, GADGET_FRAME_DELAY)) goto out; level_nr = new_level_nr; @@ -850,7 +862,7 @@ void HandleChooseLevel(int mx, int my, int dx, int dy, int button) if (x == 1 && y == 2) { if (first_entry > 0 && - (dy || DelayReached(&choose_delay, 150))) + (dy || DelayReached(&choose_delay, GADGET_FRAME_DELAY))) { #if 0 first_entry--; @@ -868,7 +880,7 @@ void HandleChooseLevel(int mx, int my, int dx, int dy, int button) else if (x == 1 && y > num_page_entries + 2) { if (first_entry + num_page_entries < num_leveldirs && - (dy || DelayReached(&choose_delay, 150))) + (dy || DelayReached(&choose_delay, GADGET_FRAME_DELAY))) { #if 0 first_entry++; @@ -1410,7 +1422,7 @@ void HandleSetupInputScreen(int mx, int my, int dx, int dy, int button) { static unsigned long delay = 0; - if (!DelayReached(&delay, 150)) + if (!DelayReached(&delay, GADGET_FRAME_DELAY)) goto out; player_nr = (player_nr + (x == 11 ? -1 : +1) + MAX_PLAYERS) % MAX_PLAYERS;