updated color handling

This commit is contained in:
Funnycube
2026-01-26 19:43:38 +11:00
parent fb57b70546
commit 5f4839390c
10 changed files with 220 additions and 141 deletions

1
.gitignore vendored
View File

@@ -1,5 +1,6 @@
.idea/ .idea/
.gradle/ .gradle/
.vscode/
server/ server/
build/ build/
out/ out/

View File

@@ -76,7 +76,7 @@ public final class CommandECloud extends PlaceholderCommand {
.insert(Message.raw("PlaceholderAPI ").color(Color.CYAN).bold(true)) .insert(Message.raw("PlaceholderAPI ").color(Color.CYAN).bold(true))
.insert(Message.raw("- ").color(Color.DARK_GRAY)) .insert(Message.raw("- ").color(Color.DARK_GRAY))
.insert(Message.raw("eCloud Help Menu ").color(Color.GRAY)) .insert(Message.raw("eCloud Help Menu ").color(Color.GRAY))
.insert(Message.raw("-\n\n").color(Color.DARK_GRAY)); .insert(Message.raw("-\n").color(Color.DARK_GRAY));
final List<String[]> commands = List.of( final List<String[]> commands = List.of(
new String[]{"ecloud status", "View status of the eCloud"}, new String[]{"ecloud status", "View status of the eCloud"},
@@ -90,7 +90,7 @@ public final class CommandECloud extends PlaceholderCommand {
); );
for (String[] command : commands) { for (String[] command : commands) {
message = message.insert(Message.raw("/papi").color(Color.CYAN)) message = message.insert(Message.raw("\n/papi ").color(Color.CYAN))
.insert(Message.raw(command[0]).color(Color.WHITE)) .insert(Message.raw(command[0]).color(Color.WHITE))
.insert(Message.raw("\n " + command[1]).color(Color.GRAY)); .insert(Message.raw("\n " + command[1]).color(Color.GRAY));
} }

View File

@@ -57,36 +57,31 @@ public final class CommandECloudExpansionInfo extends PlaceholderCommand {
return; return;
} }
final StringBuilder builder = new StringBuilder(); Message message = Message.raw("Expansion: ").color(Color.CYAN)
.insert(Message.raw(expansion.getName()).color(expansion.shouldUpdate() ? Color.YELLOW : Color.GREEN))
builder.append("&bExpansion: &f") .insert(Message.raw("\nAuthor: ").color(Color.CYAN))
.append(expansion.shouldUpdate() ? "&e" : "&a") .insert(Message.raw(expansion.getAuthor()).color(Color.WHITE))
.append(expansion.getName()) .insert(Message.raw("\n"));
.append('\n')
.append("&bAuthor: &f")
.append(expansion.getAuthor())
.append('\n');
if (params.size() < 2) { if (params.size() < 2) {
builder.append("&bLatest Version: &f") message = message
.append(expansion.getLatestVersion()) .insert(Message.raw("Latest Version: ").color(Color.CYAN))
.append('\n') .insert(Message.raw(expansion.getLatestVersion()).color(Color.WHITE))
.append("&bReleased: &f") .insert(Message.raw("\nReleased: ").color(Color.CYAN))
.append(expansion.getTimeSinceLastUpdate()) .insert(Message.raw(expansion.getTimeSinceLastUpdate() + " ago").color(Color.WHITE))
.append(" ago") .insert(Message.raw("\nVerified: ").color(Color.CYAN))
.append('\n') .insert(Message.raw(expansion.getVersion().isVerified() ? "YES" : "NO")
.append("&bVerified: ") .color(expansion.getVersion().isVerified() ? Color.GREEN : Color.RED)
.append(expansion.getVersion().isVerified() ? "&a&l✔" : "&c&l❌") .bold(true))
.append('\n') .insert(Message.raw("\nRelease Notes: ").color(Color.CYAN))
.append("&bRelease Notes: &f") .insert(Message.raw(expansion.getVersion().getReleaseNotes()).color(Color.WHITE))
.append(expansion.getVersion().getReleaseNotes()) .insert(Message.raw("\n"));
.append('\n');
} else { } else {
final CloudExpansion.Version version = expansion.getVersion(params.get(1)); final CloudExpansion.Version version = expansion.getVersion(params.get(1));
if (version == null) { if (version == null) {
sender.sendMessage(Message.raw("Could not find specified version: ").color(Color.RED) sender.sendMessage(Message.raw("Could not find specified version: ").color(Color.RED)
.insert(Message.raw(params.get(1)).color(Color.WHITE)) .insert(Message.raw(params.get(1)).color(Color.WHITE))
.insert(Message.raw("\nVersions: ").color(Color.GREEN)) .insert(Message.raw("\nVersions: ").color(Color.GREEN))
.insert(Message.raw(expansion.getAvailableVersions().toString()).color(Color.WHITE))); .insert(Message.raw(expansion.getAvailableVersions().toString()).color(Color.WHITE)));
// Msg.msg(sender, // Msg.msg(sender,
// "&cCould not find specified version: &f" + params.get(1), // "&cCould not find specified version: &f" + params.get(1),
@@ -94,21 +89,21 @@ public final class CommandECloudExpansionInfo extends PlaceholderCommand {
return; return;
} }
builder.append("&bVersion: &f") message = message
.append(version.getVersion()) .insert(Message.raw("Version: ").color(Color.CYAN))
.append('\n') .insert(Message.raw(version.getVersion()).color(Color.WHITE))
.append("&bVerified: ") .insert(Message.raw("\nVerified: ").color(Color.CYAN))
.append(version.isVerified() ? "&a&l✔" : "&c&l❌") .insert(Message.raw(version.isVerified() ? "YES" : "NO")
.append('\n') .color(version.isVerified() ? Color.GREEN : Color.RED)
.append("&bRelease Notes: &f") .bold(true))
.append(version.getReleaseNotes()) .insert(Message.raw("\nRelease Notes: ").color(Color.CYAN))
.append('\n') .insert(Message.raw(version.getReleaseNotes()).color(Color.WHITE))
.append("&bDownload URL: &f") .insert(Message.raw("\nDownload URL: ").color(Color.CYAN))
.append(version.getUrl()) .insert(Message.raw(version.getUrl()).color(Color.WHITE))
.append('\n'); .insert(Message.raw("\n"));
} }
sender.sendMessage(Message.raw(builder.toString())); // todo: convert colors sender.sendMessage(message);
} }
// @Override // @Override

