diff --git a/MultiversalDiplomacy/Adjudicate/Decision/AdvanceTimeline.cs b/MultiversalDiplomacy/Adjudicate/Decision/AdvanceTimeline.cs new file mode 100644 index 0000000..19f087c --- /dev/null +++ b/MultiversalDiplomacy/Adjudicate/Decision/AdvanceTimeline.cs @@ -0,0 +1,16 @@ +using MultiversalDiplomacy.Model; +using MultiversalDiplomacy.Orders; + +namespace MultiversalDiplomacy.Adjudicate.Decision; + +public class AdvanceTimeline : BinaryAdjudicationDecision +{ + public Season Season { get; } + public List Orders { get; } + + public AdvanceTimeline(Season season, IEnumerable orders) + { + this.Season = season; + this.Orders = orders.ToList(); + } +} \ No newline at end of file diff --git a/MultiversalDiplomacy/Adjudicate/Decision/MovementDecisions.cs b/MultiversalDiplomacy/Adjudicate/Decision/MovementDecisions.cs index f1067a1..7379beb 100644 --- a/MultiversalDiplomacy/Adjudicate/Decision/MovementDecisions.cs +++ b/MultiversalDiplomacy/Adjudicate/Decision/MovementDecisions.cs @@ -13,6 +13,7 @@ public class MovementDecisions public Dictionary DefendStrength { get; } public Dictionary PreventStrength { get; } public Dictionary DoesMove { get; } + public Dictionary AdvanceTimeline { get; } public IEnumerable Values => this.IsDislodged.Values.Cast() @@ -22,7 +23,8 @@ public class MovementDecisions .Concat(this.AttackStrength.Values) .Concat(this.DefendStrength.Values) .Concat(this.PreventStrength.Values) - .Concat(this.DoesMove.Values); + .Concat(this.DoesMove.Values) + .Concat(this.AdvanceTimeline.Values); public MovementDecisions(World world, List orders) { @@ -34,6 +36,7 @@ public class MovementDecisions this.DefendStrength = new(); this.PreventStrength = new(); this.DoesMove = new(); + this.AdvanceTimeline = new(); // Record which seasons are referenced by the order set. HashSet orderedSeasons = new();