From 91eda24ddc8b56c6022a4d99519f28230e6b3bbf Mon Sep 17 00:00:00 2001 From: Magnus Auvinen Date: Sun, 24 Feb 2008 18:41:02 +0000 Subject: fixed correction count. fixed miss-behaving server --- src/game/client/gc_client.cpp | 2 +- src/game/g_game.cpp | 14 ++++++++++++++ src/game/g_game.h | 1 + src/game/g_protocol.def | 2 +- src/game/server/gs_server.cpp | 6 +++++- 5 files changed, 22 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/game/client/gc_client.cpp b/src/game/client/gc_client.cpp index 8446d729..fae66cf0 100644 --- a/src/game/client/gc_client.cpp +++ b/src/game/client/gc_client.cpp @@ -1448,7 +1448,7 @@ void render_game() vec2(netobjects.local_character->x, netobjects.local_character->y)); char buf[512]; - str_format(buf, sizeof(buf), "%.2f", speed/2); + str_format(buf, sizeof(buf), "%.2f %d", speed/2, netobj_num_corrections()); gfx_text(0, 150, 50, 12, buf, -1); } diff --git a/src/game/g_game.cpp b/src/game/g_game.cpp index c217b5a3..c87da2d4 100644 --- a/src/game/g_game.cpp +++ b/src/game/g_game.cpp @@ -154,6 +154,20 @@ void move_box(vec2 *inout_pos, vec2 *inout_vel, vec2 size, float elasticity) *inout_vel = vel; } + +void player_core::reset() +{ + pos = vec2(0,0); + vel = vec2(0,0); + hook_pos = vec2(0,0); + hook_dir = vec2(0,0); + hook_tick = 0; + hook_state = HOOK_IDLE; + hooked_player = -1; + jumped = 0; + triggered_events = 0; +} + void player_core::tick() { float phys_size = 28.0f; diff --git a/src/game/g_game.h b/src/game/g_game.h index 00870319..3cb6639b 100644 --- a/src/game/g_game.h +++ b/src/game/g_game.h @@ -137,6 +137,7 @@ public: int triggered_events; + void reset(); void tick(); void move(); diff --git a/src/game/g_protocol.def b/src/game/g_protocol.def index 8df707c3..7d24ebb4 100644 --- a/src/game/g_protocol.def +++ b/src/game/g_protocol.def @@ -130,7 +130,7 @@ object player_core any vx, vy any angle - range(0, 2) jumped + range(0, 3) jumped clientid hooked_player range(0, 3) hook_state diff --git a/src/game/server/gs_server.cpp b/src/game/server/gs_server.cpp index 514850a0..b95eae97 100644 --- a/src/game/server/gs_server.cpp +++ b/src/game/server/gs_server.cpp @@ -595,7 +595,11 @@ void player::init() void player::reset() { pos = vec2(0.0f, 0.0f); - core.vel = vec2(0.0f, 0.0f); + core.reset(); + + emote_type = 0; + emote_stop = -1; + //direction = vec2(0.0f, 1.0f); score = 0; dead = true; -- cgit 1.4.1