perf: 优化代码

This commit is contained in:
2023-06-05 10:17:21 +08:00
parent 4bae28d8e2
commit 32833879eb
2 changed files with 25 additions and 25 deletions

View File

@@ -60,16 +60,6 @@ public enum CoreMessage {
} }
} }
public void show(CommandSender sender) {
if (message == null) {
sender.sendMessage(name());
return;
}
Audience audience = CoreBukkitAPI.getInstance().getAudienceProvider().sender(sender);
message.show(audience);
}
@SuppressWarnings("unused")
public void show(CommandSender sender, TextReplacementConfig... replacement) { public void show(CommandSender sender, TextReplacementConfig... replacement) {
if (message == null) { if (message == null) {
sender.sendMessage(name()); sender.sendMessage(name());

View File

@@ -46,29 +46,39 @@ public class DisplayMessage {
return displayMessage; return displayMessage;
} }
public void show(@NotNull Audience audience) { public void show(@NotNull Audience audience, @NotNull TextReplacementConfig... replacements) {
if (message != null) { Component replacedMessage = message;
audience.sendMessage(message); Component replacedActionbar = actionbar;
Title replacedTitle = title;
for (TextReplacementConfig replacement : replacements) {
if (replacedMessage != null) {
replacedMessage = replacedMessage.replaceText(replacement);
}
if (replacedActionbar != null) {
replacedActionbar = replacedActionbar.replaceText(replacement);
}
if (replacedTitle != null) {
replacedTitle = Title.title(
replacedTitle.title().replaceText(replacement).compact(),
replacedTitle.subtitle().replaceText(replacement).compact(),
replacedTitle.times()
);
}
} }
if (actionbar != null) { if (replacedMessage != null) {
audience.sendActionBar(actionbar); audience.sendMessage(replacedMessage);
} }
if (title != null) { if (replacedActionbar != null) {
audience.showTitle(title); audience.sendActionBar(replacedActionbar);
}
if (replacedTitle != null) {
audience.showTitle(replacedTitle);
} }
if (sound != null) { if (sound != null) {
audience.playSound(sound); audience.playSound(sound);
} }
} }
public void show(@NotNull Audience audience, @NotNull TextReplacementConfig replacement) {
copy().replace(replacement).show(audience);
}
public void show(@NotNull Audience audience, @NotNull TextReplacementConfig... replacements) {
copy().replace(replacements).show(audience);
}
@NotNull @NotNull
public DisplayMessage setMessage(@NotNull String message) { public DisplayMessage setMessage(@NotNull String message) {
this.message = Component.text(message); this.message = Component.text(message);