/*
- $RCSfile$
-
Copyright (C) 1996-1997 Id Software, Inc.
This program is free software; you can redistribute it and/or
You should have received a copy of the GNU General Public License
along with this program; if not, write to:
-
+
Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307, USA
-
*/
-static const char rcsid[] =
- "$Id$";
#include "quakedef.h"
-#include <ctype.h>
-extern void SCR_UpdateScreen (void);
/*
key up events are sent even if in console mode
{"KP_ENTER", K_KP_ENTER},
{"KP_EQUALS", K_KP_EQUALS},
- {"JOY1", K_JOY1},
- {"JOY2", K_JOY2},
- {"JOY3", K_JOY3},
- {"JOY4", K_JOY4},
+ {"JOY1", K_JOY1},
+ {"JOY2", K_JOY2},
+ {"JOY3", K_JOY3},
+ {"JOY4", K_JOY4},
+ {"JOY5", K_JOY5},
+ {"JOY6", K_JOY6},
+ {"JOY7", K_JOY7},
+ {"JOY8", K_JOY8},
+ {"JOY9", K_JOY9},
+ {"JOY10", K_JOY10},
+ {"JOY11", K_JOY11},
+ {"JOY12", K_JOY12},
+ {"JOY13", K_JOY13},
+ {"JOY14", K_JOY14},
+ {"JOY15", K_JOY15},
+ {"JOY16", K_JOY16},
{"AUX1", K_AUX1},
{"AUX2", K_AUX2},
key_linepos = 1;
// force an update, because the command may take some time
if (cls.state == ca_disconnected)
- {
CL_UpdateScreen ();
- CL_UpdateScreen ();
- }
return;
}
if (key == K_PGUP || key == K_KP_PGUP || key == K_MWHEELUP)
{
- con_backscroll += ((int) scr_conlines >> 4);
+ con_backscroll += ((int) vid.conheight >> 5);
if (con_backscroll > con_totallines - (vid.conheight>>3) - 1)
con_backscroll = con_totallines - (vid.conheight>>3) - 1;
return;
if (key == K_PGDN || key == K_KP_PGDN || key == K_MWHEELDOWN)
{
- con_backscroll -= ((int) scr_conlines >> 4);
+ con_backscroll -= ((int) vid.conheight >> 5);
if (con_backscroll < 0)
con_backscroll = 0;
return;
Key_Message (int key, char ascii)
{
- if (key == K_ENTER) {
- if (chat_team)
- Cbuf_AddText ("say_team \"");
- else
- Cbuf_AddText ("say \"");
- Cbuf_AddText (chat_buffer);
- Cbuf_AddText ("\"\n");
+ if (key == K_ENTER)
+ {
+ Cmd_ForwardStringToServer(va("%s %s", chat_team ? "say_team" : "say ", chat_buffer));
key_dest = key_game;
chat_bufferlen = 0;
the K_* names are matched up.
===================
*/
-static int
+int
Key_StringToKeynum (const char *str)
{
const keyname_t *kn;
for (i = 0; i < (int)(sizeof(keybindings[0])/sizeof(keybindings[0][0])); i++)
if (keybindings[0][i])
- FS_Printf(f, "bind %s \"%s\"\n",
+ FS_Printf(f, "bind \"%s\" \"%s\"\n",
Key_KeynumToString (i), keybindings[0][i]);
for (j = 1; j < 8; j++)
for (i = 0; i < (int)(sizeof(keybindings[0])/sizeof(keybindings[0][0])); i++)
if (keybindings[j][i])
- FS_Printf(f, "in_bind %d %s \"%s\"\n",
+ FS_Printf(f, "in_bind %d \"%s\" \"%s\"\n",
j, Key_KeynumToString (i), keybindings[j][i]);
}
return;
}
- // console key is hardcoded, so the user can never unbind it
- if (key == '`' || key == '~')
- {
- if (down)
- Con_ToggleConsole_f ();
- return;
- }
-
if (down)
{
if (!(kb = keybindings[key_bmap][key]))
kb = keybindings[key_bmap2][key];
if (kb && kb[0] == '+') {
- snprintf (cmd, sizeof(cmd), "-%s %i\n", kb + 1, key);
+ dpsnprintf (cmd, sizeof(cmd), "-%s %i\n", kb + 1, key);
Cbuf_AddText (cmd);
}
return;
kb = keybindings[key_bmap2][key];
if (kb) {
if (kb[0] == '+') { // button commands add keynum as a parm
- snprintf (cmd, sizeof(cmd), "%s %i\n", kb, key);
+ dpsnprintf (cmd, sizeof(cmd), "%s %i\n", kb, key);
Cbuf_AddText (cmd);
} else {
Cbuf_AddText (kb);
case key_menu:
MR_Keydown (key, ascii);
break;
-
case key_game:
Key_Console (key, ascii);
break;