fix: add custom messages to plugin
fix: add custom messages to several options: 1. Join Cooldown Protection 2. No Portal Permission 3. No Portal Cooldown This is all moved to a new configuration file called messages.yml so that config.yml doesn't become convoluted Fixes #144 #224
This commit is contained in:
parent
2c919bff06
commit
fd2c3d6534
|
@ -61,6 +61,10 @@ public class AdvancedPortalsPlugin extends JavaPlugin {
|
||||||
ConfigAccessor destinationConfig = new ConfigAccessor(this, "destinations.yml");
|
ConfigAccessor destinationConfig = new ConfigAccessor(this, "destinations.yml");
|
||||||
destinationConfig.saveDefaultConfig();
|
destinationConfig.saveDefaultConfig();
|
||||||
|
|
||||||
|
|
||||||
|
ConfigAccessor messagesConfig = new ConfigAccessor(this, "messages.yml");
|
||||||
|
messagesConfig.saveDefaultConfig();;
|
||||||
|
|
||||||
this.settings = new Settings(this);
|
this.settings = new Settings(this);
|
||||||
|
|
||||||
// Loads the portal and destination editors
|
// Loads the portal and destination editors
|
||||||
|
|
|
@ -6,12 +6,15 @@ import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
public class PluginMessages {
|
public class PluginMessages {
|
||||||
private static String WARP_MESSAGE;
|
private static String WARP_MESSAGE;
|
||||||
|
private static String COOLDOWN_PROTECTION_MESSAGE;
|
||||||
|
private static String PORTAL_COOLDOWN_MESSAGE;
|
||||||
|
private static String NO_PERMISSION_PORTAL;
|
||||||
public boolean useCustomPrefix = false;
|
public boolean useCustomPrefix = false;
|
||||||
public static String customPrefix = "\u00A7a[\u00A7eAdvancedPortals\u00A7a]";
|
public static String customPrefix = "\u00A7a[\u00A7eAdvancedPortals\u00A7a]";
|
||||||
public static String customPrefixFail = "\u00A7c[\u00A77AdvancedPortals\u00A7c]";
|
public static String customPrefixFail = "\u00A7c[\u00A77AdvancedPortals\u00A7c]";
|
||||||
|
|
||||||
public PluginMessages (AdvancedPortalsPlugin plugin) {
|
public PluginMessages (AdvancedPortalsPlugin plugin) {
|
||||||
ConfigAccessor config = new ConfigAccessor(plugin, "config.yml");
|
ConfigAccessor config = new ConfigAccessor(plugin, "messages.yml");
|
||||||
this.useCustomPrefix = config.getConfig().getBoolean("UseCustomPrefix");
|
this.useCustomPrefix = config.getConfig().getBoolean("UseCustomPrefix");
|
||||||
if (useCustomPrefix) {
|
if (useCustomPrefix) {
|
||||||
PluginMessages.customPrefix = config.getConfig().getString("CustomPrefix").replaceAll("&(?=[0-9a-fk-or])", "\u00A7");
|
PluginMessages.customPrefix = config.getConfig().getString("CustomPrefix").replaceAll("&(?=[0-9a-fk-or])", "\u00A7");
|
||||||
|
@ -19,6 +22,9 @@ public class PluginMessages {
|
||||||
}
|
}
|
||||||
|
|
||||||
WARP_MESSAGE = ChatColor.translateAlternateColorCodes('&', config.getConfig().getString("WarpMessage", "&aYou have warped to &e<warp>&a"));
|
WARP_MESSAGE = ChatColor.translateAlternateColorCodes('&', config.getConfig().getString("WarpMessage", "&aYou have warped to &e<warp>&a"));
|
||||||
|
COOLDOWN_PROTECTION_MESSAGE = ChatColor.translateAlternateColorCodes('&', config.getConfig().getString("CooldownMessage", "&cThere is &e<time>&c join cooldown protection left."));
|
||||||
|
NO_PERMISSION_PORTAL = ChatColor.translateAlternateColorCodes('&', config.getConfig().getString("NoPermissionPortal", "&cYou do not have permission to use this portal!"));
|
||||||
|
PORTAL_COOLDOWN_MESSAGE = ChatColor.translateAlternateColorCodes('&', config.getConfig().getString("PortalCooldownMessage", "&cPlease wait &e<time> &cuntil attempting to enter this portal again"));
|
||||||
}
|
}
|
||||||
|
|
||||||
// This class is so then the common messages in commands or just messages over the commands are the same and can be
|
// This class is so then the common messages in commands or just messages over the commands are the same and can be
|
||||||
|
@ -29,6 +35,20 @@ public class PluginMessages {
|
||||||
return WARP_MESSAGE.replace("<warp>", cleanedWarp);
|
return WARP_MESSAGE.replace("<warp>", cleanedWarp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getCooldownProtectionMessage(int time) {
|
||||||
|
String secondsOrSecond = (time == 1) ? " second" : " seconds";
|
||||||
|
return COOLDOWN_PROTECTION_MESSAGE.replace("<time>", time + secondsOrSecond);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getPortalCooldownMessage(int time) {
|
||||||
|
String secondsOrSecond = (time == 1) ? " second" : " seconds";
|
||||||
|
return COOLDOWN_PROTECTION_MESSAGE.replace("<time>", time + secondsOrSecond);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getNoPermissionPortal() {
|
||||||
|
return NO_PERMISSION_PORTAL;
|
||||||
|
}
|
||||||
|
|
||||||
public static void UnknownCommand(CommandSender sender, String command) {
|
public static void UnknownCommand(CommandSender sender, String command) {
|
||||||
sender.sendMessage(customPrefixFail + " You need to type something after /" + command + "\n");
|
sender.sendMessage(customPrefixFail + " You need to type something after /" + command + "\n");
|
||||||
sender.sendMessage("\u00A7cIf you do not know what you can put or would like some help with the commands please type \u00A7e" + '"' + "\u00A7e/" + command + " help" + '"' + "\u00A7c\n");
|
sender.sendMessage("\u00A7cIf you do not know what you can put or would like some help with the commands please type \u00A7e" + '"' + "\u00A7e/" + command + " help" + '"' + "\u00A7c\n");
|
||||||
|
|
|
@ -459,7 +459,7 @@ public class Portal {
|
||||||
if (!(permission == null || ((!invertPermission && player.hasPermission(permission)) || (invertPermission && !player.hasPermission(permission))) || player.isOp())) {
|
if (!(permission == null || ((!invertPermission && player.hasPermission(permission)) || (invertPermission && !player.hasPermission(permission))) || player.isOp())) {
|
||||||
if(!noMessage) {
|
if(!noMessage) {
|
||||||
player.sendMessage(
|
player.sendMessage(
|
||||||
PluginMessages.customPrefixFail + "\u00A7c You do not have permission to use this portal!");
|
String.join(" ", PluginMessages.customPrefixFail, PluginMessages.getNoPermissionPortal()));
|
||||||
failSound(player, portal);
|
failSound(player, portal);
|
||||||
if(doKnockback)
|
if(doKnockback)
|
||||||
throwPlayerBack(player);
|
throwPlayerBack(player);
|
||||||
|
@ -472,7 +472,7 @@ public class Portal {
|
||||||
int diff = (int) ((System.currentTimeMillis() - joinCD) / 1000);
|
int diff = (int) ((System.currentTimeMillis() - joinCD) / 1000);
|
||||||
if (diff < joinCooldownDelay) {
|
if (diff < joinCooldownDelay) {
|
||||||
int time = (joinCooldownDelay - diff);
|
int time = (joinCooldownDelay - diff);
|
||||||
player.sendMessage(ChatColor.RED + "There is " + ChatColor.YELLOW + time + ChatColor.RED + (time == 1 ? " second" : " seconds") + " join cooldown protection left.");
|
player.sendMessage(PluginMessages.getCooldownProtectionMessage(time));
|
||||||
failSound(player, portal);
|
failSound(player, portal);
|
||||||
if(doKnockback)
|
if(doKnockback)
|
||||||
throwPlayerBack(player);
|
throwPlayerBack(player);
|
||||||
|
@ -493,8 +493,7 @@ public class Portal {
|
||||||
}
|
}
|
||||||
if (diff < portalCooldown) {
|
if (diff < portalCooldown) {
|
||||||
int time = (portalCooldown - diff);
|
int time = (portalCooldown - diff);
|
||||||
player.sendMessage(ChatColor.RED + "Please wait " + ChatColor.YELLOW + time + ChatColor.RED
|
player.sendMessage(PluginMessages.getPortalCooldownMessage(time));
|
||||||
+ (time == 1 ? " second" : " seconds") + " until attempting to enter this portal again.");
|
|
||||||
failSound(player, portal);
|
failSound(player, portal);
|
||||||
if(doKnockback)
|
if(doKnockback)
|
||||||
throwPlayerBack(player);
|
throwPlayerBack(player);
|
||||||
|
|
|
@ -57,17 +57,6 @@ WarpMessageDisplay: 2
|
||||||
# Use plugin name in the warp messages
|
# Use plugin name in the warp messages
|
||||||
UseWarpPrefix: true
|
UseWarpPrefix: true
|
||||||
|
|
||||||
# If this is true a custom prefix can be used, (not fully coded yet!!)
|
|
||||||
|
|
||||||
UseCustomPrefix: false
|
|
||||||
|
|
||||||
CustomPrefix: '&a[&eAdvancedPortals&a]'
|
|
||||||
|
|
||||||
CustomPrefixFail: '&c[&7AdvancedPortals&c]'
|
|
||||||
|
|
||||||
# Message sent to player in chat/action bar on warp
|
|
||||||
WarpMessage: '&aYou have warped to &e<warp>&a.'
|
|
||||||
|
|
||||||
BlockSpectatorMode: false
|
BlockSpectatorMode: false
|
||||||
|
|
||||||
PortalCooldown: 5 # How long after trying to enter a portal until the player can try to enter another. 0 or lower to deactivate.
|
PortalCooldown: 5 # How long after trying to enter a portal until the player can try to enter another. 0 or lower to deactivate.
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
# Advanced Portals Messages
|
||||||
|
|
||||||
|
# If this is true a custom prefix can be used, (not fully coded yet!!)
|
||||||
|
|
||||||
|
UseCustomPrefix: false
|
||||||
|
|
||||||
|
CustomPrefix: '&a[&eAdvancedPortals&a]'
|
||||||
|
|
||||||
|
CustomPrefixFail: '&c[&7AdvancedPortals&c]'
|
||||||
|
|
||||||
|
# Message sent to player in chat/action bar on warp
|
||||||
|
WarpMessage: '&aYou have warped to &e<warp>&a.'
|
||||||
|
|
||||||
|
# Message sent to player that has just joined the server trying to use a portal
|
||||||
|
CooldownProtectionMessage: '&cThere is &e<time>&c join cooldown protection left.'
|
||||||
|
|
||||||
|
# Message sent to player that doesn't have permission to use a portal
|
||||||
|
NoPermissionPortal: '&cYou do not have permission to use this portal!'
|
||||||
|
|
||||||
|
# Message sent to player that has a portal cooldown
|
||||||
|
PortalCooldownMessage: '&cPlease wait &e<time> &cuntil attempting to enter this portal again!'
|
Loading…
Reference in New Issue