public void flushChangesToDisk()
    {
        string newJson = JsonUtility.ToJson(this, true);

        WriteJSON(newJson);
        XuFileUtil.WriteText(this.description, descriptionFilePath);
        XuFileUtil.WriteText(this.howToPlay, instructionsFilePath);
        XuFileUtil.WriteText(this.notes, notesFilePath);
        //GameLaunchSettings gls = this.launchSettings;
        //string glsLaunchSettingsJson = JsonUtility.ToJson(gls, true);
        //XuFileUtil.WriteText(glsLaunchSettingsJson, launchSettingsFilePath);
    }
    public string GetInfoJSON()
    {
        bool   prettify = true;
        string rawJson  = !File.Exists(jsonFilePath) ? null : File.ReadAllText(jsonFilePath);

        if (string.IsNullOrEmpty(rawJson))
        {
            rawJson = JsonUtility.ToJson(this, prettify);
            XuFileUtil.WriteText(rawJson, jsonFilePath);
        }

        return(rawJson);
    }
    string findOrCreateDoubleExtensionTextFile(string extension, string defaultVal)
    {
        string ret = null;

        //--- Look for a file ending in .instructions.text ----------------
        string[] filesWithInstructionExtension = Directory.GetFiles(_gameFolder.FullName, "*" + extension);
        if (filesWithInstructionExtension.Length > 0)
        {
            ret = filesWithInstructionExtension[0];
        }
        else //--- Create it, if it doesn't exist ---------------
        {
            string newPath = Path.Combine(_gameFolder.FullName, _gameFolder.Name + extension);
            XuFileUtil.WriteText(defaultVal, newPath);
            ret = newPath;
        }
        return(ret);
    }
 public void WriteJSON(string newJson)
 {
     XuFileUtil.WriteText(newJson, this.jsonFilePath);
 }