using System; using System.Collections.Generic; using RobotAndDonkey.Game.Data; using RobotAndDonkey.Game.Execution.Results; using RobotAndDonkey.Game.GameState; using RobotAndDonkey.Game.Intents; namespace RobotAndDonkey.Game.Modifiers; public record HeatWaveModifier(EModifierDuration Duration) : Modifier(EModifierKind.Robot, EModifierId.HeatWave, Duration) { protected override HeatWaveModifier CreateInstance() => new(Duration); public override void OnAdded(Entity owner, List newIntents) { newIntents.Add(new ModifyCurrency(new(-Balancing.Instance.HeatWaveEnergyPenalty, 0, 0, 0, 0, 0))); } public override void OnRemoved(Entity owner, List newIntents) { newIntents.Add(new ModifyCurrency(new(Balancing.Instance.HeatWaveEnergyPenalty, 0, 0, 0, 0, 0))); } public override string ToolTip => $"Heat wave: immediate −{Balancing.Instance.HeatWaveEnergyPenalty} Energy (temporary)."; }