+ cl.punchangle[i] = 0;
+ if (bits & (SU_PUNCHVEC1<<i))
+ cl.punchvector[i] = MSG_ReadFloat();
+ else
+ cl.punchvector[i] = 0;
+ if (bits & (SU_VELOCITY1<<i) )
+ cl.mvelocity[0][i] = MSG_ReadFloat();
+ else
+ cl.mvelocity[0][i] = 0;
+ }
+ }
+ else
+ {
+ for (i = 0;i < 3;i++)
+ {
+ if (bits & (SU_PUNCH1<<i) )
+ {
+ if (cl.protocol == PROTOCOL_DARKPLACES1 || cl.protocol == PROTOCOL_DARKPLACES2 || cl.protocol == PROTOCOL_DARKPLACES3 || cl.protocol == PROTOCOL_DARKPLACES4 || cl.protocol == PROTOCOL_DARKPLACES5)
+ cl.punchangle[i] = MSG_ReadPreciseAngle();
+ else
+ cl.punchangle[i] = MSG_ReadChar();
+ }
+ else
+ cl.punchangle[i] = 0;
+ if (bits & (SU_PUNCHVEC1<<i))
+ cl.punchvector[i] = MSG_ReadCoord();
+ else
+ cl.punchvector[i] = 0;
+ if (bits & (SU_VELOCITY1<<i) )
+ cl.mvelocity[0][i] = MSG_ReadChar()*16;
+ else
+ cl.mvelocity[0][i] = 0;