Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.07 KB | None | 0 0
  1. function NTMain()
  2. {
  3.  
  4. Include("libs/common/NTCommon.ntl");
  5. NTC_IncludeLibs();
  6. NTC_IncludeConfig("NTBot/char_configs");
  7.  
  8. NT_LoadConfig();
  9. NTSI_LoadNIPFiles("NTBot/item_configs");
  10.  
  11. NTA_Initialize(); // 10
  12.  
  13. if(!NTTM_CheckAct())
  14. {
  15. NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
  16. return;
  17. }
  18.  
  19. if(me.areaid != 109)
  20. {
  21. if(!NTTM_TownMove("waypoint"))
  22. {
  23. NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
  24. return;
  25. }
  26.  
  27. if(!NTM_TakeWaypoint(109))
  28. {
  29. NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
  30. return;
  31. }
  32. }
  33.  
  34. NTTMGR_TownManager();
  35.  
  36. NTTM_TownMove("portalspot");
  37.  
  38. //wait for party
  39. for(i = 0; i <= 200; i++)
  40. {
  41. if(NTC_InMyParty(NTConfig_Leader))
  42. break;
  43.  
  44. //Party Leader only!
  45. _player = GetPlayerUnit();
  46. if(_player)
  47. {
  48. _mypartyid = _player.partyid;
  49. while(_player.GetNext())
  50. {
  51. if(_player.name == NTConfig_Leader && _player.partyflag == 2 && (_player.partyid == 65535 || _player.partyid != _mypartyid))
  52. {
  53. me.ClickParty(_player, 2);
  54. Say("kid");
  55. break;
  56. }
  57. }
  58. }
  59.  
  60. NTC_Delay(800);
  61. }
  62.  
  63. while(me.areaid == 109 && NTC_InMyParty(NTConfig_Leader))
  64. {
  65. NTM_UsePortal("BluePortal", 131, NTConfig_Leader); // 50
  66. Delay(1000);
  67.  
  68. }
  69.  
  70. NTP_DoPrecast(true);
  71.  
  72. while(NTC_InMyParty(NTConfig_Leader))
  73. {
  74.  
  75.  
  76. NT_ClearThroneInt();
  77.  
  78. while(1)
  79. {
  80. if(me.classid == NTC_CHAR_CLASS_PALADIN || me.classid == NTC_CHAR_CLASS_BARBARIAN)
  81. NTM_MoveTo(me.areaid, 15092, 5028);
  82. else
  83. NTM_MoveTo(me.areaid, 15092, 5040);
  84.  
  85. if(me.GetState(2))
  86. NTC_PutSkill(109, NTC_HAND_RIGHT);
  87.  
  88. for(i = 0 ; i < 6 ; i++)
  89. {
  90. _wave = NT_ThroneCheckInt();
  91. if(_wave > 0)
  92. break;
  93.  
  94. NTC_Delay(500);
  95. }
  96.  
  97. _starttick = GetTickCount();
  98.  
  99. while(_wave == 0)
  100. {
  101. if(!NT_ThronePreAttackInt())
  102. NTC_Delay(200);
  103.  
  104. if(GetTickCount()-_starttick > 15000)
  105. {
  106. NT_ClearThroneInt();
  107.  
  108. _starttick = GetTickCount();
  109. }
  110.  
  111. _wave = NT_ThroneCheckInt();
  112. }
  113.  
  114. switch(_wave)
  115. {
  116. case 1:
  117. NTA_ClearPosition(40, true, 1);
  118. NTP_DoPrecast(true);
  119. break;
  120. case 3:
  121. NTA_ClearPosition(40, true, 2);
  122. break;
  123. case 4:
  124. NTA_ClearPosition(40, true, 2);
  125. break;
  126. case 5:
  127. NTA_ClearPosition(40, true);
  128. break;
  129. default:
  130. NTA_ClearPosition(40, true, 1);
  131. break;
  132. }
  133.  
  134. if(_wave == 5)
  135. break;
  136. }
  137.  
  138. if(NTConfig_KillBaal)
  139. {
  140. var _portal;
  141.  
  142. if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe|0x01, NTConfig_CheckMercSafe))
  143. {
  144. NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
  145. return;
  146. }
  147.  
  148. NTM_MoveTo(me.areaid, 15092, 5010);
  149.  
  150. NTP_DoPrecast(true);
  151.  
  152. while(NTC_GetUnit(NTC_UNIT_MONSTER, 543))
  153. NTC_Delay(500);
  154.  
  155. _portal = NTC_GetUnit(NTC_UNIT_OBJECT, 563, 1);
  156.  
  157. if(!_portal)
  158. {
  159. NTC_SendMsgToScript("NTBotGame.ntj", "NTC_GetUnit()");
  160. return;
  161. }
  162.  
  163. if(!NTM_UsePortal("Portal", 132, null, _portal))
  164. {
  165. NTC_SendMsgToScript("NTBotGame.ntj", "NTM_UsePortal()");
  166. return;
  167. }
  168.  
  169. NTM_MoveTo(me.areaid, 15138, 5916);
  170.  
  171. if(!NTA_KillMonster(544))
  172. {
  173. NTC_SendMsgToScript("NTBotGame.ntj", "NTA_KillMonster()");
  174. return;
  175. }
  176.  
  177. NTSI_PickItems();
  178. NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
  179. }
  180. NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
  181.  
  182. }
  183.  
  184.  
  185. NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
  186.  
  187. }
  188.  
  189.  
  190. // Internal function
  191. function NT_ClearThroneInt()
  192. {
  193. var _attackpos = [15112, 5068, 15075, 5065, 15114, 5045, 15114, 5012, 15095, 5024, 15078, 5013, 15092, 5040];
  194.  
  195. for(var i = 0 ; i < _attackpos.length ; i += 2)
  196. {
  197. NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
  198.  
  199. NTA_ClearPosition(25, true, 2);
  200. }
  201. }
  202.  
  203. function NT_ThroneCheckInt()
  204. {
  205. var _monster;
  206.  
  207. if(!NTC_GetUnit(NTC_UNIT_MONSTER, 543))
  208. return 5;
  209.  
  210. _monster = NTC_GetUnit(NTC_UNIT_MONSTER);
  211.  
  212. if(_monster)
  213. {
  214. do
  215. {
  216. if(NTA_IsValidMonster(_monster))
  217. {
  218. if(_monster.classid == 23 || _monster.classid == 62)
  219. return 1;
  220.  
  221. if(_monster.classid == 105 || _monster.classid == 381)
  222. return 2;
  223.  
  224. if(_monster.classid == 557)
  225. return 3;
  226.  
  227. if(_monster.classid == 558)
  228. return 4;
  229.  
  230. if(_monster.classid == 571)
  231. return 5;
  232. }
  233. } while(_monster.GetNext());
  234. }
  235.  
  236. return 0;
  237. }
  238.  
  239. function NT_ThronePreAttackInt()
  240. {
  241. if(me.classid == NTC_CHAR_CLASS_SORCERESS)
  242. {
  243. if(NTConfig_AttackSkill[3] == 56 || NTConfig_AttackSkill[3] == 59)
  244. return NTC_CastSkill(NTConfig_AttackSkill[3], 2, 15092, 5028);
  245. }
  246. else if(me.classid == NTC_CHAR_CLASS_PALADIN)
  247. {
  248. if(NTConfig_AttackSkill[3] == 112)
  249. {
  250. if(NTConfig_AttackSkill[4] > 0)
  251. NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);
  252.  
  253. return NTC_CastSkill(NTConfig_AttackSkill[3], 2);
  254. }
  255. }
  256.  
  257. return false;
  258. }
  259.  
  260. function NTC_GetUnit(unittype, classid)
  261. {
  262. var _unit;
  263.  
  264. for(var i = 0 ; i < 2 ; i++)
  265. {
  266. if(arguments.length < 2)
  267. _unit = GetUnit(unittype);
  268. else
  269. _unit = GetUnit(unittype, classid);
  270.  
  271. if(_unit)
  272. return _unit;
  273.  
  274. if(i < 1)
  275. NTC_PingDelay(200);
  276. }
  277.  
  278. return false;
  279. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement