namespace Crosstales.RTVoice.Util { /// Configuration for the asset. public static class Config { #region Variables /// Path to the asset inside the Unity project. public static string ASSET_PATH = "/Plugins/crosstales/RTVoice/"; /// Enable or disable debug logging for the asset. public static bool DEBUG = Constants.DEFAULT_DEBUG || Constants.DEV_DEBUG; /// Automatically delete the generated audio files. public static bool AUDIOFILE_AUTOMATIC_DELETE = Constants.DEFAULT_AUDIOFILE_AUTOMATIC_DELETE; /* /// Enforce 32bit versions of voices under Windows. public static bool ENFORCE_32BIT_WINDOWS = Constants.DEFAULT_ENFORCE_32BIT_WINDOWS; */ /// Enforce standalone TTS (for development). public static bool ENFORCE_STANDALONE_TTS = Constants.DEFAULT_ENFORCE_STANDALONE_TTS; // Technical settings /* /// Location of the TTS-wrapper under Windows (standalone). public static string TTS_WINDOWS_BUILD = Constants.DEFAULT_TTS_WINDOWS_BUILD; */ /// Location of the TTS-system under MacOS. public static string TTS_MACOS = Constants.DEFAULT_TTS_MACOS; /// Is the configuration loaded? public static bool isLoaded; private static string audiofilePath = Constants.DEFAULT_AUDIOFILE_PATH; #endregion #region Properties /// Path to the generated audio files. public static string AUDIOFILE_PATH { get => audiofilePath; set => audiofilePath = Helper.ValidatePath(value); } /* /// Location of the TTS-wrapper under Windows (Editor). public static string TTS_WINDOWS_EDITOR { get { return ASSET_PATH + Constants.TTS_WINDOWS_SUBPATH; } } /// Location of the TTS-wrapper (32bit) under Windows (Editor). public static string TTS_WINDOWS_EDITOR_x86 { get { return ASSET_PATH + Constants.TTS_WINDOWS_x86_SUBPATH; } } */ #endregion #if UNITY_EDITOR #region Public static methods /// Resets all changeable variables to their default value. public static void Reset() { if (!Constants.DEV_DEBUG) DEBUG = Constants.DEFAULT_DEBUG; AUDIOFILE_PATH = Constants.DEFAULT_AUDIOFILE_PATH; AUDIOFILE_AUTOMATIC_DELETE = Constants.DEFAULT_AUDIOFILE_AUTOMATIC_DELETE; //ENFORCE_32BIT_WINDOWS = Constants.DEFAULT_ENFORCE_32BIT_WINDOWS; ENFORCE_STANDALONE_TTS = Constants.DEFAULT_ENFORCE_STANDALONE_TTS; //TTS_WINDOWS_BUILD = Constants.DEFAULT_TTS_WINDOWS_BUILD; TTS_MACOS = Constants.DEFAULT_TTS_MACOS; } /// Loads all changeable variables. public static void Load() { if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_ASSET_PATH)) ASSET_PATH = Common.Util.CTPlayerPrefs.GetString(Constants.KEY_ASSET_PATH); if (!Constants.DEV_DEBUG) { if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_DEBUG)) DEBUG = Common.Util.CTPlayerPrefs.GetBool(Constants.KEY_DEBUG); } else { DEBUG = Constants.DEV_DEBUG; } if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_AUDIOFILE_PATH)) AUDIOFILE_PATH = Common.Util.CTPlayerPrefs.GetString(Constants.KEY_AUDIOFILE_PATH); if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_AUDIOFILE_AUTOMATIC_DELETE)) AUDIOFILE_AUTOMATIC_DELETE = Common.Util.CTPlayerPrefs.GetBool(Constants.KEY_AUDIOFILE_AUTOMATIC_DELETE); /* if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_ENFORCE_32BIT_WINDOWS)) ENFORCE_32BIT_WINDOWS = Common.Util.CTPlayerPrefs.GetBool(Constants.KEY_ENFORCE_32BIT_WINDOWS); */ if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_ENFORCE_STANDALONE_TTS)) ENFORCE_STANDALONE_TTS = Common.Util.CTPlayerPrefs.GetBool(Constants.KEY_ENFORCE_STANDALONE_TTS); //if (Common.Util.CTPlayerPrefs.HasKey(Constants.KEY_TTS_MACOS)) // TTS_MACOS = Common.Util.CTPlayerPrefs.GetString(Constants.KEY_TTS_MACOS); isLoaded = true; } /// Saves all changeable variables. public static void Save() { if (!Constants.DEV_DEBUG) Common.Util.CTPlayerPrefs.SetBool(Constants.KEY_DEBUG, DEBUG); Common.Util.CTPlayerPrefs.SetString(Constants.KEY_AUDIOFILE_PATH, AUDIOFILE_PATH); Common.Util.CTPlayerPrefs.SetBool(Constants.KEY_AUDIOFILE_AUTOMATIC_DELETE, AUDIOFILE_AUTOMATIC_DELETE); //Common.Util.CTPlayerPrefs.SetBool(Constants.KEY_ENFORCE_32BIT_WINDOWS, ENFORCE_32BIT_WINDOWS); Common.Util.CTPlayerPrefs.SetBool(Constants.KEY_ENFORCE_STANDALONE_TTS, ENFORCE_STANDALONE_TTS); //Common.Util.CTPlayerPrefs.SetString(Constants.KEY_TTS_MACOS, TTS_MACOS); Common.Util.CTPlayerPrefs.Save(); } #endregion #endif } } // © 2017-2020 crosstales LLC (https://www.crosstales.com)