Example #1
0
        static void Main(string[] args)
        {
            Ghost fastGhost = new Ghost("FastGhost", 5, 10);
            Spawner Spawner = new Spawner(fastGhost);

            List<Ghost> fastGhosts = new List<Ghost>();

            for (int i = 0; i < 10; i++)
            {
                fastGhosts.Add((Ghost) Spawner.SpawnMonster());

                fastGhosts[i].PrintStats();

            }

            // -----------
            // using callbacks:
            Spawner ghostCallbackSpawner = new Spawner(fastGhost.SpawnGhost);
            Ghost g = (Ghost) ghostCallbackSpawner.SpawnMonsterViaCallback();
            g.PrintStats();

            // -----------
            // generic test (similar to C++ templates):
            GenericTest<int> _tInt = new GenericTest<int>(5);
            GenericTest<string> _tString = new GenericTest<string>("hello");
            _tInt.Write();
            _tString.Write();

            SpawnerFor<Ghost> spawnerForGhost = new SpawnerFor<Ghost>();
            Ghost gg = spawnerForGhost.SpawnMonster();
            gg.PrintStats();

            Console.ReadLine();
        }
 // Use this for initialization
 void Start()
 {
     Spawner ghostSpawner = new SpawnerFor<Ghost>();
     ghostSpawner.spawnMonster();
 }