DEADSOFTWARE

mplat bug: it was EXTREMELY wise to ask monster grid for old panel position
[d2df-sdl.git] / src / game / g_game.pas
index a7f5a48d198af886852aae7361f3972b88fa39b9..9ec96396134f776058e72cb7616103bd7a116501 100644 (file)
@@ -324,7 +324,7 @@ var
   g_rlayer_water: Boolean = true;
   g_rlayer_fore: Boolean = true;
 
-  g_dbg_scale_05: Boolean = false;
+  g_dbg_scale: Single = 1.0;
 
 
 procedure g_ResetDynlights ();
@@ -2796,9 +2796,9 @@ begin
   profileFrameDraw.sectionBegin('collect');
   if gdbg_map_use_accel_render then
   begin
-    if g_dbg_scale_05 then
+    if (g_dbg_scale <> 1.0) then
     begin
-      g_Map_CollectDrawPanels(sX, sY, sWidth*2, sHeight*2);
+      g_Map_CollectDrawPanels(sX, sY, round(sWidth/g_dbg_scale)+1, round(sHeight/g_dbg_scale)+1);
     end
     else
     begin
@@ -2811,17 +2811,10 @@ begin
   g_Map_DrawBack(backXOfs, backYOfs);
   profileFrameDraw.sectionEnd();
 
-  if (setTransMatrix) then
+  if setTransMatrix then
   begin
-    if g_dbg_scale_05 then
-    begin
-      glScalef(0.5, 0.5, 1.0);
-      glTranslatef(transX, transY, 0);
-    end
-    else
-    begin
-      glTranslatef(transX, transY, 0);
-    end;
+    glScalef(g_dbg_scale, g_dbg_scale, 1.0);
+    glTranslatef(transX, transY, 0);
   end;
 
   drawPanelType('*back', PANEL_BACK, g_rlayer_back);
@@ -3230,16 +3223,26 @@ begin
   begin
     if (gState = STATE_MENU) then
     begin
-      if  ((g_ActiveWindow = nil) or (g_ActiveWindow.BackTexture = '')) then
+      if (g_ActiveWindow = nil) or (g_ActiveWindow.BackTexture = '') then
       begin
-        if g_Texture_Get('MENU_BACKGROUND', ID) then
-          e_DrawSize(ID, 0, 0, 0, False, False, gScreenWidth, gScreenHeight)
+        if g_Texture_Get('MENU_BACKGROUND', ID) then e_DrawSize(ID, 0, 0, 0, False, False, gScreenWidth, gScreenHeight)
         else e_Clear(GL_COLOR_BUFFER_BIT, 0, 0, 0);
       end;
-      if g_ActiveWindow <> nil then
+      // F3 at menu will show game loading dialog
+      if e_KeyPressed(IK_F3) then g_Menu_Show_LoadMenu(true);
+      if (g_ActiveWindow <> nil) then
       begin
         //e_DrawFillQuad(0, 0, gScreenWidth-1, gScreenHeight-1, 48, 48, 48, 180);
         e_DarkenQuadWH(0, 0, gScreenWidth, gScreenHeight, 150);
+      end
+      else
+      begin
+        // F3 at titlepic will show game loading dialog
+        if e_KeyPressed(IK_F3) then
+        begin
+          g_Menu_Show_LoadMenu(true);
+          if (g_ActiveWindow <> nil) then e_DarkenQuadWH(0, 0, gScreenWidth, gScreenHeight, 150);
+        end;
       end;
     end;
 
@@ -7033,5 +7036,5 @@ begin
 
   conRegVar('dbg_holmes', @g_holmes_enabled, 'enable/disable Holmes', 'Holmes', true);
 
-  conRegVar('dbg_scale_half', @g_dbg_scale_05, 'experimental deBUG scale*0.5 mode', 'Scale0.5', true);
+  conRegVar('dbg_scale', @g_dbg_scale, 0.01, 5.0, 'experimental deBUG scale mode', '',  true);
 end.