From 88cc48d99a527d038ef34cbc19db1775645b9739 Mon Sep 17 00:00:00 2001 From: Marc Baloup Date: Sun, 18 Jan 2015 20:29:44 -0500 Subject: [PATCH] Gestion des couleurs dans /me + meilleure gestion des alias pour certaines commandes --- resources/plugin.yml | 9 +++++++-- .../simple_commands/me/CommandMe.java | 14 ++++++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/resources/plugin.yml b/resources/plugin.yml index 502921b..09c4738 100644 --- a/resources/plugin.yml +++ b/resources/plugin.yml @@ -16,7 +16,7 @@ commands: afk: description: Active ou désactive le mode AFK du joueur usage: /afk - aliases : [away] + aliases: [away] permission: pandacraft.afk setblock: description: Change de block à un endroit précis @@ -25,12 +25,13 @@ commands: system: description: Affiche des infos système usage: /system [worlds|world |threads|tps_graph] - aliases : [syst, mem, memory, lag, gc, uptime, tps] + aliases: [syst, mem, memory, lag, gc, uptime, tps] permission: pandacraft.system ping: description: Affiche votre ping avec le serveur usage: /ping permission: pandacraft.ping + aliases: [echo, pong] me: description: Décrire une action dans le contexte du joueur usage: /me @@ -93,6 +94,10 @@ permissions: pandacraft.me: description: Utiliser la commande me default: true +# à ajouter ############### + pandacraft.me.color: + description: Utiliser la commande me avec des couleurs + default: op pandacraft.staff: description: Utiliser la commande staff diff --git a/src/net/mc_pandacraft/java/plugin/pandacraftutils/simple_commands/me/CommandMe.java b/src/net/mc_pandacraft/java/plugin/pandacraftutils/simple_commands/me/CommandMe.java index bbcc16c..6cc9629 100644 --- a/src/net/mc_pandacraft/java/plugin/pandacraftutils/simple_commands/me/CommandMe.java +++ b/src/net/mc_pandacraft/java/plugin/pandacraftutils/simple_commands/me/CommandMe.java @@ -25,7 +25,7 @@ public class CommandMe implements CommandExecutor { public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { if (args.length == 0) return false; - + // nom qui doit être affiché String name; if (sender instanceof Player) { @@ -39,7 +39,17 @@ public class CommandMe implements CommandExecutor { name = ChatColor.ITALIC+"Le serveur "; else name = ChatColor.ITALIC+"@ "; - plugin.getServer().broadcastMessage(name + StringUtils.join(args, ' ')); + + // message à afficher + String message; + if (!(sender instanceof Player) || ((Player)sender).hasPermission("pandacraft.me.color")) { + message = ChatColor.translateAlternateColorCodes('&', StringUtils.join(args, ' ')); + } + else { + message = StringUtils.join(args, ' '); + } + + plugin.getServer().broadcastMessage(name + message); return true; }