Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var wave = 0;
- var count = 0;
- var checker = false;
- function NTMain()
- {
- Include("libs/common/NTCommon.ntl");
- NTC_IncludeLibs();
- NTC_IncludeConfig("NTBot/char_configs");
- var i;
- var _starttick;
- NT_LoadConfig();
- NTSI_LoadNIPFiles("NTBot/item_configs");
- NTA_Initialize();
- NTTM_CheckAct()
- NTTMGR_TownManager();
- NTTM_TownMove("waypoint")
- NTM_TakeWaypoint(129)
- NTP_DoPrecast(true);
- if(NTConfig_ClearWorldStone1 == 2)
- {
- NTA_ClearLevel();
- NTM_MoveToStair(me.areaid, 130);
- NTM_TakeStair(130);
- }
- else if(NTConfig_ClearWorldStone1 == 1)
- {
- NTM_MoveToStair(me.areaid, 130, 0, 0, true);
- NTM_TakeStair(130);
- }
- else
- {
- NTM_MoveToStair(me.areaid, 130);
- NTM_TakeStair(130);
- }
- if(NTConfig_ClearWorldStone2 == 2)
- {
- NTA_ClearLevel();
- NTM_MoveToStair(me.areaid, 131);
- NTM_TakeStair(131);
- }
- else if(NTConfig_ClearWorldStone2 == 1)
- {
- NTM_MoveToStair(me.areaid, 131, 0, 0, true);
- NTM_TakeStair(131);
- }
- else
- {
- NTM_MoveToStair(me.areaid, 131);
- NTM_TakeStair(131);
- }
- NTM_MoveTo(me.areaid, 15112, 5068)
- NT_CheckDollsAndSouls();
- if(NTConfig_PublicMode)
- {
- NTM_MoveTo(me.areaid, 15112, 5004);
- NTA_ClearPosition(30, true, 2);
- NTM_MoveTo(me.areaid, 15112, 5004);
- NTM_MakeTP();
- Say("HOT!");
- NTA_ClearPosition(30, true, 2);
- NT_ClearThroneInt();
- }
- if(NTConfig_PublicMode)
- {
- Say(NTConfig_TPMsg);
- }
- NT_MoveToSpot();
- while(1)
- {
- if(!NTC_FindUnit(NTC_UNIT_MONSTER, 543))
- break;
- NT_ClearPosition(50, true, 1);
- if(count > 0)
- {
- switch(wave)
- {
- case 0:
- NT_MoveToSpot();
- break;
- case 1:
- NTM_MoveTo(me.areaid, 15092, 5028);
- NT_ClearPosition(40, true, 1);
- NT_MoveToSpot();
- NTP_DoPrecast(true);
- break;
- case 2:
- NTM_MoveTo(me.areaid, 15092, 5028);
- NT_ClearPosition(40, true, 1);
- NT_MoveToSpot();
- if(me.GetState(2) && me.classid == NTC_CHAR_CLASS_PALADIN)
- {
- NTC_PutSkill(109, NTC_HAND_RIGHT);
- while(me.GetState(2))
- NTC_Delay(200);
- }
- break;
- case 3:
- NTM_MoveTo(me.areaid, 15092, 5028);
- NT_ClearPosition(40, true, 1);
- NTP_DoPrecast(true);
- NT_MoveToSpot();
- break;
- case 4:
- NTM_MoveTo(me.areaid, 15092, 5028);
- NT_ClearPosition(40, true, 1);
- NT_MoveToSpot();
- NTP_DoPrecast(true);
- break;
- case 5:
- NTM_MoveTo(me.areaid, 15092, 5028);
- NT_ClearPosition(40, true, 1);
- break;
- }
- }
- else
- NT_ThronePreAttackInt();
- count = 0;
- if(wave == 5)
- break;
- NTC_Delay(25);
- }
- if(NTConfig_KillBaal)
- {
- var _portal;
- NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe)
- NTM_MoveTo(me.areaid, 15092, 5010);
- NTP_DoPrecast(true);
- if(me.classid == NTC_CHAR_CLASS_PALADIN)
- NTC_PutSkill(109, NTC_HAND_RIGHT);
- while(NTC_FindUnit(NTC_UNIT_MONSTER, 543))
- NTC_Delay(500);
- _portal = NTC_FindUnit(NTC_UNIT_OBJECT, 563, 1);
- if(!_portal)
- {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTC_FindUnit()");
- return;
- }
- NTM_UsePortal("Portal", 132, null, _portal)
- NTM_MoveTo(me.areaid, 15138, 5916);
- NTA_KillMonster(544)
- NTSI_PickItems();
- if(NTConfig_PublicMode)
- Say("Op Haters_ to follow");
- }
- NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
- }
- // Internal function
- function NT_ClearThroneInt()
- {
- var _attackpos = [// x y
- 15114,5068,
- 15115,5051,
- 15114,5033,
- 15115,5025,
- 15101,5020,
- 15093,5022,
- 15084,5019,
- 15082,5028,
- 15080,5042,
- 15074,5054,
- 15074,5065,
- 15093,5051,
- 15093,5034
- ];
- for(var i = 0 ; i < _attackpos.length ; i += 2)
- {
- NTM_MoveTo(me.areaid, _attackpos[i], _attackpos[i+1]);
- NTA_ClearPosition(30, true, 1);
- }
- }
- function NT_ThronePreAttackInt()
- {
- if(me.classid == NTC_CHAR_CLASS_SORCERESS)
- {
- if(NTConfig_AttackSkill[1] == 59)
- return NTC_CastSkill(NTConfig_AttackSkill[1], NTC_HAND_RIGHT, 15092, 5024);
- }
- else if(me.classid == NTC_CHAR_CLASS_PALADIN)
- {
- if(NTConfig_AttackSkill[3] == 112)
- {
- if(NTConfig_AttackSkill[4] > 0)
- NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);
- return NTC_CastSkill(NTConfig_AttackSkill[3], 2);
- }
- }
- return false;
- }
- function NT_MoveToSpot()
- {
- if(me.classid == NTC_CHAR_CLASS_BARBARIAN || me.classid == NTC_CHAR_CLASS_PALADIN)
- NTM_MoveTo(me.areaid, 15092, 5028);
- else
- NTM_MoveTo(me.areaid, 15092, 5040);
- }
- function NT_ClearPosition(range, pickitem, safelevel, magicimmunes)
- {
- var _orgx, _orgy;
- var _spectype = [0x0A, 0x01, 0x01];
- var _skiplist;
- var _attackcount = 0;
- var _target;
- var _distance, _mingid, _mindistance;
- var _result;
- if(NTConfig_AttackSkill[1] < 1 || NTConfig_AttackSkill[3] < 1)
- return false;
- switch(arguments.length)
- {
- case 0:
- range = 20;
- case 1:
- pickitem = false;
- case 2:
- safelevel = 0;
- case 3:
- magicimmunes = false;
- default:
- if(NTConfig_CheckSelfSafe < 0x01 && NTConfig_CheckMercSafe < 0x01)
- safelevel = 0;
- break;
- }
- _orgx = me.x;
- _orgy = me.y;
- for(var i = 0 ; i < _spectype.length ; i++)
- {
- _skiplist = new Array();
- while(_attackcount < (i+1)*100)
- {
- _mindistance = 100000;
- if(magicimmunes)
- _target = GetUnit(NTC_UNIT_MONSTER, 105);
- else
- _target = GetUnit(NTC_UNIT_MONSTER);
- if(_target)
- {
- do
- {
- if(_skiplist.indexOf(_target.gid) < 0)
- {
- if(_target.IsAttackable() && (_target.spectype&_spectype[i]))
- {
- if(GetDistance(_orgx, _orgy, _target.x, _target.y) <= range && NTA_IsValidMonster(_target))
- {
- _distance = GetDistance(me, _target);
- if(_distance < _mindistance)
- {
- _mingid = _target.gid;
- _mindistance = _distance;
- }
- }
- }
- else
- _skiplist.push(_target.gid);
- }
- } while(_target.GetNext());
- }
- if(_mindistance < 100000)
- {
- _target = NTC_FindUnit(NTC_UNIT_MONSTER, _mingid);
- if(_target)
- {
- count++;
- switch(_target.classid)
- {
- case 23:
- case 62:
- wave = 1;
- break;
- case 105:
- case 381:
- wave = 2;
- if(me.classid == NTC_CHAR_CLASS_PALADIN && checker == false)
- {
- checker = true;
- return NT_ClearPosition(40, true, 1, true);
- }
- break;
- case 557:
- wave = 3;
- break;
- case 558:
- wave = 4;
- break;
- case 571:
- wave = 5;
- break;
- default:
- wave = wave;
- break;
- }
- _result = NTA_Attack(_target, (_attackcount%30) == 0);
- switch(_result)
- {
- case 1:
- _skiplist.push(_mingid);
- break;
- case 2:
- case 3:
- _attackcount++;
- break;
- default:
- return false;
- }
- }
- }
- else
- break;
- }
- }
- if(me.classid == NTC_CHAR_CLASS_PALADIN)
- if(_attackcount > 2 && (parseInt(me.hp*100/me.hpmax) < NTConfig_UseRedemptionHP || parseInt(me.mp*100/me.mpmax) < NTConfig_UseRedemptionMP))
- if(NTC_PutSkill(124, NTC_HAND_RIGHT))
- NTC_PingDelay(1000);
- if(me.classid == NTC_CHAR_CLASS_SORCERESS)
- if(_attackcount > 2)
- NTC_CastSkill(58, NTC_HAND_RIGHT);
- if(NTConfig_OpenChest)
- {
- _target = NTC_GetSpecialChest();
- if(_target && GetDistance(_orgx, _orgy, _target.x, _target.y) >= range && NTC_OpenChest(_target))
- _attackcount++;
- }
- if(pickitem && _attackcount > 0)
- NTSI_PickItems();
- switch(safelevel)
- {
- case 1:
- return NTTMGR_CheckSafe(0x00, NTConfig_CheckMercSafe&0x01);
- case 2:
- return NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe);
- }
- return true;
- }
- var maxdolls = 6;
- var maxsouls = 12;
- function NT_CheckDollsAndSouls()
- {
- var _monster_array = new Array();
- var _monster = NTC_FindUnit(NTC_UNIT_MONSTER);
- if(_monster)
- {
- do
- {
- if(NTA_IsValidMonster(_monster)
- &&
- (_monster.classid == 691 // dolls
- || _monster.classid == 641 // souls
- || _monster.classid == 103 || _monster.classid == 105 || _monster.classid == 670 // horadrim
- || _monster.spectype&0x0A // boss
- )
- )
- {
- if (_monster.spectype&0x0A)
- {
- if (_monster.classid == 691) // dolls
- {
- if (_monster_array["Boss_Dolls"] != undefined)
- _monster_array["Boss_Dolls"]++;
- else
- _monster_array["Boss_Dolls"] = 1;
- }
- else if (_monster.classid == 641) // souls
- {
- if (_monster_array["Boss_Souls"] != undefined)
- _monster_array["Boss_Souls"]++;
- else
- _monster_array["Boss_Souls"] = 1;
- }
- else if (_monster.classid == 103 || _monster.classid == 105 || _monster.classid == 670) // horadrims
- {
- if (_monster_array["Boss_Horadrim"] != undefined)
- _monster_array["Boss_Horadrim"]++;
- else
- _monster_array["Boss_Horadrim"] = 1;
- }
- else
- {
- if (_monster_array["Boss"] != undefined)
- _monster_array["Boss"]++;
- else
- _monster_array["Boss"] = 1;
- }
- }
- else if (_monster.classid == 691)
- {
- if (_monster_array["Dolls"] != undefined)
- _monster_array["Dolls"]++;
- else
- _monster_array["Dolls"] = 1;
- }
- else if (_monster.classid == 641)
- {
- if (_monster_array["Souls"] != undefined)
- _monster_array["Souls"]++;
- else
- _monster_array["Souls"] = 1;
- }
- else if (_monster.classid == 103 || _monster.classid == 105 || _monster.classid == 670)
- {
- if (_monster_array["Horadrim"] != undefined)
- _monster_array["Horadrim"]++;
- else
- _monster_array["Horadrim"] = 1;
- }
- }
- else if (NTA_IsValidMonster(_monster))
- {
- if (_monster_array["Other"] != undefined)
- _monster_array["Other"]++;
- else
- _monster_array["Other"] = 1;
- }
- } while(_monster.GetNext());
- var _skip_script = false;
- if(
- ((_monster_array["Boss_Dolls"] == undefined ? 0 : _monster_array["Boss_Dolls"]) + (_monster_array["Boss_Souls"] == undefined ? 0 : _monster_array["Boss_Souls"]) > 0)
- || (_monster_array["Dolls"] == undefined ? 0 : _monster_array["Dolls"]) > maxdolls
- || (_monster_array["Souls"] == undefined ? 0 : _monster_array["Souls"]) > maxsouls
- )
- {
- if(
- ((_monster_array["Boss_Horadrim"] == undefined ? 0 : _monster_array["Boss_Horadrim"]) > 2)
- || ((_monster_array["Horadrim"] == undefined ? 0 : _monster_array["Horadrim"]) > 5)
- )
- {
- _skip_script = true;
- }
- else if(
- ((_monster_array["Boss_Dolls"] == undefined ? 0 : _monster_array["Boss_Dolls"]) > 2)
- || ((_monster_array["Dolls"] == undefined ? 0 : _monster_array["Dolls"]) > maxdolls)
- )
- {
- _skip_script = true;
- }
- else if(
- ((_monster_array["Boss_Souls"] == undefined ? 0 : _monster_array["Boss_Souls"]) > 2)
- || ((_monster_array["Souls"] == undefined ? 0 : _monster_array["Souls"]) > maxsouls)
- )
- {
- _skip_script = true;
- }
- else if(
- ((_monster_array["Boss"] == undefined ? 0 : _monster_array["Boss"]) > 4)
- || ((_monster_array["Other"] == undefined ? 0 : _monster_array["Other"]) > 45)
- )
- {
- _skip_script = true;
- }
- }
- if (_skip_script)
- {
- NTC_SendLogToOOG(0, "ΓΏc1 -- Crazy throne! --");
- for(_monster_name in _monster_array)
- NTC_SendLogToOOG(0, _monster_array[_monster_name] + " " + _monster_name);
- Say("OMFG! Skipped!");
- Delay(200);
- return false;
- }
- Delay(200);
- for(_monster_name in _monster_array)
- {
- //NTC_SendLogToOOG(0, _monster_array[_monster_name] + " " + _monster_name);
- Say(_monster_array[_monster_name] + " " + _monster_name);
- Delay(400);
- }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement