MCPcopy Create free account
hub / github.com/demoth/jake2 / Event

Method Event

client/src/main/java/jake2/client/Key.java:303–448  ·  view source on GitHub ↗

Called by the system between frames for both key up and key down events.

(int key, boolean down, int time)

Source from the content-addressed store, hash-verified

301 * Called by the system between frames for both key up and key down events.
302 */
303 public static void Event(int key, boolean down, int time) {
304 String kb;
305 String cmd;
306
307 // hack for modal presses
308 if (key_waiting == -1) {
309 if (down)
310 key_waiting = key;
311 return;
312 }
313
314 // update auto-repeat status
315 if (down) {
316 key_repeats[key]++;
317 if (key_repeats[key] > 1
318 && ClientGlobals.cls.key_dest == Defines.key_game
319 && !(ClientGlobals.cls.state == Defines.ca_disconnected))
320 return; // ignore most autorepeats
321
322 if (key >= 200 && ClientGlobals.keybindings[key] == null)
323 Com.Printf(Key.KeynumToString(key) + " is unbound, hit F4 to set.\n");
324 }
325 else {
326 key_repeats[key] = 0;
327 }
328
329 if (key == K_SHIFT)
330 shift_down = down;
331
332 // console key is hardcoded, so the user can never unbind it
333 if (key == '`' || key == '~') {
334 if (!down)
335 return;
336
337 Console.ToggleConsole_f.execute(Collections.emptyList());
338 return;
339 }
340
341 // any key during the attract mode will bring up the menu
342 if (ClientGlobals.cl.attractloop && ClientGlobals.cls.key_dest != Defines.key_menu && !(key >= K_F1 && key <= K_F12))
343 key = K_ESCAPE;
344
345 // menu key is hardcoded, so the user can never unbind it
346 if (key == K_ESCAPE) {
347 if (!down)
348 return;
349
350 if (ClientGlobals.cl.frame.playerstate.stats[Defines.STAT_LAYOUTS] != 0 && ClientGlobals.cls.key_dest == Defines.key_game) {
351 // put away help computer / inventory
352 Cbuf.AddText("cmd putaway\n");
353 return;
354 }
355 switch (ClientGlobals.cls.key_dest) {
356 case Defines.key_message :
357 Key.Message(key);
358 break;
359 case Defines.key_menu :
360 Menu.Keydown(key);

Callers 2

ClearStatesMethod · 0.95
Do_Key_EventMethod · 0.95

Calls 9

PrintfMethod · 0.95
KeynumToStringMethod · 0.95
AddTextMethod · 0.95
MessageMethod · 0.95
KeydownMethod · 0.95
Menu_Main_fMethod · 0.95
ErrorMethod · 0.95
ConsoleMethod · 0.95
executeMethod · 0.65

Tested by

no test coverage detected