Fix dont recalc perms on world change patch

This commit is contained in:
William Blake Galbreath
2020-02-07 16:49:53 -06:00
parent 23d7b00d9c
commit 11c2e31b6c
4 changed files with 27 additions and 19 deletions

2
Paper

Submodule Paper updated: 3dafa6a08a...6aa27ec378

View File

@@ -1 +1 @@
1.15.2--4515cbc7b8fc1c756d08d7344e9ca35283c8b4f1
1.15.2--aa896671b94e3d1baf86d3376f564b08bd09fc48

View File

@@ -1,36 +1,44 @@
From 28543aa9576c88c469bb774a3b6a0783f1cdad3f Mon Sep 17 00:00:00 2001
From 6aab71857c77b0ce39716b16355c035da7a7c14e 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/minecraft/server/PlayerList.java | 8 ++++++--
src/main/java/net/pl3x/purpur/PurpurConfig.java | 5 +++++
2 files changed, 7 insertions(+), 1 deletion(-)
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 7b79ee4fe5..6398c367f9 100644
index 7b79ee4f..5efc1431 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -712,7 +712,7 @@ public abstract class PlayerList {
@@ -712,7 +712,9 @@ 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
+ skipPermRecalc = true; // Purpur
+ d(entityplayer1);
+ skipPermRecalc = false; // Purpur
if (!entityplayer.playerConnection.isDisconnected()) {
worldserver.addPlayerRespawn(entityplayer1);
this.players.add(entityplayer1);
@@ -755,6 +755,7 @@ public abstract class PlayerList {
return entityplayer1;
@@ -907,10 +909,12 @@ public abstract class PlayerList {
entityplayer.playerConnection.sendPacket(new PacketPlayOutEntityStatus(entityplayer, b0));
}
- entityplayer.getBukkitEntity().recalculatePermissions(); // CraftBukkit
+ if (skipPermRecalc && net.pl3x.purpur.PurpurConfig.updatePermissionsOnWorldChange) entityplayer.getBukkitEntity().recalculatePermissions(); // CraftBukkit
this.server.getCommandDispatcher().a(entityplayer);
}
+ public void updatePermissions(EntityPlayer entityPlayer) { d(entityPlayer); } // Purpur
public void d(EntityPlayer entityplayer) {
GameProfile gameprofile = entityplayer.getProfile();
int i = this.server.b(gameprofile);
+ private boolean skipPermRecalc = false; // Purpur
+
// Paper start
public boolean isWhitelisted(GameProfile gameprofile) {
return isWhitelisted(gameprofile, null);
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 44232346e1..22df3577cc 100644
index c35d19f6..12b2e121 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 {
@@ -46,5 +54,5 @@ index 44232346e1..22df3577cc 100644
private static void requireShiftToMount() {
requireShiftToMount = getBoolean("settings.mobs.require-shift-to-mount", requireShiftToMount);
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From d4c5efa50f98f5145db47706ff596eb53e59bb78 Mon Sep 17 00:00:00 2001
From 1dda091ec37fc952104f45ce6996bcd89e9e4f96 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sat, 28 Dec 2019 04:21:54 -0600
Subject: [PATCH] Add permission for F3+N debug
@@ -8,10 +8,10 @@ Subject: [PATCH] Add permission for F3+N debug
1 file changed, 1 insertion(+)
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 6398c367f..c48933cd6 100644
index 5efc1431..d48f5ac2 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -904,6 +904,7 @@ public abstract class PlayerList {
@@ -905,6 +905,7 @@ public abstract class PlayerList {
} else {
b0 = (byte) (24 + i);
}