--- a/hedgewars/hwengine.pas Sat Apr 20 02:17:53 2013 +0200
+++ b/hedgewars/hwengine.pas Sat Apr 20 02:20:15 2013 +0200
@@ -32,7 +32,7 @@
uses SDLh, uMisc, uConsole, uGame, uConsts, uLand, uAmmos, uVisualGears, uGears, uStore, uWorld, uInputHandler
, uSound, uScript, uTeams, uStats, uIO, uLocale, uChat, uAI, uAIMisc, uAILandMarks, uLandTexture, uCollisions
, SysUtils, uTypes, uVariables, uCommands, uUtils, uCaptions, uDebug, uCommandHandlers, uLandPainted
- , uPhysFSLayer, uCursor
+ , uPhysFSLayer, uCursor, uRandom
{$IFDEF USE_VIDEO_RECORDING}, uVideoRec {$ENDIF}
{$IFDEF USE_TOUCH_INTERFACE}, uTouch {$ENDIF}
{$IFDEF ANDROID}, GLUnit{$ENDIF}
@@ -79,6 +79,7 @@
DisableSomeWeapons;
AddClouds;
AddFlakes;
+ SetRandomSeed(cSeed, false);
AssignHHCoords;
AddMiscGears;
StoreLoad(false);
@@ -156,7 +157,7 @@
while isTerminated = false do
begin
SDL_PumpEvents();
-
+
while SDL_PeepEvents(@event, 1, SDL_GETEVENT, {$IFDEF SDL13}SDL_FIRSTEVENT, SDL_LASTEVENT{$ELSE}SDL_ALLEVENTS{$ENDIF}) > 0 do
begin
case event.type_ of
@@ -172,7 +173,7 @@
SDL_KEYUP:
if GameState <> gsChat then
ProcessKey(event.key);
-
+
SDL_WINDOWEVENT:
if event.window.event = SDL_WINDOWEVENT_SHOWN then
begin
@@ -198,13 +199,13 @@
cNewScreenHeight:= max(2 * (event.window.data2 div 2), cMinScreenHeight);
cScreenResizeDelay:= RealTicks + 500{$IFDEF IPHONEOS}div 2{$ENDIF};
end;
-
+
SDL_FINGERMOTION:
onTouchMotion(event.tfinger.x, event.tfinger.y,event.tfinger.dx, event.tfinger.dy, event.tfinger.fingerId);
-
+
SDL_FINGERDOWN:
onTouchDown(event.tfinger.x, event.tfinger.y, event.tfinger.fingerId);
-
+
SDL_FINGERUP:
onTouchUp(event.tfinger.x, event.tfinger.y, event.tfinger.fingerId);
{$ELSE}
@@ -216,7 +217,7 @@
SDL_KEYUP:
if GameState <> gsChat then
ProcessKey(event.key);
-
+
SDL_MOUSEBUTTONDOWN:
if GameState = gsConfirm then
begin
@@ -225,10 +226,10 @@
end
else
ProcessMouse(event.button, true);
-
+
SDL_MOUSEBUTTONUP:
- ProcessMouse(event.button, false);
-
+ ProcessMouse(event.button, false);
+
SDL_ACTIVEEVENT:
if (event.active.state and SDL_APPINPUTFOCUS) <> 0 then
begin
@@ -237,7 +238,7 @@
if prevFocusState xor cHasFocus then
onFocusStateChanged()
end;
-
+
SDL_VIDEORESIZE:
begin
// using lower values than cMinScreenWidth or cMinScreenHeight causes widget overlap and off-screen widget parts
@@ -341,7 +342,7 @@
' (' + cHashString + ') with protocol #' + inttostr(cNetProtoVersion));
AddFileLog('Prefix: "' + PathPrefix +'"');
AddFileLog('UserPrefix: "' + UserPathPrefix +'"');
-
+
for i:= 0 to ParamCount do
AddFileLog(inttostr(i) + ': ' + ParamStr(i));
@@ -361,7 +362,7 @@
InitOffscreenOpenGL()
else
{$ENDIF}
- begin
+ begin
// show main window
if cFullScreen then
ParseCommand('fullscr 1', true)