diff --git a/source/cl_input.c b/source/cl_input.c index 1ea58d8..b911b40 100644 --- a/source/cl_input.c +++ b/source/cl_input.c @@ -382,6 +382,12 @@ void CL_FinishMove (usercmd_t *cmd) cmd->buttons |= 2; in_jump.state &= ~2; +// 1999-10-29 +USE fix by Maddes start + if (in_use.state & 3) + cmd->buttons |= 4; + in_use.state &= ~2; +// 1999-10-29 +USE fix by Maddes end + // send milliseconds of time to apply the move ms = host_frametime * 1000; if (ms > 250) diff --git a/source/qargs.c b/source/qargs.c index d912591..480b198 100644 --- a/source/qargs.c +++ b/source/qargs.c @@ -61,6 +61,8 @@ char **com_argv; char *com_cmdline; cvar_t *cmdline; +qboolean nouse = false; // 1999-10-29 +USE fix by Maddes + /* ================ COM_CheckParm @@ -132,6 +134,13 @@ void COM_InitArgv (int argc, char **argv) largv[com_argc] = argvdummy; com_argv = largv; + +// 1999-10-29 +USE fix by Maddes start + if (COM_CheckParm ("-nouse")) + { + nouse = true; + } +// 1999-10-29 +USE fix by Maddes end } /* diff --git a/source/sv_user.c b/source/sv_user.c index 4462b7d..4796dcb 100644 --- a/source/sv_user.c +++ b/source/sv_user.c @@ -1418,6 +1418,8 @@ void SV_PreRunCmd(void) SV_RunCmd =========== */ +extern qboolean nouse; // 1999-10-29 +USE fix by Maddes + void SV_RunCmd (usercmd_t *ucmd, qboolean inside) { edict_t *ent; @@ -1469,6 +1471,12 @@ void SV_RunCmd (usercmd_t *ucmd, qboolean inside) VectorCopy (ucmd->angles, sv_player->v.v_angle); sv_player->v.button0 = ucmd->buttons & 1; +// 1999-10-29 +USE fix by Maddes start + if (!nouse) + { + sv_player->v.button1 = (ucmd->buttons & 4)>>2; + } +// 1999-10-29 +USE fix by Maddes end sv_player->v.button2 = (ucmd->buttons & 2)>>1; if (ucmd->impulse) sv_player->v.impulse = ucmd->impulse;