Advertisement
Guest User

Untitled

a guest
May 23rd, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.31 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. for(i = 0; i <= 100; i++)
  39. {
  40. if(NTC_InMyParty(NTConfig_Leader))
  41. break;
  42.  
  43. Delay(200);
  44. }
  45.  
  46. while(me.areaid == 109 && NTC_InMyParty(NTConfig_Leader))
  47. {
  48. NTM_UsePortal("BluePortal", 131, NTConfig_Leader); // 50
  49. Delay(1000);
  50.  
  51. }
  52.  
  53. NTP_DoPrecast(true);
  54.  
  55. while(NTC_InMyParty(NTConfig_Leader))
  56. {
  57.  
  58.  
  59. NT_ClearThroneInt();
  60.  
  61. while(1)
  62. {
  63. if(me.classid == NTC_CHAR_CLASS_PALADIN || me.classid == NTC_CHAR_CLASS_BARBARIAN)
  64. NTM_MoveTo(me.areaid, 15093, 5029);
  65. else
  66. NTM_MoveTo(me.areaid, 15092, 5040);
  67.  
  68. if(me.GetState(2))
  69. NTC_PutSkill(109, NTC_HAND_RIGHT);
  70.  
  71.  
  72. for(i = 0 ; i < 6 ; i++)
  73. {
  74. _wave = NT_ThroneCheckInt();
  75. if(_wave > 0)
  76. break;
  77.  
  78. NTC_Delay(500);
  79. }
  80.  
  81.  
  82. _starttick = GetTickCount();
  83.  
  84. while(_wave == 0)
  85. {
  86. if(!NT_ThronePreAttackInt())
  87. NTC_Delay(200);
  88.  
  89. if(GetTickCount()-_starttick > 15000)
  90. {
  91. NT_ClearThroneInt();
  92.  
  93. _starttick = GetTickCount();
  94. }
  95.  
  96. _wave = NT_ThroneCheckInt();
  97. }
  98.  
  99. switch(_wave)
  100. {
  101. case 1:
  102. NTA_ClearPosition(40, true, 1);
  103. NTP_DoPrecast(false);
  104. break;
  105. case 3:
  106. NTA_ClearPosition(40, true, 2);
  107. break;
  108. case 4:
  109. NTA_ClearPosition(40, true, 2);
  110. break;
  111. case 5:
  112. NTA_ClearPosition(40, true);
  113. break;
  114. default:
  115. NTA_ClearPosition(40, true, 1);
  116. break;
  117. }
  118.  
  119. if(_wave == 5)
  120. break;
  121. }
  122.  
  123. if(NTConfig_KillBaal)
  124. {
  125. var _portal;
  126.  
  127. if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe|0x01, NTConfig_CheckMercSafe))
  128. {
  129. NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
  130. return;
  131. }
  132.  
  133. NTM_MoveTo(me.areaid, 15092, 5010);
  134.  
  135. NTP_DoPrecast(true);
  136.  
  137. while(NTC_FindUnit(NTC_UNIT_MONSTER, 543))
  138. NTC_Delay(500);
  139.  
  140. _portal = NTC_FindUnit(NTC_UNIT_OBJECT, 563, 1);
  141.  
  142. if(!_portal)
  143. {
  144. NTC_SendMsgToScript("NTBotGame.ntj", "NTC_FindUnit()");
  145. return;
  146. }
  147.  
  148. if(!NTM_UsePortal("Portal", 132, null, _portal))
  149. {
  150. NTC_SendMsgToScript("NTBotGame.ntj", "NTM_UsePortal()");
  151. return;
  152. }
  153.  
  154. NTM_MoveTo(me.areaid, 15138, 5916);
  155.  
  156. if(!NTA_KillMonster(544))
  157. {
  158. NTC_SendMsgToScript("NTBotGame.ntj", "NTA_KillMonster()");
  159. return;
  160. }
  161.  
  162. NTSI_PickItems();
  163. }
  164.  
  165.  
  166. }
  167.  
  168.  
  169. NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
  170.  
  171. }
  172.  
  173.  
  174. // Internal function
  175. function NT_ClearThroneInt()
  176. {
  177. var _attackpos = [15112, 5068, 15075, 5065, 15114, 5045, 15114, 5012, 15095, 5024, 15078, 5013, 15092, 5040];
  178.  
  179. for(var i = 0 ; i < _attackpos.length ; i += 2)
  180. {
  181. NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
  182.  
  183. NTA_ClearPosition(25, true, 2);
  184. }
  185. }
  186.  
  187. function NT_ThroneCheckInt()
  188. {
  189. var _monster;
  190.  
  191. if(!NTC_FindUnit(NTC_UNIT_MONSTER, 543))
  192. return 5;
  193.  
  194. _monster = NTC_FindUnit(NTC_UNIT_MONSTER);
  195.  
  196. if(_monster)
  197. {
  198. do
  199. {
  200. if(NTA_IsValidMonster(_monster))
  201. {
  202. if(_monster.classid == 23 || _monster.classid == 62)
  203. return 1;
  204.  
  205. if(_monster.classid == 105 || _monster.classid == 381)
  206. return 2;
  207.  
  208. if(_monster.classid == 557)
  209. return 3;
  210.  
  211. if(_monster.classid == 558)
  212. return 4;
  213.  
  214. if(_monster.classid == 571)
  215. return 5;
  216. }
  217. } while(_monster.GetNext());
  218. }
  219.  
  220. return 0;
  221. }
  222.  
  223. function NT_ThronePreAttackInt()
  224. {
  225. if(me.classid == NTC_CHAR_CLASS_SORCERESS)
  226. {
  227. if(NTConfig_AttackSkill[3] == 56 || NTConfig_AttackSkill[3] == 59)
  228. return NTC_CastSkill(NTConfig_AttackSkill[3], 2, 15092, 5028);
  229. }
  230. else if(me.classid == NTC_CHAR_CLASS_PALADIN)
  231. {
  232. if(NTConfig_AttackSkill[3] == 112)
  233. {
  234. if(NTConfig_AttackSkill[4] > 0)
  235. NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);
  236.  
  237. return NTC_CastSkill(NTConfig_AttackSkill[3], 2);
  238. }
  239. }
  240.  
  241. return false;
  242. }
  243.  
  244. function NT_CheckHydraInt()
  245. {
  246. var _hydra1, _hydra2, _hydra3;
  247.  
  248. _hydra1 = NTC_FindUnit(NTC_UNIT_MONSTER, 351);
  249. _hydra2 = NTC_FindUnit(NTC_UNIT_MONSTER, 352);
  250. _hydra3 = NTC_FindUnit(NTC_UNIT_MONSTER, 353);
  251.  
  252. if((_hydra1 && _hydra1.GetStat(172) != 2 && _hydra1.GetState(105))
  253. || (_hydra2 && _hydra2.GetStat(172) != 2 && _hydra2.GetState(105))
  254. || (_hydra3 && _hydra3.GetStat(172) != 2 && _hydra3.GetState(105)))
  255. {
  256. NTM_MoveTo(me.areaid, 15112, 5004);
  257.  
  258. if(me.GetState(2))
  259. NTC_PutSkill(109, NTC_HAND_RIGHT);
  260.  
  261. NTC_PingDelay(3000);
  262. }
  263. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement