From 1d08ee6775bb848c76eaa6164eb5b30656e2fe53 Mon Sep 17 00:00:00 2001 From: Oth3r Date: Thu, 16 May 2024 15:09:25 -0500 Subject: [PATCH] fixed changing settings mid-game not sending updates to the server --- src/main/java/one/oth3r/sit/SitClient.java | 14 +++++++++----- src/main/java/one/oth3r/sit/file/Config.java | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/one/oth3r/sit/SitClient.java b/src/main/java/one/oth3r/sit/SitClient.java index fe6dbb3..9db2f99 100644 --- a/src/main/java/one/oth3r/sit/SitClient.java +++ b/src/main/java/one/oth3r/sit/SitClient.java @@ -5,7 +5,6 @@ import com.google.gson.GsonBuilder; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; -import net.minecraft.network.packet.CustomPayload; import one.oth3r.sit.packet.CustomPayloads; public class SitClient implements ClientModInitializer { @@ -16,14 +15,19 @@ public class SitClient implements ClientModInitializer { ClientPlayConnectionEvents.JOIN.register((handler, sender, client) -> { inGame = true; // send a data packet whenever joining a server - ClientPlayNetworking.send(sendPackets()); + sendSettingsPackets(); }); // reset inGame ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> inGame = false); } - public static CustomPayload sendPackets() { - Gson gson = new GsonBuilder().disableHtmlEscaping().create(); - return new CustomPayloads.SettingsPayload(gson.toJson(Utl.HandSettings.getHandSettings())); + /** + * sends the settings packets to the server is the client is in game + */ + public static void sendSettingsPackets() { + if (inGame) { + Gson gson = new GsonBuilder().disableHtmlEscaping().create(); + ClientPlayNetworking.send(new CustomPayloads.SettingsPayload(gson.toJson(Utl.HandSettings.getHandSettings()))); + } } } diff --git a/src/main/java/one/oth3r/sit/file/Config.java b/src/main/java/one/oth3r/sit/file/Config.java index 0910817..5c5c802 100644 --- a/src/main/java/one/oth3r/sit/file/Config.java +++ b/src/main/java/one/oth3r/sit/file/Config.java @@ -213,7 +213,7 @@ public class Config { file.write("\nhand.off.whitelist="+gson.toJson(offWhitelist)); file.write("\nhand.off.blacklist="+gson.toJson(offBlacklist)); // send packets to update the settings on the server - if (SitClient.inGame) SitClient.sendPackets(); + SitClient.sendSettingsPackets(); } catch (Exception e) { e.printStackTrace(); }