public override void Handle(TowerReceiver receiver) { if (receiver.Calm) { Console.WriteLine("Ждем"); } else { Successor?.Handle(receiver); } }
public override void Handle(TowerReceiver receiver) { if (receiver.Heal) { Console.WriteLine("Лечим"); } else { Successor?.Handle(receiver); } }
public override void Handle(TowerReceiver receiver) { if (receiver.Fire) { Console.WriteLine("Огонь!!"); } else { Successor?.Handle(receiver); } }
public static void Test() { TowerReceiver receiver = new TowerReceiver(false, false, true); TowerHandler handler3 = new CalmHandler(); TowerHandler handler2 = new FireHandler { Successor = handler3 }; TowerHandler handler1 = new HealHandler { Successor = handler2 }; handler1.Handle(receiver); }
public abstract void Handle(TowerReceiver receiver);