View File

@@ -21,15 +21,10 @@
package at.helpch.placeholderapi.commands.impl.cloud; package at.helpch.placeholderapi.commands.impl.cloud;
import at.helpch.placeholderapi.PlaceholderAPIPlugin; import at.helpch.placeholderapi.PlaceholderAPIPlugin;
import at.helpch.placeholderapi.util.Format;
import java.awt.*; import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.List; import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors;
import at.helpch.placeholderapi.commands.PlaceholderCommand; import at.helpch.placeholderapi.commands.PlaceholderCommand;
import at.helpch.placeholderapi.expansion.PlaceholderExpansion; import at.helpch.placeholderapi.expansion.PlaceholderExpansion;
@@ -44,24 +39,14 @@ public final class CommandECloudExpansionList extends PlaceholderCommand {
private static final int PAGE_SIZE = 10; private static final int PAGE_SIZE = 10;
@NotNull @NotNull
private static final Function<CloudExpansion, Object> EXPANSION_NAME = private static final Function<CloudExpansion, String> EXPANSION_LATEST_VERSION =
expansion -> (expansion.shouldUpdate() ? "&6" : expansion.hasExpansion() ? "&a" : "&7") CloudExpansion::getLatestVersion;
+ expansion.getName(); @NotNull
@NotNull private static final Function<CloudExpansion, String> EXPANSION_CURRENT_VERSION =
private static final Function<CloudExpansion, Object> EXPANSION_AUTHOR = expansion -> PlaceholderAPIPlugin.instance().localExpansionManager()
expansion -> "&f" + expansion.getAuthor(); .findExpansionByName(expansion.getName()).map(PlaceholderExpansion::getVersion)
@NotNull .orElse("Unknown");
private static final Function<CloudExpansion, Object> EXPANSION_VERIFIED =
expansion -> expansion.getVersion().isVerified() ? "&aY" : "&cN";
@NotNull
private static final Function<CloudExpansion, Object> EXPANSION_LATEST_VERSION =
expansion -> "&f" + expansion.getLatestVersion();
@NotNull
private static final Function<CloudExpansion, Object> EXPANSION_CURRENT_VERSION =
expansion -> "&f" + PlaceholderAPIPlugin.instance().localExpansionManager()
.findExpansionByName(expansion.getName()).map(PlaceholderExpansion::getVersion)
.orElse("Unknown");
@Unmodifiable @Unmodifiable
@@ -98,35 +83,33 @@ public final class CommandECloudExpansionList extends PlaceholderCommand {
return expansions.subList(head, tail); return expansions.subList(head, tail);
} }
public static void addExpansionTitle(@NotNull final StringBuilder builder, public static Message buildExpansionTitle(@NotNull final String target, final int page) {
@NotNull final String target, final int page) { Message title;
switch (target.toLowerCase(Locale.ROOT)) { switch (target.toLowerCase(Locale.ROOT)) {
case "all": case "all":
builder.append("&bAll Expansions"); title = Message.raw("All Expansions").color(Color.CYAN);
break; break;
case "installed": case "installed":
builder.append("&bInstalled Expansions"); title = Message.raw("Installed Expansions").color(Color.CYAN);
break; break;
default: default:
builder.append("&bExpansions by &f") title = Message.raw("Expansions by ").color(Color.CYAN)
.append(target); .insert(Message.raw(target).color(Color.WHITE));
break; break;
} }
if (page == -1) { if (page == -1) {
builder.append('\n'); return title.insert(Message.raw("\n"));
return;
} }
builder.append(" &bPage&7: &a") return title
.append(page) .insert(Message.raw(" Page").color(Color.CYAN))
.append("&r"); .insert(Message.raw(": ").color(Color.GRAY))
.insert(Message.raw(String.valueOf(page)).color(Color.GREEN));
} }
private static Message getMessage(@NotNull final List<CloudExpansion> expansions, private static Message getMessage(@NotNull final List<CloudExpansion> expansions,
final int page, final int limit, @NotNull final String target) { final int page, final int limit, @NotNull final String target) {
final SimpleDateFormat format = new SimpleDateFormat(PlaceholderAPIPlugin.instance().configManager().config().dateFormat());
Message message = Message.empty(); Message message = Message.empty();
for (int index = 0; index < expansions.size(); index++) { for (int index = 0; index < expansions.size(); index++) {
@@ -197,41 +180,95 @@ public final class CommandECloudExpansionList extends PlaceholderCommand {
return message; return message;
} }
private static void addExpansionTable(@NotNull final List<CloudExpansion> expansions, private static Message buildExpansionTable(@NotNull final List<CloudExpansion> expansions,
@NotNull final StringBuilder message, final int startIndex, final int startIndex,
@NotNull final String versionTitle, @NotNull final String versionTitle,
@NotNull final Function<CloudExpansion, Object> versionFunction) { @NotNull final Function<CloudExpansion, String> versionFunction) {
final Map<String, Function<CloudExpansion, Object>> functions = new LinkedHashMap<>();
final AtomicInteger counter = new AtomicInteger(startIndex);
functions.put("&f", expansion -> "&8" + counter.getAndIncrement() + ".");
functions.put("&9Name", EXPANSION_NAME);
functions.put("&9Author", EXPANSION_AUTHOR);
functions.put("&9Verified", EXPANSION_VERIFIED);
functions.put(versionTitle, versionFunction);
final List<List<String>> rows = new ArrayList<>(); final List<List<String>> rows = new ArrayList<>();
rows.add(List.of("#", "Name", "Author", "Verified", versionTitle));
rows.add(0, new ArrayList<>(functions.keySet())); int counter = startIndex;
for (final CloudExpansion expansion : expansions) { for (final CloudExpansion expansion : expansions) {
rows.add(functions.values().stream().map(function -> function.apply(expansion)) rows.add(List.of(
.map(Objects::toString).collect(Collectors.toList())); counter++ + ".",
expansion.getName(),
expansion.getAuthor(),
expansion.getVersion().isVerified() ? "Y" : "N",
versionFunction.apply(expansion)
));
} }
final List<String> table = Format.tablify(Format.Align.LEFT, rows) final int columnCount = rows.getFirst().size();
.orElse(Collections.emptyList()); final int[] widths = new int[columnCount];
if (table.isEmpty()) { for (final List<String> row : rows) {
return; for (int i = 0; i < columnCount; i++) {
widths[i] = Math.max(widths[i], row.get(i).length());
}
} }
final List<Color> headerColors = List.of(
Color.WHITE,
new Color(85, 85, 255),
new Color(85, 85, 255),
new Color(85, 85, 255),
new Color(85, 85, 255)
);
Message message = Message.empty();
message = message.insert(buildTableRow(rows.getFirst(), headerColors, widths));
message = message.insert(Message.raw("\n"));
// table.add(1, "&8" + Strings.repeat("-", table.get(0).length() - (rows.get(0).size() * 2))); final int separatorLength = Arrays.stream(widths).sum() + (columnCount * 2);
table.add(1, "&8" + "-".repeat(table.get(0).length() - (rows.getFirst().size() * 2))); message = message.insert(Message.raw("-".repeat(separatorLength)).color(Color.DARK_GRAY));
message.append(String.join("\n", table)); if (rows.size() > 1) {
message = message.insert(Message.raw("\n"));
}
for (int rowIndex = 1; rowIndex < rows.size(); rowIndex++) {
final List<String> row = rows.get(rowIndex);
final CloudExpansion expansion = expansions.get(rowIndex - 1);
final Color nameColor = expansion.shouldUpdate()
? Color.YELLOW
: (expansion.hasExpansion() ? Color.GREEN : Color.GRAY);
final List<Color> rowColors = List.of(
Color.DARK_GRAY,
nameColor,
Color.WHITE,
expansion.getVersion().isVerified() ? Color.GREEN : Color.RED,
Color.WHITE
);
message = message.insert(buildTableRow(row, rowColors, widths));
if (rowIndex < rows.size() - 1) {
message = message.insert(Message.raw("\n"));
}
}
return message;
}
private static Message buildTableRow(@NotNull final List<String> columns,
@NotNull final List<Color> colors,
@NotNull final int[] widths) {
Message row = Message.empty();
for (int i = 0; i < columns.size(); i++) {
final String padded = padRight(columns.get(i), widths[i] + 2);
row = row.insert(Message.raw(padded).color(colors.get(i)));
}
return row;
}
@NotNull
private static String padRight(@NotNull final String text, final int length) {
if (text.length() >= length) {
return text;
}
return text + " ".repeat(length - text.length());
} }
@Override @Override
@@ -259,16 +296,14 @@ public final class CommandECloudExpansionList extends PlaceholderCommand {
.sort(plugin.configManager().config().cloudSorting()); .sort(plugin.configManager().config().cloudSorting());
if (!(sender instanceof Player) && params.size() < 2) { if (!(sender instanceof Player) && params.size() < 2) {
final StringBuilder builder = new StringBuilder(); final Message message = buildExpansionTitle(params.get(0), -1)
.insert(buildExpansionTable(
expansions,
1,
installed ? "Version" : "Latest Version",
installed ? EXPANSION_CURRENT_VERSION : EXPANSION_LATEST_VERSION));
addExpansionTitle(builder, params.get(0), -1); sender.sendMessage(message);
addExpansionTable(expansions,
builder,
1,
installed ? "&9Version" : "&9Latest Version",
installed ? EXPANSION_CURRENT_VERSION : EXPANSION_LATEST_VERSION);
sender.sendMessage(Message.raw(builder.toString()));
// Msg.msg(sender, builder.toString()); // Msg.msg(sender, builder.toString());
return; return;
} }
@@ -306,32 +341,31 @@ public final class CommandECloudExpansionList extends PlaceholderCommand {
page = parsed; page = parsed;
} }
final StringBuilder builder = new StringBuilder();
final List<CloudExpansion> values = getPage(expansions, page - 1); final List<CloudExpansion> values = getPage(expansions, page - 1);
addExpansionTitle(builder, params.get(0), page); final Message title = buildExpansionTitle(params.get(0), page);
if (!(sender instanceof Player)) { if (!(sender instanceof Player)) {
addExpansionTable(values, final Message message = title.insert(buildExpansionTable(
builder, values,
((page - 1) * PAGE_SIZE) + 1, ((page - 1) * PAGE_SIZE) + 1,
installed ? "&9Version" : "&9Latest Version", installed ? "Version" : "Latest Version",
installed ? EXPANSION_CURRENT_VERSION : EXPANSION_LATEST_VERSION); installed ? EXPANSION_CURRENT_VERSION : EXPANSION_LATEST_VERSION));
sender.sendMessage(Message.raw(builder.toString())); sender.sendMessage(message);
// Msg.msg(sender, builder.toString()); // Msg.msg(sender, builder.toString());
return; return;
} }
sender.sendMessage(Message.raw(builder.toString())); sender.sendMessage(title);
// Msg.msg(sender, builder.toString()); // Msg.msg(sender, builder.toString());
final int limit = (int) Math.ceil((double) expansions.size() / PAGE_SIZE); final int limit = (int) Math.ceil((double) expansions.size() / PAGE_SIZE);
// final Component message = getMessage(values, page, limit, params.get(0)); final Message message = getMessage(values, page, limit, params.get(0));
// plugin.getAdventure().player((Player) sender).sendMessage(message); sender.sendMessage(message);
} }
// @Override // @Override

View File

@@ -72,7 +72,29 @@ public final class CommandECloudExpansionPlaceholders extends PlaceholderCommand
// .partition(placeholders.stream().sorted().collect(Collectors.toList()), 10); // .partition(placeholders.stream().sorted().collect(Collectors.toList()), 10);
final List<List<String>> partitions = new ArrayList<>(IntStream.range(0, placeholders.size()).boxed().collect(Collectors.groupingBy(i -> i/10, Collectors.mapping(placeholders::get, Collectors.toList()))).values()); final List<List<String>> partitions = new ArrayList<>(IntStream.range(0, placeholders.size()).boxed().collect(Collectors.groupingBy(i -> i/10, Collectors.mapping(placeholders::get, Collectors.toList()))).values());
sender.sendMessage(Message.raw("&6 " + placeholders.size() + " &7 placeholders: &a\n" + partitions.stream().map(p -> String.join(", ", p)).collect(Collectors.joining("\n")))); Message message = Message.raw(" ").color(Color.ORANGE)
.insert(Message.raw(String.valueOf(placeholders.size())).color(Color.ORANGE))
.insert(Message.raw(" placeholders: ").color(Color.GRAY));
for (int i = 0; i < partitions.size(); i++) {
if (i == 0) {
message = message.insert(Message.raw("\n"));
}
final List<String> partition = partitions.get(i);
for (int j = 0; j < partition.size(); j++) {
message = message.insert(Message.raw(partition.get(j)).color(Color.GREEN));
if (j < partition.size() - 1) {
message = message.insert(Message.raw(", ").color(Color.GRAY));
}
}
if (i < partitions.size() - 1) {
message = message.insert(Message.raw("\n"));
}
}
sender.sendMessage(message);
// Msg.msg(sender, // Msg.msg(sender,
// "&6" + placeholders.size() + "&7 placeholders: &a", // "&6" + placeholders.size() + "&7 placeholders: &a",
// partitions.stream().map(partition -> String.join(", ", partition)) // partitions.stream().map(partition -> String.join(", ", partition))

View File

@@ -20,6 +20,7 @@
package at.helpch.placeholderapi.commands.impl.cloud; package at.helpch.placeholderapi.commands.impl.cloud;
import java.awt.*;
import java.util.List; import java.util.List;
import at.helpch.placeholderapi.PlaceholderAPIPlugin; import at.helpch.placeholderapi.PlaceholderAPIPlugin;
@@ -46,20 +47,24 @@ public final class CommandECloudStatus extends PlaceholderCommand {
final int authorCount = manager.getCloudExpansionAuthorCount(); final int authorCount = manager.getCloudExpansionAuthorCount();
final int expansionCount = manager.getCloudExpansions().size(); final int expansionCount = manager.getCloudExpansions().size();
final StringBuilder builder = new StringBuilder(); Message message = Message.raw("There are ").color(Color.CYAN)
.insert(Message.raw(String.valueOf(expansionCount)).color(Color.GREEN))
builder.append("&bThere are &a").append(expansionCount) .insert(Message.raw(" expansions available on the eCloud.\n").color(Color.CYAN))
.append("&b expansions available on the eCloud.").append('\n'); .insert(Message.raw("A total of ").color(Color.GRAY))
builder.append("&7A total of &f").append(authorCount) .insert(Message.raw(String.valueOf(authorCount)).color(Color.WHITE))
.append("&7 authors have contributed to the eCloud.").append('\n'); .insert(Message.raw(" authors have contributed Hytale expansions to the eCloud.\n").color(Color.GRAY));
if (updateCount > 0) { if (updateCount > 0) {
builder.append("&eYou have &f").append(updateCount) message = message
.append(updateCount > 1 ? "&e expansions" : "&e expansion").append(" installed that ") .insert(Message.raw("You have ").color(Color.YELLOW))
.append(updateCount > 1 ? "have an" : "has an").append(" update available."); .insert(Message.raw(String.valueOf(updateCount)).color(Color.WHITE))
.insert(Message.raw(updateCount > 1 ? " expansions" : " expansion").color(Color.YELLOW))
.insert(Message.raw(" installed that ").color(Color.YELLOW))
.insert(Message.raw(updateCount > 1 ? "have an" : "has an").color(Color.YELLOW))
.insert(Message.raw(" update available.").color(Color.YELLOW));
} }
sender.sendMessage(Message.raw(builder.toString())); sender.sendMessage(message);
// Msg.msg(sender, builder.toString()); // Msg.msg(sender, builder.toString());
} }

