MCPcopy Create free account
hub / github.com/JACoders/OpenJK / CL_KeyMove

Function CL_KeyMove

code/client/cl_input.cpp:401–439  ·  view source on GitHub ↗

================ CL_KeyMove Sets the usercmd_t based on key states ================ */

Source from the content-addressed store, hash-verified

399================
400*/
401void CL_KeyMove( usercmd_t *cmd ) {
402 int movespeed;
403 int forward, side, up;
404
405 //
406 // adjust for speed key / running
407 // the walking flag is to keep animations consistant
408 // even during acceleration and develeration
409 //
410 if ( in_speed.active ^ cl_run->integer ) {
411 movespeed = 127;
412 cmd->buttons &= ~BUTTON_WALKING;
413 } else {
414 cmd->buttons |= BUTTON_WALKING;
415 movespeed = 64;
416 }
417
418 forward = 0;
419 side = 0;
420 up = 0;
421 if ( in_strafe.active ) {
422 side += movespeed * CL_KeyState (&in_right);
423 side -= movespeed * CL_KeyState (&in_left);
424 }
425
426 side += movespeed * CL_KeyState (&in_moveright);
427 side -= movespeed * CL_KeyState (&in_moveleft);
428
429
430 up += movespeed * CL_KeyState (&in_up);
431 up -= movespeed * CL_KeyState (&in_down);
432
433 forward += movespeed * CL_KeyState (&in_forward);
434 forward -= movespeed * CL_KeyState (&in_back);
435
436 cmd->forwardmove = ClampChar( forward );
437 cmd->rightmove = ClampChar( side );
438 cmd->upmove = ClampChar( up );
439}
440
441void _UI_MouseEvent( int dx, int dy );
442

Callers 1

CL_CreateCmdFunction · 0.70

Calls 2

ClampCharFunction · 0.85
CL_KeyStateFunction · 0.70

Tested by

no test coverage detected