public void save() { saveTransform[] saveTransforms = new saveTransform[transforms.Count]; for (int i = 0; i < transforms.Count; i++) { saveTransforms[i] = new saveTransform(transforms[i].position, transforms[i].eulerAngles.z, new Vector2(transforms[i].localScale.x, transforms[i].localScale.y), transforms[i].GetComponent <WorldObject>().item); } SaveObjectData sOD = new SaveObjectData(saveTransforms); SaveSystem.SaveObjects(sOD, saveCom.saveName); }
static public void SaveLevel(Map t_map, string t_fileName, Dictionary <string, Sprite> t_tileSprites, Dictionary <string, MapObject> t_mapObjects) { LevelSaveData saveData = new LevelSaveData(); saveData.m_mapWidth = t_map.m_width; saveData.m_mapHeight = t_map.m_hight; foreach (KeyValuePair <string, Sprite> tileSprite in t_tileSprites) { saveData.m_tileSpritePaths.Add(tileSprite.Key); } for (int x = 0; x < saveData.m_mapWidth; x++) { ColumnWrapper col = new ColumnWrapper(); for (int y = 0; y < saveData.m_mapHeight; y++) { col.m_spriteNames.Add(t_map.GetTile(new MapIndex(x, y)).GetSprite().name); } saveData.m_spriteNames.Add(col); } foreach (KeyValuePair <string, MapObject> mapObject in t_mapObjects) { SaveObjectData saveMapPrefabData = new SaveObjectData(); saveMapPrefabData.m_name = mapObject.Value.m_name; saveMapPrefabData.m_prefabPath = mapObject.Value.m_prefabPath; saveMapPrefabData.m_width = mapObject.Value.m_width; saveMapPrefabData.m_height = mapObject.Value.m_height; saveData.m_objectsData.Add(saveMapPrefabData); } List <GameObject> placedPrefabs = t_map.GetAllEnteties(); foreach (GameObject placedPrefab in placedPrefabs) { PlacedObjectData mapPrefab = new PlacedObjectData(); mapPrefab.m_name = placedPrefab.name; mapPrefab.m_position = placedPrefab.transform.position; saveData.m_placedObjects.Add(mapPrefab); } string jsonData = JsonUtility.ToJson(saveData, true); string fullPath = s_jsonPath + t_fileName + ".json"; System.IO.File.WriteAllText(fullPath, jsonData); }
public static void SaveObjects(SaveObjectData sD, string name) { string path = Application.persistentDataPath + "/" + name + "Objects.lol"; BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path + ";-;", FileMode.Create); formatter.Serialize(stream, sD); stream.Close(); if (File.Exists(path)) { File.Delete(path); } File.Move(path + ";-;", path); }
public void GetAllData(Player player) { playerSaveData = new PlayerSaveData(); objectsData = new List <SaveObjectData>(); playerSaveData.GetData(player); for (int i = 0; i < ObjectManager.Instance.objects.Count; i++) { ObjectManager.Instance.objects[i].SaveObjectData(); SaveObjectData temp = ObjectManager.Instance.objects[i].m_objectData; objectsData.Add(temp); } }
//Load the given data into this object public void LoadObjectData(SaveObjectData data) { objectId = data.objectId; if (savePos) { transform.position = new Vector3(data.posX, data.posY, data.posZ); } if (saveRot) { transform.rotation = Quaternion.Euler(new Vector3(data.rotX, data.rotY, data.rotZ)); } if (hasRigidbody) { GetComponent <Rigidbody>().velocity = new Vector3(data.velX, data.velY, data.velZ); } }
public static SaveObjectData loadObjects(string name) { string path = Application.persistentDataPath + "/" + name + "Objects.lol"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); SaveObjectData sD = (SaveObjectData)formatter.Deserialize(stream); stream.Close(); return(sD); } else { return(null); } }
public void load() { instance = this; items items = items.instance; SaveObjectData sOD = SaveSystem.loadObjects(saveCom.saveName); if (sOD == null) { return; } for (int i = 0; i < sOD.transforms.Length; i++) { Transform t = items.spawnObject(sOD.transforms[i].item, new Vector2(sOD.transforms[i].position[0], sOD.transforms[i].position[1])); t.eulerAngles = new Vector3(0, 0, sOD.transforms[i].rotation); t.localScale = new Vector3(sOD.transforms[i].scale[0], sOD.transforms[i].scale[1], 1); transforms.Add(t); } }
//Creates a new saveobjectdata object for saving purposes, then saves it public void SaveObjectData() { m_objectData = new SaveObjectData(); m_objectData.GetData(this); }