View File

@@ -26,7 +26,6 @@ import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.Optional; import java.util.Optional;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.stream.Collectors;
import at.helpch.placeholderapi.PlaceholderAPIPlugin; import at.helpch.placeholderapi.PlaceholderAPIPlugin;
import at.helpch.placeholderapi.commands.PlaceholderCommand; import at.helpch.placeholderapi.commands.PlaceholderCommand;
@@ -90,7 +89,17 @@ public final class CommandECloudUpdate extends PlaceholderCommand {
return; return;
} }
sender.sendMessage(Message.raw("Updating expansions: " + expansions.stream().map(CloudExpansion::getName).collect(Collectors.joining("&7, &6", "&8[&6", "&8]&r"))).color(Color.GREEN)); Message expansionList = Message.raw("[").color(Color.DARK_GRAY);
for (int i = 0; i < expansions.size(); i++) {
if (i > 0) {
expansionList = expansionList.insert(Message.raw(", ").color(Color.GRAY));
}
expansionList = expansionList.insert(Message.raw(expansions.get(i).getName()).color(Color.ORANGE));
}
expansionList = expansionList.insert(Message.raw("]").color(Color.DARK_GRAY));
sender.sendMessage(Message.raw("Updating expansions: ").color(Color.GREEN)
.insert(expansionList));
// Msg.msg(sender, // Msg.msg(sender,
// "&aUpdating expansions: " + expansions.stream().map(CloudExpansion::getName) // "&aUpdating expansions: " + expansions.stream().map(CloudExpansion::getName)
// .collect(Collectors.joining("&7, &6", "&8[&6", "&8]&r"))); // .collect(Collectors.joining("&7, &6", "&8[&6", "&8]&r")));
@@ -107,15 +116,28 @@ public final class CommandECloudUpdate extends PlaceholderCommand {
// Msg.msg(sender, // Msg.msg(sender,
// "&aSuccessfully downloaded updates, registering new versions."); // "&aSuccessfully downloaded updates, registering new versions.");
final String message = classes.stream() final List<PlaceholderExpansion> registered = classes.stream()
.filter(Objects::nonNull) .filter(Objects::nonNull)
.map(plugin.localExpansionManager()::register) .map(plugin.localExpansionManager()::register)
.filter(Optional::isPresent) .filter(Optional::isPresent)
.map(Optional::get) .map(Optional::get)
.map(expansion -> " &a" + expansion.getName() + " &f" + expansion.getVersion()) .toList();
.collect(Collectors.joining("\n"));
sender.sendMessage(Message.raw("&7Registered expansions: \n" + message)); Message registeredMessage = Message.raw("Registered expansions:\n").color(Color.GRAY);
for (int i = 0; i < registered.size(); i++) {
final PlaceholderExpansion expansion = registered.get(i);
registeredMessage = registeredMessage
.insert(Message.raw(" ").color(Color.GRAY))
.insert(Message.raw(expansion.getName()).color(Color.GREEN))
.insert(Message.raw(" ").color(Color.GRAY))
.insert(Message.raw(expansion.getVersion()).color(Color.WHITE));
if (i < registered.size() - 1) {
registeredMessage = registeredMessage.insert(Message.raw("\n"));
}
}
sender.sendMessage(registeredMessage);
// Msg.msg(sender, // Msg.msg(sender,
// "&7Registered expansions:", message); // "&7Registered expansions:", message);

View File

@@ -48,7 +48,7 @@ public final class CommandHelp extends PlaceholderCommand {
final Message message = Message.raw("PlaceholderAPI ").color(Color.CYAN).bold(true) final Message message = Message.raw("PlaceholderAPI ").color(Color.CYAN).bold(true)
.insert(Message.raw("- ").color(Color.DARK_GRAY).bold(false)) .insert(Message.raw("- ").color(Color.DARK_GRAY).bold(false))
.insert(Message.raw("Help Menu ").color(Color.GRAY).bold(false)) .insert(Message.raw("Help Menu ").color(Color.WHITE).bold(false))
.insert(Message.raw("- ").color(Color.DARK_GRAY).bold(false)) .insert(Message.raw("- ").color(Color.DARK_GRAY).bold(false))
.insert(Message.raw("(").color(Color.GRAY).bold(false)) .insert(Message.raw("(").color(Color.GRAY).bold(false))
.insert(Message.raw(description.getVersion().toString()).color(Color.WHITE).bold(false)) .insert(Message.raw(description.getVersion().toString()).color(Color.WHITE).bold(false))
@@ -102,10 +102,10 @@ public final class CommandHelp extends PlaceholderCommand {
.insert(Message.raw(command).color(Color.WHITE)); .insert(Message.raw(command).color(Color.WHITE));
if (arguments != null) { if (arguments != null) {
message = message.insert(" " + arguments).color(Color.BLUE); message = message.insert(" " + arguments).color(Color.CYAN);
} }
return message return message
.insert(Message.raw("\n " + description).color(Color.GRAY).italic(true)); .insert(Message.raw("\n " + description).color(Color.gray).bold(false));
} }
} }

