mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-11-23 21:56:45 +01:00
refactor: improved List command for server plots
This commit is contained in:
parent
c5d1655868
commit
fed700f0d8
@ -462,54 +462,62 @@ public class ListCmd extends SubCommand {
|
|||||||
String server = TranslatableCaption.of("info.plot_list_player_server").getComponent(player);
|
String server = TranslatableCaption.of("info.plot_list_player_server").getComponent(player);
|
||||||
String everyone = TranslatableCaption.of("info.plot_list_player_everyone").getComponent(player);
|
String everyone = TranslatableCaption.of("info.plot_list_player_everyone").getComponent(player);
|
||||||
TextComponent.Builder builder = Component.text();
|
TextComponent.Builder builder = Component.text();
|
||||||
try {
|
if (plot.getFlag(ServerPlotFlag.class)) {
|
||||||
final List<UUIDMapping> names = PlotSquared.get().getImpromptuUUIDPipeline().getNames(plot.getOwners())
|
Template serverTemplate = Template.of(
|
||||||
.get(Settings.UUID.BLOCKING_TIMEOUT, TimeUnit.MILLISECONDS);
|
"player",
|
||||||
for (final UUIDMapping uuidMapping : names) {
|
TranslatableCaption.of("info.server").getComponent(player)
|
||||||
PlotPlayer<?> pp = PlotSquared.platform().playerManager().getPlayerIfExists(uuidMapping.getUuid());
|
|
||||||
Template prefixTemplate = Template.of("prefix", prefix);
|
|
||||||
Template playerTemplate = Template.of("player", uuidMapping.getUsername());
|
|
||||||
if (pp != null) {
|
|
||||||
builder.append(MINI_MESSAGE.parse(online, prefixTemplate, playerTemplate));
|
|
||||||
} else if (plot.getFlag(ServerPlotFlag.class)) {
|
|
||||||
Template serverTemplate = Template.of(
|
|
||||||
"player",
|
|
||||||
TranslatableCaption.of("info.server").getComponent(player)
|
|
||||||
);
|
|
||||||
builder.append(MINI_MESSAGE.parse(server, serverTemplate));
|
|
||||||
} else if (uuidMapping.getUsername().equalsIgnoreCase("unknown")) {
|
|
||||||
Template unknownTemplate = Template.of(
|
|
||||||
"player",
|
|
||||||
TranslatableCaption.of("info.unknown").getComponent(player)
|
|
||||||
);
|
|
||||||
builder.append(MINI_MESSAGE.parse(unknown, unknownTemplate));
|
|
||||||
} else if (uuidMapping.getUuid().equals(DBFunc.EVERYONE)) {
|
|
||||||
Template everyoneTemplate = Template.of(
|
|
||||||
"player",
|
|
||||||
TranslatableCaption.of("info.everyone").getComponent(player)
|
|
||||||
);
|
|
||||||
builder.append(MINI_MESSAGE.parse(everyone, everyoneTemplate));
|
|
||||||
} else {
|
|
||||||
builder.append(MINI_MESSAGE.parse(offline, prefixTemplate, playerTemplate));
|
|
||||||
}
|
|
||||||
prefix = ", ";
|
|
||||||
}
|
|
||||||
} catch (InterruptedException | ExecutionException e) {
|
|
||||||
final StringBuilder playerBuilder = new StringBuilder();
|
|
||||||
final Iterator<UUID> uuidIterator = plot.getOwners().iterator();
|
|
||||||
while (uuidIterator.hasNext()) {
|
|
||||||
final UUID uuid = uuidIterator.next();
|
|
||||||
playerBuilder.append(uuid);
|
|
||||||
if (uuidIterator.hasNext()) {
|
|
||||||
playerBuilder.append(", ");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
player.sendMessage(
|
|
||||||
TranslatableCaption.of("errors.invalid_player"),
|
|
||||||
Templates.of("value", playerBuilder.toString())
|
|
||||||
);
|
);
|
||||||
} catch (TimeoutException e) {
|
builder.append(MINI_MESSAGE.parse(server, serverTemplate));
|
||||||
player.sendMessage(TranslatableCaption.of("players.fetching_players_timeout"));
|
} else {
|
||||||
|
try {
|
||||||
|
final List<UUIDMapping> names = PlotSquared.get().getImpromptuUUIDPipeline().getNames(plot.getOwners())
|
||||||
|
.get(Settings.UUID.BLOCKING_TIMEOUT, TimeUnit.MILLISECONDS);
|
||||||
|
for (final UUIDMapping uuidMapping : names) {
|
||||||
|
PlotPlayer<?> pp = PlotSquared.platform().playerManager().getPlayerIfExists(uuidMapping.getUuid());
|
||||||
|
Template prefixTemplate = Template.of("prefix", prefix);
|
||||||
|
Template playerTemplate = Template.of("player", uuidMapping.getUsername());
|
||||||
|
if (pp != null) {
|
||||||
|
builder.append(MINI_MESSAGE.parse(online, prefixTemplate, playerTemplate));
|
||||||
|
} else if (plot.getFlag(ServerPlotFlag.class)) {
|
||||||
|
Template serverTemplate = Template.of(
|
||||||
|
"player",
|
||||||
|
TranslatableCaption.of("info.server").getComponent(player)
|
||||||
|
);
|
||||||
|
builder.append(MINI_MESSAGE.parse(server, serverTemplate));
|
||||||
|
} else if (uuidMapping.getUsername().equalsIgnoreCase("unknown")) {
|
||||||
|
Template unknownTemplate = Template.of(
|
||||||
|
"player",
|
||||||
|
TranslatableCaption.of("info.unknown").getComponent(player)
|
||||||
|
);
|
||||||
|
builder.append(MINI_MESSAGE.parse(unknown, unknownTemplate));
|
||||||
|
} else if (uuidMapping.getUuid().equals(DBFunc.EVERYONE)) {
|
||||||
|
Template everyoneTemplate = Template.of(
|
||||||
|
"player",
|
||||||
|
TranslatableCaption.of("info.everyone").getComponent(player)
|
||||||
|
);
|
||||||
|
builder.append(MINI_MESSAGE.parse(everyone, everyoneTemplate));
|
||||||
|
} else {
|
||||||
|
builder.append(MINI_MESSAGE.parse(offline, prefixTemplate, playerTemplate));
|
||||||
|
}
|
||||||
|
prefix = ", ";
|
||||||
|
}
|
||||||
|
} catch (InterruptedException | ExecutionException e) {
|
||||||
|
final StringBuilder playerBuilder = new StringBuilder();
|
||||||
|
final Iterator<UUID> uuidIterator = plot.getOwners().iterator();
|
||||||
|
while (uuidIterator.hasNext()) {
|
||||||
|
final UUID uuid = uuidIterator.next();
|
||||||
|
playerBuilder.append(uuid);
|
||||||
|
if (uuidIterator.hasNext()) {
|
||||||
|
playerBuilder.append(", ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
player.sendMessage(
|
||||||
|
TranslatableCaption.of("errors.invalid_player"),
|
||||||
|
Templates.of("value", playerBuilder.toString())
|
||||||
|
);
|
||||||
|
} catch (TimeoutException e) {
|
||||||
|
player.sendMessage(TranslatableCaption.of("players.fetching_players_timeout"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Template players = Template.of("players", builder.asComponent());
|
Template players = Template.of("players", builder.asComponent());
|
||||||
caption.set(TranslatableCaption.of("info.plot_list_item"));
|
caption.set(TranslatableCaption.of("info.plot_list_item"));
|
||||||
|
Loading…
Reference in New Issue
Block a user