try to fix server side crashes (again)

This commit is contained in:
2026-03-28 18:01:27 +01:00
parent 40c83d029e
commit 2ce0182cb2
4 changed files with 13 additions and 16 deletions
@@ -1,10 +1,12 @@
package net.fretux.ascend.network;
import net.fretux.ascend.client.ClientPacketHandlers;
import net.fretux.ascend.player.PlayerStatsProvider;
import net.fretux.ascend.player.StatEffects;
import net.minecraft.client.Minecraft;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.fml.DistExecutor;
import net.minecraftforge.network.NetworkEvent;
import java.util.function.Supplier;
@@ -25,17 +27,8 @@ public class ClientboundSyncStatsPacket {
}
public void handle(Supplier<NetworkEvent.Context> ctx) {
System.out.println("[SERVER] Spend packet handle() called");
ctx.get().enqueueWork(() -> {
Minecraft mc = Minecraft.getInstance();
var player = mc.player;
if (player != null) {
mc.player.getCapability(PlayerStatsProvider.PLAYER_STATS).ifPresent(stats -> {
stats.deserializeNBT(data);
StatEffects.applyAll(mc.player);
stats.deserializeNBT(data);
});
}
DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> ClientPacketHandlers.syncStats(data));
ctx.get().setPacketHandled(true);
});
}