diff --git a/robot.go b/robot.go index 18f9c35..63da1bc 100644 --- a/robot.go +++ b/robot.go @@ -220,6 +220,16 @@ func (r *Robot) checkCollisions(g *Game, probe v.Vector2d) (bool, *v.Point2d, *R closest = dist } } + + // collision due to probe + collision, _, wallIntersect := v.RectIntersection(obj.Bounds, r.Position, probe) + if collision && wallIntersect != nil { + finalCollision = collision + if dist := r.Position.Sub(*wallIntersect).Mag(); dist < closest { + intersection = wallIntersect + closest = dist + } + } } // Check Other Bots