Correction de bug de la commande /cubo

This commit is contained in:
Marc Baloup 2015-01-07 00:41:15 -05:00
parent f95132d5a0
commit ef5cc23748

View File

@ -46,6 +46,9 @@ public class CommandCubo implements CommandExecutor {
plugin = pl;
plugin.getCommand("cubo").setExecutor(this);
Plugin wg = plugin.getServer().getPluginManager().getPlugin("WorldGuard");
// WorldGuard may not be loaded
@ -79,7 +82,7 @@ public class CommandCubo implements CommandExecutor {
if (!ConfigManager.getInstance().CuboCommand_worlds.contains(player.getWorld().getName()))
{
player.sendMessage(ChatColor.RED+"Les cubos ne se font pas sur cette map");
return false;
return true;
}
@ -88,11 +91,11 @@ public class CommandCubo implements CommandExecutor {
CuboidSelection selection = WorldEditInterface.getPlayerCuboSelection(player);
if (selection == null)
{
player.sendMessage(ChatColor.RED+"Vous devez faire une sélection WorldEdit : faites "+ChatColor.GRAY+"//wand");
player.sendMessage(ChatColor.RED+"Vous devez faire une sélection WorldEdit : faites "+ChatColor.GRAY+"//wand"+ChatColor.RED+" pour avoir l'outil nécessaire");
return true;
}
if (hasStaffPermission(player) && args.length >= 3 && plugin.getServer().getPlayer(args[2]) == null)
if (hasStaffPermission(player) && args.length >= 2 && plugin.getServer().getPlayer(args[1]) == null)
{ // un joueur est indiqué mais il n'est pas connecté
player.sendMessage(ChatColor.RED+"Le joueur concerné n'est pas en ligne");
return true;
@ -284,6 +287,13 @@ public class CommandCubo implements CommandExecutor {
// on crée le cubo :
wgPlugin.getRegionManager(selection.getWorld()).addRegion(cubo);
try {
wgPlugin.getRegionManager(selection.getWorld()).save();
} catch (ProtectionDatabaseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
player.sendMessage(ChatColor.GREEN+"La protection "+ChatColor.GRAY+cubo.getId()+ChatColor.GREEN+" a bien été réalisée");
if (player != player_cubo)
player_cubo.sendMessage(ChatColor.GREEN+"La protection "+ChatColor.GRAY+cubo.getId()+ChatColor.GREEN+" a bien été réalisée");
@ -335,7 +345,7 @@ public class CommandCubo implements CommandExecutor {
player.sendMessage(ChatColor.GOLD+cubo.getId()+" : "+cubo.volume()+" cubes");
}
player.sendMessage(ChatColor.GOLD+"---------- Page "+num_page+"/"+nb_page+" ----------");
player.sendMessage(ChatColor.GOLD+"Page "+num_page+"/"+nb_page+" : "+ChatColor.GRAY+"/cubo liste <Page> "+player_cubo);
return true;
}
@ -488,7 +498,7 @@ public class CommandCubo implements CommandExecutor {
String new_user = args[1];
if (!new_user.matches("[0-9a-azA-Z_]{2,16}"))
if (!new_user.matches("[0-9a-zA-Z_]{2,16}"))
{
player.sendMessage(ChatColor.RED+"Le pseudo indiqué n'est pas valide");
return true;
@ -527,7 +537,7 @@ public class CommandCubo implements CommandExecutor {
String old_user = args[1];
if (!old_user.matches("[0-9a-azA-Z_]{2,16}"))
if (!old_user.matches("[0-9a-zA-Z_]{2,16}"))
{
player.sendMessage(ChatColor.RED+"Le pseudo indiqué n'est pas valide");
return true;
@ -596,8 +606,8 @@ public class CommandCubo implements CommandExecutor {
// on arrive ici si aucune des sous commandes correspond à celle tapée
sender.sendMessage(ChatColor.RED+"Mauvaise utilisation de la commande "+ChatColor.GRAY+"/cubo"+ChatColor.RED+". Faites "+ChatColor.GRAY+"/cubo"+ChatColor.RED+" pour connaitre l'utilisation");
return false;
sender.sendMessage(ChatColor.RED+"Mauvaise utilisation de la commande. Faites "+ChatColor.GRAY+"/cubo"+ChatColor.RED+" pour connaitre l'utilisation");
return true;
}
@ -731,12 +741,11 @@ public class CommandCubo implements CommandExecutor {
for (Map.Entry<String, ProtectedRegion> region : regions.entrySet()) {
// on ne prend en charge que les cuboides
if (!(region instanceof ProtectedCuboidRegion))
if (!(region.getValue() instanceof ProtectedCuboidRegion))
continue;
// on garde les régions gérés par la commande
if (!region.getKey().matches(regex_cubo_id))
if (!region.getValue().getId().matches(regex_cubo_id))
continue;
if (!region.getValue().isOwner(p))
continue;
playerRegions.add((ProtectedCuboidRegion)region.getValue());