From 46457c7857f5ae413c4881e3bff67bb7e4e6635f Mon Sep 17 00:00:00 2001 From: Apace Date: Wed, 5 Aug 2020 18:43:35 +0200 Subject: [PATCH] Fixed a synchronization issue --- .../io/github/apace100/origins/mixin/LoginMixin.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/github/apace100/origins/mixin/LoginMixin.java b/src/main/java/io/github/apace100/origins/mixin/LoginMixin.java index 9a931f6d..487f1a27 100644 --- a/src/main/java/io/github/apace100/origins/mixin/LoginMixin.java +++ b/src/main/java/io/github/apace100/origins/mixin/LoginMixin.java @@ -13,12 +13,17 @@ import net.minecraft.server.PlayerManager; import net.minecraft.server.network.ServerPlayerEntity; import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import java.util.List; + @Mixin(PlayerManager.class) -public class LoginMixin { +public abstract class LoginMixin { + + @Shadow public abstract List getPlayerList(); @Inject(at = @At("TAIL"), method = "Lnet/minecraft/server/PlayerManager;onPlayerConnect(Lnet/minecraft/network/ClientConnection;Lnet/minecraft/server/network/ServerPlayerEntity;)V") private void openOriginsGui(ClientConnection connection, ServerPlayerEntity player, CallbackInfo info) { @@ -43,5 +48,9 @@ private void openOriginsGui(ClientConnection connection, ServerPlayerEntity play data.writeBoolean(true); ServerSidePacketRegistry.INSTANCE.sendToPlayer(player, ModPackets.OPEN_ORIGIN_SCREEN, data); } + List playerList = getPlayerList(); + playerList.forEach(spe -> { + ModComponents.ORIGIN.get(spe).syncWith(player); + }); } }