public HowlingBlizzard(int cooldown, HexCell parentCell, Character characterThatOwnsEffect, int value, string name) : base(cooldown, parentCell, name) { _characterThatOwnsEffect = characterThatOwnsEffect; _speedDecrease = value; ParentCell.OnEnter += AddEffect; ParentCell.OnLeave += RemoveEffect; OnRemove += () => { _isBeingRemoved = true; if (ParentCell.CharacterOnCell != null) { RemoveEffect(ParentCell.CharacterOnCell); } ParentCell.OnEnter -= AddEffect; ParentCell.OnLeave -= RemoveEffect; }; if (ParentCell.CharacterOnCell != null) { AddEffect(ParentCell.CharacterOnCell); } parentCell.AddEffectHighlight(Name); OnRemove += () => parentCell.RemoveEffectHighlight(Name); }
public Conflagration(int cooldown, HexCell parentCell, Character characterThatOwnsEffect) : base(cooldown, parentCell, "Conflagration") { _characterThatOwnsEffect = characterThatOwnsEffect; parentCell.AddEffectHighlight(Name); OnRemove += () => parentCell.RemoveEffectHighlight(Name); }