Advertisement
Guest User

Untitled

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