public override void PerformCommand() { SpawnablesManager manager = Object.FindObjectOfType <SpawnablesManager>(); Assert.IsNotNull(manager); Assert.IsNotNull(troopToSpawn); CellBehaviour spawnLocation = GetRandomFreeCell(); switch (troopToSpawn) { case ENTITY.Launcher: manager.SpawnEntity(spawnLocation, troopToSpawn, Entity.Owner.AI); break; case ENTITY.Prisioner: manager.SpawnEntity(spawnLocation, troopToSpawn, Entity.Owner.AI); break; case ENTITY.Tank: manager.SpawnEntity(spawnLocation, troopToSpawn, Entity.Owner.AI); break; case ENTITY.Turret: manager.SpawnEntity(spawnLocation, troopToSpawn, Entity.Owner.AI); break; case ENTITY.Wall: manager.SpawnEntity(spawnLocation, troopToSpawn, Entity.Owner.AI); break; } }