public TerrainOperationBatch GenerateUndo()
        {
            TerrainOperationBatch redo = new TerrainOperationBatch();

            foreach (TerrainOperation op in operations)
            {
                redo.Add(TerrainOperation.CreateUndoFor(op));
            }

            return(redo);
        }
 public static TerrainOperation CreateUndoFor(TerrainOperation op)
 {
     return(CreateUndoFor(op.chunk, op.blockPos));
 }
 public void Add(TerrainOperation op)
 {
     operations.Add(op);
 }