// Carrega dados salvo num slot public void Carregar(string slot) { string caminho = string.Concat(Application.persistentDataPath, "/", slot); // Verifica se arquivo existe if (File.Exists(caminho)) { // Abre arquivo e formatter BinaryFormatter binaryFormatter = new BinaryFormatter(); FileStream fileStream = File.Open(caminho, FileMode.Open); // Carrega dados PlayerData dados = (PlayerData)binaryFormatter.Deserialize(fileStream); this.idIdioma = dados.LanguageId; this.gold = dados.NumberOfGold; this.playerID = dados.PlayerId; this.idArma = dados.WeaponId; this.idArmaAtual = dados.WeaponId; this.idArmaInicial = dados.WeaponId; this.idFlechaEquipada = dados.EquippedArrowId; this.quantidadeFlechas = dados.NumberOfArrows; this.quantidadePocoes = dados.NumberOfPotions; this.itensInventario = dados.InventoryItems; this.aprimoramentoArmas = dados.WeaponsEnhancements; // Verifica o inventario inventario.itensCarregados.Clear(); // Recupera dados foreach (string item in itensInventario) { GameObject objeto = Resources.Load <GameObject>(string.Concat("Prefabs/Armas/", item)); inventario.itensCarregados.Add(objeto); } inventario.itensInventario.Add(armaInicial[playerID]); GameObject tempArma = Instantiate(armaInicial[playerID]); inventario.itensCarregados.Add(tempArma); vidaAtual = vidaMaxima; manaAtual = manaMaxima; // Fecha a carrega cena fileStream.Close(); MudarEstado(GameState.GAMEPLAY); string nomeCena = "PrimeiraFase 1"; audioController.ChangeSong(audioController.musicaFase1, nomeCena, true); } else { NovoJogo(); } }