예제 #1
0
    public void PassCarpetHiddenSpaceToRoom(CarpetPart carpetPartPrefab)
    {
        Vector3Int exitPosition    = housePassage.furniturePart.position;
        Vector3Int carpetdirection = Vector3Int.zero;

        switch (hiddenSpacePassage.orientation)
        {
        case Orientation.Right:
            carpetdirection = Vector3Int.left;
            break;

        case Orientation.Left:
            carpetdirection = Vector3Int.right;
            break;

        case Orientation.Forward:
            carpetdirection = new Vector3Int(0, 0, -1);
            break;

        case Orientation.Backward:
            carpetdirection = new Vector3Int(0, 0, 1);
            break;
        }
        exitPosition += carpetdirection;
        CarpetPart newCarpetPart = Instantiate(carpetPartPrefab, exitPosition, carpetPartPrefab.transform.rotation);

        levelManager.room[exitPosition.x, exitPosition.y, exitPosition.z] = newCarpetPart;
        newCarpetPart.position = exitPosition;
        carpet.allCarpetParts.Add(newCarpetPart);
        StartCoroutine(carpet.MoveCarpetIn(carpetdirection));

        housePassage.furniturePart.canMoveFurniture = false;
    }