示例#1
0
 public override void Send(Unit sender, string msg)
 {
     if (sender == ArcherUnit)
     {
         RamUnit.Notify(msg);
     }
     else if (sender == RamUnit)
     {
         HeavyUnit.Notify(msg);
     }
     else if (sender == HeavyUnit)
     {
         ArcherUnit.Notify(msg);
     }
 }
示例#2
0
        public static void Test()
        {
            SiegeCommander commander = new SiegeCommander();

            Unit archers = new ArcherUnit(commander);
            Unit ram     = new RamUnit(commander);
            Unit heavy   = new HeavyUnit(commander);

            commander.ArcherUnit = archers;
            commander.RamUnit    = ram;
            commander.HeavyUnit  = heavy;

            archers.Send("Вражеские лучники уничтоженны, можно таранить!");
            ram.Send("Ворота уничтожены, можно заходить в крепость!");
            heavy.Send("В крепости остались лучники, нужна помощь!");
        }