@Test public void OurLongDistanceTest() { double prob = MaxAngleKickRater.getDirectShootScoreChance(wf.getFoeBots().values(), Geometry.getGoalOur().getCenter()); Assert.assertTrue(prob < 0.40); }
public static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin) { Goal targetGoal = Geometry.getGoalTheir(); if (isInTeamBot(bots, origin)) return 0; Optional<ValuePoint> target = getBestRatedDirectShotTarget(targetGoal, new ArrayList<>(bots), origin); return target.map(ValuePoint::getValue).orElse(0.0); }
MaxAngleKickRater { public static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin) { Goal targetGoal = Geometry.getGoalTheir(); if (isInTeamBot(bots, origin)) return 0; Optional<ValuePoint> target = getBestRatedDirectShotTarget(targetGoal, new ArrayList<>(bots), origin); return target.map(ValuePoint::getValue).orElse(0.0); } }
MaxAngleKickRater { public static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin) { Goal targetGoal = Geometry.getGoalTheir(); if (isInTeamBot(bots, origin)) return 0; Optional<ValuePoint> target = getBestRatedDirectShotTarget(targetGoal, new ArrayList<>(bots), origin); return target.map(ValuePoint::getValue).orElse(0.0); } private  MaxAngleKickRater(); }
MaxAngleKickRater { public static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin) { Goal targetGoal = Geometry.getGoalTheir(); if (isInTeamBot(bots, origin)) return 0; Optional<ValuePoint> target = getBestRatedDirectShotTarget(targetGoal, new ArrayList<>(bots), origin); return target.map(ValuePoint::getValue).orElse(0.0); } private  MaxAngleKickRater(); static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin); static double getScoreChanceFromAngle(double angle); static double getFoeScoreChanceWithDefender(final Collection<ITrackedBot> bots, final IVector2 origin); static Optional<ValuePoint> getBestRatedDirectShotTarget(Goal targetGoal,
			Collection<ITrackedBot> obstacleBots, IVector2 origin); }
MaxAngleKickRater { public static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin) { Goal targetGoal = Geometry.getGoalTheir(); if (isInTeamBot(bots, origin)) return 0; Optional<ValuePoint> target = getBestRatedDirectShotTarget(targetGoal, new ArrayList<>(bots), origin); return target.map(ValuePoint::getValue).orElse(0.0); } private  MaxAngleKickRater(); static double getDirectShootScoreChance(final Collection<ITrackedBot> bots, final IVector2 origin); static double getScoreChanceFromAngle(double angle); static double getFoeScoreChanceWithDefender(final Collection<ITrackedBot> bots, final IVector2 origin); static Optional<ValuePoint> getBestRatedDirectShotTarget(Goal targetGoal,
			Collection<ITrackedBot> obstacleBots, IVector2 origin);  }