public void placeTile(int tileID, int x, int y, int rotate) { ResistileServer.GameTile gameTile = getGameTile(tileID); GameObject boardNode = BoardHandler.GetNodeAt(x, y); if (gameTile.type.Contains("Wire")) { foreach (Transform wireTile in wireHand.transform) { if (wireTile.gameObject.GetComponent <TileData>().tileID == tileID) { while (wireTile.GetComponent <TileData>().rotation != 0) { wireTile.GetComponent <RotateTile>().TaskOnClick(); } wireTile.transform.SetParent(boardNode.transform, false); wireTile.transform.SetAsFirstSibling(); removeRotate(wireTile.gameObject); for (int i = 0; i < rotate; i++) { wireTile.GetComponent <RotateTile>().TaskOnClick(); } } } } else { var tile = createGameTile(tileID); tile.transform.SetParent(boardNode.transform, false); tile.GetComponent <Draggable>().enabled = false; removeRotate(tile); tile.transform.SetAsFirstSibling(); for (int i = 0; i < rotate; i++) { tile.GetComponent <RotateTile>().TaskOnClick(); } } }