From 7fb3515f51107cb0143f958d071d35c253994a9b Mon Sep 17 00:00:00 2001 From: Ematerasu Date: Fri, 23 May 2025 18:59:35 +0200 Subject: [PATCH 1/2] Finish patrons execution in executor --- Engine/src/Board/CardAction/ComplexEffectExecutor.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Engine/src/Board/CardAction/ComplexEffectExecutor.cs b/Engine/src/Board/CardAction/ComplexEffectExecutor.cs index 74dbf87..d979b5f 100644 --- a/Engine/src/Board/CardAction/ComplexEffectExecutor.cs +++ b/Engine/src/Board/CardAction/ComplexEffectExecutor.cs @@ -146,7 +146,12 @@ public PlayResult CompleteHlaalu(Choice sourceChoice, List choices) { _currentPlayer.Hand.Remove(card); } - else // if not in hand, then it must be in a played pile + else if (_currentPlayer.Agents.Any(agent => agent.RepresentingCard.UniqueId == card.UniqueId)) + { + var toRemove = _currentPlayer.Agents.First(agent => agent.RepresentingCard.UniqueId == card.UniqueId); + _currentPlayer.Agents.Remove(toRemove); + } + else // if not in hand and agents, then it must be in a played pile { _currentPlayer.Played.Remove(card); } @@ -207,6 +212,11 @@ public PlayResult CompleteTreasury(Choice _, List choices) _currentPlayer.Played.Remove(choice); _currentPlayer.CooldownPile.Add(writOfCoin); } + else if (_currentPlayer.Agents.Any(agent => agent.RepresentingCard.UniqueId == choice.UniqueId)) + { + var toRemove = _currentPlayer.Agents.First(agent => agent.RepresentingCard.UniqueId == choice.UniqueId); + _currentPlayer.Agents.Remove(toRemove); + } else { _currentPlayer.Hand.Remove(choice); From ad21a06ea36366d800d8065ca912c086e8e1a5c9 Mon Sep 17 00:00:00 2001 From: Ematerasu Date: Fri, 23 May 2025 19:01:34 +0200 Subject: [PATCH 2/2] Forgot to add WoC --- Engine/src/Board/CardAction/ComplexEffectExecutor.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Engine/src/Board/CardAction/ComplexEffectExecutor.cs b/Engine/src/Board/CardAction/ComplexEffectExecutor.cs index d979b5f..ecc77b8 100644 --- a/Engine/src/Board/CardAction/ComplexEffectExecutor.cs +++ b/Engine/src/Board/CardAction/ComplexEffectExecutor.cs @@ -216,6 +216,7 @@ public PlayResult CompleteTreasury(Choice _, List choices) { var toRemove = _currentPlayer.Agents.First(agent => agent.RepresentingCard.UniqueId == choice.UniqueId); _currentPlayer.Agents.Remove(toRemove); + _currentPlayer.CooldownPile.Add(writOfCoin); } else {