diff --git a/src/game/g_console.pas b/src/game/g_console.pas
index 2ae89e537b6e80fddf85cfb35d325fd530976569..2f3103a014017aa3e0fe150310f4624f953caf15 100644 (file)
--- a/src/game/g_console.pas
+++ b/src/game/g_console.pas
uses
g_textures, g_main, e_graphics, e_input, g_game,
uses
g_textures, g_main, e_graphics, e_input, g_game,
- SysUtils, g_basic, g_options, Math,
+ SysUtils, g_basic, g_options, Math, g_touch,
g_menu, g_language, g_net, g_netmsg, e_log, conbuf;
g_menu, g_language, g_net, g_netmsg, e_log, conbuf;
g_Console_Add('exec <script file>');
end;
g_Console_Add('exec <script file>');
end;
+ if (cmd = 'ver') or (cmd = 'version') then
+ begin
+ conwriteln('Doom 2D: Forever v. ' + GAME_VERSION);
+ conwritefln('Net protocol v. %d', [NET_PROTOCOL_VER]);
+ conwritefln('Build date: %s at %s', [GAME_BUILDDATE, GAME_BUILDTIME]);
+ end;
+
if cmd = 'alias' then
begin
// alias [alias_name] [commands]
if cmd = 'alias' then
begin
// alias [alias_name] [commands]
AddCommand('exec', ConsoleCommands);
AddCommand('alias', ConsoleCommands);
AddCommand('call', ConsoleCommands);
AddCommand('exec', ConsoleCommands);
AddCommand('alias', ConsoleCommands);
AddCommand('call', ConsoleCommands);
+ AddCommand('ver', ConsoleCommands);
+ AddCommand('version', ConsoleCommands);
AddCommand('d_window', DebugCommands);
AddCommand('d_sounds', DebugCommands);
AddCommand('d_window', DebugCommands);
AddCommand('d_sounds', DebugCommands);
if gChatShow then Exit;
gConsoleShow := not gConsoleShow;
Cons_Shown := True;
if gChatShow then Exit;
gConsoleShow := not gConsoleShow;
Cons_Shown := True;
+ g_Touch_ShowKeyboard(gConsoleShow or gChatShow);
end;
procedure g_Console_Chat_Switch(Team: Boolean = False);
end;
procedure g_Console_Chat_Switch(Team: Boolean = False);
gChatEnter := False;
Line := '';
CPos := 1;
gChatEnter := False;
Line := '';
CPos := 1;
+ g_Touch_ShowKeyboard(gConsoleShow or gChatShow);
end;
procedure g_Console_Char(C: AnsiChar);
end;
procedure g_Console_Char(C: AnsiChar);
IK_DELETE:
if (Length(Line) > 0) and (CPos <= Length(Line)) then
Delete(Line, CPos, 1);
IK_DELETE:
if (Length(Line) > 0) and (CPos <= Length(Line)) then
Delete(Line, CPos, 1);
- IK_LEFT, IK_KPLEFT:
+ IK_LEFT, IK_KPLEFT, VK_LEFT:
if CPos > 1 then
CPos := CPos - 1;
if CPos > 1 then
CPos := CPos - 1;
- IK_RIGHT, IK_KPRIGHT:
+ IK_RIGHT, IK_KPRIGHT, VK_RIGHT:
if CPos <= Length(Line) then
CPos := CPos + 1;
if CPos <= Length(Line) then
CPos := CPos + 1;
- IK_RETURN, IK_KPRETURN:
+ IK_RETURN, IK_KPRETURN, VK_OPEN, VK_FIRE:
begin
if Cons_Shown then
g_Console_Process(Line)
begin
if Cons_Shown then
g_Console_Process(Line)
CPos := 1;
gChatShow := False;
gJustChatted := True;
CPos := 1;
gChatShow := False;
gJustChatted := True;
+ g_Touch_ShowKeyboard(gConsoleShow or gChatShow);
end;
end;
IK_TAB:
if not gChatShow then
Complete();
end;
end;
IK_TAB:
if not gChatShow then
Complete();
- IK_DOWN, IK_KPDOWN:
+ IK_DOWN, IK_KPDOWN, VK_DOWN:
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex < Length(CommandHistory)) then
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex < Length(CommandHistory)) then
Line := CommandHistory[CmdIndex];
CPos := Length(Line) + 1;
end;
Line := CommandHistory[CmdIndex];
CPos := Length(Line) + 1;
end;
- IK_UP, IK_KPUP:
+ IK_UP, IK_KPUP, VK_UP:
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex <= Length(CommandHistory)) then
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex <= Length(CommandHistory)) then
Line := CommandHistory[CmdIndex];
Cpos := Length(Line) + 1;
end;
Line := CommandHistory[CmdIndex];
Cpos := Length(Line) + 1;
end;
- IK_PAGEUP, IK_KPPAGEUP: // PgUp
+ IK_PAGEUP, IK_KPPAGEUP, VK_PREV: // PgUp
if not gChatShow then Inc(conSkipLines);
if not gChatShow then Inc(conSkipLines);
- IK_PAGEDN, IK_KPPAGEDN: // PgDown
+ IK_PAGEDN, IK_KPPAGEDN, VK_NEXT: // PgDown
if not gChatShow and (conSkipLines > 0) then Dec(conSkipLines);
IK_HOME, IK_KPHOME:
CPos := 1;
if not gChatShow and (conSkipLines > 0) then Dec(conSkipLines);
IK_HOME, IK_KPHOME:
CPos := 1;