Пример #1
0
    void saveWorld()
    {
        if (t != null && t.ThreadState == ThreadState.Running)
        {
            t.Abort();
        }
        List <Transform> itemsInWorld = asteroidBelt.itemsInWorld;

        saveTransform[] it = new saveTransform[itemsInWorld.Count];
        for (int i = 0; i < itemsInWorld.Count; i++)
        {
            it[i] = new saveTransform(itemsInWorld[i].position, itemsInWorld[i].eulerAngles.z, new Vector2(itemsInWorld[i].localScale.x, itemsInWorld[i].localScale.y), itemsInWorld[i].GetComponent <ressource>().item);
        }
        string path = Application.persistentDataPath + "/" + saveName + ".lol";

        t = new Thread(() => {
            SaveData.Objekte[] sectorArr = new SaveData.Objekte[asteroidBelt.sectorsToSave.Count];
            for (int i = 0; i < sectorArr.Length; i++)
            {
                sectorArr[i] = new SaveData.Objekte(asteroidBelt.sectors[asteroidBelt.sectorsToSave[i]], asteroidBelt.sectorsToSave[i]);
            }
            SaveData save = new SaveData(sectorArr, asteroidBelt.seed, it);
            SaveSystem.SaveWorld(save, path);
            Debug.Log("saved");
        });
        t.Start();
    }
Пример #2
0
    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);
    }