示例#1
0
    public static MagicCube CreateFromSerializedData(SaveGameSystem.SerializableCubeData data, int individualCubeSizeInWorldUnits, IndividualCubeController individualCubePrefab)
    {
        //Generate cube from data
        var newCube = new MagicCube(data.gameSize, individualCubeSizeInWorldUnits, individualCubePrefab);

        foreach (var cube in data.cubeData)
        {
            var cubego = newCube.CreateSubCube(cube.currentCoordinates.x, cube.currentCoordinates.y, cube.currentCoordinates.z, cube.goalCoordinates);
            cubego.transform.localRotation = cube.rotation;
        }

        return(newCube);
    }
示例#2
0
    public SaveGameSystem.SerializableCubeData GetSerializableCubeData()
    {
        List <SaveGameSystem.IndividualCubeData> listOfCubeData = new List <SaveGameSystem.IndividualCubeData>();

        //Serialize current cube state
        foreach (var cube in allCubes)
        {
            listOfCubeData.Add(cube.GetSerializableData());
        }

        var cubedata = new SaveGameSystem.SerializableCubeData()
        {
            cubeData = listOfCubeData.ToArray(),
            gameSize = this.gameSize
        };

        return(cubedata);
    }