mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2025-12-22 16:39:22 +00:00
[ci skip] Drop Optimize check nearby fire or lava on entity move
This commit is contained in:
104
patches/server/0084-Configurable-connection-message.patch
Normal file
104
patches/server/0084-Configurable-connection-message.patch
Normal file
@@ -0,0 +1,104 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com>
|
||||
Date: Sun, 2 Jun 2024 01:21:36 +0800
|
||||
Subject: [PATCH] Configurable connection message
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 34b70d75295c4c7551ddd3569e3961d80e679a46..2614933317f102a0f559374d2bb8efc70b230e85 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -455,7 +455,7 @@ public abstract class PlayerList {
|
||||
// Ensure that player inventory is populated with its viewer
|
||||
player.containerMenu.transferTo(player.containerMenu, bukkitPlayer);
|
||||
|
||||
- PlayerJoinEvent playerJoinEvent = new PlayerJoinEvent(bukkitPlayer, io.papermc.paper.adventure.PaperAdventure.asAdventure(ichatmutablecomponent)); // Paper - Adventure
|
||||
+ PlayerJoinEvent playerJoinEvent = new PlayerJoinEvent(bukkitPlayer, getJoinMsg(io.papermc.paper.adventure.PaperAdventure.asAdventure(ichatmutablecomponent), bukkitPlayer)); // Paper - Adventure // Leaf - Configurable connection message - join message
|
||||
this.cserver.getPluginManager().callEvent(playerJoinEvent);
|
||||
|
||||
if (!player.connection.isAcceptingMessages()) {
|
||||
@@ -468,7 +468,7 @@ public abstract class PlayerList {
|
||||
|
||||
final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
||||
|
||||
- if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure
|
||||
+ if (org.dreeam.leaf.config.modules.misc.ConnectionMessage.joinEnabled && jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure // Leaf - Configurable connection message - join message
|
||||
joinMessage = io.papermc.paper.adventure.PaperAdventure.asVanilla(jm); // Paper - Adventure
|
||||
this.server.getPlayerList().broadcastSystemMessage(joinMessage, false); // Paper - Adventure
|
||||
}
|
||||
@@ -770,7 +770,7 @@ public abstract class PlayerList {
|
||||
entityplayer.closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason.DISCONNECT); // Paper - Inventory close reason
|
||||
}
|
||||
|
||||
- PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(entityplayer.getBukkitEntity(), net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW, io.papermc.paper.configuration.GlobalConfiguration.get().messages.useDisplayNameInQuitMessage ? entityplayer.getBukkitEntity().displayName() : io.papermc.paper.adventure.PaperAdventure.asAdventure(entityplayer.getDisplayName())), entityplayer.quitReason); // Paper - Adventure & Add API for quit reason
|
||||
+ PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(entityplayer.getBukkitEntity(), getQuitMsg(net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW, io.papermc.paper.configuration.GlobalConfiguration.get().messages.useDisplayNameInQuitMessage ? entityplayer.getBukkitEntity().displayName() : io.papermc.paper.adventure.PaperAdventure.asAdventure(entityplayer.getDisplayName())), entityplayer.getBukkitEntity()), entityplayer.quitReason); // Paper - Adventure & Add API for quit reason // Leaf - Configurable connection message - quit message
|
||||
this.cserver.getPluginManager().callEvent(playerQuitEvent);
|
||||
entityplayer.getBukkitEntity().disconnect(playerQuitEvent.getQuitMessage());
|
||||
|
||||
@@ -1815,4 +1815,29 @@ public abstract class PlayerList {
|
||||
public boolean isAllowCommandsForAllPlayers() {
|
||||
return this.allowCommandsForAllPlayers;
|
||||
}
|
||||
+
|
||||
+ // Leaf start - Configurable connection message
|
||||
+ private net.kyori.adventure.text.Component getJoinMsg(net.kyori.adventure.text.Component defaultJoinMsg, Player player) {
|
||||
+ if (org.dreeam.leaf.config.modules.misc.ConnectionMessage.joinEnabled) {
|
||||
+ return "default".equals(org.dreeam.leaf.config.modules.misc.ConnectionMessage.joinMessage)
|
||||
+ ? defaultJoinMsg
|
||||
+ : net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(org.dreeam.leaf.config.modules.misc.ConnectionMessage.joinMessage)
|
||||
+ .replaceText(net.kyori.adventure.text.TextReplacementConfig.builder().matchLiteral("%player_name%").replacement(player.getName()).build())
|
||||
+ .replaceText(net.kyori.adventure.text.TextReplacementConfig.builder().matchLiteral("%player_displayname%").replacement(player.displayName()).build());
|
||||
+ }
|
||||
+
|
||||
+ return net.kyori.adventure.text.Component.empty();
|
||||
+ }
|
||||
+ private net.kyori.adventure.text.Component getQuitMsg(net.kyori.adventure.text.Component defaultQuitMsg, Player player) {
|
||||
+ if (org.dreeam.leaf.config.modules.misc.ConnectionMessage.quitEnabled) {
|
||||
+ return "default".equals(org.dreeam.leaf.config.modules.misc.ConnectionMessage.quitMessage)
|
||||
+ ? defaultQuitMsg
|
||||
+ : net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(org.dreeam.leaf.config.modules.misc.ConnectionMessage.quitMessage)
|
||||
+ .replaceText(net.kyori.adventure.text.TextReplacementConfig.builder().matchLiteral("%player_name%").replacement(player.getName()).build())
|
||||
+ .replaceText(net.kyori.adventure.text.TextReplacementConfig.builder().matchLiteral("%player_displayname%").replacement(player.displayName()).build());
|
||||
+ }
|
||||
+
|
||||
+ return net.kyori.adventure.text.Component.empty();
|
||||
+ }
|
||||
+ // Leaf end - Configurable connection message
|
||||
}
|
||||
diff --git a/src/main/java/org/dreeam/leaf/config/modules/misc/ConnectionMessage.java b/src/main/java/org/dreeam/leaf/config/modules/misc/ConnectionMessage.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..d05c123143ff623ce45c351a487e10ba52c92a61
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/org/dreeam/leaf/config/modules/misc/ConnectionMessage.java
|
||||
@@ -0,0 +1,31 @@
|
||||
+package org.dreeam.leaf.config.modules.misc;
|
||||
+
|
||||
+import org.dreeam.leaf.config.ConfigModules;
|
||||
+import org.dreeam.leaf.config.EnumConfigCategory;
|
||||
+
|
||||
+public class ConnectionMessage extends ConfigModules {
|
||||
+
|
||||
+ public String getBasePath() {
|
||||
+ return EnumConfigCategory.MISC.getBaseKeyName() + ".connection-message";
|
||||
+ }
|
||||
+
|
||||
+ public static boolean joinEnabled = true;
|
||||
+ public static String joinMessage = "default";
|
||||
+ public static boolean quitEnabled = true;
|
||||
+ public static String quitMessage = "default";
|
||||
+
|
||||
+ @Override
|
||||
+ public void onLoaded() {
|
||||
+ config.addComment(getBasePath(), """
|
||||
+ Connection message, using MiniMessage format, set to "default" to use vanilla join message.
|
||||
+ available placeholders:
|
||||
+ %player_name% - player name
|
||||
+ %player_displayname% - player display name""");
|
||||
+
|
||||
+ joinEnabled = config.getBoolean(getBasePath() + ".join.enabled", joinEnabled);
|
||||
+ joinMessage = config.getString(getBasePath() + ".join.message", joinMessage, "Join message of player");
|
||||
+
|
||||
+ quitEnabled = config.getBoolean(getBasePath() + ".quit.enabled", quitEnabled);
|
||||
+ quitMessage = config.getString(getBasePath() + ".quit.message", quitMessage, "Quit message of player");
|
||||
+ }
|
||||
+}
|
||||
Reference in New Issue
Block a user