1
mirror of https://github.com/CarmJos/MineConfiguration.git synced 2024-09-19 20:05:49 +00:00

[1.1.3-SNAPSHOT] 优化空消息忽略的逻辑

This commit is contained in:
Carm Jos 2022-04-25 09:59:25 +08:00
parent f0957c1b3e
commit 26922f9225
8 changed files with 18 additions and 27 deletions

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>mineconfiguration-parent</artifactId>
<groupId>cc.carm.lib</groupId>
<version>1.1.2-SNAPSHOT</version>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<properties>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>mineconfiguration-parent</artifactId>
<groupId>cc.carm.lib</groupId>
<version>1.1.2-SNAPSHOT</version>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<properties>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>mineconfiguration-parent</artifactId>
<groupId>cc.carm.lib</groupId>
<version>1.1.2-SNAPSHOT</version>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<properties>

View File

@ -50,7 +50,7 @@ public class MessageText {
else return parser.apply(sender, setPlaceholders(message, placeholders));
}
protected static Map<String, Object> buildParams(@Nullable String[] params, @Nullable Object[] values) {
public static Map<String, Object> buildParams(@Nullable String[] params, @Nullable Object[] values) {
Map<String, Object> map = new HashMap<>();
if (params == null || params.length == 0) return map;
for (int i = 0; i < params.length; i++) {
@ -59,7 +59,7 @@ public class MessageText {
return map;
}
protected static String setPlaceholders(@NotNull String messages, @NotNull Map<String, Object> placeholders) {
public static String setPlaceholders(@NotNull String messages, @NotNull Map<String, Object> placeholders) {
if (messages.isEmpty()) return messages;
String parsed = messages;

View File

@ -54,22 +54,17 @@ public class ConfiguredMessage<M> extends ConfiguredValue<MessageText> {
}
public @Nullable M parse(@Nullable CommandSender sender, @Nullable Object... values) {
MessageText value = get();
if (value == null) return null;
else return value.parse(this.messageParser, sender, this.params, values);
return parse(sender, MessageText.buildParams(params, values));
}
public @Nullable M parse(@Nullable CommandSender sender, @NotNull Map<String, Object> placeholders) {
MessageText value = get();
if (value == null) return null;
if (value == null || value.getMessage().isEmpty()) return null;
else return value.parse(this.messageParser, sender, placeholders);
}
public void send(@Nullable CommandSender receiver, @Nullable Object... values) {
if (receiver == null) return;
M parsed = parse(receiver, values);
if (parsed == null) return;
sendFunction.accept(receiver, parsed);
send(receiver, MessageText.buildParams(params, values));
}
public void send(@Nullable CommandSender receiver, @NotNull Map<String, Object> placeholders) {
@ -80,8 +75,7 @@ public class ConfiguredMessage<M> extends ConfiguredValue<MessageText> {
}
public void broadcast(@Nullable Object... values) {
Bukkit.getOnlinePlayers().forEach(pl -> send(pl, values));
send(Bukkit.getConsoleSender(), values);
broadcast(MessageText.buildParams(params, values));
}
public void broadcast(@NotNull Map<String, Object> placeholders) {

View File

@ -51,24 +51,22 @@ public class ConfiguredMessageList<M> extends ConfiguredList<MessageText> {
}
public @Nullable List<M> parse(@Nullable CommandSender sender, @Nullable Object... values) {
List<MessageText> list = get();
if (list.isEmpty()) return null;
return list.stream().map(value -> value.parse(this.messageParser, sender, this.params, values))
.collect(Collectors.toList());
return parse(sender, MessageText.buildParams(params, values));
}
public @Nullable List<M> parse(@Nullable CommandSender sender, @NotNull Map<String, Object> placeholders) {
List<MessageText> list = get();
if (list.isEmpty()) return null;
List<String> messages = list.stream().map(MessageText::getMessage).collect(Collectors.toList());
if (String.join("", messages).isEmpty()) return null;
return list.stream().map(value -> value.parse(this.messageParser, sender, placeholders))
.collect(Collectors.toList());
}
public void send(@Nullable CommandSender receiver, @Nullable Object... values) {
if (receiver == null) return;
List<M> parsed = parse(receiver, values);
if (parsed == null) return;
sendFunction.accept(receiver, parsed);
send(receiver, MessageText.buildParams(params, values));
}
public void send(@Nullable CommandSender receiver, @NotNull Map<String, Object> placeholders) {
@ -79,8 +77,7 @@ public class ConfiguredMessageList<M> extends ConfiguredList<MessageText> {
}
public void broadcast(@Nullable Object... values) {
Bukkit.getOnlinePlayers().forEach(pl -> send(pl, values));
send(Bukkit.getConsoleSender(), values);
broadcast(MessageText.buildParams(params, values));
}
public void broadcast(@NotNull Map<String, Object> placeholders) {

View File

@ -21,7 +21,7 @@
</properties>
<groupId>cc.carm.lib</groupId>
<artifactId>mineconfiguration-parent</artifactId>
<version>1.1.2-SNAPSHOT</version>
<version>1.1.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>MineConfiguration</name>

View File

@ -5,7 +5,7 @@
<parent>
<artifactId>mineconfiguration-parent</artifactId>
<groupId>cc.carm.lib</groupId>
<version>1.1.2-SNAPSHOT</version>
<version>1.1.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<properties>