Lazy tags + get / set tiles

Lazy tags means tiles/ents are not translated into the nms NBTBase until it is needed. Should be faster in cases where getFullBlock is called, but nbt is not always needed.
Commands like Copy and Paste, where the input/output are both nms worlds, can entirely bypass WorldEdit translating to and from the WorldEdit JNBT classes.
This commit is contained in:
Jesse Boyd
2019-11-20 03:40:52 +00:00
parent 60759934a3
commit 144ea2ef34
40 changed files with 298 additions and 172 deletions

View File

@ -15,7 +15,7 @@ import java.util.concurrent.Future;
/**
* An interface for getting blocks.
*/
public interface IChunkGet extends IBlocks, Trimable, InputExtent {
public interface IChunkGet extends IBlocks, Trimable, InputExtent, ITileInput {
@Override
BaseBlock getFullBlock(int x, int y, int z);
@ -26,6 +26,7 @@ public interface IChunkGet extends IBlocks, Trimable, InputExtent {
@Override
BlockState getBlock(int x, int y, int z);
@Override
CompoundTag getTag(int x, int y, int z);
@Override