Skip to content
This repository has been archived by the owner on Feb 15, 2024. It is now read-only.

Commit

Permalink
Purpur patches should use Purpur permissions. So, if a server wants t…
Browse files Browse the repository at this point in the history
…o change TenseiMC and go to Purpur, the Permission side won't be impacted.

This is part of a reorganization to integrate the purpur.yml file for currently functional configurations.
I'd like to point out that this will never be a 'fork of Purpur' or 'multiple forks', just that I liked such features and am including them so that they can be used on Folia via TenseiMC.
  • Loading branch information
Euphillya committed Nov 2, 2023
1 parent 2263ab4 commit d68048f
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 28 deletions.
16 changes: 8 additions & 8 deletions patches/api/0011-Purpur-EnderChest-1-to-6-Rows.patch
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,20 @@ Subject: [PATCH] Purpur - EnderChest 1 to 6 Rows


diff --git a/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java b/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
index c704b742c627589de92322707ef46a21ed9b8100..b20f7b7142dc523c4675710365f66826866e04d5 100644
index c704b742c627589de92322707ef46a21ed9b8100..a018ab14d641883e091b6a0e2a2a475549378869 100644
--- a/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
+++ b/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
@@ -16,6 +16,14 @@ public class TenseiMCPermissions {

// Add Permissions here

+ // Enderchest Permissions
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.six", "Gives the user six rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.five", "Gives the user five rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.four", "Gives the user four rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.three", "Gives the user three rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.two", "Gives the user two rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.one", "Gives the user one row of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ // Enderchest Permissions Purpur
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.six", "Gives the user six rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.five", "Gives the user five rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.four", "Gives the user four rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.three", "Gives the user three rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.two", "Gives the user two rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "enderchest.rows.one", "Gives the user one row of enderchest space.", PermissionDefault.FALSE, tenseimc);
+
tenseimc.recalculatePermissibles();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ Subject: [PATCH] Allow player join full server by permission


