Fixup postSpawn because of NPE/Not Initialized Exception

This commit is contained in:
2025-01-01 13:06:26 +01:00
parent 3c848389c9
commit 1f65121c68
4 changed files with 30 additions and 18 deletions

View File

@ -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<Object> packetSink) {
super.postSpawn(packetSink);
sendBlock(packetSink);
Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> {
sendBlock(packetSink);
}, 0);
}
public void setBlock(BlockData block) {

View File

@ -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<Object> 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) {

View File

@ -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<Object> packetSink) {
super.postSpawn(packetSink);
sendItemStack(packetSink);
sendItemDisplayTransform(packetSink);
Bukkit.getScheduler().runTaskLater(Core.getInstance(), () -> {
sendItemStack(packetSink);
sendItemDisplayTransform(packetSink);
}, 0);
}
public void setItemStack(ItemStack itemStack) {

View File

@ -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<Object> 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) {