diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RBlockDisplay.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RBlockDisplay.java index 53753962..9041a232 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RBlockDisplay.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RBlockDisplay.java @@ -4,6 +4,7 @@ import com.comphenix.tinyprotocol.Reflection; import de.steamwar.core.BountifulWrapper; import de.steamwar.core.Core; import lombok.Getter; +import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.block.data.BlockData; @@ -23,7 +24,9 @@ public class RBlockDisplay extends RDisplay { @Override protected void postSpawn(Consumer packetSink) { super.postSpawn(packetSink); - sendBlock(packetSink); + Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> { + sendBlock(packetSink); + }, 0); } public void setBlock(BlockData block) { diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RDisplay.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RDisplay.java index a8819859..49186a0c 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RDisplay.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RDisplay.java @@ -4,6 +4,7 @@ import de.steamwar.core.BountifulWrapper; import de.steamwar.core.Core; import lombok.Getter; import lombok.NonNull; +import org.bukkit.Bukkit; import org.bukkit.Color; import org.bukkit.Location; import org.bukkit.entity.Display; @@ -46,17 +47,19 @@ public abstract class RDisplay extends REntity { @Override protected void postSpawn(Consumer packetSink) { super.postSpawn(packetSink); - sendTransform(packetSink); - sendInterpolationDuration(packetSink); - sendViewRange(packetSink); - sendShadowRadius(packetSink); - sendShadowStrength(packetSink); - sendDisplayWidth(packetSink); - sendDisplayHeight(packetSink); - sendInterpolationDelay(packetSink); - sendBillboard(packetSink); - sendGlowColorOverride(packetSink); - sendBrightness(packetSink); + Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> { + sendTransform(packetSink); + sendInterpolationDuration(packetSink); + sendViewRange(packetSink); + sendShadowRadius(packetSink); + sendShadowStrength(packetSink); + sendDisplayWidth(packetSink); + sendDisplayHeight(packetSink); + sendInterpolationDelay(packetSink); + sendBillboard(packetSink); + sendGlowColorOverride(packetSink); + sendBrightness(packetSink); + }, 0); } public void setTransform(@NonNull Transformation transform) { diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RItemDisplay.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RItemDisplay.java index 5b0f10bd..4c290fa7 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RItemDisplay.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RItemDisplay.java @@ -4,6 +4,7 @@ import com.comphenix.tinyprotocol.Reflection; import de.steamwar.core.BountifulWrapper; import de.steamwar.core.Core; import lombok.Getter; +import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.entity.EntityType; import org.bukkit.entity.ItemDisplay; @@ -25,8 +26,10 @@ public class RItemDisplay extends RDisplay { @Override protected void postSpawn(Consumer packetSink) { super.postSpawn(packetSink); - sendItemStack(packetSink); - sendItemDisplayTransform(packetSink); + Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> { + sendItemStack(packetSink); + sendItemDisplayTransform(packetSink); + }, 0); } public void setItemStack(ItemStack itemStack) { diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RTextDisplay.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RTextDisplay.java index 65e3dc2f..d5c459ae 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RTextDisplay.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/entity/RTextDisplay.java @@ -5,6 +5,7 @@ import de.steamwar.core.BountifulWrapper; import de.steamwar.core.ChatWrapper; import de.steamwar.core.Core; import lombok.Getter; +import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.entity.EntityType; import org.bukkit.entity.TextDisplay; @@ -35,10 +36,12 @@ public class RTextDisplay extends RDisplay { @Override protected void postSpawn(Consumer packetSink) { super.postSpawn(packetSink); - sendText(packetSink); - sendLineWidth(packetSink); - sendTextOpacity(packetSink); - sendTextStatus(packetSink); + Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> { + sendText(packetSink); + sendLineWidth(packetSink); + sendTextOpacity(packetSink); + sendTextStatus(packetSink); + }, 0); } public void setText(String text) {