X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_console.pas;h=4866ea19371efc68ff3588db5eefb35ebcfb008a;hb=efadc1f305ab09388e8baf396a8dda66b69b74a9;hp=9a2bd99f3eb24d52b86d0acff0effd80caa69cd5;hpb=043af909368ca8f82e418f0e5e440478b89eb3d4;p=d2df-sdl.git diff --git a/src/game/g_console.pas b/src/game/g_console.pas index 9a2bd99..4866ea1 100644 --- a/src/game/g_console.pas +++ b/src/game/g_console.pas @@ -719,13 +719,15 @@ begin end; 'togglechat': begin - g_Console_Chat_Switch; + if not gConsoleShow and (g_ActiveWindow = nil) then + g_Console_Chat_Switch; gSkipFirstChar := not g_Console_Interactive() end; 'toggleteamchat': if gGameSettings.GameMode in [GM_TDM, GM_CTF] then begin - g_Console_Chat_Switch(True); + if not gConsoleShow and (g_ActiveWindow = nil) then + g_Console_Chat_Switch(True); gSkipFirstChar := not g_Console_Interactive() end; end @@ -1727,11 +1729,14 @@ end; procedure g_Console_ProcessBind (key: Integer; down: Boolean); var i: Integer; begin - if (not g_GUIGrabInput) and (not gChatShow) and (key >= 0) and (key < e_MaxInputKeys) and ((gInputBinds[key].down <> nil) or (gInputBinds[key].up <> nil)) then + if (not g_GUIGrabInput) and (key >= 0) and (key < e_MaxInputKeys) and ((gInputBinds[key].down <> nil) or (gInputBinds[key].up <> nil)) then begin if down then - for i := 0 to High(gInputBinds[key].down) do - g_Console_Process(gInputBinds[key].down[i], True) + begin + if not gChatShow then + for i := 0 to High(gInputBinds[key].down) do + g_Console_Process(gInputBinds[key].down[i], True); + end else for i := 0 to High(gInputBinds[key].up) do g_Console_Process(gInputBinds[key].up[i], True)