private Chunk LoadChunk(IntVector2 worldPosition) { var serializedChunk = DataReader.Read(worldPosition.ToString(), DataTypes.CurrentGame); var serializableChunk = SerializableChunk.Deserialize(serializedChunk); var chunk = serializableChunk.ToObject(); var chunkActivationCommand = new ChunkActivationCommand(chunk, serializableChunk.ReconstructCoroutine); _chunkActivationCommands.Enqueue(chunkActivationCommand); return(chunk); }
private Chunk BuildChunk(IntVector2 worldPosition) { var cBuilder = GetBuilderAtPosition(worldPosition); _spaceArchitect.CheckForSpaces(cBuilder); if (_bPicker != null) { var blocks = _bPicker.Pick(cBuilder); cBuilder.AddBlocks(blocks); } cBuilder.SetFill(GetFill(cBuilder.Depth)); var chunk = cBuilder.Build(); var chunkActivationCommand = new ChunkActivationCommand(chunk, cBuilder.BuildCoroutine); _chunkActivationCommands.Enqueue(chunkActivationCommand); return(chunk); }