public MeleeBehavior() { Strategies.AddRange(new BaseStrategy[] { new FullScanRadar(), new ForceMovement( new Force[] { new AvoidCentreForce(), new AvoidWallForce(), new AvoidEnemyForce(), new RandomForce(), new MaximumEnemyDistanceForce() }), new TargetNearestEnemy(), new MeleeFiringStrategy(), new PredictionAlgorithms( new PredictionAlgorithm[] { new CurrentPosition(), new LastBlipVelocity(), new PlayItForward() }) }); }
public OneVsOneBehavior() { Strategies.AddRange(new BaseStrategy[] { new TargetOnly(), // Before Ratdar new ScanTargetRadar(), // After Targeting new ForceMovement( new Force[] { new AvoidWallForce(), new AvoidEnemyForce(), new MiddleEnemyDistanceForce(), new TangentialOscillationForce() }), new OneVsOneFiringStrategy(), new PredictionAlgorithms( new PredictionAlgorithm[] { new CurrentPosition(), new LastBlipVelocity(), new PlayItForward(), new GuessFactorAiming() }) }); }
public TargetBehavior() { Strategies.AddRange(new BaseStrategy[] { new FullScanRadar(), new TargetOnly(), new ForceMovement(new Force[] { new AvoidWallForce(), new AvoidEnemyForce(), new MiddleEnemyDistanceForce(), new TangentialOscillationForce() }) }); }
public BaseBehaviourAccessor(IEnumerable <BaseStrategy> strategies) { Strategies.AddRange(strategies); }