View File

@@ -58,10 +58,10 @@ public final class CommandInfo extends PlaceholderCommand {
} }
Message message = Message.empty() Message message = Message.empty()
.insert(Message.raw("Placeholder expansion info for: &r").color(Color.GRAY)) .insert(Message.raw("Placeholder expansion info for:").color(Color.GRAY))
.insert(Message.raw(expansion.getName() + "\n").color(Color.WHITE)) .insert(Message.raw(expansion.getName() + "\n").color(Color.WHITE))
.insert(Message.raw("Status: ").color(Color.GRAY)) .insert(Message.raw("Status: ").color(Color.GRAY))
.insert(Message.raw(expansion.isRegistered() ? "Registered" : "Not Registered").color(expansion.isRegistered() ? Color.GRAY : Color.RED)) .insert(Message.raw(expansion.isRegistered() ? "Registered" : "Not Registered").color(expansion.isRegistered() ? Color.GREEN : Color.RED))
.insert("\n"); .insert("\n");
final String author = expansion.getAuthor(); final String author = expansion.getAuthor();

View File

@@ -3,7 +3,7 @@
"Name": "PlaceholderAPI", "Name": "PlaceholderAPI",
"Version": "1.0.0", "Version": "1.0.0",
"Description": "An awesome placeholder provider", "Description": "An awesome placeholder provider",
"Authors": [{"Name": "Your Mama"}], "Authors": [{"Name": "HelpChat"}],
"Website": "https://placeholderapi.com", "Website": "https://placeholderapi.com",
"ServerVersion": "*", "ServerVersion": "*",
"Dependencies": {}, "Dependencies": {},