Beispiel #1
0
        public void Work()
        {
            var angleToTarget = Me.CalculateAngleTo(Me.Target);
            var oppositeAngle = angleToTarget;// SpaceExtensions.GetOppositeAngle(angleToTarget);
            var newLocation   = SpaceExtensions.MoveTowards(Me.TopLeft(), oppositeAngle, 1);
            var overlapCount  = SpaceTime.CurrentSpaceTime.Elements.Where(e => Rectangular.Create(newLocation.Left, newLocation.Top, 1, 1).OverlapPercentage(e) > 0).Count();

            if (overlapCount == 0)
            {
                Me.MoveTo(newLocation.Left, newLocation.Top);
            }
        }