diff --git a/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java b/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
index b20f7b7142dc523c4675710365f66826866e04d5..4a7f03f8c4bbcd627e44c78f0f4201a4b52a2566 100644
index a018ab14d641883e091b6a0e2a2a475549378869..20a65e2b8f4e9ea916ef0fbf9d90e4f7d091cf84 100644
--- a/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
+++ b/src/main/java/org/bukkit/util/permissions/TenseiMCPermissions.java
@@ -24,6 +24,9 @@ public class TenseiMCPermissions {
DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.two", "Gives the user two rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
DefaultPermissions.registerPermission(PREFIX + "enderchest.rows.one", "Gives the user one row of enderchest space.", PermissionDefault.FALSE, tenseimc);
DefaultPermissions.registerPermission("purpur." + "enderchest.rows.two", "Gives the user two rows of enderchest space.", PermissionDefault.FALSE, tenseimc);
DefaultPermissions.registerPermission("purpur." + "enderchest.rows.one", "Gives the user one row of enderchest space.", PermissionDefault.FALSE, tenseimc);

+ // Other
+ DefaultPermissions.registerPermission(PREFIX + "joinfullserver", "Allows the user to join a full server.", PermissionDefault.OP, tenseimc);
+ DefaultPermissions.registerPermission("purpur." + "joinfullserver", "Allows the user to join a full server.", PermissionDefault.OP, tenseimc);
+
tenseimc.recalculatePermissibles();

Expand Down
28 changes: 14 additions & 14 deletions patches/server/0004-Purpur-EnderChest-1-to-6-Rows.patch
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ index 4bc8c7f69c94be174c5385c3b8ed64670b7e673d..80e76f54978047b48990a6c928c972a7
+ }
}
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 9da89e8e9569666227081ebc6cb1f0348e1a183d..ac9e0f7abe9a41fb3209ef6f8044a03f359d8e07 100644
index 9da89e8e9569666227081ebc6cb1f0348e1a183d..14361e0b4270c2cb84fe074ecd68f1e333ad1290 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1241,6 +1241,27 @@ public abstract class PlayerList {
Expand All @@ -33,17 +33,17 @@ index 9da89e8e9569666227081ebc6cb1f0348e1a183d..ac9e0f7abe9a41fb3209ef6f8044a03f
+ // TenseiMC start
+ if (fr.euphilia.tenseimc.TenseiConfig.enderChestSixRows && fr.euphilia.tenseimc.TenseiConfig.enderChestPermissionRows) {
+ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkit = player.getBukkitEntity();
+ if (bukkit.hasPermission("tenseimc.enderchest.rows.six")) {
+ if (bukkit.hasPermission("tenseimc.enderchest.rows.six") || bukkit.hasPermission("purpur.enderchest.rows.six")) {
+ player.sixRowEnderChestSlotCount = 54;
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.five")) {
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.five") || bukkit.hasPermission("purpur.enderchest.rows.five")) {
+ player.sixRowEnderChestSlotCount = 45;
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.four")) {
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.four") || bukkit.hasPermission("purpur.enderchest.rows.four")) {
+ player.sixRowEnderChestSlotCount = 36;
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.three")) {
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.three") || bukkit.hasPermission("purpur.enderchest.rows.three")) {
+ player.sixRowEnderChestSlotCount = 27;
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.two")) {
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.two") || bukkit.hasPermission("purpur.enderchest.rows.two")) {
+ player.sixRowEnderChestSlotCount = 18;
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.one")) {
+ } else if (bukkit.hasPermission("tenseimc.enderchest.rows.one") || bukkit.hasPermission("purpur.enderchest.rows.one")) {
+ player.sixRowEnderChestSlotCount = 9;
+ }
+ } else {
Expand Down Expand Up @@ -125,7 +125,7 @@ index 4703f23316f82a1a942907b46d2d6dcb7d70ec37..bd52a4514ef9eac36c89e7db734a74b2
this.activeChest = blockEntity;
}
diff --git a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
index 7385e91f32f070e86a4e0fd3d214f55d832c7979..b139ebb689ad8821dac3b37ef763e2e4a7a5aefb 100644
index 7385e91f32f070e86a4e0fd3d214f55d832c7979..95bf667c2e3cf60e06bf8bd34f77b61522223081 100644
--- a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java
@@ -85,6 +85,32 @@ public class EnderChestBlock extends AbstractChestBlock<EnderChestBlockEntity> i
Expand All @@ -135,22 +135,22 @@ index 7385e91f32f070e86a4e0fd3d214f55d832c7979..b139ebb689ad8821dac3b37ef763e2e4
+ // TenseiMC start
+ if (fr.euphilia.tenseimc.TenseiConfig.enderChestSixRows) {
+ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkitPlayer = player.getBukkitEntity();
+ if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.six")) {
+ if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.six") || bukkit.hasPermission("purpur.enderchest.rows.six")) {
+ player.sixRowEnderChestSlotCount = 54;
+ return ChestMenu.sixRows(syncId, inventory, playerEnderChestContainer);
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.five")) {
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.five") || bukkit.hasPermission("purpur.enderchest.rows.five")) {
+ player.sixRowEnderChestSlotCount = 45;
+ return ChestMenu.fiveRows(syncId, inventory, playerEnderChestContainer);
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.four")) {
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.four") || bukkit.hasPermission("purpur.enderchest.rows.four")) {
+ player.sixRowEnderChestSlotCount = 36;
+ return ChestMenu.fourRows(syncId, inventory, playerEnderChestContainer);
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.three")) {
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.three") || bukkit.hasPermission("purpur.enderchest.rows.three")) {
+ player.sixRowEnderChestSlotCount = 27;
+ return ChestMenu.threeRows(syncId, inventory, playerEnderChestContainer);
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.two")) {
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.two") || bukkit.hasPermission("purpur.enderchest.rows.two")) {
+ player.sixRowEnderChestSlotCount = 18;
+ return ChestMenu.twoRows(syncId, inventory, playerEnderChestContainer);
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.one")) {
+ } else if (bukkitPlayer.hasPermission("tenseimc.enderchest.rows.one") || bukkit.hasPermission("purpur.enderchest.rows.one")) {
+ player.sixRowEnderChestSlotCount = 9;
+ return ChestMenu.oneRows(syncId, inventory, playerEnderChestContainer);
+ }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ Subject: [PATCH] Allow player join full server by permission


diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index ac9e0f7abe9a41fb3209ef6f8044a03f359d8e07..c6971f42e1a545ea92a94ddaa0a333e062a3e7cf 100644
index 14361e0b4270c2cb84fe074ecd68f1e333ad1290..9e4f5cce54f5bef848872bf26f21ab38b4e439ce 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -815,7 +815,7 @@ public abstract class PlayerList {
event.disallow(PlayerLoginEvent.Result.KICK_BANNED, io.papermc.paper.adventure.PaperAdventure.asAdventure(ichatmutablecomponent)); // Paper - Adventure
} else {
// return this.players.size() >= this.maxPlayers && !this.canBypassPlayerLimit(gameprofile) ? IChatBaseComponent.translatable("multiplayer.disconnect.server_full") : null;
- if (this.getTotalConnections() >= this.maxPlayers && !this.canBypassPlayerLimit(gameprofile)) { // Folia - region threading - we control connection state here now async, not player list size
+ if (this.getTotalConnections() >= this.maxPlayers && !(player.hasPermission("tenseimc.joinfullserver") || this.canBypassPlayerLimit(gameprofile))) { // Folia - region threading - we control connection state here now async, not player list size // TenseiMC
+ if (this.getTotalConnections() >= this.maxPlayers && !((player.hasPermission("tenseimc.joinfullserver") || player.hasPermission("purpur.joinfullserver")) || this.canBypassPlayerLimit(gameprofile))) { // Folia - region threading - we control connection state here now async, not player list size // TenseiMC
event.disallow(PlayerLoginEvent.Result.KICK_FULL, net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(org.spigotmc.SpigotConfig.serverFullMessage)); // Spigot // Paper - Adventure
}
}

0 comments on commit d68048f

Please sign in to comment.