public void Save() { BinaryFormatter bf = new BinaryFormatter(); FileStream fileInventaire = File.Create(Application.persistentDataPath + "/inventaireInfo.dat"); FileStream fileEnvironnement = File.Create(Application.persistentDataPath + "/environnementInfo.dat"); FileStream fileCampement = File.Create(Application.persistentDataPath + "/campementInfo.dat"); InfosInventaire infosInventaire = new InfosInventaire(); InfosEnvironnement infosEnvironnement = new InfosEnvironnement(); InfosCampement infosCampement = new InfosCampement(); //on serialise l'instance d'inventaire dans une variable fileInventaire bf.Serialize(fileInventaire, infosInventaire); //on serialise l'instance d'environnement dans une variable fileEnvironnement bf.Serialize(fileEnvironnement, infosEnvironnement); //on serialise l'instance de campement dans une variable fileCampement bf.Serialize(fileCampement, infosCampement); fileInventaire.Close(); fileEnvironnement.Close(); fileCampement.Close(); print("save"); }
public void Load() { //Si le fichier d'inventaire sérialisé existe alors on le deserialise sous forme d'inventaire if (File.Exists(Application.persistentDataPath + "/inventaireInfo.dat")) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/inventaireInfo.dat", FileMode.Open); InfosInventaire inventaireData = (InfosInventaire)bf.Deserialize(file); Inventaire.Instance.qteBois = inventaireData.qteBois; Inventaire.Instance.qtePierre = inventaireData.qtePierre; Inventaire.Instance.qteMetal = inventaireData.qteMetal; Inventaire.Instance.qteNourriture = inventaireData.qteNourriture; Inventaire.Instance.armes = inventaireData.armes; Inventaire.Instance.armures = inventaireData.armures; Inventaire.Instance.qtePierreToAdd = inventaireData.qtePierreToAdd; Inventaire.Instance.qteBoisToAdd = inventaireData.qteBoisToAdd; Inventaire.Instance.qteMetalToAdd = inventaireData.qteMetalToAdd; Inventaire.Instance.qteNourritureToAdd = inventaireData.qteNourritureToAdd; file.Close(); } //Si le fichier d'environnement sérialisé existe alors on le deserialise sous forme d'environnement else if (File.Exists(Application.persistentDataPath + "/environnementInfo.dat")) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/environnementInfo.dat", FileMode.Open); Environnement environnementData = (Environnement)bf.Deserialize(file); Environnement.Instance.SaisonCourante = environnementData.SaisonCourante; Environnement.Instance.JoursPasses = environnementData.JoursPasses; Environnement.Instance.JoursPassesDansLaSaison = environnementData.JoursPassesDansLaSaison; file.Close(); } //Si le fichier de campement sérialisé existe alors on le deserialise sous forme de campement else if (File.Exists(Application.persistentDataPath + "/campementInfo.dat")) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/campementInfo.dat", FileMode.Open); InfosCampement campementData = (InfosCampement)bf.Deserialize(file); CampementData.Instance.batiments = campementData.batiments; CampementData.Instance.soldats = campementData.soldats; CampementData.Instance.missionsDisponible = campementData.missions; CampementData.Instance.nbSurvivant = campementData.nbSurvivant; CampementData.Instance.survivantContent = campementData.survivantContent; CampementData.Instance.nbSurvivantNonOccupé = campementData.nbSurvivantNonOccupe; file.Close(); } }