Esempio n. 1
0
    public void DeleteFurniture()
    {
        List <string> names = RoomManager.furniture.Select((Furniture.Data f) => f.name).ToList();

        if (names.Contains(editFurnitureNameField.text))
        {
            Furniture.Data data = RoomManager.furniture[names.IndexOf(editFurnitureNameField.text)];
            RoomManager.DeleteFurniture(data);
            LoadFurniture();
            CloseEditFurnitureWindow();
        }
        else
        {
            Debug.LogError("The furniture: " + editFurnitureNameField.text + " does not exist");
        }
    }
Esempio n. 2
0
 public void SpawnFurniture(int index, Transform parent)
 {
     Furniture.Data data = furnitureData[index];
     if (data.hasTransform)
     {
         Furniture f = Furniture.Spawn(data);
         f.index = index;
         if (parent != null)
         {
             f.transform.SetParent(parent);
         }
     }
     else
     {
         Debug.LogError("Cannot spawn furniture: " + data.name + " because it does not have a position");
     }
 }
Esempio n. 3
0
    public void EditFurniture(TextMeshProUGUI name)
    {
        List <string> names = RoomManager.furniture.Select((Furniture.Data f) => f.name).ToList();

        if (names.Contains(name.text))
        {
            Furniture.Data data = RoomManager.furniture[names.IndexOf(name.text)];
            editFurnitureNameField.text  = data.name;
            editFurnitureSizeXField.text = data.width.ToString();
            editFurnitureSizeYField.text = data.length.ToString();
            OpenEditFurnitureWindow();
        }
        else
        {
            Debug.LogError("The furniture: " + name.text + " does not exist");
        }
    }
Esempio n. 4
0
    public void SpawnFurniture(TextMeshProUGUI name)
    {
        List <string> names = RoomManager.furniture.Select((Furniture.Data f) => f.name).ToList();

        if (names.Contains(name.text))
        {
            Furniture.Data data = new Furniture.Data(RoomManager.furniture[names.IndexOf(name.text)], Vector2.zero, false);
            RoomManager.currentRoom.furnitureData.Add(data);
            RoomManager.currentRoom.SpawnFurniture(RoomManager.currentRoom.furnitureData.Count - 1, room.rectTransform);
            SaveRooom();
            CloseFurnitureWindow();
        }
        else
        {
            Debug.LogError("The furniture: " + name.text + " does not exists");
        }
    }
Esempio n. 5
0
    public static bool ScanForNewFurniture(Room room)
    {
        bool          foundNew = false;
        List <string> names    = furniture.Select((Furniture.Data f) => f.name).ToList();

        for (int i = 0; i < room.furnitureData.Count; i++)
        {
            Furniture.Data data = room.furnitureData[i];
            if (!names.Contains(data.name))
            {
                furniture.Add(data);
                SaveFurniture();
                foundNew = true;
                Debug.Log("Found new furniture: " + data.name + " in the room: " + room.name);
            }
        }
        return(foundNew);
    }
Esempio n. 6
0
    public static void SyncFurniture(Room room)
    {
        List <string> names = furniture.Select((Furniture.Data f) => f.name).ToList();

        for (int i = 0; i < room.furnitureData.Count; i++)
        {
            Furniture.Data data = room.furnitureData[i];
            if (names.Contains(data.name))
            {
                room.furnitureData[i] = new Furniture.Data(furniture[names.IndexOf(data.name)], new Vector2(data.positionX, data.positionY), data.rotated);
                SaveRoom(room);
            }
            else
            {
                furniture.Add(data);
                SaveFurniture();
                Debug.Log("Found new furniture: " + data.name + " in the room: " + room.name);
            }
        }
    }
Esempio n. 7
0
    public void FinishEditFurniture()
    {
        List <string> names = RoomManager.furniture.Select((Furniture.Data f) => f.name).ToList();

        if (names.Contains(editFurnitureNameField.text))
        {
            Furniture.Data data = RoomManager.furniture[names.IndexOf(editFurnitureNameField.text)];
            data.width  = float.Parse(editFurnitureSizeXField.text);
            data.length = float.Parse(editFurnitureSizeYField.text);
            if (!string.IsNullOrEmpty(data.name) && data.width > 0 && data.length > 0)
            {
                RoomManager.furniture[names.IndexOf(data.name)] = data;
                RoomManager.SyncAllFurniture();
                RoomManager.currentRoom.SpawnAllFurniture(room.rectTransform);
                CloseEditFurnitureWindow();
                OpenFurnitureWindow();
            }
        }
        else
        {
            Debug.LogError("The furniture: " + editFurnitureNameField.text + " does not exist");
        }
    }
Esempio n. 8
0
 public static void DeleteFurniture(Furniture.Data furniture)
 {
     RoomManager.furniture.Remove(furniture);
     SaveFurniture();
 }