diff --git a/src/game/g_console.pas b/src/game/g_console.pas
index fc78ef05502bd56ac0e99bd60fe7ffde303befc0..72503f28f5695686087b8d6f5f74bb6f654e172a 100644 (file)
--- a/src/game/g_console.pas
+++ b/src/game/g_console.pas
+{$MODE DELPHI}
unit g_console;
interface
uses
g_textures, g_main, e_graphics, e_input, g_game,
- SysUtils, g_basic, g_options, WADEDITOR, Math,
- g_menu, g_language, g_net, g_netmsg;
+ SysUtils, g_basic, g_options, wadreader, Math,
+ g_menu, g_language, g_net, g_netmsg, e_log;
type
TCmdProc = procedure (P: SArray);
AddCommand('clientlist', GameCommands);
AddCommand('event', GameCommands);
+ AddCommand('god', GameCheats);
+ AddCommand('notarget', GameCheats);
+ AddCommand('give', GameCheats); // "exit" too ;-)
+ AddCommand('open', GameCheats);
+ AddCommand('fly', GameCheats);
+ AddCommand('noclip', GameCheats);
+ AddCommand('speedy', GameCheats);
+ AddCommand('jumpy', GameCheats);
+ AddCommand('noreload', GameCheats);
+ AddCommand('aimline', GameCheats);
+ AddCommand('automap', GameCheats);
+
WhitelistCommand('say');
WhitelistCommand('tell');
WhitelistCommand('overtime');
IK_DELETE:
if (Length(Line) > 0) and (CPos <= Length(Line)) then
Delete(Line, CPos, 1);
- IK_LEFT:
+ IK_LEFT, IK_KPLEFT:
if CPos > 1 then
CPos := CPos - 1;
- IK_RIGHT:
+ IK_RIGHT, IK_KPRIGHT:
if CPos <= Length(Line) then
CPos := CPos + 1;
- IK_RETURN:
+ IK_RETURN, IK_KPRETURN:
begin
if Cons_Shown then
g_Console_Process(Line)
IK_TAB:
if not gChatShow then
Complete();
- IK_DOWN:
+ IK_DOWN, IK_KPDOWN:
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex < Length(CommandHistory)) then
Line := CommandHistory[CmdIndex];
CPos := Length(Line) + 1;
end;
- IK_UP:
+ IK_UP, IK_KPUP:
if not gChatShow then
if (CommandHistory <> nil) and
(CmdIndex <= Length(CommandHistory)) then
Line := CommandHistory[CmdIndex];
Cpos := Length(Line) + 1;
end;
- IK_PAGEUP: // PgUp
+ IK_PAGEUP, IK_KPPAGEUP: // PgUp
if not gChatShow then
IncMax(OffSet, Length(ConsoleHistory)-1);
- IK_PAGEDN: // PgDown
+ IK_PAGEDN, IK_KPPAGEDN: // PgDown
if not gChatShow then
DecMin(OffSet, 0);
- IK_HOME:
+ IK_HOME, IK_KPHOME:
CPos := 1;
- IK_END:
+ IK_END, IK_KPEND:
CPos := Length(Line) + 1;
end;
end;
Time := MsgTime;
end;
end;
+
+{$IFDEF HEADLESS}
+ e_WriteLog('CON: ' + L, MSG_NOTIFY);
+{$ENDIF}
end;
procedure g_Console_Clear();
if Trim(L) = '' then
Exit;
+ if L = 'goobers' then
+ begin
+ Line := '';
+ CPos := 1;
+ gCheats := true;
+ g_Console_Add('Your memory serves you well.');
+ exit;
+ end;
+
if not Quiet then
begin
g_Console_Add('> '+L);