X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_game.pas;h=a85ad9af2ab7362961e28449b46f8dc125f6467e;hb=51bbf0eef2641d7766e22e188d6c349d9b836023;hp=a7f5a48d198af886852aae7361f3972b88fa39b9;hpb=2fa77a7c9667395ef6d4141cde69ff6349bf301e;p=d2df-sdl.git diff --git a/src/game/g_game.pas b/src/game/g_game.pas index a7f5a48..a85ad9a 100644 --- a/src/game/g_game.pas +++ b/src/game/g_game.pas @@ -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 (); @@ -2495,7 +2495,7 @@ var result := false; // don't stop with mon do begin - if Live then + if alive then begin // Ëåâûé âåðõíèé óãîë aX := Obj.X div ScaleSz + 1; @@ -2658,7 +2658,7 @@ begin // Ðèñóåì èãðîêîâ: 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; @@ -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; @@ -5097,7 +5100,7 @@ begin 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]'); @@ -6122,6 +6125,21 @@ begin 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 @@ -6139,21 +6157,6 @@ 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 @@ -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.