From ca8bd77a78c9d51e1eed7e69c33569599d98ca1e Mon Sep 17 00:00:00 2001 From: Jesse Boyd Date: Fri, 31 Mar 2017 12:02:36 +1100 Subject: [PATCH] Optimize block sending for spigot 1.9, 1.10, 1.11 --- .../fawe/bukkit/v1_10/BukkitQueue_1_10.java | 63 +++++++++++++++++++ .../fawe/bukkit/v1_11/BukkitQueue_1_11.java | 63 +++++++++++++++++++ .../fawe/bukkit/v1_9/BukkitQueue_1_9_R1.java | 63 +++++++++++++++++++ 3 files changed, 189 insertions(+) diff --git a/bukkit/src/main/java/com/boydti/fawe/bukkit/v1_10/BukkitQueue_1_10.java b/bukkit/src/main/java/com/boydti/fawe/bukkit/v1_10/BukkitQueue_1_10.java index 37067869..0d50c1bd 100644 --- a/bukkit/src/main/java/com/boydti/fawe/bukkit/v1_10/BukkitQueue_1_10.java +++ b/bukkit/src/main/java/com/boydti/fawe/bukkit/v1_10/BukkitQueue_1_10.java @@ -2,10 +2,14 @@ package com.boydti.fawe.bukkit.v1_10; import com.boydti.fawe.Fawe; import com.boydti.fawe.FaweCache; +import com.boydti.fawe.bukkit.BukkitPlayer; import com.boydti.fawe.bukkit.v0.BukkitQueue_0; import com.boydti.fawe.example.CharFaweChunk; import com.boydti.fawe.object.FaweChunk; +import com.boydti.fawe.object.FawePlayer; import com.boydti.fawe.object.RunnableVal; +import com.boydti.fawe.object.brush.visualization.VisualChunk; +import com.boydti.fawe.object.visitor.FaweChunkVisitor; import com.boydti.fawe.util.MainUtil; import com.boydti.fawe.util.MathMan; import com.boydti.fawe.util.ReflectionUtils; @@ -14,7 +18,10 @@ import com.sk89q.jnbt.CompoundTag; import com.sk89q.jnbt.StringTag; import com.sk89q.jnbt.Tag; import com.sk89q.worldedit.world.biome.BaseBiome; +import io.netty.buffer.ByteBuf; +import io.netty.buffer.ByteBufAllocator; import java.io.File; +import java.io.IOException; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; @@ -24,6 +31,7 @@ import java.util.Collections; import java.util.Map; import java.util.Set; import java.util.UUID; +import java.util.concurrent.atomic.LongAdder; import net.minecraft.server.v1_10_R1.BiomeBase; import net.minecraft.server.v1_10_R1.BiomeCache; import net.minecraft.server.v1_10_R1.Block; @@ -44,7 +52,9 @@ import net.minecraft.server.v1_10_R1.IDataManager; import net.minecraft.server.v1_10_R1.MinecraftServer; import net.minecraft.server.v1_10_R1.NBTTagCompound; import net.minecraft.server.v1_10_R1.NibbleArray; +import net.minecraft.server.v1_10_R1.PacketDataSerializer; import net.minecraft.server.v1_10_R1.PacketPlayOutMapChunk; +import net.minecraft.server.v1_10_R1.PacketPlayOutMultiBlockChange; import net.minecraft.server.v1_10_R1.PlayerChunk; import net.minecraft.server.v1_10_R1.PlayerChunkMap; import net.minecraft.server.v1_10_R1.ServerNBTManager; @@ -63,6 +73,7 @@ import org.bukkit.block.Biome; import org.bukkit.craftbukkit.v1_10_R1.CraftChunk; import org.bukkit.craftbukkit.v1_10_R1.CraftServer; import org.bukkit.craftbukkit.v1_10_R1.CraftWorld; +import org.bukkit.craftbukkit.v1_10_R1.entity.CraftPlayer; import org.bukkit.event.world.WorldInitEvent; import org.bukkit.event.world.WorldLoadEvent; import org.bukkit.generator.ChunkGenerator; @@ -390,6 +401,58 @@ public class BukkitQueue_1_10 extends BukkitQueue_0