/// <summary>
    /// Checks if values in Inputsfields are correct => Creates new level and starts edit mode with it
    /// </summary>
    public void CreateNewLevel()
    {
        string name = nameInput.text;
        int    width, height;

        //Test if inputFields are correctly set
        if (name == "" || fileNames.Contains(name))
        {
            Debug.Log("FileName is null or already exists");
            return;
        }
        if (!int.TryParse(widthInput.text, out width) || !int.TryParse(heightInput.text, out height))
        {
            Debug.Log("width or heightInput field empty");
            return;
        }
        if (width < Level_Data.MinDimension || height < Level_Data.MinDimension)
        {
            Debug.Log("width or height too small");
            return;
        }

        //Creates new LevelData
        fileNames.Add(name);
        selectedButton = SpawnButton(name);
        buttons.Add(selectedButton);
        Gamemaster.Instance.GetLevel().CreateNewLevel(width, height, name);

        //Go into Edit mode
        CloseNewLevelWindow();
        menuObject.SetActive(false);
        Gamemaster.Instance.GetLevelEditor().BeginEditLevel("");
    }
 /// <summary>
 /// Delete saveFile for button, removes it from buttonList and nameList + destroysButtonObject
 /// </summary>
 /// <param name="button"></param>
 public void DeleteLevel(LevelEditorLevelButton button)
 {
     LevelSaveLoad.Delete(button.GetName(), FilePaths.CustomEditLevelFolder);
     buttons.Remove(button);
     fileNames.Remove(button.GetName());
     Destroy(button.gameObject);
 }
    public void ContinueEdit()
    {
        string name = Gamemaster.Instance.GetLevel().GetLevelData().Name;

        selectedButton = buttons.Where(button => button.GetName() == name).FirstOrDefault();
        menuObject.SetActive(false);
        Gamemaster.Instance.GetLevelEditor().BeginEditLevel("");
    }
    protected LevelEditorLevelButton SpawnButton(string name)
    {
        GameObject             buttonObject = InstantiateButtonAsChild();
        LevelEditorLevelButton button       = buttonObject.GetComponent <LevelEditorLevelButton>();

        button.SetLevelName(name);
        button.SetLevelEditorMenu(this);
        return(button);
    }
 /// <summary>
 /// Closes EditorMenu and goes into Edit mode
 /// </summary>
 /// <param name="button"></param>
 public void ChooseLevel(LevelEditorLevelButton button)
 {
     selectedButton = button;
     menuObject.SetActive(false);
     Gamemaster.Instance.GetLevelEditor().BeginEditLevel(button.GetName());
 }