public override void PigVisit(PigBoss pig) { int Exp = pig.Hp * pig.Level; string name = pig.Name; Debug.Log("击杀了" + name + "获得了" + Exp + "的经验加成"); }
void Start() { BOSSList bosslist = new BOSSList(); IBOSS pigboss0 = new PigBoss("猪猪侠", 100, 1); IBOSS pigboss1 = new PigBoss("猪八戒", 150, 2); IBOSS dogboss0 = new DogBoss("哮天犬", 200, 1); IBOSS dogboss1 = new DogBoss("牧羊犬", 100, 2); IBOSS dogboss2 = new DogBoss("藏獒", 300, 3); bosslist.AddBoss(pigboss0); bosslist.AddBoss(pigboss1); bosslist.AddBoss(dogboss0); bosslist.AddBoss(dogboss1); bosslist.AddBoss(dogboss2); IVisitor visitor = new PlayerExp(); IVisitor visitor1 = new PlayerPower(); bosslist.Accept(visitor); bosslist.Accept(visitor1); }
public override void PigVisit(PigBoss pig) { Debug.Log("击杀" + pig.Name + "不增加战力,气不气"); }
// 声明一组重载的访问方法,用于访问不同类型的具体元素 public abstract void PigVisit(PigBoss pig);