9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-29 03:49:21 +00:00
Files
Leaf/leaf-server/paper-patches/features/0062-Op-lock.patch
Dreeam 9ba16f36ed Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@4d44b5fd Remove @Experimental annotation from the org.bukkit.damage package (#12898)
PaperMC/Paper@4f79e9ee [ci/skip] no need to ever import non-library files ever again (#12765)
PaperMC/Paper@a4da45e3 Fix typo in give command (#12905)
PaperMC/Paper@ec9c83fa Adventure 4.24.0 (#12908)
PaperMC/Paper@0c8efe4d [ci/skip] Remove redundant adventure version specification
PaperMC/Paper@ed31825a HIDE_ADDITIONAL_TOOLTIP backwards compat. not hiding disc names (#12900)
2025-07-31 14:04:29 +08:00

59 lines
2.8 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Taiyou06 <kaandindar21@gmail.com>
Date: Tue, 22 Jul 2025 22:33:07 +0200
Subject: [PATCH] Op lock
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index 3b516f57854f6482b3748d0c3a037fdeacfe78ab..b4e393da9d445aa7779868310cabfebff78f64dc 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -100,10 +100,14 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@Override
public void setOp(boolean value) {
+ if (org.dreeam.leaf.config.modules.misc.OpLock.preventOpChanges) {
+ Bukkit.getLogger().severe("[Leaf] A plugin tried to change the player op! Dumping stacktrace now.");
+ Thread.dumpStack();
+ return;
+ }
if (value == this.isOp()) {
return;
}
-
if (value) {
this.server.getHandle().op(this.profile);
} else {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
index b02826fc7390eb1fd7c2a1b597a5f1abf156b1c1..736563bd3a462911ec99a8158fc5bd3e4115aa62 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java
@@ -306,6 +306,11 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
@Override
public void setOp(boolean value) {
+ if (org.dreeam.leaf.config.modules.misc.OpLock.preventOpChanges) {
+ org.bukkit.Bukkit.getLogger().severe("[Leaf] A plugin tried to change the player op! Dumping stacktrace now.");
+ Thread.dumpStack();
+ return;
+ }
this.op = value;
this.perm.recalculatePermissions();
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index a5c0b4bed976c314cee3947caf1c6db78dcf53ae..1fd4bea31ed92903a3727b1f311dfaa37d5bc684 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -279,6 +279,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
@Override
public void setOp(boolean value) {
+ if (org.dreeam.leaf.config.modules.misc.OpLock.preventOpChanges) {
+ Bukkit.getLogger().severe("[Leaf] A plugin tried to change the player op! Dumping stacktrace now.");
+ Thread.dumpStack();
+ return;
+ }
if (value == this.isOp()) return;
if (value) {