diff options
Diffstat (limited to 'src/game')
| -rw-r--r-- | src/game/server/game_server.cpp | 7 | ||||
| -rw-r--r-- | src/game/server/srv_common.h | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/game/server/game_server.cpp b/src/game/server/game_server.cpp index eba15f2b..ebd5dff3 100644 --- a/src/game/server/game_server.cpp +++ b/src/game/server/game_server.cpp @@ -383,6 +383,7 @@ void player::reset() mem_zero(&input, sizeof(input)); mem_zero(&previnput, sizeof(previnput)); + num_inputs = 0; last_action = -1; @@ -913,6 +914,11 @@ int player::handle_weapons() void player::tick() { + // check if we have enough input + // this is to prevent initial weird clicks + if(num_inputs < 2) + previnput = input; + // do latency stuff { CLIENT_INFO info; @@ -1540,6 +1546,7 @@ void mods_client_input(int client_id, void *input) //players[client_id].previnput = players[client_id].input; players[client_id].input = *(player_input*)input; + players[client_id].num_inputs++; } } diff --git a/src/game/server/srv_common.h b/src/game/server/srv_common.h index 16c78d3f..80a5260b 100644 --- a/src/game/server/srv_common.h +++ b/src/game/server/srv_common.h @@ -260,6 +260,7 @@ public: // input player_input previnput; player_input input; + int num_inputs; int jumped; int damage_taken_tick; |