Advertisement
kolton

DiabloLeecher

Nov 24th, 2011
587
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Revised chaos leecher
  2.  
  3. var end = false;
  4.  
  5. function NTMain() {
  6.     Include("libs/common/NTCommon.ntl");
  7.     NTC_IncludeLibs();
  8.     NTC_IncludeConfig("NTBot/char_configs");
  9.     NT_LoadConfig();
  10.     NTSI_LoadNIPFiles("NTBot/item_configs");
  11.     NTA_Initialize();
  12.     RegisterEvent(EVENT_GAMEMSG, chat);
  13.  
  14.     if (!NTTM_CheckAct(4)) {
  15.         NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
  16.         return;
  17.     }
  18.  
  19.     NTTMGR_TownManager();
  20.  
  21.     if (!NTTM_TownMove("portalspot")) {
  22.         NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
  23.         return;
  24.     }
  25.    
  26.     while (!end) {
  27.         if (me.mode === 17) {
  28.             me.Cancel(0);
  29.         }
  30.        
  31.         NTC_Delay(250);
  32.     }
  33.    
  34.     NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
  35. }
  36.  
  37. function chat(msg, type) {
  38.     if(type === 0) {
  39.         var split = msg.split(":");
  40.        
  41.         if (split.length >= 1 && split[1] !== undefined) {
  42.             var _sender = split[0].substring(3, split[0].length - 3);
  43.             var msg = split[1].substring(1);
  44.            
  45.             if (_sender === NTConfig_Leader) { 
  46.                 switch (msg) {
  47.                 case "Leech TP up.":
  48.                     if (me.areaid === 103) {
  49.                         CL_TakePortal();
  50.                     }
  51.  
  52.                     NTP_DoPrecast(false);
  53.                     break;
  54.                 case "Vizier dead.":
  55.                 case "Infector dead.":
  56.                 case "De Seis dead.":
  57.                     if (me.areaid === 108) {
  58.                         if (!CL_TakePortal()) {
  59.                             NTTM_CheckAct();
  60.                         }
  61.                     }
  62.                    
  63.                     break;
  64.                 case "Diablo TP up.":
  65.                     if (me.areaid == 103) {
  66.                         CL_TakePortal();
  67.                         Delay(500);
  68.                         NTM_WalkTo(7760, 5267);
  69.                     }
  70.                    
  71.                     var diablo = NTC_FindUnit(1, 243, 200);
  72.                    
  73.                     if (diablo) {
  74.                         while (diablo.mode !== 12) {
  75.                             NTC_Delay(300);
  76.                         }
  77.                     }
  78.                    
  79.                     end = true;
  80.                    
  81.                     break;
  82.                 }
  83.             }
  84.         }
  85.     } else if (type === 4 && ((msg.indexOf("weaken") != -1) || msg.indexOf("dropped") != -1) && (msg.indexOf(NTConfig_Leader) != -1)) {
  86.         NTC_Delay(750);
  87.         ExitGame();
  88.     }
  89. }
  90.  
  91. function CL_TakePortal() {
  92.     var i,
  93.         preArea = me.areaid,
  94.         portal = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3226), 10);
  95.    
  96.     if (!portal) {
  97.         return false;
  98.     }
  99.    
  100.     do {
  101.         if (GetDistance(me, portal) < 15) {
  102.             for (i = 0; i < 20; i += 1) {
  103.                 if (i % 5 === 0) {
  104.                     if (i === 10) {
  105.                         NTM_MoveTo(preArea, me.x + 6, me.y + 6);
  106.                     }
  107.                    
  108.                     NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, portal);
  109.                 }
  110.                
  111.                 NTC_Delay(200);
  112.                
  113.                 if (me.areaid !== preArea) {
  114.                     break;
  115.                 }
  116.             }
  117.            
  118.             while (me.areaid === 0) {
  119.                 NTC_Delay(200);
  120.             }
  121.            
  122.             if (me.areaid === preArea) {
  123.                 return false;
  124.             }
  125.            
  126.             NTC_PingDelay(NTConfig_AreaDelay);
  127.            
  128.             return true;
  129.         }
  130.     } while (portal.GetNext());
  131.    
  132.     return false;
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement