* (bug 2741) replace K_LAST_KEY with MAX_KEYS. K_LAST_KEY is now defined

at 256 for mod compatability reasons.  ioq3-only mods may
             chose to use MAX_KEYS for checking binds in order to get full
             key support, but at the cost of breaking compatability with
             older clients.

* (bug 2741) remove some lingering 256-key hardcoding

* properly check bounds of keynum in Key_IsDown(), Key_SetBinding(),
  and Key_GetBinding()
This commit is contained in:
Tony J. White = 2007-03-22 22:03:00 +00:00
parent dce62fbcb4
commit f9bb47d9af
3 changed files with 10 additions and 8 deletions

View file

@ -260,9 +260,13 @@ typedef enum {
K_EURO,
K_UNDO,
K_LAST_KEY // this had better be < MAX_KEYS!
MAX_KEYS
} keyNum_t;
// MAX_KEYS replaces K_LAST_KEY, however some mods may have used K_LAST_KEY
// in detecting binds, so we leave it defined to the old hardcoded value
// of maxiumum keys to prevent mods from crashing older versions of the engine
#define K_LAST_KEY 256
// The menu code needs to get both key and char events, but
// to avoid duplicating the paths, the char events are just