Пример #1
0
    public WrappingClass loadMethod()
    {
        var    variable = new WrappingClass();
        string savepath = (Application.persistentDataPath + saveFilepath);

        var inputString = File.ReadAllText(savepath + prefab.name + ".json");

        //var desjson = JsonUtility.FromJson<WrappingClass>(inputString);
        WrappingClass desjson = JsonUtility.FromJson <WrappingClass>(inputString);

        return(desjson);
    }
Пример #2
0
    public void saveMethod() // (List<objectplaced> whattosave){
    {
        List <objectplaced> whattosave = objlist;
        //Debug.Log(Application.persistentDataPath);
        string savepath = (Application.persistentDataPath + saveFilepath);

        var variable = new WrappingClass()
        {
            wraplist = whattosave
        };

        string dataAsJson = JsonUtility.ToJson(variable);
        var    folder     = Directory.CreateDirectory(savepath);

        File.WriteAllText(savepath + prefab.name + ".json", dataAsJson);
    }
Пример #3
0
    // 生成預計被生成的區塊陣列
    void CreateChunk()
    {
        ChunkCoord c = chunksToCreate[0];

        chunksToCreate.RemoveAt(0);

        WrappingClass modification = null;

        foreach (WrappingClass mod in saveModifications)
        {
            if (mod.Coordinate.x == c.x && mod.Coordinate.z == c.z)
            {
                modification = mod;
            }
        }

        if (modification != null)
        {
            chunks[c.x, c.z].Init(modification.Modifications);
            saveModifications.Remove(modification);
        }
        else
        {
            chunks[c.x, c.z].Init();
        }

        if (!_isPlayerPlace && c.Equals(playerChunkCoord))
        {
            //  spawnPosition = new Vector3((VoxelData.WorldSizeInChunks * VoxelData.ChunkWidth) / 2f, VoxelData.ChunkHeight - 128f, (VoxelData.WorldSizeInChunks * VoxelData.ChunkWidth) / 2f);
        }
        if (chunkCreated < chunkToBeCreate)
        {
            chunkCreated++;
        }
        else
        {
            CheckViewDistance();
            _isPlayerPlace = true;
            loading.SetActive(false); // 讀取結束
            UIState = 1;
        }
    }