mirror of
https://github.com/FalsePattern/FalsePatternLib.git
synced 2026-11-11 09:07:29 +00:00
config sync fix number 2
This commit is contained in:
2 files changed
+25
-13
No files matched your search
+25
@@ -27,17 +27,24 @@ import lombok.AccessLevel;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
|
||||
import net.minecraft.client.entity.EntityClientPlayerMP;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
import cpw.mods.fml.common.network.FMLNetworkEvent;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
||||
@SideOnly(Side.CLIENT)
|
||||
public final class ClientEventHandlerPost {
|
||||
private static final ClientEventHandlerPost INSTANCE = new ClientEventHandlerPost();
|
||||
|
||||
public static void registerBus() {
|
||||
MinecraftForge.EVENT_BUS.register(INSTANCE);
|
||||
FMLCommonHandler.instance().bus().register(INSTANCE);
|
||||
}
|
||||
|
||||
@@ -47,4 +54,22 @@ public final class ClientEventHandlerPost {
|
||||
public void onSyncRequestClient(ConfigSyncRequestEvent.Client e) {
|
||||
ConfigurationManagerImpl.sendSyncRequest();
|
||||
}
|
||||
|
||||
private AtomicBoolean shouldDoConfigSync = new AtomicBoolean(false);
|
||||
|
||||
@SneakyThrows
|
||||
@SubscribeEvent
|
||||
public void onJoinWorld(FMLNetworkEvent.ClientConnectedToServerEvent e) {
|
||||
if (e.isLocal)
|
||||
return;
|
||||
shouldDoConfigSync.set(true);
|
||||
}
|
||||
|
||||
@SneakyThrows
|
||||
@SubscribeEvent
|
||||
public void onJoinWorld(EntityJoinWorldEvent e) {
|
||||
if (e.world.isRemote && e.entity instanceof EntityClientPlayerMP && shouldDoConfigSync.compareAndSet(true, false)) {
|
||||
ConfigurationManagerImpl.sendSyncRequest();
|
||||
}
|
||||
}
|
||||
}
|
||||
-13
@@ -23,17 +23,13 @@ package com.falsepattern.lib.internal.impl.config.event;
|
||||
|
||||
import com.falsepattern.lib.config.event.ConfigSyncRequestEvent;
|
||||
import com.falsepattern.lib.internal.FalsePatternLib;
|
||||
import com.falsepattern.lib.internal.impl.config.ConfigurationManagerImpl;
|
||||
import com.falsepattern.lib.internal.impl.config.net.SyncPrompt;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.val;
|
||||
|
||||
import net.minecraft.client.entity.EntityClientPlayerMP;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
|
||||
@@ -42,18 +38,9 @@ public class CommonEventHandlerPost {
|
||||
private static final CommonEventHandlerPost INSTANCE = new CommonEventHandlerPost();
|
||||
|
||||
public static void registerBus() {
|
||||
MinecraftForge.EVENT_BUS.register(INSTANCE);
|
||||
FMLCommonHandler.instance().bus().register(INSTANCE);
|
||||
}
|
||||
|
||||
@SneakyThrows
|
||||
@SubscribeEvent
|
||||
public void onJoinWorld(EntityJoinWorldEvent e) {
|
||||
if (e.world.isRemote && e.entity instanceof EntityClientPlayerMP) {
|
||||
ConfigurationManagerImpl.sendSyncRequest();
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onSyncRequestServer(ConfigSyncRequestEvent.Server e) {
|
||||
val players = e.getPlayers();
|
||||
|
||||
Reference in new issue
Block a user