private void GenerateAnimal() { var rnd = new Random(); var prob = rnd.Next(0, 100); Animal newAnimal = null; if (prob < 25) { newAnimal = new Rat(_zoo); } else if (prob < 35) { newAnimal = new Elephant(_zoo); } else if (prob < 70) { newAnimal = new Cat(_zoo); } else if (prob < 95) { newAnimal = new Dog(_zoo); } else if (prob < 100) { newAnimal = new Snake(_zoo); } EarthLiveTicker.LiveTicker.Subscribe(newAnimal); _zoo.Receive(newAnimal); }