b->state |= 4; // impulse up
}
+extern cvar_t v_flipped;
+
static void IN_KLookDown(cmd_state_t *cmd) {KeyDown(cmd, &in_klook);}
static void IN_KLookUp(cmd_state_t *cmd) {KeyUp(cmd, &in_klook);}
static void IN_MLookDown(cmd_state_t *cmd) {KeyDown(cmd, &in_mlook);}
static void IN_UpUp(cmd_state_t *cmd) {KeyUp(cmd, &in_up);}
static void IN_DownDown(cmd_state_t *cmd) {KeyDown(cmd, &in_down);}
static void IN_DownUp(cmd_state_t *cmd) {KeyUp(cmd, &in_down);}
-static void IN_LeftDown(cmd_state_t *cmd) {KeyDown(cmd, &in_left);}
-static void IN_LeftUp(cmd_state_t *cmd) {KeyUp(cmd, &in_left);}
-static void IN_RightDown(cmd_state_t *cmd) {KeyDown(cmd, &in_right);}
-static void IN_RightUp(cmd_state_t *cmd) {KeyUp(cmd, &in_right);}
+static void IN_LeftDown(cmd_state_t *cmd)
+{
+ KeyDown(cmd, v_flipped.integer ? &in_right : &in_left);
+}
+static void IN_LeftUp(cmd_state_t *cmd)
+{
+ KeyUp(cmd, v_flipped.integer ? &in_right : &in_left);
+}
+static void IN_RightDown(cmd_state_t *cmd)
+{
+ KeyDown(cmd, v_flipped.integer ? &in_left : &in_right);
+}
+static void IN_RightUp(cmd_state_t *cmd)
+{
+ KeyUp(cmd, v_flipped.integer ? &in_left : &in_right);
+}
static void IN_ForwardDown(cmd_state_t *cmd) {KeyDown(cmd, &in_forward);}
static void IN_ForwardUp(cmd_state_t *cmd) {KeyUp(cmd, &in_forward);}
static void IN_BackDown(cmd_state_t *cmd) {KeyDown(cmd, &in_back);}
cvar_t cl_csqc_generatemousemoveevents = {CF_CLIENT, "cl_csqc_generatemousemoveevents", "1", "enables calls to CSQC_InputEvent with type 2, for compliance with EXT_CSQC spec"};
-extern cvar_t v_flipped;
-
/*
================
CL_AdjustAngles