| /** |
| * This file was modified by [Only registered and activated users can see links. Click Here To Register...] |
| * Check the programming section for updates and further scripts |
| * Last Update: 09/05/2010 |
| * Modyfied for Classic Soso by [Only registered and activated users can see links. Click Here To Register...] |
| * 09/13/2010 |
| */ |
| function NTMain() |
| { |
| Include("libs/common/NTCommon.ntl"); |
| NTC_IncludeLibs(); |
| NTC_IncludeConfig("NTBot/char_configs"); |
| NT_LoadConfig(); |
| NTSI_LoadNIPFiles("NTBot/item_configs"); |
| NTA_Initialize(); |
| if(!NTTM_CheckAct()) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_CheckAct()"); |
| return; |
| } |
| |
| NTTMGR_TownManager(); |
| if(!NTTM_TownMove("waypoint")) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTTM_TownMove()"); |
| return; |
| } |
| if(!NTM_TakeWaypoint(107)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTM_TakeWaypoint()"); |
| return; |
| } |
| NTP_DoPrecast(true); |
| if(!NTM_MoveTo(108, 7797, 5560)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTM_MoveTo()"); |
| return; |
| } |
| if(!MWConfig_StartAtStar) |
| { |
| 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]; |
| if(!NTM_MoveTo(me.areaid, 7790, 5544)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTM_MoveTo()"); |
| return; |
| } |
| if(NTConfig_PublicMode) |
| { |
| var _monsterCount = MWA_FindNearbyMonsters(20); |
| |
| if(_monsterCount) |
| { |
| if(_monsterCount < 3) |
| Say("TP cold, " + _monsterCount + " Monsters close!"); |
| else if(_monsterCount < 6) |
| Say("TP warm, " + _monsterCount + " Monsters close!"); |
| else |
| Say("TP hot, " + _monsterCount + " Monsters close!"); |
| } |
| else |
| Say("TP up, no Monsters close!"); |
| |
| NTM_MakeTP(); |
| } |
| |
| NTA_ClearPosition(25, false, 2); |
| NTM_MoveTo(me.areaid, 7790, 5544); |
| NTC_PingDelay(1000); |
| NTA_ClearPosition(25, true, 2); |
| NTM_MoveTo(me.areaid, 7790, 5544); |
| |
| if(NTConfig_PublicMode) |
| { |
| if(MWA_FindNearbyMonsters(15) < 2) |
| Say("TP should be safe now!"); |
| else |
| Say("TP still might be warm!"); |
| } |
| |
| for(var i = 0 ; i < _attackpos.length ; i += 2) |
| { |
| NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1], 3, true); |
| NTA_ClearPosition(35, true, 2); |
| |
| |
| } |
| } |
| |
| NTM_MoveTo(me.areaid, 7792, 5292); |
| |
| if(NTConfig_PublicMode) |
| { |
| if(MWConfig_StartAtStar) |
| { |
| var _monsterCount = MWA_FindNearbyMonsters(25); |
| |
| if(_monsterCount) |
| { |
| if(_monsterCount < 3) |
| Say("TP cold, cleaning Star, then Vizier, " + _monsterCount + " Monsters close!"); |
| else if(_monsterCount < 6) |
| Say("TP warm, cleaning Star, then Vizier, " + _monsterCount + " Monsters close!"); |
| else |
| Say("TP hot, cleaning Star, then Vizier, " + _monsterCount + " Monsters close!"); |
| } |
| else |
| Say("TP up, no Monsters close!"); |
| } |
| Say("Cleaning Star, then Vizier!"); |
| Say("Let me open Seals !"); |
| NTM_MakeTP(); |
| } |
| NTC_Delay(1000); |
| NTP_DoPrecast(true); |
| NTA_ClearPosition(30); |
| NTM_MoveTo(me.areaid, 7792, 5292, 3, true); |
| |
| if(!NT_OpenSealsInt()) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NT_OpenSealsInt()"); |
| return; |
| } |
| if(NTConfig_PublicMode) |
| Say("Killing Diablo"); |
| if(!NTM_MoveTo(me.areaid, 7792, 5292)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTM_MoveTo()"); |
| return; |
| } |
| |
| NTP_DoPrecast(true); |
| |
| if(me.classid == NTC_CHAR_CLASS_PALADIN && !MWC_CheckForExpShrineUsers()) |
| NTC_PutSkill(109, NTC_HAND_RIGHT); |
| |
| if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTTMGR_CheckSafe()"); |
| return; |
| } |
| NTC_FindUnit(NTC_UNIT_MONSTER, 243, 100); |
| if(!NTA_KillMonster(243)) |
| { |
| NTC_SendMsgToScript("MWBotGame.ntj", "NTA_KillMonster()"); |
| return; |
| } |
| NTSI_PickItems(); |
| if(NTConfig_PublicMode) |
| Say("Next game"); |
| NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END"); |
| } |
| // Internal function |
| function NT_OpenSealsInt() |
| { |
| var i, _unit; |
| var _result; |
| _unit = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT); |
| if(!_unit) |
| return false; |
| _result = false; |
| for(i = 0 ; i < _unit.length ; i++) |
| { |
| if(_unit[i].id == 396) |
| { |
| if(_unit[i].roomy*5 + _unit[i].y == 5275) |
| _result = NT_OpenVizierSealInt(1); |
| else |
| _result = NT_OpenVizierSealInt(2); |
| break; |
| } |
| } |
| if(!_result) |
| return false; |
| NTM_MoveTo(me.areaid, 7792, 5292, 3, true); |
| NTA_ClearPosition(40); |
| NTP_DoPrecast(); |
| _result = false; |
| for(i = 0 ; i < _unit.length ; i++) |
| { |
| if(_unit[i].id == 394) |
| { |
| if(_unit[i].roomx*5 + _unit[i].x == 7773) |
| _result = NT_OpenDeSeisSealInt(1); |
| else |
| _result = NT_OpenDeSeisSealInt(2); |
| break; |
| } |
| } |
| if(!_result) |
| return false; |
| NTM_MoveTo(me.areaid, 7792, 5292, 3, true); |
| NTA_ClearPosition(40); |
| NTP_DoPrecast(true); |
| _result = false; |
| for(i = 0 ; i < _unit.length ; i++) |
| { |
| if(_unit[i].id == 392) |
| { |
| if(_unit[i].roomx*5 + _unit[i].x == 7893) |
| _result = NT_OpenVenomSealInt(1); |
| else |
| _result = NT_OpenVenomSealInt(2); |
| break; |
| } |
| } |
| return _result; |
| } |
| function NT_OpenVizierSealInt(type) |
| { |
| var i, n; |
| var _attackpos = [7793, 5267, 7815, 5288, 7798, 5314, 7770, 5288, 7750, 5308, 7730, 5300, 7720, 5306, 7700, 5300, 7680, 5300, 7670, 5300, 7660, 5315, 7660, 5292]; //ff |
| var _monstername = GetLocaleString(2851); |
| for(i = 0 ; i < _attackpos.length ; i += 2) |
| { |
| NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1], 3, true); |
| NTA_ClearPosition(30, true, 2); |
| |
| NTSI_PickItems(); //ff |
| |
| |
| } |
| for(i = 0 ; i < 3 ; i++) |
| { |
| if(type == 1) //ff river |
| { |
| NT_OpenSealInt(395, 7654, 5310); |
| NT_OpenSealInt(396, 7659, 5277); |
| NTM_MoveTo(me.areaid, 7665, 5277); |
| NTA_ClearPosition(30, true, 2); //ff |
| NTSI_PickItems(); //ff |
| } |
| else //ff long |
| |
| NTM_MoveTo(me.areaid, 7660, 5310); //ff |
| |
| NTA_ClearPosition(30, true, 2); //ff |
| NTSI_PickItems(); //ff |
| |
| { |
| NT_OpenSealInt(395, 7650, 5276); |
| NT_OpenSealInt(396, 7651, 5310); |
| |
| NTA_ClearPosition(); //ff |
| NTSI_PickItems(); //ff |
| |
| } |
| for(n = 0 ; n < 10 ; n++) |
| { |
| NTC_Delay(200); |
| if(NTA_KillMonster(_monstername)) |
| { |
| NTA_ClearPosition(); |
| NTSI_PickItems(); |
| return NTM_MoveTo(me.areaid, 7750, 5280); |
| } |
| } |
| } |
| return false; |
| } |
| function NT_OpenDeSeisSealInt(type) |
| { |
| Say("DeSeis now, let me open Seal!"); //ff |
| var i, n; |
| var _attackpos = [7781, 5301, 7780, 5255, 7786, 5253, 7795, 5253, 7803, 5253, 7814, 5253, 7788, 5194]; //ff |
| var _monstername = GetLocaleString(2852); |
| var _deSeis, _dist; |
| switch(me.classid) |
| { |
| case NTC_CHAR_CLASS_BARBARIAN: |
| case NTC_CHAR_CLASS_PALADIN: |
| _dist = 8; |
| break; |
| case NTC_CHAR_CLASS_DRUID: |
| _dist = 10; |
| break; |
| default: |
| _dist = 12; |
| } |
| |
| for(i = 0 ; i < _attackpos.length ; i += 2) |
| { |
| NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]); |
| NTA_ClearPosition(25, true, 2); |
| |
| NTSI_PickItems(); //ff |
| |
| } |
| for(i = 0 ; i < 3 ; i++) |
| { |
| if(type == 1) //ff long |
| { |
| |
| NTM_MoveTo(me.areaid, 7817, 5170); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7817, 5160); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7817, 5156); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7790, 5158); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTTMGR_CheckSafe(NTConfig_CheckSelfSafe); //ff |
| |
| NT_OpenSealInt(394, 7769, 5158); |
| |
| |
| NTM_MoveTo(me.areaid, 7790, 5194); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7771, 5196); |
| |
| NTA_ClearPosition(30); |
| NTSI_PickItems(); //ff |
| |
| //ff NTM_MoveTo(me.areaid, 7771, 5196); |
| |
| _deSeis = NTC_FindUnit(NTC_UNIT_MONSTER, _monstername, 5); |
| if(_deSeis) |
| { //ff |
| NTM_MoveTo(me.areaid, 7776, _deSeis.y + _dist); |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7776, 5195); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| } //ff |
| } |
| else //ff short |
| { |
| |
| NTM_MoveTo(me.areaid, 7773, 5189); //ff |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7773, 5153); //ff |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NT_OpenSealInt(394, 7810, 5156); |
| NTM_MoveTo(me.areaid, 7790, 5156); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7780, 5156); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| NTM_MoveTo(me.areaid, 7790, 5193); //ff |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| // ff NTM_MoveTo(me.areaid, 7770, 5169); |
| |
| _deSeis = NTC_FindUnit(NTC_UNIT_MONSTER, _monstername, 5); |
| |
| if(_deSeis && _deSeis.y + _dist <= 5201) |
| { //ff |
| |
| NTM_MoveTo(me.areaid, 7776, _deSeis.y + _dist); |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| } // ff |
| else |
| { // ff |
| NTM_MoveTo(me.areaid, 7776, 5195); |
| |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| } // ff |
| } |
| for(n = 0 ; n < 10 ; n++) |
| { |
| NTC_Delay(200); |
| NTA_ClearPosition(30); //ff |
| NTSI_PickItems(); //ff |
| |
| if(NTA_KillMonster(_monstername)) |
| { |
| NTA_ClearPosition(30); |
| NTSI_PickItems(); |
| return NTM_MoveTo(me.areaid, 7800, 5255); |
| } |
| } |
| } |
| return false; |
| } |
| function NT_OpenVenomSealInt(type) |
| { |
| Say("Venom now, let me open Seals!") |
| var i, n; |
| var _attackpos = [7817, 5274, 7825, 5280, 7835, 5292, 7835, 5283, 7855, 5288]; |
| var _monstername = GetLocaleString(2853); |
| NTP_DoPrecast(true); //ff |
| |
| for(i = 0 ; i < _attackpos.length ; i += 2) |
| { |
| NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1], 3, true); |
| NTA_ClearPosition(15, true, 2); //ff war 30, true, 2 |
| |
| NTSI_PickItems(); //ff |
| |
| |
| } |
| for(i = 0 ; i < 3 ; i++) |
| { |
| if(type == 1) //ff short |
| { |
| |
| NTM_MoveTo(me.areaid, 7875, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7895, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7910, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7920, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTSI_PickItems(30); |
| |
| NT_OpenSealInt(393, 7915, 5280); |
| |
| NT_OpenSealInt(392, 7895, 5318); |
| NTM_MoveTo(me.areaid, 7880, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7890, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7895, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7900, 5300); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7905, 5300); //ff |
| NTA_ClearPosition(30); //ff |
| |
| NTSI_PickItems(30); |
| |
| //ff NTM_MoveTo(me.areaid, 7892, 5298); |
| } |
| else //ff long |
| { |
| |
| NTM_MoveTo(me.areaid, 7875, 5277); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7895, 5277); //ff |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7910, 5277); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTSI_PickItems(30); |
| |
| NT_OpenSealInt(393, 7905, 5277); |
| |
| NTA_ClearPosition(); //ff |
| NTM_MoveTo(me.areaid, 7931, 5272); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTM_MoveTo(me.areaid, 7934, 5285); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTM_MoveTo(me.areaid, 7935, 5305); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTM_MoveTo(me.areaid, 7931, 5310); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTM_MoveTo(me.areaid, 7921, 5310); //ff |
| NTA_ClearPosition(); //ff |
| |
| NTSI_PickItems(30); |
| |
| NT_OpenSealInt(392, 7916, 5310); |
| NTM_MoveTo(me.areaid, 7937, 5310); //ff |
| NTA_ClearPosition(30); //ff |
| NTM_MoveTo(me.areaid, 7937, 5300); //ff |
| NTA_ClearPosition(30); //ff |
| NTM_MoveTo(me.areaid, 7937, 5290); //ff |
| NTA_ClearPosition(30); //ff |
| NTM_MoveTo(me.areaid, 7937, 5280); //ff |
| NTA_ClearPosition(30); //ff |
| NTM_MoveTo(me.areaid, 7880, 5275); //ff |
| NTA_ClearPosition(30); //ff |
| |
| NTSI_PickItems(30); |