public override int?GetMaximumScore(Objective Objective, Army ForArmy, Match Match)
 {
     return(Objective == this
                         ? Match.Scenario.TurnConfiguration.Turns
                            : this.Objective.GetMaximumScore(Objective, ForArmy, Match));
 }
Exemple #2
0
 public override int?GetMaximumScore(Objective Objective, Army ForArmy, Match Match)
 {
     return(Objective == this ? (int?)Match.Map.TilesEnumerable.Count(Matcher.MatchesTransient) : null);
 }
 public TemporalObjective(Objective Objective)
 {
     this.Objective = Objective;
 }
        public TemporalObjective(ParseBlock Block)
        {
            var attributes = Block.BreakToAttributes <object>(typeof(Attribute));

            Objective = (Objective)attributes[(int)Attribute.OBJECTIVE];
        }
Exemple #5
0
        public static string Describe(Objective Objective)
        {
            if (Objective is CompositeObjective)
            {
                return(Describe((CompositeObjective)Objective));
            }
            if (Objective is FurthestAdvanceObjective)
            {
                return(Describe((FurthestAdvanceObjective)Objective));
            }
            if (Objective is HighestScoreObjective)
            {
                return(Describe((HighestScoreObjective)Objective));
            }
            if (Objective is HighestUniqueScoreObjective)
            {
                return(Describe((HighestUniqueScoreObjective)Objective));
            }
            if (Objective is LineOfFireObjective)
            {
                return(Describe((LineOfFireObjective)Objective));
            }
            if (Objective is PathObjective)
            {
                return(Describe((PathObjective)Objective));
            }
            if (Objective is PointsObjective)
            {
                return(Describe((PointsObjective)Objective));
            }
            if (Objective is PreventEnemyObjective)
            {
                return(Describe((PreventEnemyObjective)Objective));
            }
            if (Objective is RatioObjective)
            {
                return(Describe((RatioObjective)Objective));
            }
            if (Objective is SumObjective)
            {
                return(Describe((SumObjective)Objective));
            }
            if (Objective is TemporalObjective)
            {
                return(Describe((TemporalObjective)Objective));
            }
            if (Objective is TilesControlledObjective)
            {
                return(Describe((TilesControlledObjective)Objective));
            }
            if (Objective is TriggerObjective)
            {
                return(Describe((TriggerObjective)Objective));
            }
            if (Objective is UnitsMatchedObjective)
            {
                return(Describe((UnitsMatchedObjective)Objective));
            }

            return(string.Empty);
        }
Exemple #6
0
 public PointsObjective(Objective Objective, int Points)
 {
     this.Objective = Objective;
     this.Points    = Points;
 }
        public HighestScoreObjective(ParseBlock Block)
        {
            var attributes = Block.BreakToAttributes <object>(typeof(Attribute));

            Metric = (Objective)attributes[(int)Attribute.METRIC];
        }
 public HighestScoreObjective(Objective Metric)
 {
     this.Metric = Metric;
 }
 public TriggerObjective(Objective Objective, int Threshold, bool Invert)
 {
     this.Objective = Objective;
     this.Threshold = Threshold;
     this.Invert    = Invert;
 }
 public override int?GetMaximumScore(Objective Objective, Army ForArmy, Match Match)
 {
     return(Objective == this ? (int?)1 : null);
 }
Exemple #11
0
 public abstract int?GetMaximumScore(Objective Objective, Army ForArmy, Match Match);