From 25499ab7fd33b9297aae7e93cb07fd9d7f844c89 Mon Sep 17 00:00:00 2001 From: Tom Date: Fri, 12 Jul 2019 07:59:35 -0500 Subject: [PATCH] Don't recalculate permissions for players on world change --- src/main/java/net/minecraft/server/PlayerList.java | 3 ++- src/main/java/net/pl3x/purpur/PurpurConfig.java | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java index 3cb443c4f..a33285379 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -711,7 +711,7 @@ public abstract class PlayerList { entityplayer1.playerConnection.sendPacket(new PacketPlayOutServerDifficulty(worlddata.getDifficulty(), worlddata.isDifficultyLocked())); entityplayer1.playerConnection.sendPacket(new PacketPlayOutExperience(entityplayer1.exp, entityplayer1.expTotal, entityplayer1.expLevel)); this.a(entityplayer1, worldserver); - this.d(entityplayer1); + if (net.pl3x.purpur.PurpurConfig.updatePermissionsOnWorldChange) updatePermissions(entityplayer1); // Purpur if (!entityplayer.playerConnection.isDisconnected()) { worldserver.addPlayerRespawn(entityplayer1); this.players.add(entityplayer1); @@ -752,6 +752,7 @@ public abstract class PlayerList { return entityplayer1; } + public void updatePermissions(EntityPlayer entityPlayer) { d(entityPlayer); } // Purpur public void d(EntityPlayer entityplayer) { GameProfile gameprofile = entityplayer.getProfile(); int i = this.server.a(gameprofile); diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java index 01c9d0861..20231143e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -166,6 +166,11 @@ public class PurpurConfig { useBetterMending = getBoolean("settings.use-better-mending", useBetterMending); } + public static boolean updatePermissionsOnWorldChange = false; + private static void updatePermissionsOnWorldChange() { + updatePermissionsOnWorldChange = getBoolean("settings.update-perms-on-world-change", updatePermissionsOnWorldChange); + } + public static boolean requireShiftToMount = true; private static void requireShiftToMount() { requireShiftToMount = getBoolean("settings.mobs.require-shift-to-mount", requireShiftToMount); -- 2.23.0.rc1