public static void Load() { BinaryFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream(Application.persistentDataPath + "//save.txt", FileMode.Open, FileAccess.Read); object saveObj = formatter.Deserialize(stream); stream.Close(); transDat trans = (transDat)saveObj; health = trans.health; keys = trans.keys; time = trans.time; seconds = (int)time; for (int i = 0; i < 3; i++) { position[i] = trans.HoldPosition[i]; } }
public static void Save() { transDat trans = new transDat { keys = keys, health = health, time = time, //HoldPosition = {mainScript.instance.transform.position.y, }, Why can't I assign to an array in here y = mainScript.instance.transform.position.y, z = mainScript.instance.transform.position.z }; trans.HoldPosition[0] = mainScript.instance.transform.position.x; //But here works? BinaryFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream(Application.persistentDataPath + "//save.txt", FileMode.Create, FileAccess.Write); formatter.Serialize(stream, trans); stream.Close(); }