DEADSOFTWARE

"t_dump_node_queries" (temp debug, DO NOT TOUCH)
[d2df-sdl.git] / src / game / g_game.pas
index fa9c2883bdd1deed73ae7041b597992ab655f2fa..2d3fb588db863d074a7e3ae0f7c16c3ae954100e 100644 (file)
@@ -313,6 +313,7 @@ var
   g_profile_frame_update: Boolean = false;
   g_profile_frame_draw: Boolean = false;
   g_profile_collision: Boolean = false;
+  g_profile_history_size: Integer = 1000;
 
 procedure g_ResetDynlights ();
 procedure g_AddDynLight (x, y, radius: Integer; r, g, b, a: Single);
@@ -474,7 +475,7 @@ function drawProfiles (x, y: Integer; prof: TProfiler): Integer;
 var
   wdt, hgt: Integer;
   yy: Integer;
-  ii, idx: Integer;
+  ii: Integer;
 begin
   result := 0;
   if (prof = nil) then exit;
@@ -1489,8 +1490,6 @@ var
   w: Word;
   i, b: Integer;
 begin
-  g_Map_ProfilersBegin();
-
   g_ResetDynlights();
 // Ïîðà âûêëþ÷àòü èãðó:
   if gExit = EXIT_QUIT then
@@ -2012,8 +2011,6 @@ begin
   end;
 
   if gGameOn then g_Weapon_AddDynLights();
-
-  g_Map_ProfilersEnd();
 end;
 
 procedure g_Game_LoadData();
@@ -2753,7 +2750,7 @@ begin
     Exit;
   end;
 
-  if (profileFrameDraw = nil) then profileFrameDraw := TProfiler.Create('MAP RENDER');
+  if (profileFrameDraw = nil) then profileFrameDraw := TProfiler.Create('MAP RENDER', g_profile_history_size);
   profileFrameDraw.mainBegin(g_profile_frame_draw);
 
   gPlayerDrawn := p;
@@ -5020,22 +5017,26 @@ var
 begin
   //if not gDebugMode then exit;
   cmd := LowerCase(P[0]);
+
   if cmd = 'dpp' then
   begin
     g_profile_frame_draw := not g_profile_frame_draw;
     exit;
   end;
+
   if cmd = 'dpu' then
   begin
     g_profile_frame_update := not g_profile_frame_update;
     exit;
   end;
+
   if cmd = 'dpc' then
   begin
     g_profile_collision := not g_profile_collision;
     exit;
   end;
-  if cmd = 'r_draw_grid' then
+
+  if cmd = 'r_gridrender' then
   begin
     case getBool(1) of
       -1: begin end;
@@ -5045,6 +5046,7 @@ begin
     if gdbg_map_use_grid_render then g_Console_Add('grid rendering: tan') else g_Console_Add('grid rendering: ona');
     exit;
   end;
+
   if cmd = 'dbg_coldet_grid' then
   begin
     case getBool(1) of
@@ -5055,6 +5057,24 @@ begin
     if gdbg_map_use_grid_coldet then g_Console_Add('grid coldet: tan') else g_Console_Add('grid coldet: ona');
     exit;
   end;
+
+  if (cmd = 'sq_use_grid') or (cmd = 'sq_use_tree') then
+  begin
+    gdbg_map_use_tree_coldet := (cmd = 'sq_use_tree');
+    if gdbg_map_use_tree_coldet then g_Console_Add('coldet: tree') else g_Console_Add('coldet: grid');
+    exit;
+  end;
+
+  if (cmd = 't_dump_node_queries') then
+  begin
+    case getBool(1) of
+      -1: begin end;
+       0: gdbg_map_dump_coldet_tree_queries := false;
+       1: gdbg_map_dump_coldet_tree_queries := true;
+    end;
+    if gdbg_map_dump_coldet_tree_queries then g_Console_Add('grid coldet tree queries: tan') else g_Console_Add('grid coldet tree queries: ona');
+    exit;
+  end;
 end;
 
 procedure DebugCommands(P: SArray);
@@ -6910,6 +6930,12 @@ begin
     Exit;
   end;
 
+  s := LowerCase(Find_Param_Value(pars, '-dbg-mainwad'));
+  if (s <> '') then
+  begin
+    gDefaultMegawadStart := s;
+  end;
+
 // Start map when game loads:
   map := LowerCase(Find_Param_Value(pars, '-map'));
   if isWadPath(map) then