Advertisement
Guest User

Untitled

a guest
Jun 24th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.64 KB | None | 0 0
  1. var globalvar = false;
  2. var nextGameVar = false;
  3. function NT_Leech()
  4. {
  5. var leader="CHARACTERNAME!";
  6. var i;
  7. var _wave;
  8. var _starttick;
  9. addEventListener("chatmsg", BaalMsg);
  10. if (NT_LeechType == 1)
  11. {
  12. globalvar = true;
  13. }
  14. if (NT_LeechType == 3)
  15. {
  16. go = true;
  17. }
  18. print("˙c3Start Baal Leech script");
  19.  
  20. if(!NTTM_CheckAct(5))
  21. return false;
  22.  
  23. NTTMGR_TownManager();
  24.  
  25. if(!NTTM_TownMove("portalspot"))
  26. return false;
  27. //delay untill partied with leader
  28. for(var i = 0 ; i < 100 ; i++)
  29. {
  30. if (findLead(leader))
  31. break;
  32. for (var j = 0 ; j < NT_Leader.length ; j++){
  33. if (findLead(NT_Leader[j]))
  34. leader = NT_Leader[j];
  35.  
  36. }
  37. delay (100);
  38. }
  39. QuitWithLeader =leader;
  40. while(me.area==109){
  41. if (globalvar)
  42. if(go) delay(8000);
  43. NTM_UsePortal("BluePortal", 131,leader);
  44. delay (1000);
  45. if (!findLead(leader)) {
  46. var a = getParty();
  47. if(!a)
  48. return false;
  49. do {
  50. sendCopyData(null, "OOG", 0,"Leader Not Found-->"+a.name+"<--" );
  51. } while(a.getNext());
  52. return false;
  53. }
  54. }
  55. NTP_DoPrecast();
  56. if (NT_LeechType != 3)
  57. NT_ClearThroneInt();
  58.  
  59.  
  60.  
  61. while(NT_LeechType != 4)
  62. {
  63. var _attackpos = [7792, 5525, 7793, 5501, 7773, 5495, 7768, 5480, 7767, 5458, 7770, 5438, 7774, 5417, 7767, 5391, 7768, 5369, 7769, 5345, 7770, 5320, 7780, 5308];
  64. //print("˙c5Precasting");
  65. //NTP_DoPrecast();
  66.  
  67. if(me.classid == NTC_CHAR_CLASS_PALADIN || me.classid == NTC_CHAR_CLASS_BARBARIAN)
  68. NTM_MoveTo(15092, 5028);
  69. else
  70. NTM_MoveTo(15092, 5040);
  71.  
  72. if(me.getState(2))
  73. NTC_PutSkill(109, NTC_HAND_RIGHT);
  74.  
  75. for(i = 0 ; i < 6 ; i++)
  76. {
  77. _wave = NT_ThroneCheckInt();
  78. if(_wave > 0)
  79. break;
  80.  
  81. NTC_Delay(500);
  82. }
  83.  
  84. _starttick = getTickCount();
  85.  
  86. while(_wave == 0)
  87. {
  88. if(!NT_ThronePreAttackInt())
  89. NTC_Delay(250);
  90.  
  91. if(getTickCount()-_starttick > 15000)
  92. {
  93. NT_ClearThroneInt();
  94.  
  95. _starttick = getTickCount();
  96. }
  97.  
  98. _wave = NT_ThroneCheckInt();
  99. }
  100.  
  101. NTA_ClearPosition(40, 0x04);
  102. NTA_ClearPosition(40);
  103. NTSI_PickItems();
  104. NTT_CleanPotions();
  105.  
  106. if(_wave == 1){
  107. print("˙c5First Wave");
  108. //NTP_DoPrecast();
  109. } else if(_wave == 3)
  110. NT_CheckHydraInt();
  111. else if(_wave == 5)
  112. break;
  113. if (!findLead(leader)) return false;
  114. }
  115.  
  116. while(findLead(leader) && NT_LeechType == 3)
  117. {
  118. NTC_Delay(500);
  119. if(nextGameVar == true) {
  120. delay(10000);
  121. return false;
  122. }
  123. }
  124.  
  125. if(NTConfig_KillBaal && NT_LeechType != 3)
  126. {
  127. var _portal;
  128.  
  129. NTM_MoveTo(15092, 5010);
  130.  
  131. NTP_DoPrecast();
  132.  
  133. while(NTC_FindMonster("Baal"))
  134. NTC_Delay(250);
  135.  
  136. _portal = NTC_GetUnit(NTC_UNIT_OBJECT, 563);
  137.  
  138. if(!_portal)
  139. return false;
  140.  
  141. if(!NTM_UsePortal("Portal", 132, null, _portal))
  142. return false;
  143.  
  144. NTM_MoveTo(15138, 5916);
  145.  
  146. if(!NTA_KillBoss(544))
  147. return false;
  148. if (!findLead(leader)) return false;
  149. NTSI_PickItems();
  150. sendCopyData(null, "OOG", 0,"Quit:Full Run" );
  151. }
  152.  
  153.  
  154.  
  155. return true;
  156. }
  157.  
  158. // Internal function
  159. function NT_ClearThroneInt()
  160. {
  161. var _attackpos = [15112, 5068, 15075, 5065, 15114, 5045, 15114, 5012, 15095, 5024, 15078, 5013, 15092, 5040];
  162.  
  163. for(var i = 0 ; i < _attackpos.length ; i += 2)
  164. {
  165. NTM_MoveTo(_attackpos[i], _attackpos[i+1]);
  166.  
  167. NTA_ClearPosition(25, 0x04);
  168. NTA_ClearPosition(25);
  169. NTSI_PickItems();
  170. }
  171.  
  172. NTT_CleanPotions();
  173. }
  174.  
  175. function NT_ThroneCheckInt()
  176. {
  177. var _monster;
  178.  
  179. if(!NTC_FindMonster("Baal"))
  180. return 5;
  181.  
  182. _monster = NTC_GetUnit(NTC_UNIT_MONSTER);
  183.  
  184. if(_monster)
  185. {
  186. do
  187. {
  188. if(NTA_IsValidTarget(_monster))
  189. {
  190. if(_monster.classid == 23 || _monster.classid == 62)
  191. return 1;
  192.  
  193. if(_monster.classid == 105 || _monster.classid == 381)
  194. return 2;
  195.  
  196. if(_monster.classid == 557)
  197. return 3;
  198.  
  199. if(_monster.classid == 558)
  200. return 4;
  201.  
  202. if(_monster.classid == 571)
  203. return 5;
  204. }
  205. } while(_monster.getNext());
  206. }
  207.  
  208. return 0;
  209. }
  210.  
  211. function NT_ThronePreAttackInt()
  212. {
  213. if(me.classid == NTC_CHAR_CLASS_SORCERESS)
  214. {
  215. if(NTConfig_AttackOthers == 56 || NTConfig_AttackOthers == 59)
  216. return NTC_DoCast(NTConfig_AttackOthers, 2, 15092, 5028);
  217. }
  218. else if(me.classid == NTC_CHAR_CLASS_PALADIN)
  219. {
  220. if(NTConfig_AttackOthers == 112)
  221. {
  222. if(NTConfig_PutAura > 0)
  223. NTC_PutSkill(NTConfig_PutAura, NTC_HAND_RIGHT);
  224.  
  225. return NTC_DoCast(NTConfig_AttackOthers, 2);
  226. }
  227. }
  228.  
  229. return false;
  230. }
  231.  
  232. function NT_CheckHydraInt()
  233. {
  234. var _hydra1, _hydra2, _hydra3;
  235.  
  236. _hydra1 = NTC_GetUnit(NTC_UNIT_MONSTER, 351);
  237. _hydra2 = NTC_GetUnit(NTC_UNIT_MONSTER, 352);
  238. _hydra3 = NTC_GetUnit(NTC_UNIT_MONSTER, 353);
  239.  
  240. if((_hydra1 && _hydra1.getStat(172) != 2 && _hydra1.getState(105))
  241. || (_hydra2 && _hydra2.getStat(172) != 2 && _hydra2.getState(105))
  242. || (_hydra3 && _hydra3.getStat(172) != 2 && _hydra3.getState(105)))
  243. {
  244. NTM_MoveTo(15112, 5004);
  245.  
  246. if(me.getState(2))
  247. NTC_PutSkill(109, NTC_HAND_RIGHT);
  248.  
  249. NTC_Delay(3000);
  250. }
  251. }
  252. function findLead(leader)
  253. {
  254. var _lead= getUnit(0, leader)
  255. if(_lead)
  256. return _lead.area;
  257. // leader not found look in party
  258. var area =0;
  259. var a = getParty();
  260. if(!a)
  261. return false;
  262. //sendCopyData(null, "OOG", 0,"party len:"+a.partyid );
  263. do {
  264. if (a.name==leader){
  265. return true;
  266. }
  267. } while(a.getNext());
  268. if (area==0) {
  269. //sendCopyData(null, "OOG", 0,"Quit:Quit()" );
  270. return false;
  271.  
  272. }
  273. return area;
  274. }
  275.  
  276. function LeaveWithLeader(mode, param,name1,name2){ //event is called from default
  277. if (mode == 0 || mode == 1 || mode ==3 )
  278. if (name1 == QuitWithLeader)
  279. quit();
  280. }
  281.  
  282. function BaalMsg(who,msg) {
  283. if (msg == "1")
  284. globalvar = true
  285. if (msg == "Lets Kill Baal!" && NT_LeechType == 3)
  286. nextGameVar = true;
  287. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement