/// <summary> /// Recogemos los datos del jugador y los guardamos en el fichero de guardado /// </summary> /// <param name="collision"></param> private void OnTriggerEnter2D(Collider2D collision) { if (!collision.CompareTag("Knuckles") || isActive) { return; } //Es un checkpoint válido. Reseteo todos los Chekpoints y lo habilito Knuckles knux = collision.GetComponent <Knuckles>(); isActive = true; _ani.SetTrigger("Activate"); if (_bgmChange && _bgmSource) { _bgmSource.clip = _bgmChange; _bgmSource.Play(); } AudioSource.PlayClipAtPoint(_sfxActivated, transform.position); FSaveData data = new FSaveData(); data.Position = collision.transform.position; data.SceneIndex = SceneManager.GetActiveScene().buildIndex; data.bDodge = knux.bDodge; data.bUppercut = knux.bUppercut; data.iMaxJumps = knux.iMaxJump; string s = JsonUtility.ToJson(data); Save(s); }
public void Continue() { string Json = File.ReadAllText(string.Format("{0}{1}", FSaveData.FullPath, FSaveData.FileName)); FSaveData datos = JsonUtility.FromJson <FSaveData>(Json); if (datos != null) { Knuckles.bRestoreLocation = true; Knuckles.RestoreLocation = datos.Position; Knuckles.bRestoreDodge = datos.bDodge; Knuckles.bRestoreUppercut = datos.bUppercut; Knuckles.iRestoreMaxJump = datos.iMaxJumps; SceneManager.LoadSceneAsync(datos.SceneIndex, LoadSceneMode.Single); } else { //Como no hay nada que cargar, empezamos nueva partida NewGame(); } }