diff --git a/src/main/java/net/knarcraft/stargate/command/CommandConfig.java b/src/main/java/net/knarcraft/stargate/command/CommandConfig.java index 2bac15c..7df2447 100644 --- a/src/main/java/net/knarcraft/stargate/command/CommandConfig.java +++ b/src/main/java/net/knarcraft/stargate/command/CommandConfig.java @@ -3,10 +3,12 @@ package net.knarcraft.stargate.command; import net.knarcraft.stargate.Stargate; import net.knarcraft.stargate.config.ConfigOption; import net.knarcraft.stargate.config.ConfigTag; +import net.knarcraft.stargate.config.OptionDataType; import net.knarcraft.stargate.portal.Portal; import net.knarcraft.stargate.portal.PortalRegistry; import net.knarcraft.stargate.portal.PortalSignDrawer; import net.md_5.bungee.api.ChatColor; +import org.apache.commons.lang.StringUtils; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; @@ -106,6 +108,11 @@ public class CommandConfig implements CommandExecutor { Stargate.getStargateConfig().getConfigOptionsReference().put(selectedOption, value); configuration.set(selectedOption.getConfigNode(), value); } + case STRING_LIST -> { + if (selectedOption == ConfigOption.PER_SIGN_COLORS) { + commandSender.sendMessage(ChatColor.RED + value); + } + } default -> { Stargate.getStargateConfig().getConfigOptionsReference().put(selectedOption, value); configuration.set(selectedOption.getConfigNode(), value); @@ -242,8 +249,13 @@ public class CommandConfig implements CommandExecutor { * @return

A string describing the config option

*/ private String getOptionDescription(ConfigOption option) { + Object defaultValue = option.getDefaultValue(); + String stringValue = String.valueOf(defaultValue); + if (option.getDataType() == OptionDataType.STRING_LIST) { + stringValue = "[" + StringUtils.join((String[]) defaultValue, ",") + "]"; + } return ChatColor.GOLD + option.getName() + ChatColor.WHITE + " - " + ChatColor.GREEN + option.getDescription() + - ChatColor.DARK_GRAY + " (Default: " + ChatColor.GRAY + option.getDefaultValue() + ChatColor.DARK_GRAY + ")"; + ChatColor.DARK_GRAY + " (Default: " + ChatColor.GRAY + stringValue + ChatColor.DARK_GRAY + ")"; } } diff --git a/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java b/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java index f0f01c6..a324d39 100644 --- a/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java +++ b/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java @@ -105,6 +105,8 @@ public class ConfigTabCompleter implements TabCompleter { } } + //TODO: What to do with per-sign colors? + return null; }