From 0afebb148532e32e6b47194e08e908beec45087e Mon Sep 17 00:00:00 2001 From: DeaDDooMER Date: Tue, 4 Apr 2017 19:07:20 +0300 Subject: [PATCH] =?utf8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD?= =?utf8?q?=D0=BE=20=D0=BE=D0=B3=D1=80=D0=B0=D0=BD=D0=B8=D1=87=D0=B5=D0=BD?= =?utf8?q?=D0=B8=D0=B5=20=D0=BC=D0=B0=D0=BA=D1=81=D0=B8=D0=BC=D0=B0=D0=BB?= =?utf8?q?=D1=8C=D0=BD=D0=BE=D0=B3=D0=BE=20=D1=83=D1=81=D0=BA=D0=BE=D1=80?= =?utf8?q?=D0=B5=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- game.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/game.c b/game.c index 4b1c345..36dccb4 100644 --- a/game.c +++ b/game.c @@ -10,6 +10,9 @@ #define ROTATE (0.03 / TICK) #define BULL_SPEED (0.4 / TICK) +#define MAX_SPEED (0.3 / TICK) +#define MAX_ROTATE (0.3 / TICK) + Player g_player[MAX_PLAYERS]; Bullet g_bullet[MAX_BULLETS]; @@ -53,10 +56,17 @@ static int freebullet() { static void moveplayer(int id, float speed) { g_player[id].vx += speed * cos(g_player[id].r * 2 * M_PI); g_player[id].vy += speed * sin(g_player[id].r * 2 * M_PI); + + if(fabs(g_player[id].vx) > MAX_SPEED) + g_player[id].vx = copysignf(MAX_SPEED, g_player[id].vx); + if(fabs(g_player[id].vy) > MAX_SPEED) + g_player[id].vy = copysignf(MAX_SPEED, g_player[id].vy); } static void roteplayer(int id, float speed) { g_player[id].vr += speed; + if(fabs(g_player[id].vr) > MAX_ROTATE) + g_player[id].vr = copysignf(MAX_ROTATE, g_player[id].vr); } static void fireplayer(int id) { -- 2.29.2