(DUVIDA) Sistema de Save e Load!
2 participantes
Página 1 de 1
(DUVIDA) Sistema de Save e Load!
Entao pessoal eu to um probleminha, o meu sistema de shop ele é em UI, ele Salva tudo certinho e da load quanto a cena que esta o Shop é Iniciada.
As armas do Shop elas tem ons Ids dela quando uma delas estiver equipada ele manda o ID Dessa arma para uma variavel, ai eu chego no meu script de Armas e falo que minha "ArmaAtual" = a essa variavel.
Só que o meu game inicia na Cena Menu e quando eu aperto eu jogar ele nao instancia arma com o ID Correto, ele só instancia a Arma com o ID correto se eu antes Abrir o Shop.
Eu queria saber como faço para o jogo ja Inicar com tudo certinho!
Script Do Salve&load:
As armas do Shop elas tem ons Ids dela quando uma delas estiver equipada ele manda o ID Dessa arma para uma variavel, ai eu chego no meu script de Armas e falo que minha "ArmaAtual" = a essa variavel.
Só que o meu game inicia na Cena Menu e quando eu aperto eu jogar ele nao instancia arma com o ID Correto, ele só instancia a Arma com o ID correto se eu antes Abrir o Shop.
Eu queria saber como faço para o jogo ja Inicar com tudo certinho!
Script Do Salve&load:
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
public class SaveLoad : MonoBehaviour {
[System.Serializable]
public class SaveData
{
public List<Weapon> shopList = new List<Weapon> ();
public float money;
public int currentWeaponID;
}
void Start(){
Loading ();
}
public void Saving()
{
SaveData data = new SaveData ();
data.money = GameManager.gamemanager.GetMoneyInfo ();
data.currentWeaponID = GameManager.gamemanager.currentWeaponID;
// ADICIONAR TODAS AS ARMAS DA LISTA WEAPONSHOP
for (int i = 0; i < WeaponShop.weaponShop.weaponList.Count; i++) {
data.shopList.Add (WeaponShop.weaponShop.weaponList [i]);
}
BinaryFormatter bf = new BinaryFormatter ();
FileStream stream = new FileStream (Application.persistentDataPath + "/shop.octo", FileMode.Create);
bf.Serialize (stream, data);
stream.Close ();
print ("Saved!");
}
public void Loading()
{
if (File.Exists (Application.persistentDataPath + "/shop.octo")) {
BinaryFormatter bf = new BinaryFormatter ();
FileStream stream = new FileStream (Application.persistentDataPath + "/shop.octo", FileMode.Open);
SaveData data = (SaveData)bf.Deserialize (stream);
GameManager.gamemanager.SetMoneyInfo (data.money);
GameManager.gamemanager.currentWeaponID = data.currentWeaponID;
stream.Close ();
for (int i = 0; i < data.shopList.Count; i++) {
//Atualize a loja
WeaponShop.weaponShop.weaponList [i] = data.shopList [i];
//Atualize todos os SPRITES
WeaponShop.weaponShop.UpdateSprite (WeaponShop.weaponShop.weaponList [i].weaponID);
//Atualize todos os BUTTONS
WeaponShop.weaponShop.UpdateBuyButtons ();
print ("Loading");
}
} else {
print ("Load");
}
}
public void delete()
{
if(File.Exists(Application.persistentDataPath + "/shop.octo"))
{
File.Delete (Application.persistentDataPath + "/shop.octo");
}
}
}
Re: (DUVIDA) Sistema de Save e Load!
Precisamos do script do shop, por que o método para resgatar dados deve estar nele.
Tópicos semelhantes
» SAVE E LOAD ENTRE CENAS
» [Ajuda] como faço um sistema de save e load?
» {duvida pesada} Sistema De Load [ salvar a ultima cena que eu "entrei"}
» Save and Load game por UI?
» SISTEMA DE SAVE
» [Ajuda] como faço um sistema de save e load?
» {duvida pesada} Sistema De Load [ salvar a ultima cena que eu "entrei"}
» Save and Load game por UI?
» SISTEMA DE SAVE
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos