Program: 2030
Project: 2030
Buggy source:
@Override public boolean onCommand(CommandSender sender,Command command,String commandLabel,String[] args){
  if (!(sender instanceof Player)) {
    sender.sendMessage(MessageUtils.mustBeIngameMessage);
    return true;
  }
  Player player=(Player)sender;
  HumanNPC npc=null;
  if (NPCManager.validateSelected(player))   npc=NPCManager.getNPC(NPCManager.NPCSelected.get(player.getName()));
  if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (!EconomyHandler.useEconomy() || EconomyHandler.canBuy(Operation.BASIC_NPC_CREATE,player)) {
        createNPC(args,player);
      }
 else       if (EconomyHandler.useEconomy()) {
        sender.sendMessage(MessageUtils.getNoMoneyMessage(Operation.BASIC_NPC_CREATE,player));
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          moveNPC(sender,npc.getName(),npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((args.length == 1 || args.length == 2) && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          removeNPC(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else     if (hasPermission("String_Node_Str",sender)) {
      if (args.length == 2 && args[1].equals("String_Node_Str")) {
        removeNPC(args,sender,npc);
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setName(args[1],sender,npc);
          NPCManager.NPCSelected.remove(player.getName());
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender) || hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str") || NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setColour(args,player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          addText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          resetText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setItemInHand(args[1],sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")|| args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setArmor(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          player.teleport((PropertyPool.getLocationFromID(npc.getUID())));
          sender.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      sendHelp(sender);
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length >= 2) {
    int page=1;
    if (args.length == 3)     page=Integer.parseInt(args[2]);
    if (args[0].equals("String_Node_Str") && args[1].equals("String_Node_Str")) {
      if (hasPermission("String_Node_Str",sender)) {
        sendBasicHelpPage(sender,page);
      }
 else {
        sender.sendMessage(MessageUtils.noPermissionsMessage);
      }
    }
 else     if (args[0].equals("String_Node_Str") && args[1].equals("String_Node_Str")) {
      if (hasPermission("String_Node_Str",sender)) {
        sendTraderHelpPage(sender,page);
      }
 else {
        sender.sendMessage(MessageUtils.noPermissionsMessage);
      }
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          copyNPC(npc.getUID(),npc.getName(),player);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify("String_Node_Str" + npc.getUID())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (!Character.isDigit(args[1].charAt(0))) {
        player.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      npc=NPCManager.getNPC(Integer.valueOf(args[1]));
      if (npc == null) {
        sender.sendMessage(ChatColor.RED + "String_Node_Str" + args[1]+ "String_Node_Str");
      }
 else {
        NPCManager.NPCSelected.put(player.getName(),npc.getUID());
        player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify("String_Node_Str" + npc.getUID())+ "String_Node_Str"+ StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(PropertyPool.getOwner(npc.getUID()))+ "String_Node_Str");
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setOwner(player,npc,args[1]);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          PropertyPool.addOwner(npc.getUID(),args[1],player);
          npc.getNPCData().setOwner(player.getName());
          player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(args[1])+ "String_Node_Str"+ StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          changeTalkWhenClose(args[1],player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          changeLookWhenClose(args[1],player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else {
    if (args.length >= 2 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")|| args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str" + args[0]+ "String_Node_Str");
 else     if (args.length >= 2 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     return false;
    return true;
  }
}

Fixed version (ground truth):
@Override public boolean onCommand(CommandSender sender,Command command,String commandLabel,String[] args){
  if (!(sender instanceof Player)) {
    sender.sendMessage(MessageUtils.mustBeIngameMessage);
    return true;
  }
  Player player=(Player)sender;
  HumanNPC npc=null;
  if (NPCManager.validateSelected(player))   npc=NPCManager.getNPC(NPCManager.NPCSelected.get(player.getName()));
  if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (!EconomyHandler.useEconomy() || EconomyHandler.canBuy(Operation.BASIC_NPC_CREATE,player)) {
        createNPC(args,player);
      }
 else       if (EconomyHandler.useEconomy()) {
        sender.sendMessage(MessageUtils.getNoMoneyMessage(Operation.BASIC_NPC_CREATE,player));
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          moveNPC(sender,npc.getName(),npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((args.length == 1 || args.length == 2) && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          removeNPC(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else     if (hasPermission("String_Node_Str",sender)) {
      if (args.length == 2 && args[1].equals("String_Node_Str")) {
        removeNPC(args,sender,npc);
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setName(args[1],sender,npc);
          NPCManager.NPCSelected.remove(player.getName());
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender) || hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str") || NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setColour(args,player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          addText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          resetText(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setItemInHand(args[1],sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")|| args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setArmor(args,sender,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length >= 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          player.teleport((PropertyPool.getLocationFromID(npc.getUID())));
          sender.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          copyNPC(npc.getUID(),npc.getName(),player);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify("String_Node_Str" + npc.getUID())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (!Character.isDigit(args[1].charAt(0))) {
        player.sendMessage(ChatColor.RED + "String_Node_Str");
        return true;
      }
      npc=NPCManager.getNPC(Integer.valueOf(args[1]));
      if (npc == null) {
        sender.sendMessage(ChatColor.RED + "String_Node_Str" + args[1]+ "String_Node_Str");
      }
 else {
        NPCManager.NPCSelected.put(player.getName(),npc.getUID());
        player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify("String_Node_Str" + npc.getUID())+ "String_Node_Str"+ StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 1 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(PropertyPool.getOwner(npc.getUID()))+ "String_Node_Str");
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          setOwner(player,npc,args[1]);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          PropertyPool.addOwner(npc.getUID(),args[1],player);
          npc.getNPCData().setOwner(player.getName());
          player.sendMessage(ChatColor.GREEN + "String_Node_Str" + StringUtils.yellowify(args[1])+ "String_Node_Str"+ StringUtils.yellowify(npc.getStrippedName())+ "String_Node_Str");
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          changeTalkWhenClose(args[1],player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if (args.length == 2 && args[0].equals("String_Node_Str")) {
    if (hasPermission("String_Node_Str",sender)) {
      if (npc != null) {
        if (NPCManager.validateOwnership(player,npc.getUID(),"String_Node_Str")) {
          changeLookWhenClose(args[1],player,npc);
        }
 else {
          sender.sendMessage(MessageUtils.notOwnerMessage);
        }
      }
 else {
        sender.sendMessage(MessageUtils.mustHaveNPCSelectedMessage);
      }
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length == 1 && (args[0].equals("String_Node_Str"))) {
    if (hasPermission("String_Node_Str",sender)) {
      sendHelp(sender);
    }
 else {
      sender.sendMessage(MessageUtils.noPermissionsMessage);
    }
    return true;
  }
 else   if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length >= 2) {
    if (args[1].equals("String_Node_Str")) {
      int page=1;
      if (args.length == 3)       page=Integer.parseInt(args[2]);
      if (args[0].equals("String_Node_Str")) {
        if (hasPermission("String_Node_Str",sender)) {
          sendBasicHelpPage(sender,page);
        }
 else {
          sender.sendMessage(MessageUtils.noPermissionsMessage);
        }
      }
 else       if (args[0].equals("String_Node_Str")) {
        if (hasPermission("String_Node_Str",sender)) {
          sendTraderHelpPage(sender,page);
        }
 else {
          sender.sendMessage(MessageUtils.noPermissionsMessage);
        }
      }
    }
    return true;
  }
 else {
    if (args.length >= 2 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str") || args[0].equals("String_Node_Str")|| args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str" + args[0]+ "String_Node_Str");
 else     if (args.length >= 2 && args[0].equals("String_Node_Str"))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if ((command.getName().equals("String_Node_Str") || command.getName().equals("String_Node_Str")) && args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 2 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     if (args.length >= 3 && (args[0].equals("String_Node_Str")))     sender.sendMessage(ChatColor.RED + "String_Node_Str");
 else     return false;
    return true;
  }
}