X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=cl_input.c;h=fac600f92125eae8aeea7a65c3d4d0b6de6da197;hb=faafbec894094c27f0f50abb1c0b828180523854;hp=f92087c56fe9843c5d5c38cdff6a97e735ac90a6;hpb=812ff6ba44c87de88a410e493b8093033867b12c;p=xonotic%2Fdarkplaces.git diff --git a/cl_input.c b/cl_input.c index f92087c5..fac600f9 100644 --- a/cl_input.c +++ b/cl_input.c @@ -49,7 +49,7 @@ state bit 2 is edge triggered on the down to up transition kbutton_t in_mlook, in_klook; kbutton_t in_left, in_right, in_forward, in_back; kbutton_t in_lookup, in_lookdown, in_moveleft, in_moveright; -kbutton_t in_strafe, in_speed, in_use, in_jump, in_attack; +kbutton_t in_strafe, in_speed, in_jump, in_attack; kbutton_t in_up, in_down; // LordHavoc: added 6 new buttons kbutton_t in_button3, in_button4, in_button5, in_button6, in_button7, in_button8; @@ -77,7 +77,7 @@ void KeyDown (kbutton_t *b) b->down[1] = k; else { - Con_Printf ("Three keys down for a button!\n"); + Con_Print("Three keys down for a button!\n"); return; } @@ -168,8 +168,6 @@ void IN_Button7Up(void) {KeyUp(&in_button7);} void IN_Button8Down(void) {KeyDown(&in_button8);} void IN_Button8Up(void) {KeyUp(&in_button8);} -void IN_UseDown (void) {KeyDown(&in_use);} -void IN_UseUp (void) {KeyUp(&in_use);} void IN_JumpDown (void) {KeyDown(&in_jump);} void IN_JumpUp (void) {KeyUp(&in_jump);} @@ -246,6 +244,7 @@ cvar_t cl_pitchspeed = {CVAR_SAVE, "cl_pitchspeed","150"}; cvar_t cl_anglespeedkey = {CVAR_SAVE, "cl_anglespeedkey","1.5"}; +cvar_t cl_nodelta = {0, "cl_nodelta", "0"}; /* ================ @@ -260,9 +259,9 @@ void CL_AdjustAngles (void) float up, down; if (in_speed.state & 1) - speed = cl.frametime * cl_anglespeedkey.value; + speed = host_realframetime * cl_anglespeedkey.value; else - speed = cl.frametime; + speed = host_realframetime; if (!(in_strafe.state & 1)) { @@ -365,7 +364,7 @@ void CL_SendMove(usercmd_t *cmd) upmove += cmd->upmove; total++; // LordHavoc: cap outgoing movement messages to sys_ticrate - if ((cl.maxclients > 1) && (realtime - lastmovetime < sys_ticrate.value)) + if (!cl.islocalgame && (realtime - lastmovetime < sys_ticrate.value)) return; lastmovetime = realtime; // average what has happened during this time @@ -386,12 +385,12 @@ void CL_SendMove(usercmd_t *cmd) MSG_WriteFloat (&buf, cl.mtime[0]); // so server can get ping times - if (dpprotocol == DPPROTOCOL_VERSION2 || dpprotocol == DPPROTOCOL_VERSION3) + if (cl.protocol == PROTOCOL_DARKPLACES2 || cl.protocol == PROTOCOL_DARKPLACES3) { for (i = 0;i < 3;i++) MSG_WriteFloat (&buf, cl.viewangles[i]); } - else if (dpprotocol == DPPROTOCOL_VERSION1) + else if (cl.protocol == PROTOCOL_DARKPLACES1 || cl.protocol == PROTOCOL_DARKPLACES4 || cl.protocol == PROTOCOL_DARKPLACES5) { for (i=0 ; i<3 ; i++) MSG_WritePreciseAngle (&buf, cl.viewangles[i]); @@ -430,12 +429,28 @@ void CL_SendMove(usercmd_t *cmd) MSG_WriteByte (&buf, in_impulse); in_impulse = 0; - // LordHavoc: should we ack this on receipt instead? would waste net bandwidth though - i = EntityFrame_MostRecentlyRecievedFrameNum(&cl.entitydatabase); - if (i > 0) + if (cl.protocol == PROTOCOL_DARKPLACES1 || cl.protocol == PROTOCOL_DARKPLACES2 || cl.protocol == PROTOCOL_DARKPLACES3) { - MSG_WriteByte(&buf, clc_ackentities); - MSG_WriteLong(&buf, i); + // LordHavoc: should we ack this on receipt instead? would waste net bandwidth though + i = EntityFrame_MostRecentlyRecievedFrameNum(&cl.entitydatabase); + if (i > 0) + { + MSG_WriteByte(&buf, clc_ackentities); + MSG_WriteLong(&buf, i); + } + } + else + { + if (cl.entitydatabase4) + { + i = cl.entitydatabase4->ackframenum; + if (cl_nodelta.integer) + i = -1; + if (developer_networkentities.integer >= 1) + Con_Printf("send clc_ackentities %i\n", i); + MSG_WriteByte(&buf, clc_ackentities); + MSG_WriteLong(&buf, i); + } } // deliver the message @@ -448,7 +463,7 @@ void CL_SendMove(usercmd_t *cmd) if (NetConn_SendUnreliableMessage(cls.netcon, &buf) == -1) { - Con_Printf("CL_SendMove: lost server connection\n"); + Con_Print("CL_SendMove: lost server connection\n"); CL_Disconnect(); } } @@ -486,8 +501,6 @@ void CL_InitInput (void) Cmd_AddCommand ("-speed", IN_SpeedUp); Cmd_AddCommand ("+attack", IN_AttackDown); Cmd_AddCommand ("-attack", IN_AttackUp); - Cmd_AddCommand ("+use", IN_UseDown); - Cmd_AddCommand ("-use", IN_UseUp); Cmd_AddCommand ("+jump", IN_JumpDown); Cmd_AddCommand ("-jump", IN_JumpUp); Cmd_AddCommand ("impulse", IN_Impulse); @@ -509,5 +522,7 @@ void CL_InitInput (void) Cmd_AddCommand ("-button7", IN_Button7Up); Cmd_AddCommand ("+button8", IN_Button8Down); Cmd_AddCommand ("-button8", IN_Button8Up); + + Cvar_RegisterVariable(&cl_nodelta); }