Files
Purpur/patches/server/0052-Don-t-recalculate-permissions-for-players-on-world-c.patch
2019-08-31 17:34:35 -05:00

51 lines
2.5 KiB
Diff

From 9bba75e2a35134a30c1f0df816ae3d2e2d834c6c Mon Sep 17 00:00:00 2001
From: Tom <cryptite@gmail.com>
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 594c50a18..af76bbc3b 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -171,6 +171,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