Gestion des couleurs dans /me + meilleure gestion des alias pour certaines commandes

This commit is contained in:
Marc Baloup 2015-01-18 20:29:44 -05:00
parent 0f77525ba6
commit 88cc48d99a
2 changed files with 19 additions and 4 deletions

View File

@ -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 <worldname>|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 <message>
@ -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

View File

@ -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;
}