diff options
Diffstat (limited to 'video')
-rw-r--r-- | video/cocoa_v.m | 3 | ||||
-rw-r--r-- | video/dedicated_v.c | 4 | ||||
-rw-r--r-- | video/sdl_v.c | 3 | ||||
-rw-r--r-- | video/win32_v.c | 3 |
4 files changed, 9 insertions, 4 deletions
diff --git a/video/cocoa_v.m b/video/cocoa_v.m index 4de6af703..758120f03 100644 --- a/video/cocoa_v.m +++ b/video/cocoa_v.m @@ -56,6 +56,7 @@ extern void HideMenuBar(void); #include "../window.h" #include "../network.h" #include "../variables.h" +#include "../genworld.h" #include "../os/macosx/splash.h" #include "cocoa_v.h" @@ -709,7 +710,7 @@ static void QZ_GameLoop(void) #endif { if (!_networking && _game_mode != GM_MENU) _fast_forward |= 2; - } else if (_fast_forward & 2) { + } else if (_fast_forward & 2 && !IsGeneratingWorld()) { _fast_forward = 0; } diff --git a/video/dedicated_v.c b/video/dedicated_v.c index 3c367efe9..953368f99 100644 --- a/video/dedicated_v.c +++ b/video/dedicated_v.c @@ -12,6 +12,7 @@ #include "../window.h" #include "../console.h" #include "../variables.h" +#include "../genworld.h" #include "dedicated_v.h" #ifdef BEOS_NET_SERVER @@ -240,8 +241,9 @@ static void DedicatedVideoMainLoop(void) /* If SwitchMode is SM_LOAD, it means that the user used the '-g' options */ if (_switch_mode != SM_LOAD) { + StartNewGameWithoutGUI(GENERATE_NEW_SEED); + SwitchMode(_switch_mode); _switch_mode = SM_NONE; - GenRandomNewGame(Random(), InteractiveRandom()); } else { _switch_mode = SM_NONE; /* First we need to test if the savegame can be loaded, else we will end up playing the diff --git a/video/sdl_v.c b/video/sdl_v.c index 275db9dba..14675ba52 100644 --- a/video/sdl_v.c +++ b/video/sdl_v.c @@ -13,6 +13,7 @@ #include "../window.h" #include "../network.h" #include "../variables.h" +#include "../genworld.h" #include "sdl_v.h" #include <SDL.h> @@ -461,7 +462,7 @@ static void SdlVideoMainLoop(void) if (keys[SDLK_TAB]) #endif { - if (!_networking && _game_mode != GM_MENU) _fast_forward |= 2; + if (!_networking && _game_mode != GM_MENU && !IsGeneratingWorld()) _fast_forward |= 2; } else if (_fast_forward & 2) { _fast_forward = 0; } diff --git a/video/win32_v.c b/video/win32_v.c index 4d25b6e65..a50ff6d72 100644 --- a/video/win32_v.c +++ b/video/win32_v.c @@ -9,6 +9,7 @@ #include "../variables.h" #include "../win32.h" #include "../window.h" +#include "../genworld.h" #include "win32_v.h" #include <windows.h> @@ -792,7 +793,7 @@ static void Win32GdiMainLoop(void) * real key is in the upper 16 bits (see WM_SYSKEYDOWN in WndProcGdi()) */ if ((_pressed_key >> 16) & WKC_TAB && #endif - !_networking && _game_mode != GM_MENU) + !_networking && _game_mode != GM_MENU && !IsGeneratingWorld()) _fast_forward |= 2; } else if (_fast_forward & 2) { _fast_forward = 0; |