Пример #1
0
        public static bool canMoveAndDash(this Unit unit, double x, double y)
        {
            var distance = Solver.distance(x - unit.X, y - unit.Y);

            return(unit.Energy > unit.dashCost(distance - unit.Moves - Solver.ERROR2));
        }
Пример #2
0
 public static double distance(this Body body, Unit unit)
 {
     return(Solver.distance(body.X - unit.X, body.Y - unit.Y));
 }
Пример #3
0
 public static int dashCost(this Unit unit, double x, double y)
 {
     return(unit.dashCost(Solver.distance(x - unit.X, y - unit.Y)));
 }
Пример #4
0
 public static double distance(this Unit unit, Unit unit2)
 {
     return(Solver.distance(unit.X - unit2.X, unit.Y - unit2.Y));
 }
Пример #5
0
 public static double distance(this Body body, Body body2)
 {
     return(Solver.distance(body.X - body2.X, body.Y - body2.Y));
 }
Пример #6
0
 public static double distance(this Unit unit, Body body)
 {
     return(Solver.distance(unit.X - body.X, unit.Y - body.Y));
 }
Пример #7
0
 public static bool canTransferThisTurn(this Unit transport, Unit miner)
 {
     return(transport.remainingCapacity() > 0 && Solver.inRangeE2(transport.distance(miner), transport.Job.Range + transport.Moves));
 }
Пример #8
0
 public static bool inMiningRangeThisTurn(this Unit unit, Body body)
 {
     return(Solver.inRangeE2(unit.distance(body), unit.Job.Range + body.Radius + unit.Moves));
 }
Пример #9
0
 public double lengthSquared()
 {
     return(Solver.distanceSquared(x, y));
 }
Пример #10
0
 public double length()
 {
     return(Solver.distance(x, y));
 }