Add tag messages to messages.yml

This commit is contained in:
Telesphoreo 2022-02-25 01:36:46 -06:00
parent 3b2566039d
commit 5b8854b7fe
4 changed files with 28 additions and 17 deletions

View File

@ -157,9 +157,7 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
send(sender, component);
}
}
catch (PlayerNotFoundException | CommandFailException
| ConsoleOnlyException | ConsoleMustDefinePlayerException
| PlayerNotBannedException ex)
catch (PlayerNotFoundException | CommandFailException | ConsoleOnlyException | ConsoleMustDefinePlayerException | PlayerNotBannedException ex)
{
send(sender, MiniMessage.miniMessage().deserialize(ex.getMessage()));
}
@ -294,7 +292,6 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
return true;
}
/**
* Checks whether a player has enough permissions or is high enough a rank
*
@ -414,17 +411,29 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
}
/**
* Converts a message entry from the "messages.yml" to a component
* Converts a message entry from the "messages.yml" to a Component
*
* @param s The message entry
* @param objects Any objects to replace in order
* @return A kyori component
* @return A Kyori component
*/
protected Component messageComponent(String s, Object... objects)
{
return PlexUtils.messageComponent(s, objects);
}
/**
* Converts a message entry from the "messages.yml" to a String
*
* @param s The message entry
* @param objects Any objects to replace in order
* @return A String
*/
protected String messageString(String s, Object... objects)
{
return PlexUtils.messageString(s, objects);
}
/**
* Converts usage to a component
*
@ -489,10 +498,10 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
}
/**
* Converts a string to a legacy kyori component
* Converts a string to a legacy Kyori component
*
* @param s The string to convert
* @return A kyori component
* @return A Kyori component
*/
protected Component componentFromString(String s)
{

View File

@ -8,7 +8,6 @@ import dev.plex.command.source.RequiredCommandSource;
import dev.plex.player.PlexPlayer;
import dev.plex.rank.enums.Rank;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import org.apache.commons.lang.StringUtils;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
@ -17,7 +16,6 @@ import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
//TODO: Redo Messages and have customizable messages
@CommandPermissions(level = Rank.OP, permission = "plex.tag", source = RequiredCommandSource.ANY)
@CommandParameters(name = "tag", aliases = "prefix", description = "Manages your prefix", usage = "/<command> <set | clear> <prefix | player>")
public class TagCMD extends PlexCommand
@ -48,10 +46,10 @@ public class TagCMD extends PlexCommand
String prefix = StringUtils.join(args, " ", 1, args.length);
if (ChatColor.stripColor(prefix).length() > plugin.config.getInt("chat.max-tag-length", 16))
{
return componentFromString("The maximum length for a tag may only be " + plugin.config.getInt("chat.max-tag-length", 16));
return messageComponent("maximumPrefixLength", plugin.config.getInt("chat.max-tag-length", 16));
}
player.setPrefix(prefix);
return Component.text("Your prefix has been set to ").color(NamedTextColor.AQUA).append(componentFromString(prefix));
return messageComponent("prefixSetTo", prefix);
}
if (args[0].equalsIgnoreCase("clear"))
@ -65,15 +63,14 @@ public class TagCMD extends PlexCommand
PlexPlayer player = DataUtils.getPlayer(playerSender.getUniqueId());
player.setPrefix("");
return Component.text("Your prefix has been cleared.").color(NamedTextColor.AQUA);
return messageComponent("prefixCleared");
}
checkRank(sender, Rank.ADMIN, "plex.tag.clear.others");
Player target = getNonNullPlayer(args[1]);
PlexPlayer plexTarget = DataUtils.getPlayer(target.getUniqueId());
plexTarget.setPrefix("");
return Component.text("You have cleared " + target.getName() + "'s prefix.").color(NamedTextColor.AQUA);
messageComponent("otherPrefixCleared");
}
return usage();
}

View File

@ -19,7 +19,8 @@ banning:
chat:
max-tag-length: 16
name-color: 'f' #Color code for name color
# Color code for name color
name-color: 'f'
# Settings for commands relating to Plex
commands:

View File

@ -102,3 +102,7 @@ toggleCommandSpy: "CommandSpy has been"
enabled: "enabled."
disabled: "disabled."
adminChatFormat: '&8[&9AdminChat&8] &4<v> &7» &6<v>'
maximumPrefixLength: "<red>The maximum length for a tag may only be <v>."
prefixCleared: "<aqua>Your prefix has been cleared."
otherPrefixCleared: "<aqua>You have cleared <v>'s prefix."
prefixSetTo: "<aqua>Your prefix has been set to <v>"