- Home /
Question by
Kr1sk0 · Jan 04, 2018 at 06:04 PM ·
dataintsaveloadbinaryformatter
how to save a few ints into a game file using binary formatter
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using UnityEngine;
public class SaveNLoadManager : MonoBehaviour {
public PlayerData pData;
public MinerManager mManager;
public StoneBank sBank;
public void SaveData()
{
BinaryFormatter bf = new BinaryFormatter();
FileStream stream = new FileStream(Application.persistentDataPath + "/player.sav", FileMode.Create);
PlayerData data = new PlayerData();
data.stats[0] = sBank.stoneperclick;
data.stats[1] = sBank.stone;
data.stats[2] = mManager.level;
data.stats[3] = mManager.xp;
data.stats[4] = mManager.maxXp;
bf.Serialize(stream, data);
stream.Close();
}
public void LoadData(){
if(File.Exists(Application.persistentDataPath + "/player.sav"))
{
Stream stream = File.Open(Application.persistentDataPath + "/player" + ".sav", FileMode.Open);
BinaryFormatter bf = new BinaryFormatter();
PlayerData data = (PlayerData)bf.Deserialize(stream);
stream.Close();
sBank.stoneperclick = data.stats[0];
sBank.stone = data.stats[1];
mManager.level = data.stats[2];
mManager.xp = data.stats[3];
mManager.maxXp = data.stats[4];
}
}
}
[Serializable]
public class PlayerData
{
public MinerManager mManager;
public StoneBank sBank;
public float[] stats;
public PlayerData()
{
stats = new float[5];
stats[0] = sBank.stoneperclick;
stats[1] = sBank.stone;
stats[2] = mManager.level;
stats[3] = mManager.xp;
stats[4] = mManager.maxXp;
}
}
Comment
Answer by bartbussel · Jan 05, 2018 at 02:39 PM
There's a tutorial here that explains using BinaryFormatter and FileStream to save and load data, Maybe that can help you.
Your answer
Follow this Question
Related Questions
i need to return multiple types of values from my save and load functions 1 Answer
binaryformatter android save and load not working 3 Answers
Saving and Loading w/ BinaryFormatter 1 Answer
unity2d : BinaryFormatter files are not secure 1 Answer
SerializationException: End of Stream encountered before parsing was completed. 0 Answers