Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //cmd vars - do NOT touch
- var _MyDT_PreMessage = "";
- var _sealpos = 0;
- var safex;
- var safey;
- var prevx;
- var prevy;
- //leader var, will be in char config, maybe
- var leader = "Dagger";
- 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("NTBotGame.ntj", "NTTM_CheckAct()");
- return;
- }
- NTC_Delay(1000);
- if(!NTTM_CheckAct(4)) {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
- return;
- }
- RegisterEvent(EVENT_GAMEMSG, quitfunc);
- TD_File("NTBot/bots/TeamD.txt", 1);
- if(me.classid == 1) {
- if(!NTTM_CheckAct(1)) {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
- return;
- }
- if(NTConfig_DelayStart)
- Say("When seal boss is dead, town!")
- NTC_Delay(5000);
- Say("darjkeel is excellent mayor of awesome town, he maket rules now!")
- Print("Loading sorc function");
- NTTMGR_TownManager();
- TD_Sorcfunc();
- }
- if(me.classid == 3) {
- Print("Loading hammer function");
- NTTMGR_TownManager();
- NTTM_TownMove("portalspot");
- while(1) {
- TD_TeamCommands();
- Delay(200);
- }
- }
- if(me.classid == 4) {
- Print("Loading barb function");
- NTTMGR_TownManager();
- NTTM_TownMove("portalspot");
- while(1) {
- TD_TeamCommands();
- Delay(200);
- }
- }
- if(me.classid == 4) {
- Print("Loading Necro function");
- NTTMGR_TownManager();
- NTTM_TownMove("portalspot");
- while(1) {
- TD_TeamCommands();
- Delay(200);
- }
- }
- if(me.classid == 3) {
- Print("Loading Leech Din");
- NTTMGR_TownManager();
- NTTM_TownMove("portalspot");
- while(1) {
- TD_TeamCommands();
- Delay(200);
- }
- }
- NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
- }
- function TD_Sorcfunc() { //work in progress!
- NTC_Delay(500);
- if(!NTTM_TownMove("waypoint")) {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_TownMove()");
- return;
- }
- if(!NTM_TakeWaypoint(107)) {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTM_TakeWaypoint()");
- return;
- }
- NTC_Delay(500);
- NTM_MoveTo(me.areaid, me.x+5, me.y);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- TD_File("NTBot/bots/TeamD.txt", 1, ".bo");
- Say("Bo Time")
- while(!me.GetState(32))
- NTC_Delay(500);
- Say("darjkeel also stunning handsome and sexy!")
- NTP_DoPrecast(true);
- if(!TD_MoveTo(108, 7802, 5591)) { //urdars! and svs!
- NTC_SendMsgToScript("NTBotGame.ntj", "TD_MoveTo()");
- return;
- }
- if(TD_DetectLayout(1) == 1) {
- TD_MoveTo(me.areaid, 7701, 5299);
- TD_Deploy(7681, 5299, 0, 0, 15, 15);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- } else {
- TD_MoveTo(me.areaid, 7700, 5313);
- TD_Deploy(7680, 5313, 15, 15, 0, 0);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- }
- TD_File("NTBot/bots/TeamD.txt", 1, ".s1"); //vizier
- Say("Vizier Up")
- if(!TD_VizierSeal()){
- NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
- return;
- }
- NTM_MoveTo(me.areaid, safex, safey);
- NTC_CastSkill(64)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTC_CastSkill(44)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTA_KillMonster(GetLocaleString(2851));
- NTA_ClearPosition(0);
- NTM_MoveTo(me.areaid, safex, safey);
- Say("Vizier Dead")
- NTA_ClearPosition(0);
- NTSI_PickItems();
- if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
- {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
- return;
- }
- NTP_DoPrecast(true);
- if(TD_DetectLayout(3) == 1) {
- TD_MoveTo(me.areaid, 7900, 5291);
- TD_Deploy(7920, 5291, 15, 15, 0, 0);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- } else {
- TD_MoveTo(me.areaid, 7910, 5278);
- TD_Deploy(7930, 5278, 0, 15, 15, 0);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- }
- TD_File("NTBot/bots/TeamD.txt", 1, ".s3"); //infector
- Say("Infector Up")
- if(!TD_InfectorSeal()){
- NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
- return;
- }
- NTM_MoveTo(me.areaid, safex, safey);
- NTC_CastSkill(64)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTC_CastSkill(44)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTA_KillMonster(GetLocaleString(2853));
- NTA_ClearPosition(0);
- NTM_MoveTo(me.areaid, safex, safey);
- Say("Infector Dead")
- NTA_ClearPosition(0);
- NTSI_PickItems();
- if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
- {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
- return;
- }
- NTP_DoPrecast(true);
- if(TD_DetectLayout(2) == 1) {
- TD_MoveTo(me.areaid, 7776, 5230);
- TD_Deploy(7776, 5220, 0, 0, 15, 15);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- } else {
- TD_MoveTo(me.areaid, 7779, 5200);
- TD_Deploy(7779, 5180, 0, 0, 15, 15);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- }
- TD_File("NTBot/bots/TeamD.txt", 1, ".s2"); //de seis
- Say("Seis Up")
- if(!TD_DeSeisSeal()){
- NTC_SendMsgToScript("NTBotGame.ntj", "Seal opening");
- return;
- }
- NTM_MoveTo(me.areaid, safex, safey);
- NTC_CastSkill(64)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTC_CastSkill(44)
- NTC_CastSkill(42)
- NTC_CastSkill(64)
- NTA_ClearPosition(0);
- NTA_KillMonster(GetLocaleString(2852));
- NTM_MoveTo(me.areaid, safex, safey);
- NTC_Delay(7000);
- Say("Seis Dead")
- NTA_ClearPosition(0);
- NTSI_PickItems();
- if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
- {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTTMGR_CheckSafe()");
- return;
- }
- NTP_DoPrecast(true);
- if(!NTM_MoveTo(me.areaid, 7745, 5245)) {
- NTC_SendMsgToScript("NTBotGame.ntj", "NTM_MoveTo()");
- return;
- }
- NTM_MakeTP();
- Say("Diablo Up")
- TD_File("NTBot/bots/TeamD.txt", 1, ".d");
- if(!NTA_KillMonster(243)) {
- NTC_Delay(30000);
- return;
- }
- NTSI_PickItems();
- Say("Diablo Dead")
- //anything else?
- }
- //--internal functions--
- function quitfunc(msg, type) { //quit when leader leaves game
- if(msg.indexOf(leader) != -1 && (msg.indexOf("weaken") != -1 || msg.indexOf("timeout") != -1)) { //if leader quits
- //if(msg.indexOf("weaken") != -1 || msg.indexOf("timeout") != -1) { //if anyone quits
- NTC_Delay(500);
- ExitGame();
- }
- }
- function TD_Preattack(classid, extrahammers) { //extra hammers = hammers cast after the seal boss is spawned
- NTC_PutSkill(NTConfig_AttackSkill[4], NTC_HAND_RIGHT);
- while(!NTC_FindUnit(NTC_UNIT_MONSTER, classid))
- NTC_CastSkill(NTConfig_AttackSkill[3], 2);
- for(var i = 0 ; i < extrahammers ; i++) {
- NTC_CastSkill(NTConfig_AttackSkill[3], 2);
- }
- }
- function TD_VizierSeal() { //vizier
- for(var i = 0 ; i < 5 ; i++){
- NTM_MoveToPresetUnit(me.areaid, 2, 395);
- var _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 395, 5);
- NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
- NTC_Delay(350);
- if(_seal.mode <= 0)
- NTM_MoveTo(me.areaid, safex, safey);
- else
- break;
- NTC_Delay(250);
- if(i == 4 && _seal.mode <= 0)
- return false;
- }
- for(i = 0 ; i < 5 ; i++){
- NTM_MoveToPresetUnit(me.areaid, 2, 396);
- _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 396, 5);
- NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
- NTC_Delay(350);
- if(_seal.mode <= 0)
- NTM_MoveTo(me.areaid, safex, safey);
- else
- break;
- NTC_Delay(250);
- if(i == 4 && _seal.mode <= 0)
- return false;
- }
- return true;
- }
- function TD_DeSeisSeal(){ //de seis
- for(var i = 0 ; i < 5 ; i++){
- NTM_MoveToPresetUnit(me.areaid, 2, 394);
- _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 394, 5);
- NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
- NTC_Delay(350);
- if(_seal.mode <= 0)
- NTM_MoveTo(me.areaid, safex, safey);
- else
- break;
- NTC_Delay(250);
- if(i == 4 && _seal.mode <= 0)
- return false;
- }
- return true;
- }
- function TD_InfectorSeal() { //infector
- for(var i = 0 ; i < 5 ; i++){
- NTM_MoveToPresetUnit(me.areaid, 2, 393);
- _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 393, 5);
- NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
- NTC_Delay(350);
- if(_seal.mode <= 0)
- NTM_MoveTo(me.areaid, safex, safey);
- else
- break;
- NTC_Delay(250);
- if(i == 4 && _seal.mode <= 0)
- return false;
- }
- for(i = 0 ; i < 5 ; i++){
- NTM_MoveToPresetUnit(me.areaid, 2, 392);
- _seal = NTC_FindUnit(NTC_UNIT_OBJECT, 392, 5);
- NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _seal);
- NTC_Delay(350);
- if(_seal.mode <= 0)
- NTM_MoveTo(me.areaid, safex, safey);
- else
- break;
- NTC_Delay(250);
- if(i == 4 && _seal.mode <= 0)
- return false;
- }
- return true;
- }
- function TD_TeamCommands() {
- var _msg = TD_File("NTBot/bots/TeamD.txt", 0);
- if (_msg && _msg != _MyDT_PreMessage) {
- _MyDT_PreMessage = _msg;
- switch (_msg.substring(_msg.indexOf("/") + 1)) {
- case ".bo":
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 107, leader);
- NTC_Delay(500);
- NTP_DoPrecast(true);
- while(!me.GetState(32))
- NTC_Delay(3500);
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 107, leader);
- while(!me.GetState(32))
- NTP_DoPrecast(false);
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- if(me.classid == 2) { //Necro
- NTM_UsePortal("BluePortal", 107, leader);
- NTC_Delay(500);
- NTP_DoPrecast(true);
- while(!me.GetState(32))
- NTC_Delay(3500);
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- break;
- case ".s1": //vizier
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 108, leader);
- TD_Preattack(GetLocaleString(2851), 5);
- TD_KillMonster(GetLocaleString(2851));
- NTA_ClearPosition(5);
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- NTP_DoPrecast(true);
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 108, leader);
- NTC_CastSkill(130);
- NTP_DoPrecast(false);
- NTC_CastSkill(130);
- NTC_Delay(2000);
- TD_KillMonster(GetLocaleString(2851));
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- break;
- case ".s2": //de seis
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 108, leader);
- TD_Preattack(GetLocaleString(2852), 10);
- TD_KillMonster(GetLocaleString(2852));
- NTA_ClearPosition(15);
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- NTP_DoPrecast(true);
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 108, leader);
- NTC_CastSkill(130);
- NTP_DoPrecast(true);
- NTC_CastSkill(130);
- NTC_Delay(2000);
- TD_KillMonster(GetLocaleString(2852));
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- break;
- case ".s3": //infector
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 108, leader);
- TD_Preattack(GetLocaleString(2853), 5);
- TD_KillMonster(GetLocaleString(2853));
- NTA_ClearPosition(15);
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- NTP_DoPrecast(true);
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 108, leader);
- NTC_CastSkill(130);
- NTP_DoPrecast(false);
- NTC_CastSkill(130);
- NTC_Delay(2000);
- TD_KillMonster(GetLocaleString(2853));
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- break;
- case ".d":
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 108, leader);
- NTC_FindUnit(NTC_UNIT_MONSTER, 243, 100);
- if(!TD_KillMonster(243)) {
- NTC_SendMsgToScript("NTBotGame.ntj", "TD_KillMonster()");
- return;
- }
- NTSI_PickItems();
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 108, leader);
- if(!TD_KillMonster(243)) {
- NTP_DoPrecast(true);
- return;
- }
- NTSI_PickItems();
- }
- break;
- case ".u": //urdars! and svs!
- if(me.classid == 3) { //Hammerdin
- NTM_UsePortal("BluePortal", 108, leader);
- if(NTC_FindUnit(NTC_UNIT_MONSTER, 362))
- TD_Preattack(362, 5);
- else if(NTC_FindUnit(NTC_UNIT_MONSTER, 189))
- TD_Preattack(189, 5);
- NTA_ClearPosition(15);
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- NTP_DoPrecast(true);
- }
- if(me.classid == 4) { //Barb
- NTM_UsePortal("BluePortal", 108, leader);
- if(NTC_FindUnit(NTC_UNIT_MONSTER, 362))
- TD_Preattack(362, 5);
- else if(NTC_FindUnit(NTC_UNIT_MONSTER, 189))
- TD_Preattack(189, 5);
- NTSI_PickItems();
- if(!NTM_UsePortal("BluePortal", 103, leader)) //or make my own?
- NTTM_CheckAct();
- }
- break;
- }
- }
- }
- function TD_DetectLayout(seal) {
- switch(seal) {
- case 1:
- _sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
- for(var i = 0 ; i < _sealpos.length ; i++) {
- if(_sealpos[i].id == 396) {
- if(_sealpos[i].roomy*5 + _sealpos[i].y == 5275)
- return 1;
- else
- return 2;
- break;
- }
- }
- break;
- case 2:
- _sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
- for(i = 0 ; i < _sealpos.length ; i++) {
- if(_sealpos[i].id == 394) {
- if(_sealpos[i].roomx*5 + _sealpos[i].x == 7773)
- return 1;
- else
- return 2;
- break;
- }
- }
- break;
- case 3:
- _sealpos = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT);
- for(i = 0 ; i < _sealpos.length ; i++) {
- if(_sealpos[i].id == 392) {
- if(_sealpos[i].roomx*5 + _sealpos[i].x == 7893)
- return 1;
- else
- return 2;
- break;
- }
- }
- break;
- }
- }
- function TD_IsPlayerOut(area) { //function by Thursty
- var _player;
- var _myPartyId;
- _player = GetPlayerUnit();
- _myPartyId = _player.partyid;
- if(arguments.length < 1)
- _area = me.areaid;
- else
- _area = area;
- do {
- if(_player.areaid == _area && _myPartyId == _player.partyid)
- return false;
- NTC_Delay(100);
- } while(_player.GetNext());
- return true;
- }
- function TD_File(path, mode, msg, delay) { //big thanks to all the koreans out there
- var _msg = "";
- var _line = "";
- var _fileHandle;
- var _isFileCheck = false;
- if (arguments.length < 3) msg = "";
- if (arguments.length < 4) delay = (mode > 0) ? 5 : 2;
- while (delay--) {
- if (mode == 2 && !_isFileCheck) {
- _fileHandle = FileOpen(path, 0);
- if (!_fileHandle)
- _fileHandle = FileOpen(path, 1);
- if (_fileHandle)
- _fileHandle.Close();
- _isFileCheck = true;
- }
- _fileHandle = FileOpen(path, mode);
- if (_fileHandle)
- break;
- if (delay)
- Delay(200);
- }
- if (_fileHandle) {
- if (mode == 0) {
- while (!_fileHandle.eof) {
- _line = _fileHandle.ReadLine();
- if (_line || !_fileHandle.eof)
- _msg += _line + msg;
- }
- }
- else if (msg)
- _fileHandle.WriteLine(msg);
- _fileHandle.Close();
- }
- return _msg;
- }
- function TD_MoveTo(areaid, x, y, retry, clearpath)
- {
- var i, n;
- var _teleport;
- var _path;
- var _retry = 0;
- if(x == me.x && y == me.y)
- return true;
- if(arguments.length < 4)
- retry = 3;
- if(arguments.length < 5)
- clearpath = false;
- if(NTC_InTown() || NTC_GetSkillLevel(54) < 1)
- _teleport = false;
- else
- _teleport = true;
- _path = GetPath(areaid, me.x, me.y, x, y, _teleport);
- if(!_path)
- return false;
- for(i = 0 ; i < _path.length ; i++)
- {
- for(n = 0 ; n < 2 ; n++)
- {
- if(_teleport)
- {
- if(NTM_TeleportTo(_path[i][0], _path[i][1])){
- if(TDConfig_FindUrdarsAndVenoms)
- TD_FindUrdar();
- break;
- }
- }
- else
- {
- if(NTM_WalkTo(_path[i][0], _path[i][1]))
- break;
- }
- }
- if(n < 2)
- {
- if(clearpath)
- {
- if(!NTA_ClearPosition(20, true, 2))
- return false;
- NTP_DoPrecast(false);
- NTM_MoveTo(me.areaid, _path[i][0], _path[i][1], 1);
- }
- }
- else if(_retry < retry)
- {
- _path = GetPath(areaid, me.x, me.y, x, y, _teleport);
- if(!_path)
- return false;
- i = -1;
- _retry++;
- }
- else
- return false;
- }
- return true;
- }
- function TD_FindUrdar(){
- var _urdar = NTC_FindUnit(NTC_UNIT_MONSTER, 189);
- var _sv = NTC_FindUnit(NTC_UNIT_MONSTER, 362);
- if(_urdar){
- do{
- if (_urdar.classid == 189 && (_urdar.spectype == 9 || _urdar.spectype == 17) && _urdar.mode != 0 && _urdar.hp > 0 && _urdar.mode != 12 && _urdar.IsAttackable()){
- NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc8Killing Urdars!"); //COMMENT THIS LINE IF TESTING IS SUCCESSFUL
- //NTM_MoveTo(me.areaid, _urdar.x, _urdar.y);
- TD_Deploy(_urdar.x, _urdar.y, 20, 20, 0, 20);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- TD_File("NTBot/bots/TeamD.txt", 1, ".u");
- NTA_ClearPosition(12);
- while(!TD_IsPlayerOut()) {
- NTA_ClearPosition();
- NTSI_PickItems();
- }
- TD_File("NTBot/bots/TeamD.txt", 1, "bla");
- NTC_Delay(250);
- break;
- }
- } while(_urdar.GetNext());
- }
- else if(_sv){
- do{
- if (_sv.classid == 362 && (_sv.spectype == 9 || _sv.spectype == 17) && _sv.mode != 0 && _sv.hp > 0 && _sv.mode != 12 && _sv.IsAttackable()){
- NTC_SendLogToOOG(NTC_LOG_COMMON, "ÿc8Killing Super Venoms!"); //COMMENT THIS LINE IF TESTING IS SUCCESSFUL
- //NTM_MoveTo(me.areaid, _sv.x, _sv.y);
- TD_Deploy(_sv.x, _sv.y, 20, 20, 0, 20);
- for(var i = 0 ; i < 5 ; i++) {
- if(NTM_MakeTP())
- break;
- }
- prevx = me.x;
- prevy = me.y;
- TD_File("NTBot/bots/TeamD.txt", 1, ".u");
- NTA_ClearPosition(15);
- while(!TD_IsPlayerOut()) {
- NTA_ClearPosition();
- NTSI_PickItems();
- NTM_MoveTo(me.areaid, prevx, prevy);
- }
- TD_File("NTBot/bots/TeamD.txt", 1, "bla");
- NTC_Delay(250);
- break;
- }
- } while(_sv.GetNext());
- }
- }
- function TD_Deploy(x, y, plusx, minusx, plusy, minusy) { //you can build up to 5 positions (x-shaped), center position is x, y; rest are +/- offsets
- var _monster = NTC_FindUnit(NTC_UNIT_MONSTER);
- var num = [0, 0, 0, 0, 0];
- var firstnum = 100;
- if(!_monster)
- return NTM_MoveTo(me.areaid, x, y);
- do {
- if(GetDistance(_monster.x, _monster.y, x, y) <= 15)
- if(_monster.classid != 306)
- num[0]++;
- if(GetDistance(_monster.x, _monster.y, x + plusx, y) <= 15)
- if(_monster.classid != 306)
- num[1]++;
- if(GetDistance(_monster.x, _monster.y, x - minusx, y) <= 15)
- if(_monster.classid != 306)
- num[2]++;
- if(GetDistance(_monster.x, _monster.y, x, y + plusy) <= 15)
- if(_monster.classid != 306)
- num[3]++;
- if(GetDistance(_monster.x, _monster.y, x, y - minusy) <= 15)
- if(_monster.classid != 306)
- num[4]++;
- }while(_monster.GetNext())
- for(var i = 0 ; i < num.length ; i++) {
- //Print("ÿc1" + num[i] + " ÿc:monsters at position ÿc;" + i); //doesn't count storm casters as of v0.8
- if(num[i] < firstnum)
- firstnum = num[i];
- }
- if(firstnum == num[0]) {
- safex = x;
- safey = y;
- NTM_MoveTo(me.areaid, x, y);
- }
- else if(firstnum == num[1]) {
- safex = x + plusx;
- safey = y;
- NTM_MoveTo(me.areaid, x + plusx, y);
- }
- else if(firstnum == num[2]) {
- safex = x - minusx;
- safey = y;
- NTM_MoveTo(me.areaid, x - minusx, y);
- }
- else if(firstnum == num[3]) {
- safex = x;
- safey = y + plusy;
- NTM_MoveTo(me.areaid, x, y + plusy);
- }
- else if(firstnum == num[4]) {
- safex = x;
- safey = y - minusy;
- NTM_MoveTo(me.areaid, x, y - minusy);
- }
- }
- function TD_KillMonster(classid)
- {
- var _target;
- if(NTConfig_AttackSkill[1] < 1)
- return false;
- _target = NTC_FindUnit(NTC_UNIT_MONSTER, classid, 5);
- if(!_target)
- return false;
- if(_target.IsAttackable())
- {
- var _attackcount = 0;
- while(_attackcount < 300 && NTA_IsValidMonster(_target))
- {
- if(NTA_Attack(_target, (_attackcount%30) == 0) < 2)
- break;
- if((_attackcount%10) == 5)
- NTM_MoveTo(me.areaid, _target.x+5, _target.y);
- else if((_attackcount%10) == 0)
- NTM_MoveTo(me.areaid, _target.x, _target.y+5);
- _attackcount++;
- }
- }
- return (_target.hp <= 0 || _target.mode == 0 || _target.mode == 12);
- }
Add Comment
Please, Sign In to add comment