Class ChunkBatchingExtent
java.lang.Object
com.sk89q.worldedit.extent.AbstractDelegateExtent
com.sk89q.worldedit.extent.AbstractBufferingExtent
com.sk89q.worldedit.extent.reorder.ChunkBatchingExtent
- All Implemented Interfaces:
Extent
,InputExtent
,OutputExtent
A special extent that batches changes into Minecraft chunks. This helps
improve the speed of setting the blocks, since chunks do not need to be
loaded repeatedly, however it does take more memory due to caching the
blocks.
-
Constructor Summary
ConstructorDescriptionChunkBatchingExtent
(Extent extent) ChunkBatchingExtent
(Extent extent, boolean enabled) -
Method Summary
Modifier and TypeMethodDescriptionprotected Operation
boolean
protected BaseBlock
getBufferedFullBlock
(BlockVector3 position) Gets a block from the buffer, or null if not buffered.boolean
<B extends BlockStateHolder<B>>
booleansetBlock
(BlockVector3 location, B block) Change the block at the given location to the given block.void
setEnabled
(boolean enabled) Methods inherited from class com.sk89q.worldedit.extent.AbstractBufferingExtent
getBlock, getBufferedBlock, getFullBlock, setDelegateBlock
Methods inherited from class com.sk89q.worldedit.extent.AbstractDelegateExtent
commit, createEntity, fullySupports3DBiomes, getBiome, getEntities, getEntities, getExtent, getMaximumPoint, getMinimumPoint, setBiome
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.sk89q.worldedit.extent.InputExtent
getBiome
Methods inherited from interface com.sk89q.worldedit.extent.OutputExtent
setBiome
-
Constructor Details
-
ChunkBatchingExtent
-
ChunkBatchingExtent
-
-
Method Details
-
isEnabled
public boolean isEnabled() -
setEnabled
public void setEnabled(boolean enabled) -
commitRequired
public boolean commitRequired() -
setBlock
public <B extends BlockStateHolder<B>> boolean setBlock(BlockVector3 location, B block) throws WorldEditException Description copied from interface:OutputExtent
Change the block at the given location to the given block. The operation may not tie the givenBlockStateHolder
to the world, so future changes to theBlockStateHolder
do not affect the world until this method is called again.The return value of this method indicates whether the change was probably successful. It may not be successful if, for example, the location is out of the bounds of the extent. It may be unsuccessful if the block passed is the same as the one in the world. However, the return value is only an estimation and it may be incorrect, but it could be used to count, for example, the approximate number of changes.
- Specified by:
setBlock
in interfaceOutputExtent
- Specified by:
setBlock
in classAbstractBufferingExtent
- Parameters:
location
- position of the blockblock
- block to set- Returns:
- true if the block was successfully set (return value may not be accurate)
- Throws:
WorldEditException
- thrown on an error
-
getBufferedFullBlock
Description copied from class:AbstractBufferingExtent
Gets a block from the buffer, or null if not buffered.- Overrides:
getBufferedFullBlock
in classAbstractBufferingExtent
- Parameters:
position
- The position- Returns:
- The buffered block, or null
-
commitBefore
- Overrides:
commitBefore
in classAbstractDelegateExtent
-