@@ -17,7 +17,7 @@ import net.minecraft.nbt.Tag;
1717
1818 @SubscribeEvent public static void init(FMLCommonSetupEvent event) {
1919 <#if w.hasVariablesOfScope("GLOBAL_WORLD") || w.hasVariablesOfScope("GLOBAL_MAP") >
20- ${JavaModName} .addNetworkMessage(SavedDataSyncMessage.class, SavedDataSyncMessage::buffer, SavedDataSyncMessage::new, SavedDataSyncMessage::handler );
20+ ${JavaModName} .addNetworkMessage(SavedDataSyncMessage.class, SavedDataSyncMessage::buffer, SavedDataSyncMessage::new, SavedDataSyncMessage::handleData );
2121 </#if >
2222
2323 <#if w.hasVariablesOfScope("PLAYER_LIFETIME") || w.hasVariablesOfScope("PLAYER_PERSISTENT") >
@@ -196,51 +196,51 @@ import net.minecraft.nbt.Tag;
196196 return clientSide;
197197 }
198198 }
199-
200199 }
201200
202201 public static class SavedDataSyncMessage {
202+ private final int dataType;
203+ private final SavedData data;
203204
204- private final int type;
205- private SavedData data;
206-
207- public SavedDataSyncMessage(FriendlyByteBuf buffer) {
208- this.type = buffer.readInt();
209-
210- CompoundTag nbt = buffer.readNbt();
211- if (nbt != null) {
212- this.data = this.type == 0 ? new MapVariables() : new WorldVariables();
213- if(this.data instanceof MapVariables mapVariables)
214- mapVariables.read(nbt);
215- else if(this.data instanceof WorldVariables worldVariables)
216- worldVariables.read(nbt);
217- }
205+ public SavedDataSyncMessage(int dataType, SavedData data) {
206+ this.dataType = dataType;
207+ this.data = data;
218208 }
219209
220- public SavedDataSyncMessage(int type, SavedData data) {
221- this.type = type;
222- this.data = data;
210+ public SavedDataSyncMessage(FriendlyByteBuf buffer) {
211+ int dataType = buffer.readInt();
212+ CompoundTag nbt = buffer.readNbt();
213+ SavedData data = null;
214+ if (nbt != null) {
215+ data = dataType == 0 ? new MapVariables() : new WorldVariables();
216+ if(data instanceof MapVariables mapVariables)
217+ mapVariables.read(nbt);
218+ else if(data instanceof WorldVariables worldVariables)
219+ worldVariables.read(nbt);
220+ }
221+
222+ this.dataType = dataType;
223+ this.data = data;
223224 }
224225
225226 public static void buffer(SavedDataSyncMessage message, FriendlyByteBuf buffer) {
226- buffer.writeInt(message.type );
227- if (message.data != null)
228- buffer.writeNbt(message.data.save(new CompoundTag()));
227+ buffer.writeInt(message.dataType );
228+ if (message.data != null)
229+ buffer.writeNbt(message.data.save(new CompoundTag()));
229230 }
230231
231- public static void handler( SavedDataSyncMessage message, Supplier<NetworkEvent .Context > contextSupplier) {
232+ public static void handleData(final SavedDataSyncMessage message, final Supplier<NetworkEvent .Context > contextSupplier) {
232233 NetworkEvent.Context context = contextSupplier.get();
233234 context.enqueueWork(() -> {
234- if (!context.getDirection().getReceptionSide().isServer() && message.data != null) {
235- if (message.type == 0)
236- MapVariables.clientSide = (MapVariables) message.data;
235+ if (!context.getDirection().getReceptionSide().isServer() && message.data != null) {
236+ if (message.dataType == 0)
237+ MapVariables.clientSide.read( message.data.save(new CompoundTag())) ;
237238 else
238- WorldVariables.clientSide = (WorldVariables) message.data;
239+ WorldVariables.clientSide.read( message.data.save(new CompoundTag())) ;
239240 }
240241 });
241242 context.setPacketHandled(true);
242243 }
243-
244244 }
245245 </#if >
246246
0 commit comments