Files
zfxaction25/RobotAndDonkey.Game/Execution/Commands/DiscardCommand.cs
2026-04-19 00:43:27 +02:00

23 lines
726 B
C#

using System;
using System.Linq;
using RobotAndDonkey.Game.Data;
using RobotAndDonkey.Game.Execution.Requests;
using RobotAndDonkey.Game.GameState;
using RobotAndDonkey.Game.Intents;
namespace RobotAndDonkey.Game.Execution.Commands;
public sealed record DiscardCommand(Guid RequestId, Guid[] CardIds) : Command(RequestId, typeof(ExecuteProgramRequest))
{
protected override void CreateIntents(CoreLoop coreLoop, List<Intent> intents)
{
var cost = CardIds.Length * Balancing.Instance.DiscardEnergyCost;
intents.Add(new Discard(CardIds, cost));
}
public override string ToString()
{
return $"Discard cards command {string.Join(", ", CardIds.Select(id => id.ToString()))}";
}
}