From 539a3d3d68e088c7b822223dea6a2fd75c7e8657 Mon Sep 17 00:00:00 2001 From: Tretiner Date: Sat, 27 Jul 2024 22:09:51 +0500 Subject: [PATCH] Win conditions fix --- .../Domain/WinCondition.cs | 37 +++++++------------ 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/SoulstormReplayReader.Core/Domain/WinCondition.cs b/SoulstormReplayReader.Core/Domain/WinCondition.cs index e15527a..9f63de6 100644 --- a/SoulstormReplayReader.Core/Domain/WinCondition.cs +++ b/SoulstormReplayReader.Core/Domain/WinCondition.cs @@ -1,6 +1,4 @@ -using System.Text; - -namespace SoulstormReplayReader.Core.Domain; +namespace SoulstormReplayReader.Core.Domain; public sealed class WinConditions { @@ -42,34 +40,25 @@ public sealed class WinConditions public bool GameTimer { get; set; } - public override string ToString() + public IEnumerable Enumerate() { - var sb = new StringBuilder(); - if (Annihilate) - sb.Append("Annihilate "); - - if (Assassinate) - sb.Append(nameof(Assassinate) + ' '); - + yield return nameof(Annihilate); + if (Assassinate) + yield return nameof(Assassinate); if (ControlArea) - sb.Append("ControlArea "); - + yield return nameof(ControlArea); if (DestroyHQ) - sb.Append("DestroyHQ "); - + yield return nameof(DestroyHQ); if (EconomicVictory) - sb.Append("EconomicVictory "); - + yield return nameof(EconomicVictory); if (GameTimer) - sb.Append("GameTimer "); - + yield return nameof(GameTimer); if (SuddenDeath) - sb.Append("SuddenDeath "); - + yield return nameof(SuddenDeath); if (TakeAndHold) - sb.Append("TakeAndHold "); - - return sb.ToString(); + yield return nameof(TakeAndHold); } + + public override string ToString() => string.Join('\n', Enumerate()); } \ No newline at end of file