// Update is called once per frame void Update() { Scene scene = SceneManager.GetActiveScene(); if (scene.name == "Start") { volume = mySettingsmenu.volume; sfx = mySettingsmenu.sfx; music = mySettingsmenu.music; } if (scene.name == "Game") { Audiomixer.SetFloat("volume", volume); Audiomixer.SetFloat("volume", sfx); Audiomixer.SetFloat("volume", music); if (loaded) { SaveGameManager = GameObject.Find("SaveGameManager"); mySaveGameSettings = SaveGameManager.GetComponent <SaveGameSettings>(); mySaveGameSettings.Load(); } destroy = true; } if (destroy == false) { DontDestroyOnLoad(transform.gameObject); } if (scene.name == "Game" && destroy) { Destroy(transform.gameObject); } }
/// <summary> /// Copy the specified identifier to identifier. /// </summary> /// <param name="fromIdentifier">From identifier.</param> /// <param name="toIdentifier">To identifier.</param> /// <param name="settings">Settings.</param> public override void Copy(string fromIdentifier, string toIdentifier, SaveGameSettings settings) { string fromPath = GetAbsolutePath(fromIdentifier, settings.BasePath); string toPath = GetAbsolutePath(toIdentifier, settings.BasePath); if (File.Exists(fromPath) && !Directory.Exists(toPath)) { File.Copy(fromPath, toPath); } else if (File.Exists(fromPath) && Directory.Exists(toPath)) { File.Copy(fromPath, Path.Combine(toPath, Path.GetFileName(fromPath))); } else if (Directory.Exists(fromPath) && !File.Exists(toPath)) { Directory.CreateDirectory(toPath); DirectoryInfo info = new DirectoryInfo(fromPath); FileInfo [] files = info.GetFiles(); for (int i = 0; i < files.Length; i++) { string dest = Path.Combine(toPath, files [i].Name); files [i].CopyTo(dest, true); } DirectoryInfo [] directories = info.GetDirectories(); for (int i = 0; i < directories.Length; i++) { string dest = Path.Combine(toPath, directories [i].Name); Copy(directories [i].FullName, dest, settings); } } }
/// <summary> /// Serialize the specified output, value and settings. /// </summary> /// <param name="output">Output.</param> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> public void Serialize(TextWriter output, object value, SaveGameSettings settings) { using (JsonWriter writer = new JsonTextWriter(output, settings)) { writer.Write(value); } }
/// <summary> /// Deserializes the into. /// </summary> /// <param name="input">Input.</param> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> public virtual void DeserializeInto(Stream input, object value, SaveGameSettings settings) { using (BinaryObjectReader reader = new BinaryObjectReader(input, settings)) { (reader as ISaveGameReader).ReadInto(value); } }
/// <summary> /// Deserialize the specified input, type and settings. /// </summary> /// <param name="input">Input.</param> /// <param name="type">Type.</param> /// <param name="settings">Settings.</param> public object Deserialize(TextReader input, Type type, SaveGameSettings settings) { using (JsonReader reader = new JsonTextReader(input, settings)) { return(reader.Read(type)); } }
void Start() { SoundManager = GameObject.Find("SoundManager"); SaveGameManager = GameObject.Find("SaveGameManager"); mySaveGameSettings = SaveGameManager.GetComponent <SaveGameSettings>(); InventoryPanel = GameObject.Find("InventarPanel"); RezeptPanel = GameObject.Find("RezeptPanel"); EquipmentPanel = GameObject.Find("EquimentPanel"); Mouse = GameObject.Find("Mouse"); MouseSlot = GameObject.Find("MouseSlot"); Slotpanel = GameObject.Find("SlotPanel"); PauseMenu = GameObject.Find("PauseMenu"); MouseSlot.SetActive(false); PauseMenu.SetActive(false); Charakter = GameObject.Find("Charakter"); Rightarm = GameObject.Find("Rightarm"); Leftarm = GameObject.Find("Leftarm"); Head = GameObject.Find("Head"); Body = GameObject.Find("Body"); AudioSource = GetComponent <AudioSource>(); Etimer = 1.5f; Dtimer = 1.5f; // Mit Animator verbinden -------------------------------------------------------- animator = GetComponent <Animator>(); }
/// <summary> /// Load the data into the value. /// </summary> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public override void LoadInto(object value, SaveGameSettings settings) { using (MemoryStream stream = new MemoryStream(Convert.FromBase64String(m_Request.downloadHandler.text))) { settings.Formatter.DeserializeInto(stream, value, settings); } }
/// <summary> /// Clear the user data on this storage. /// </summary> /// <param name="settings">Settings.</param> public override void Clear(SaveGameSettings settings) { string path = GetAbsolutePath(settings.Identifier, settings.BasePath); if (File.Exists(path)) { Delete(settings); return; } else if (string.IsNullOrEmpty(path) || !Directory.Exists(path)) { path = settings.BasePath; } if (!Directory.Exists(path)) { return; } DirectoryInfo info = new DirectoryInfo(path); FileInfo [] files = info.GetFiles(); for (int i = 0; i < files.Length; i++) { files [i].Delete(); } DirectoryInfo [] directories = info.GetDirectories(); for (int i = 0; i < directories.Length; i++) { if (directories [i].Name != "Unity") { directories [i].Delete(true); } } }
/// <summary> /// Deserializes the into. /// </summary> /// <param name="input">Input.</param> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> public void DeserializeInto(TextReader input, object value, SaveGameSettings settings) { using (JsonReader reader = new JsonTextReader(input, settings)) { reader.ReadInto(value); } }
/// <summary> /// Deserialize the specified input, type and settings. /// </summary> /// <param name="input">Input.</param> /// <param name="type">Type.</param> /// <param name="settings">Settings.</param> public virtual object Deserialize(Stream input, Type type, SaveGameSettings settings) { using (BinaryObjectReader reader = new BinaryObjectReader(input, settings)) { return(reader.Read(type)); } }
/// <summary> /// Serialize the specified output, value and settings. /// </summary> /// <param name="output">Output.</param> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> public virtual void Serialize(Stream output, object value, SaveGameSettings settings) { using (BinaryObjectWriter writer = new BinaryObjectWriter(output, settings)) { writer.Write(value); } }
/// <summary> /// Load the value, if not exists, return the default value. /// </summary> /// <param name="defaultValue">Default value.</param> /// <param name="settings">Settings.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public virtual T Load <T>(T defaultValue, SaveGameSettings settings) { if (defaultValue == null) { defaultValue = default(T); } return((T)Load(typeof(T), defaultValue, settings)); }
/// <summary> /// Gets the read stream. /// </summary> /// <returns>The read stream.</returns> /// <param name="settings">Settings.</param> public override Stream GetReadStream(SaveGameSettings settings) { string path = GetAbsolutePath(settings.Identifier, settings.BasePath); if (!File.Exists(path)) { return(null); } return(new FileStream(path, FileMode.Open)); }
/// <summary> /// Delete the specified identifier. /// </summary> /// <param name="identifier">Identifier.</param> /// <param name="settings">Settings.</param> public override IEnumerator Delete(string identifier, SaveGameSettings settings) { var form = CreateRequestForm("delete", settings); m_Request = UnityWebRequest.Post(m_Url, form); #if UNITY_2017_2_OR_NEWER yield return(m_Request.SendWebRequest()); #else yield return(m_Request.Send()); #endif }
/// <summary> /// Clear the user data. /// </summary> /// <param name="settings">Settings.</param> public override IEnumerator Clear(SaveGameSettings settings) { var form = CreateRequestForm("clear", settings); m_Request = UnityWebRequest.Post(m_Url, form); #if UNITY_2017_2_OR_NEWER yield return(m_Request.SendWebRequest()); #else yield return(m_Request.Send()); #endif }
/// <summary> /// Gets the write stream. /// </summary> /// <returns>The write stream.</returns> /// <param name="settings">Settings.</param> public override Stream GetWriteStream(SaveGameSettings settings) { string path = GetAbsolutePath(settings.Identifier, settings.BasePath); string dirName = Path.GetDirectoryName(path); if (!Directory.Exists(dirName)) { Directory.CreateDirectory(dirName); } return(new FileStream(path, FileMode.Create)); }
/// <summary> /// Gets the file URL. /// </summary> /// <param name="identifier">Identifier.</param> /// <param name="settings">Settings.</param> public virtual IEnumerator GetFileUrl(string identifier, SaveGameSettings settings) { var form = CreateRequestForm("getfileurl", identifier, settings); form.Add("file-name", identifier); m_Request = UnityWebRequest.Post(m_Url, form); #if UNITY_2017_2_OR_NEWER yield return(m_Request.SendWebRequest()); #else yield return(m_Request.Send()); #endif }
/// <summary> /// Gets the files. /// </summary> /// <returns>The files.</returns> /// <param name="settings">Settings.</param> public override FileInfo[] GetFiles(SaveGameSettings settings) { string path = GetAbsolutePath(settings.Identifier, settings.BasePath); FileInfo [] files = new FileInfo[0]; if (Directory.Exists(path)) { DirectoryInfo info = new DirectoryInfo(path); files = info.GetFiles(); } return(files); }
/// <summary> /// Delete the specified identifier. /// </summary> /// <param name="settings">Settings.</param> public override void Delete(SaveGameSettings settings) { string path = GetAbsolutePath(settings.Identifier, settings.BasePath); if (File.Exists(path)) { File.Delete(path); } else if (Directory.Exists(path)) { Directory.Delete(path, true); } }
// Use this for initialization void Start() { SoundManager = GameObject.Find("SoundManager"); SaveGameManager = GameObject.Find("SaveGameManager"); mySaveGameSettings = SaveGameManager.GetComponent <SaveGameSettings>(); animator = GetComponent <Animator>(); tmp = this.GetComponent <SpriteRenderer>().color; allSlots = new string[9]; allItems = new string[9]; amountItems = new int[20]; ChestID = new Dictionary <GameObject, int>(); }
/// <summary> /// Load the value, if not exists, return the default value. /// </summary> /// <param name="type">Type.</param> /// <param name="defaultValue">Default value.</param> /// <param name="settings">Settings.</param> public override object Load(Type type, object defaultValue, SaveGameSettings settings) { object result = null; using (MemoryStream stream = new MemoryStream(Convert.FromBase64String(m_Request.downloadHandler.text))) { result = settings.Formatter.Deserialize(stream, type, settings); } if (result == null) { result = defaultValue; } return(result); }
/// <summary> /// Save the specified value using the identifier. /// </summary> /// <param name="identifier">Identifier.</param> /// <param name="value">Value.</param> /// <param name="settings">Settings.</param> /// <typeparam name="T">The 1st type parameter.</typeparam> public override IEnumerator Save(string identifier, object value, SaveGameSettings settings) { byte[] data; using (MemoryStream stream = new MemoryStream()) { settings.Formatter.Serialize(stream, value, settings); data = stream.ToArray(); } var form = CreateRequestForm("save", identifier, data, settings); m_Request = UnityWebRequest.Post(m_Url, form); #if UNITY_2017_2_OR_NEWER yield return(m_Request.SendWebRequest()); #else yield return(m_Request.Send()); #endif }
/// <summary> /// Move the specified identifier to identifier. /// </summary> /// <param name="fromIdentifier">From identifier.</param> /// <param name="toIdentifier">To identifier.</param> /// <param name="settings">Settings.</param> public override void Move(string fromIdentifier, string toIdentifier, SaveGameSettings settings) { string fromPath = GetAbsolutePath(fromIdentifier, settings.BasePath); string toPath = GetAbsolutePath(toIdentifier, settings.BasePath); if (File.Exists(fromPath) && !Directory.Exists(toPath)) { File.Move(fromPath, toPath); } else if (File.Exists(fromPath) && Directory.Exists(toPath)) { File.Move(fromPath, Path.Combine(toPath, Path.GetFileName(fromPath))); } else if (Directory.Exists(fromPath) && !File.Exists(toPath)) { Directory.Move(fromPath, toPath); } }
/// <summary> /// Delete the specified identifier. /// </summary> /// <param name="settings">Settings.</param> public override void Delete(SaveGameSettings settings) { PlayerPrefs.DeleteKey(settings.Identifier); PlayerPrefs.Save(); }
/// <summary> /// Copy the specified identifier to identifier. /// </summary> /// <param name="fromIdentifier">From identifier.</param> /// <param name="toIdentifier">To identifier.</param> /// <param name="settings">Settings.</param> public override void Copy(string fromIdentifier, string toIdentifier, SaveGameSettings settings) { PlayerPrefs.SetString(toIdentifier, PlayerPrefs.GetString(fromIdentifier)); PlayerPrefs.Save(); }
/// <summary> /// Clear the user data on this storage. /// </summary> /// <param name="settings">Settings.</param> public override void Clear(SaveGameSettings settings) { PlayerPrefs.DeleteAll(); PlayerPrefs.Save(); }
/// <summary> /// Called after Save. /// </summary> /// <param name="settings">Settings.</param> public override void OnSaved(SaveGameSettings settings) { PlayerPrefs.SetString(settings.Identifier, Convert.ToBase64String(m_TempStream.ToArray())); PlayerPrefs.Save(); m_TempStream.Dispose(); }
/// <summary> /// Gets the write stream. /// </summary> /// <returns>The write stream.</returns> /// <param name="settings">Settings.</param> public override Stream GetWriteStream(SaveGameSettings settings) { m_TempStream = new MemoryStream(); return(m_TempStream); }
/// <summary> /// Gets the read stream. /// </summary> /// <returns>The read stream.</returns> /// <param name="settings">Settings.</param> public override Stream GetReadStream(SaveGameSettings settings) { return(new MemoryStream(Convert.FromBase64String(PlayerPrefs.GetString(settings.Identifier)))); }
/// <summary> /// Move the specified identifier to identifier. /// </summary> /// <param name="fromIdentifier">From identifier.</param> /// <param name="toIdentifier">To identifier.</param> /// <param name="settings">Settings.</param> public override void Move(string fromIdentifier, string toIdentifier, SaveGameSettings settings) { Copy(fromIdentifier, toIdentifier, settings); settings.Identifier = fromIdentifier; Delete(settings); }