From 9fe5108133d1ac7f138a6a3d23eb5f325472f374 Mon Sep 17 00:00:00 2001 From: Luke Meyers Date: Wed, 5 Feb 2020 18:33:52 -0800 Subject: [PATCH] fix issues from random accel --- game.go | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/game.go b/game.go index f8a6a42..2fbdc23 100644 --- a/game.go +++ b/game.go @@ -56,11 +56,23 @@ func updateState(sOld state) state { b := t.baton.holder if b.a == 0 { - b.a = 10 + b.a = 1 } b.a += rand.Intn(3) - 1 + if b.a < -maxA { + b.a = -maxA + } + if b.a > maxA { + b.a = maxA + } b.v += b.a + if b.v > maxV { + b.v = maxV + } + if b.v < -maxV { + b.v = -maxV + } b.pos += b.v maybePassBaton(&s.teams[i]) @@ -78,7 +90,7 @@ func updateState(sOld state) state { func maybePassBaton(t *team) { for i, b := range t.bots { h := t.baton.holder - if h == &t.bots[i] { + if h.id >= b.id { continue } if abs(b.pos-h.pos) <= 10 { @@ -109,6 +121,8 @@ const ( steps = 400 numBots = 10 numTeams = 1 + maxA = 3 + maxV = 20 ) func abs(n int) int {