DEADSOFTWARE

don't interpolate during endgame fadeout
[d2df-sdl.git] / src / game / g_window.pas
index f55c43001f90849c064bfc3a98b9dac28370322f..1eaf7b9cb50d17b97fdc36a52f5fa733278e4a14 100644 (file)
@@ -88,11 +88,18 @@ begin
 
     if forceUpdate then
     begin
+      e_SetRendertarget(True);
+      e_SetViewPort(0, 0, gScreenWidth, gScreenHeight);
+
       DrawMenuBackground('INTER');
       e_DarkenQuadWH(0, 0, gScreenWidth, gScreenHeight, 150);
-
       DrawLoadingStat();
       g_Console_Draw(True);
+
+      e_SetRendertarget(False);
+      e_SetViewPort(0, 0, gWinSizeX, gWinSizeY);
+      e_BlitFramebuffer(gWinSizeX, gWinSizeY);
+
       sys_Repaint;
       prevLoadingUpdateTime := getTimeMilli();
     end;
@@ -143,11 +150,6 @@ begin
       else if (NetMode = NET_CLIENT) then g_Net_Client_Update();
       Update();
     end;
-  end
-  else
-  begin
-         if (NetMode = NET_SERVER) then g_Net_Host_Update()
-    else if (NetMode = NET_CLIENT) then g_Net_Client_Update();
   end;
 
   if NetMode = NET_SERVER then g_Net_Flush();
@@ -179,7 +181,7 @@ begin
   begin
     if (not wMinimized) then
     begin
-      if gPause or not gLerpActors then
+      if gPause or (not gLerpActors) or (gState = STATE_FOLD) then
         gLerpFactor := 1.0
       else
         gLerpFactor := nmin(1.0, (Time - Time_Old) / 28.0);