Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 27th, 2012  |  syntax: None  |  size: 3.97 KB  |  hits: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1.  else if (splitted[0].equalsIgnoreCase("search")) {
  2.             if (splitted.length > 2) {
  3.                 String search = joinStringFrom(splitted, 2);
  4.                 MapleData data = null;
  5.                 MapleDataProvider dataProvider = MapleDataProviderFactory.getDataProvider(new File("wz/String.wz"));
  6.                 player.dropMessage("~Searching~ <<Type: " + splitted[1] + " | Search: " + search + ">>");
  7.                 if (!splitted[1].equalsIgnoreCase("ITEM")) {
  8.                     if (splitted[1].equalsIgnoreCase("NPC")) {
  9.                         data = dataProvider.getData("Npc.img");
  10.                     } else if (splitted[1].equalsIgnoreCase("MOB")) {
  11.                         List<String> retMobs = new LinkedList<String>();
  12.                         data = dataProvider.getData("Mob.img");
  13.                         List<Pair<Integer, String>> mobPairList = new LinkedList<Pair<Integer, String>>();
  14.                         for (MapleData mobIdData : data.getChildren()) {
  15.                             int mobIdFromData = Integer.parseInt(mobIdData.getName());
  16.                             String mobNameFromData = MapleDataTool.getString(mobIdData.getChildByPath("name"), "NO-NAME");
  17.                             mobPairList.add(new Pair<Integer, String>(mobIdFromData, mobNameFromData));
  18.                         }
  19.                         for (Pair<Integer, String> mobPair : mobPairList) {
  20.                             if (mobPair.getRight().toLowerCase().contains(search.toLowerCase())) {
  21.                                 retMobs.add(mobPair.getLeft() + " - " + mobPair.getRight());
  22.                             }
  23.                         }
  24.                         if (retMobs != null && retMobs.size() > 0) {
  25.                             for (String singleRetMob : retMobs) {
  26.                                 player.dropMessage(singleRetMob);
  27.                             }
  28.                         } else {
  29.                             player.dropMessage("No Mob's Found");
  30.                         }
  31.                     } else if (splitted[1].equalsIgnoreCase("SKILL")) {
  32.                         data = dataProvider.getData("Skill.img");
  33.                     } else {
  34.                         player.dropMessage("Invalid search.\nSyntax: '/search [type] [name]', where [type] is NPC, MAP, ITEM, MOB, or SKILL.");
  35.                         return true;
  36.                     }
  37.                     List<Pair<Integer, String>> searchList = new LinkedList<Pair<Integer, String>>();
  38.                     for (MapleData searchData : data.getChildren()) {
  39.                         int searchFromData = Integer.parseInt(searchData.getName());
  40.                         String infoFromData = splitted[1].equalsIgnoreCase("MAP") ? MapleDataTool.getString(searchData.getChildByPath("streetName"), "NO-NAME") + " - " + MapleDataTool.getString(searchData.getChildByPath("mapName"), "NO-NAME") : MapleDataTool.getString(searchData.getChildByPath("name"), "NO-NAME");
  41.                         searchList.add(new Pair<Integer, String>(searchFromData, infoFromData));
  42.                     }
  43.                     for (Pair<Integer, String> searched : searchList) {
  44.                         if (searched.getRight().toLowerCase().contains(search.toLowerCase())) {
  45.                             player.dropMessage(searched.getLeft() + " - " + searched.getRight());
  46.                         }
  47.                     }
  48.                 } else {
  49.                     for (Pair<Integer, String> itemPair : MapleItemInformationProvider.getInstance().getAllItems()) {
  50.                         if (itemPair.getRight().toLowerCase().contains(search.toLowerCase())) {
  51.                             player.dropMessage(itemPair.getLeft() + " - " + itemPair.getRight());
  52.                         }
  53.                     }
  54.                     player.dropMessage("Search Complete.");
  55.                 }
  56.             } else {
  57.                 player.dropMessage("Invalid search.\nSyntax: '/search [type] [name]', where [type] is NPC, ITEM, MOB, or SKILL.");
  58.             }