From 51c354c53313504df80056b6900214fa22d21ca9 Mon Sep 17 00:00:00 2001 From: Martin Prokoph Date: Wed, 19 Jun 2024 13:21:22 +0200 Subject: [PATCH] Remove debug log spam & fix crashes - Remove debug messages when receiving packets - Fix dedicated server crashes on Fabric and Neoforge --- .../visualoverhaul/VisualOverhaulCommon.java | 6 ++-- .../fabric/VisualOverhaulClientFabric.java | 1 - gradle.properties | 3 +- .../VisualOverhaulClientGameEvents.java | 20 +++++++++++++ .../neoforge/VisualOverhaulEvents.java | 25 ++-------------- .../neoforge/VisualOverhaulGameEvents.java | 9 ------ .../handler/UpdateItemsPacketHandler.java | 30 +++++++++++++++++++ 7 files changed, 56 insertions(+), 38 deletions(-) create mode 100644 neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientGameEvents.java create mode 100644 neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/handler/UpdateItemsPacketHandler.java diff --git a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java index a36cfac..3e02b39 100755 --- a/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java +++ b/common/src/main/java/eu/midnightdust/visualoverhaul/VisualOverhaulCommon.java @@ -3,16 +3,16 @@ package eu.midnightdust.visualoverhaul; import net.minecraft.item.ItemStack; import net.minecraft.util.Identifier; import net.minecraft.util.math.BlockPos; -import org.apache.commons.compress.utils.Lists; -import java.util.HashMap; import java.util.List; +import java.util.ArrayList; +import java.util.HashMap; import java.util.Map; import java.util.UUID; public class VisualOverhaulCommon { public static final String MOD_ID = "visualoverhaul"; - public static final List playersWithMod = Lists.newArrayList(); + public static final List playersWithMod = new ArrayList<>(); public static final Map jukeboxItems = new HashMap<>(); public static final Identifier HELLO_PACKET = id("hello"); diff --git a/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java b/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java index 9b84c6f..dfd9026 100644 --- a/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java +++ b/fabric/src/main/java/eu/midnightdust/visualoverhaul/fabric/VisualOverhaulClientFabric.java @@ -78,7 +78,6 @@ public class VisualOverhaulClientFabric implements ClientModInitializer { ClientPlayNetworking.registerGlobalReceiver(UpdateItemsPacket.PACKET_ID, (payload, context) -> context.client().execute(() -> { - System.out.println(payload.blockTypeID().toString()); if (payload.blockTypeID().equals(UPDATE_TYPE_RECORD)) jukeboxItems.put(payload.pos(), payload.inv().getFirst()); else if (context.client().world != null && context.client().world.getBlockEntity(payload.pos()) != null) { if (payload.blockTypeID().equals(UPDATE_TYPE_POTION_BOTTLES) && context.client().world.getBlockEntity(payload.pos()) instanceof BrewingStandBlockEntity brewingStand) { diff --git a/gradle.properties b/gradle.properties index 95b6452..68ae896 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ yarn_mappings=1.21+build.2 enabled_platforms=fabric,neoforge archives_base_name=visualoverhaul -mod_version=5.2.0 +mod_version=5.2.1 maven_group=eu.midnightdust release_type=release curseforge_id=432008 @@ -19,7 +19,6 @@ fabric_api_version=0.100.1+1.21 neoforge_version=21.0.14-beta yarn_mappings_patch_neoforge_version = 1.21+build.4 -architectury_version=11.0.12 quilt_loader_version=0.19.0-beta.18 quilt_fabric_api_version=7.0.1+0.83.0-1.20 diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientGameEvents.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientGameEvents.java new file mode 100644 index 0000000..17a6ac6 --- /dev/null +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulClientGameEvents.java @@ -0,0 +1,20 @@ +package eu.midnightdust.visualoverhaul.neoforge; + +import eu.midnightdust.visualoverhaul.packet.HelloPacket; +import net.minecraft.client.MinecraftClient; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.common.EventBusSubscriber; +import net.neoforged.neoforge.client.event.ClientPlayerNetworkEvent; + +import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.MOD_ID; + +@EventBusSubscriber(modid = MOD_ID, bus = EventBusSubscriber.Bus.GAME, value = Dist.CLIENT) +public class VisualOverhaulClientGameEvents { + @SubscribeEvent() + public static void sendPacketOnLogin(ClientPlayerNetworkEvent.LoggingIn event) { + MinecraftClient client = MinecraftClient.getInstance(); + if (client.getNetworkHandler() != null) + client.getNetworkHandler().send(new HelloPacket(event.getPlayer().getUuid())); + } +} diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulEvents.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulEvents.java index 90134f6..b2a30f8 100644 --- a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulEvents.java +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulEvents.java @@ -1,20 +1,15 @@ package eu.midnightdust.visualoverhaul.neoforge; import eu.midnightdust.visualoverhaul.VisualOverhaulCommon; +import eu.midnightdust.visualoverhaul.neoforge.handler.UpdateItemsPacketHandler; import eu.midnightdust.visualoverhaul.packet.HelloPacket; import eu.midnightdust.visualoverhaul.packet.UpdateItemsPacket; -import net.minecraft.block.entity.AbstractFurnaceBlockEntity; -import net.minecraft.block.entity.BrewingStandBlockEntity; -import net.minecraft.client.MinecraftClient; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; -import net.neoforged.neoforge.client.event.ClientPlayerNetworkEvent; -import net.neoforged.neoforge.event.entity.player.PlayerEvent; import net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent; import net.neoforged.neoforge.network.registration.PayloadRegistrar; import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.*; -import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.UPDATE_TYPE_FURNACE_ITEMS; @EventBusSubscriber(modid = MOD_ID, bus = EventBusSubscriber.Bus.MOD) public class VisualOverhaulEvents { @@ -25,23 +20,7 @@ public class VisualOverhaulEvents { VisualOverhaulCommon.playersWithMod.add(context.player().getUuid()); }); registrar.playToClient(UpdateItemsPacket.PACKET_ID, UpdateItemsPacket.codec, (payload, context) -> { - MinecraftClient client = MinecraftClient.getInstance(); - client.execute(() -> { - System.out.println(payload.blockTypeID().toString()); - if (payload.blockTypeID().equals(UPDATE_TYPE_RECORD)) - jukeboxItems.put(payload.pos(), payload.inv().getFirst()); - else if (client.world != null && client.world.getBlockEntity(payload.pos()) != null) { - if (payload.blockTypeID().equals(UPDATE_TYPE_POTION_BOTTLES) && client.world.getBlockEntity(payload.pos()) instanceof BrewingStandBlockEntity brewingStand) { - for (int i = 0; i <= 4; i++) { - brewingStand.setStack(i, payload.inv().get(i)); - } - } else if (payload.blockTypeID().equals(UPDATE_TYPE_FURNACE_ITEMS) && client.world.getBlockEntity(payload.pos()) instanceof AbstractFurnaceBlockEntity furnace) { - for (int i = 0; i <= 2; i++) { - furnace.setStack(i, payload.inv().get(i)); - } - } - } - }); + UpdateItemsPacketHandler.handlePacket(payload); }); } diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulGameEvents.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulGameEvents.java index e843cf4..7d72a5e 100644 --- a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulGameEvents.java +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/VisualOverhaulGameEvents.java @@ -1,10 +1,7 @@ package eu.midnightdust.visualoverhaul.neoforge; -import eu.midnightdust.visualoverhaul.packet.HelloPacket; -import net.minecraft.client.MinecraftClient; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; -import net.neoforged.neoforge.client.event.ClientPlayerNetworkEvent; import net.neoforged.neoforge.event.entity.player.PlayerEvent; import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.MOD_ID; @@ -12,12 +9,6 @@ import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.playersWithMod @EventBusSubscriber(modid = MOD_ID, bus = EventBusSubscriber.Bus.GAME) public class VisualOverhaulGameEvents { - @SubscribeEvent() - public static void sendPacketOnLogin(ClientPlayerNetworkEvent.LoggingIn event) { - MinecraftClient client = MinecraftClient.getInstance(); - if (client.getNetworkHandler() != null) - client.getNetworkHandler().send(new HelloPacket(event.getPlayer().getUuid())); - } @SubscribeEvent public static void removeOnLogout(PlayerEvent.PlayerLoggedOutEvent event) { playersWithMod.remove(event.getEntity().getUuid()); diff --git a/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/handler/UpdateItemsPacketHandler.java b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/handler/UpdateItemsPacketHandler.java new file mode 100644 index 0000000..d6b7028 --- /dev/null +++ b/neoforge/src/main/java/eu/midnightdust/visualoverhaul/neoforge/handler/UpdateItemsPacketHandler.java @@ -0,0 +1,30 @@ +package eu.midnightdust.visualoverhaul.neoforge.handler; + +import eu.midnightdust.visualoverhaul.packet.UpdateItemsPacket; +import net.minecraft.block.entity.AbstractFurnaceBlockEntity; +import net.minecraft.block.entity.BrewingStandBlockEntity; +import net.minecraft.client.MinecraftClient; + +import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.*; +import static eu.midnightdust.visualoverhaul.VisualOverhaulCommon.UPDATE_TYPE_FURNACE_ITEMS; + +public class UpdateItemsPacketHandler { + public static void handlePacket(UpdateItemsPacket payload) { + MinecraftClient client = MinecraftClient.getInstance(); + client.execute(() -> { + if (payload.blockTypeID().equals(UPDATE_TYPE_RECORD)) + jukeboxItems.put(payload.pos(), payload.inv().getFirst()); + else if (client.world != null && client.world.getBlockEntity(payload.pos()) != null) { + if (payload.blockTypeID().equals(UPDATE_TYPE_POTION_BOTTLES) && client.world.getBlockEntity(payload.pos()) instanceof BrewingStandBlockEntity brewingStand) { + for (int i = 0; i <= 4; i++) { + brewingStand.setStack(i, payload.inv().get(i)); + } + } else if (payload.blockTypeID().equals(UPDATE_TYPE_FURNACE_ITEMS) && client.world.getBlockEntity(payload.pos()) instanceof AbstractFurnaceBlockEntity furnace) { + for (int i = 0; i <= 2; i++) { + furnace.setStack(i, payload.inv().get(i)); + } + } + } + }); + } +}