diff --git a/src/game/g_game.pas b/src/game/g_game.pas
index a7f5a48d198af886852aae7361f3972b88fa39b9..a85ad9af2ab7362961e28449b46f8dc125f6467e 100644 (file)
--- a/src/game/g_game.pas
+++ b/src/game/g_game.pas
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 ();
result := false; // don't stop
with mon do
begin
- if Live then
+ if alive then
begin
// Ëåâûé âåðõíèé óãîë
aX := Obj.X div ScaleSz + 1;
// Ðèñóåì èãðîêîâ:
for a := 0 to High(gPlayers) do
if gPlayers[a] <> nil then with gPlayers[a] do
- if Live then begin
+ if alive then begin
// Ëåâûé âåðõíèé óãîë:
aX := Obj.X div ScaleSz + 1;
aY := Obj.Y div ScaleSz + 1;
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
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);
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;
end
else if cmd = 'd_monster' then
begin
- if gGameOn and (gPlayer1 <> nil) and (gPlayer1.Live) and (not g_Game_IsNet) then
+ if gGameOn and (gPlayer1 <> nil) and (gPlayer1.alive) and (not g_Game_IsNet) then
if Length(P) < 2 then
begin
g_Console_Add(cmd + ' [ID | Name] [behaviour]');
Exit;
end;
end
+ else if cmd = 'suicide' then
+ begin
+ if gGameOn then
+ begin
+ if g_Game_IsClient then
+ MC_SEND_CheatRequest(NET_CHEAT_SUICIDE)
+ else
+ begin
+ if gPlayer1 <> nil then
+ gPlayer1.Damage(SUICIDE_DAMAGE, gPlayer1.UID, 0, 0, HIT_SELF);
+ if gPlayer2 <> nil then
+ gPlayer2.Damage(SUICIDE_DAMAGE, gPlayer2.UID, 0, 0, HIT_SELF);
+ end;
+ end;
+ end
// Êîìàíäû Ñâîåé èãðû:
else if gGameSettings.GameType in [GT_CUSTOM, GT_SERVER, GT_CLIENT] then
begin
else
g_Bot_Add(TEAM_BLUE, 2);
end
- else if cmd = 'suicide' then
- begin
- if gGameOn then
- begin
- if g_Game_IsClient then
- MC_SEND_CheatRequest(NET_CHEAT_SUICIDE)
- else
- begin
- if gPlayer1 <> nil then
- gPlayer1.Damage(SUICIDE_DAMAGE, gPlayer1.UID, 0, 0, HIT_SELF);
- if gPlayer2 <> nil then
- gPlayer2.Damage(SUICIDE_DAMAGE, gPlayer2.UID, 0, 0, HIT_SELF);
- end;
- end;
- end
else if cmd = 'spectate' then
begin
if not gGameOn then
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.