public void PassCarpetRoomToHiddenSpace(HiddenSpaceCarpetPart hiddenSpaceCarpetPrefab) { Vector2Int exitPosition = hiddenSpacePassage.portalSpaceObject.position; Vector2Int carpetdirection = Vector2Int.zero; switch (hiddenSpacePassage.orientation) { case Orientation.Right: carpetdirection = Vector2Int.left; break; case Orientation.Left: carpetdirection = Vector2Int.right; break; case Orientation.Forward: carpetdirection = Vector2Int.down; break; case Orientation.Backward: carpetdirection = Vector2Int.up; break; } exitPosition += carpetdirection; HiddenSpaceCarpetPart newCarpetPart = Instantiate(hiddenSpaceCarpetPrefab, hiddenSpace.GetWorldPosition(exitPosition), hiddenSpaceCarpetPrefab.transform.rotation); hiddenSpace.hiddenSpace[exitPosition.x, exitPosition.y] = newCarpetPart; newCarpetPart.position = exitPosition; carpet.allHiddenCarpetParts.Add(newCarpetPart); StartCoroutine(carpet.MoveHiddenCarpetIn(carpetdirection)); housePassage.furniturePart.canMoveFurniture = false; }