//Initialization methods private void Create() { Labyrinth.Tile[,] tiles = labyrinth.GetTiles(); field = new GameObject[tiles.GetLength(0), tiles.GetLength(1)]; Labyrinth.Properties properties = labyrinth.GetProperties(); for (int y = 0; y < tiles.GetLength(1); y++) { for (int x = 0; x < tiles.GetLength(0); x++) { GameObject tile; Transform transform = gameObject.transform; Vector3 position = new Vector3(x * tileSize, 0, y * tileSize); switch (tiles[x, y]) { case Labyrinth.Tile.ENTRY: tile = Instantiate(entry, transform); break; case Labyrinth.Tile.EXIT: tile = Instantiate(exit, transform); break; case Labyrinth.Tile.DYNAMIC_TRAP: tile = Instantiate(dynamicTrap, transform); break; case Labyrinth.Tile.STATIC_TRAP: tile = Instantiate(staticTrap, transform); break; case Labyrinth.Tile.WALL: tile = Instantiate(wall, transform); break; case Labyrinth.Tile.KEY: tile = Instantiate(key, transform); break; default: tile = Instantiate(free, transform); position.y = 0; break; } tile.transform.position = position; tile.transform.localScale = Vector3.one * tileSize; //SyncScaleRotation t = tile.GetComponent<SyncScaleRotation>(); //t.rotation = tile.transform.rotation; //t.scale = tile.transform.localScale; //NetworkServer.Spawn(tile); } } }