diff --git a/pom.xml b/pom.xml
index 4889e5a..3b3719e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
cn.lunadeer
MiniPlayerTitle
- 2.7.2
+ 2.8.5
jar
MiniPlayerTitle
diff --git a/src/main/java/cn/lunadeer/miniplayertitle/Events.java b/src/main/java/cn/lunadeer/miniplayertitle/Events.java
index b93c9d7..7e2ce94 100644
--- a/src/main/java/cn/lunadeer/miniplayertitle/Events.java
+++ b/src/main/java/cn/lunadeer/miniplayertitle/Events.java
@@ -3,6 +3,7 @@ package cn.lunadeer.miniplayertitle;
import cn.lunadeer.miniplayertitle.utils.Notification;
import io.papermc.paper.event.player.AsyncChatEvent;
import net.kyori.adventure.text.Component;
+import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
@@ -11,33 +12,21 @@ public class Events implements Listener {
@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
- XPlayer player = new XPlayer(event.getPlayer());
- Commands.home_view(event.getPlayer());
+ Player bukkitPlayer = event.getPlayer();
+ XPlayer player = new XPlayer(bukkitPlayer);
+ Commands.home_view(bukkitPlayer);
+ player.updateName();
}
@EventHandler
public void onPlayerSendChat(AsyncChatEvent event) {
- XPlayer xPlayer = new XPlayer(event.getPlayer());
- PlayerTitle title = xPlayer.getTitle();
Component nameComponent = event.getPlayer().displayName();
Component chatComponent = event.message();
- if (title == null) {
- Component newChatComponent = Component.text()
- .append(Component.text("<"))
- .append(nameComponent)
- .append(Component.text("> "))
- .append(chatComponent).build();
- event.setCancelled(true);
- event.getPlayer().getServer().sendMessage(newChatComponent);
- } else {
- Component titleComponent = title.getTitle();
- Component newChatComponent = Component.text().append(titleComponent)
- .append(Component.text("<"))
- .append(nameComponent)
- .append(Component.text("> "))
- .append(chatComponent).build();
- event.setCancelled(true);
- event.getPlayer().getServer().sendMessage(newChatComponent);
- }
+ Component newChatComponent = Component.text()
+ .append(nameComponent)
+ .append(Component.text(" "))
+ .append(chatComponent).build();
+ event.setCancelled(true);
+ event.getPlayer().getServer().sendMessage(newChatComponent);
}
}
diff --git a/src/main/java/cn/lunadeer/miniplayertitle/XPlayer.java b/src/main/java/cn/lunadeer/miniplayertitle/XPlayer.java
index 3f9d1dc..78b31dc 100644
--- a/src/main/java/cn/lunadeer/miniplayertitle/XPlayer.java
+++ b/src/main/java/cn/lunadeer/miniplayertitle/XPlayer.java
@@ -62,6 +62,7 @@ public class XPlayer {
sql += "updated_at = CURRENT_TIMESTAMP ";
sql += "WHERE uuid = '" + _player.getUniqueId() + "';";
Database.query(sql);
+ updateName();
if (_current_title_id == -1) {
Notification.info(_player, "成功卸下称号");
return;
@@ -196,7 +197,7 @@ public class XPlayer {
Notification.info(_player, title.getTitle().append(Component.text(" 已购买至 " + title_bought.getExpireAtStr())));
}
- public void custom(String title_str){
+ public void custom(String title_str) {
if (this.get_coin() < MiniPlayerTitle.config.getCustomCost()) {
Notification.error(this._player, "称号币不足");
return;
@@ -226,4 +227,32 @@ public class XPlayer {
Notification.info(this._player, Component.text("成功创建自定义称号: ").append(title.getTitle()));
Notification.info(this._player, "花费: " + MiniPlayerTitle.config.getCustomCost() + "称号币,余额: " + this.get_coin() + "称号币");
}
+
+ public void updateName() {
+ PlayerTitle title = getTitle();
+ if (title == null) {
+ Component newDisplayName = Component.text()
+ .append(Component.text("<"))
+ .append(_player.name())
+ .append(Component.text("> ")).build();
+ Component newListName = Component.text()
+ .append(_player.name()).build();
+ _player.displayName(newDisplayName);
+ _player.playerListName(newListName);
+ return;
+ }
+
+ Component titleComponent = title.getTitle();
+ Component newDisplayName = Component.text()
+ .append(titleComponent)
+ .append(Component.text("<"))
+ .append(_player.name())
+ .append(Component.text(">")).build();
+ Component newListName = Component.text()
+ .append(titleComponent)
+ .append(Component.text(" "))
+ .append(_player.name()).build();
+ _player.displayName(newDisplayName);
+ _player.playerListName(newListName);
+ }
}