hi ich wollt gerne das der nur organe holt und nicht den ut öffnet ich habe mal versucht daran zu zaubern aber irgendwie kommt dan immer eine fhelermeldung hier mal die orginale wär cool wenn da einer mal helfen könnte!
hier mal die orginale!
ich hät gedacht das zu löschen
aber da kommt die fehlermeldung
[Only registered and activated users can see links. Click Here To Register...]
MFG
Matze
hier mal die orginale!
Code:
//OrganFarmer put together by stairbuilder
//a monkey with pretty colored multi shaped blocks production
//look for credits in the comments
//Thanks to Roflman who is always nice enough to let me bounce stuff off of him
//THanks aslo to kiss me angel who's script inspired, and partially was stolen from to make this
//thanks to Kolton for some ideas on duriel
// modded by D2OD
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
NTA_Initialize();
Print(" ˙c;OrganFarmerPlusTorcher Start ");//s
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
var KeyofTerror = me.GetItems("pk1");
var KeyofHate = me.GetItems("pk2");
var KeyofDestruction = me.GetItems("pk3");
var mephistosbrain = me.GetItems("mbr");
var baalseye = me.GetItems("bey");
var diabloshorn = me.GetItems("dhn");
if((!mephistosbrain || mephistosbrain.length < 1) || (!baalseye || baalseye.length < 1) || (!diabloshorn || diabloshorn.length < 1) || NTOF_CheckKeptTorch())
{
if(!NTOF_CheckKeptTorch())
Print('Not enough organs => checking keys');
else
Print('Farming organs (i already have a torch) => checking keys!');
if((!KeyofTerror || KeyofTerror.length < 3) || (!KeyofHate || KeyofHate.length < 3) || (!KeyofDestruction || KeyofDestruction.length < 3))
{
Print('Not enough keys => getting needed keys');
if(!KeyofTerror || KeyofTerror.length < 3)
{
Print('I need '+(3-(KeyofTerror ? KeyofTerror.length : 0))+' keys of Terror. => Starting Countess!');
if(!NTOF_KillCountess())
{
//NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_KillCountess()");
//return;
}
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
}
if(!KeyofHate || KeyofHate.length < 3)
{
Print('I need '+(3-(KeyofHate ? KeyofHate.length : 0))+' keys of Hate. => Starting Summoner!');
if(!NTOF_KillSummoner())
{
//NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_KillSummoner()");
//return;
}
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
}
if(!KeyofDestruction || KeyofDestruction.length < 3)
{
Print('I need '+(3-(KeyofDestruction ? KeyofDestruction.length : 0))+' keys of Destruction. => Starting Nilhatack!');
if(!NTOF_KillNilhatack())
{
//NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_KillNilhatack()");
//return;
}
if(!NTTM_CheckAct())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
}
KeyofTerror = me.GetItems("pk1");
KeyofHate = me.GetItems("pk2");
KeyofDestruction = me.GetItems("pk3");
if((!KeyofTerror || KeyofTerror.length < 3) || (!KeyofHate || KeyofHate.length < 3) || (!KeyofDestruction || KeyofDestruction.length < 3))
{
Print('Still not enough keys... => NextGame!');
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
return;
}
}
Print('I have enough keys => lets open the mini ubers!');
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTConfig_AttackSkill[1] = 97; // smite
NTConfig_MercLifeThresh = 0;
NTConfig_MercRejuvThresh = 0; //won't waste pots on merc
NTConfig_UseMerc = false; //won't revive merc now
var open_mini_uber = true;
while(open_mini_uber)
{
me.maxgametime = 3600; // 1 hour
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(NTConfig_PreBuffFade && me.GetStat(181) < 1)// another rip off from kiss me angle, but it just was to good not to include
NTOF_PreBuffFade();
NTOF_CubeKeys();
NTOF_EnterRedPortal();
if(!NTOF_Kill_Mini_Uber())
{
//NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_Kill_Mini_Uber()");
//return;
}
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
mephistosbrain = me.GetItems("mbr");
baalseye = me.GetItems("bey");
diabloshorn = me.GetItems("dhn");
if(mephistosbrain && mephistosbrain.length >= 1 && baalseye && baalseye.length >= 1 && diabloshorn && diabloshorn.length >= 1 && !NTOF_CheckKeptTorch())
open_mini_uber = false;
KeyofTerror = me.GetItems("pk1");
KeyofHate = me.GetItems("pk2");
KeyofDestruction = me.GetItems("pk3");
if((!KeyofTerror || KeyofTerror.length < 1) || (!KeyofHate || KeyofHate.length < 1) || (!KeyofDestruction || KeyofDestruction.length < 1))
open_mini_uber = false;
}
if((!mephistosbrain || mephistosbrain.length < 1) || (!baalseye || baalseye.length < 1) || (!diabloshorn || diabloshorn.length < 1))
{
Print('˙c1How strange! I couldn\'t kill one of the mini uber??');
Print('Still not enough organs... => NextGame!');
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
return;
}
}
if(mephistosbrain && mephistosbrain.length >= 1 && baalseye && baalseye.length >= 1 && diabloshorn && diabloshorn.length >= 1 && !NTOF_CheckKeptTorch())
{
// if(NTOF_CheckKeptTorch())
// NTOF_Idle();
me.maxgametime = 3600; // 1 hour
NTConfig_AttackSkill[1] = 97; // smite
NTConfig_MercLifeThresh = 0;
NTConfig_MercRejuvThresh = 0; //won't waste pots on merc
NTConfig_UseMerc = false; //won't revive merc now
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTTMGR_TownManager();
if(NTConfig_PreBuffFade && me.GetStat(181) < 1)// another rip off from kiss me angle, but it just was to good not to include
NTOF_PreBuffFade();
Print('Opening Uber Tristram!');
NTOF_CubeOrgans();
NTOF_EnterRedPortal();
if(!NTOF_UberTristram())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_UberTristram()");
return;
}
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTOF_CheckKeptTorch();
}
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}
// internal functions
function NTOF_EnterRedPortal()
{
var _portal = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3226))
if(_portal)
{
while(GetDistance(me, _portal) > 15)
_portal.GetNext();
do
{
if(NTM_GetCloserInt(_portal))
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
NTC_Delay(100);
if(me.areaid != 109)
break;
} while(_portal);
}
}
function NTOF_Kill_Mini_Uber()
{
if(me.areaid == 133)
{
Print(" ˙c;Killing Lillith")//i
Print(" ˙c;2Love Those Boobs")
return NTOF_KillUberLilith();
}
else if(me.areaid == 134)
{
Print(" ˙c;Killing Duriel")
return NTOF_KillUberDuriel();
}
else if(me.areaid == 135)
{
Print(" ˙c;Killing Izzy")//r
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
return NTOF_KillUberIzual();
}
else
{
Print("˙c1I'm not in any mini uber level!");
return false;
}
}
function NTOF_CheckKeptTorch()
{
var HellFireTorch = me.GetItems("cm2");
if(HellFireTorch && HellFireTorch.length > 0)
{
Print(" ˙c!Already Have A Torch");
if(NTSI_CheckItem(HellFireTorch[0]) == 0)
{
if(HellFireTorch[0].itemloc == 4)
{
// go find it in stash
if(!NTTM_CheckAct(5))
return true;
if(!NTTM_TownMove("stash"))
return true;
var _stash;
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
if(!_stash)
return true;
if(!NTT_DoInteract(_stash))
return true;
NTT_ManageStash();
// drop it
if(NTC_ItemToCursor(HellFireTorch[0]))
{
while(GetUIState(0x19))
{
me.Cancel(1);
NTC_Delay(500);
}
NTC_ClearCursor();
}
return false;
}
else if(HellFireTorch[0].itemloc == 0)
{
// drop it
SetUIState(0x01);
NTT_DropItem(HellFireTorch[0]);
me.Cancel(1);
return false;
}
else
{
// bug here :/ => where is the torch???
Print("˙c1uhhhh, where is my torch? : itemloc "+HellFireTorch[0].itemloc);
return true;
}
}
else if(NTSI_CheckItem(HellFireTorch[0]) == -1)
{
if(HellFireTorch[0].itemloc == 4)
{
// go find it in stash
NTTM_CheckAct(5);
NTTM_TownMove("stash");
var _stash;
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
if(!_stash)
return false;
if(!NTT_DoInteract(_stash))
return false;
NTT_ManageStash();
// pick up torch
var _invspace = new Array(4);
for(var y = 0 ; y < 4 ; y++)
_stashspace[y] = new Array(10);
for(var y = 0 ; y < 4 ; y++)
for(var x = 0 ; x < 10 ; x++)
_stashspace[y][x] = NTConfig_Columns[y][x];
_items = me.GetItems(0);
if(_items)
for(var i = 0 ; i < _items.length ; i++)
for(var y = 0 ; y < _items[i].ysize ; y++)
for(var x = 0 ; x < _items[i].xsize ; x++)
_invspace[y+_items[i].y][x+_items[i].x] = 0;
for(var y = 0 ; y < 4 ; y++)
{
for(var x = 0 ; x < 10 ; x++)
{
var _havespace = true;
for(var torchysize = 0; torchysize < HellFireTorch[0].ysize; torchysize++)
for(var torchxsize = 0; torchxsize < HellFireTorch[0].xsize; torchxsize++)
if(_invspace[y+torchysize][x+torchxsize] == 0)
_havespace = false;
if(_havespace)
{
if(NTC_ItemToCursor(HellFireTorch[0]))
{
for(n = 0 ; n < 80 ; n++)
{
if((n % 40) == 0)
me.ClickItem(0, x, y, 0);
NTC_Delay(100);
if(!me.itemoncursor)
break;
}
NTC_PingDelay(200);
}
}
}
}
if(HellFireTorch[0].itemloc != 0)
return true;
me.Cancel(1);
// ID it
NTTMGR_TownManager();
return NTOF_CheckKeptTorch();
}
else if(HellFireTorch[0].itemloc == 0)
{
// ID it
if(!NTTM_CheckAct(5))
return true;
NTTMGR_TownManager();
return NTOF_CheckKeptTorch();
}
else
{
// bug here :/ => where is the torch???
Print("˙c1uhhhh, where is my torch? : itemloc "+HellFireTorch[0].itemloc);
return true;
}
}
else
{
Print("I should keep that torch!");
return true;
}
}
return false;
}
function NTOF_UberTristram()
{
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
var _old = NTConfig_AttackSkill[2];
if(NTC_PutSkill(125, NTC_HAND_RIGHT))
NTConfig_AttackSkill[2] = 125; // salvation
var _tomeph = [25040,5101, 25040, 5166, 25122, 5173];//takes you to trap house 1/2 second delay then to kill spot
for(i = 0; i < _tomeph.length; i += 2)
{
if(!NTM_MoveTo(me.areaid, _tomeph[i], _tomeph[i+1]))
return false;
NTC_Delay(1500);
}
if(!NTM_MoveTo(me.areaid, 25129, 5208)) // meph kill spot
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
NTC_Delay(1000);
var retry = 0;
while(!NTA_KillMonster(704) && retry < 10) //meph
{
retry++;
NTM_MoveTo(me.areaid,25122+retry, 5173-retry);
Delay(1000);
NTM_MoveTo(me.areaid, 25129, 5208); // meph kill spot
Delay(800);
}
if(retry == 10)
return false;
NTConfig_AttackSkill[2] = _old;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveTo(me.areaid, 25162, 5141)) // baal kill spot
return false;
NTC_Delay(2000);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTA_KillMonster(709))//baal
return false;
if(!NTA_KillMonster(705))//diablo
return false;
Print("˙c!Thanks For The Torch!");
NTSI_PickItems();
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveTo(me.areaid, 25103, 5141)) // back to portal
return false;
var _portal = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3226))
while(_portal)
{
if(NTM_GetCloserInt(_portal))
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
NTC_Delay(100);
if(me.areaid != 136)
break;
}
return true;
}
function NTOF_Idle()
{
NTTM_CheckAct(5);
while(true)
{
Print('I already have a good torch! I shouldn\'t open Uber Tristram... => Idle');
NTTM_TownMove("stash");
Delay(2500);
NTTM_TownMove("Larzuk");
Delay(2500);
}
}
function NTOF_CubeKeys()
{
var KeyofTerror = me.GetItems("pk1");
var KeyofHate = me.GetItems("pk2");
var KeyofDestruction = me.GetItems("pk3");
var cube = me.GetItems(NTC_UNIT_CUBE);
if(!KeyofTerror || KeyofTerror.length < 1 || !KeyofHate || KeyofHate.length < 1 || !KeyofDestruction || KeyofDestruction.length < 1 || !cube || cube.length < 1 || !NTTM_CheckAct(5))
return false;
var _cube = cube[0];
// checking if we have a keyset in inventory, or if we need to go to stash
var terror_in_inv = false;
for(var i = 0; i < KeyofTerror.length; i++)
{
if(KeyofTerror[i].itemloc == 0)
{
terror_in_inv = true;
break;
}
}
var hate_in_inv = false;
for(var i = 0; i < KeyofHate.length; i++)
{
if(KeyofHate[i].itemloc == 0)
{
hate_in_inv = true;
break;
}
}
var dest_in_inv = false;
for(var i = 0; i < KeyofDestruction.length; i++)
{
if(KeyofDestruction[i].itemloc == 0)
{
terror_in_inv = true;
break;
}
}
// checking if we have the cube in inventory
var cube_in_inv = _cube.itemloc == 0;
if(NTCU_CheckCubeInventoryInt() > 0)
cube_in_inv = false; // we have something in the cube, we need to stash it.
if(!(terror_in_inv && hate_in_inv && dest_in_inv && cube_in_inv))
{
// we need to go to stash
NTTM_CheckAct(5);
NTTM_TownMove("stash");
var _stash;
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
if(!_stash)
return false;
if(!NTT_DoInteract(_stash))
return false;
NTT_ManageStash();
// empty the cube
if(NTCU_CheckCubeInventoryInt() > 0)
{
if(!NTCU_OpenCubeInt(_cube))
return false;
if(NTCU_ClearCubeInt() < 1)
return false;
NTCU_CloseCubeInt();
NTT_ManageStash();
}
// pick up cube
if(_cube.itemloc != 0)
{
var _invspace = new Array(4);
for(var y = 0 ; y < 4 ; y++)
_invspace[y] = new Array(10);
for(var y = 0 ; y < 4 ; y++)
for(var x = 0 ; x < 10 ; x++)
_invspace[y][x] = 1;
_items = me.GetItems();
if(_items)
for(var i = 0 ; i < _items.length ; i++)
if(_items[i].itemloc == 0)
for(var y = 0 ; y < _items[i].ysize ; y++)
for(var x = 0 ; x < _items[i].xsize ; x++)
_invspace[y+_items[i].y][x+_items[i].x] = 0;
/*
for(var y = 0 ; y < 4 ; y++)
{
var debug = "";
for(var x = 0 ; x < 10 ; x++)
debug += _invspace[y][x];
Print(debug);
}
*/
var _havespace = true;
for(var y = 0 ; y < 4 ; y++)
{
for(var x = 0 ; x < 10 ; x++)
{
_havespace = true;
for(var cubeysize = 0; cubeysize < _cube.ysize; cubeysize++)
for(var cubexsize = 0; cubexsize < _cube.xsize; cubexsize++)
if(y+cubeysize > 3 || x+cubexsize > 9 || _invspace[y+cubeysize][x+cubexsize] == 0)
_havespace = false;
if(_havespace)
{
if(NTC_ItemToCursor(_cube))
{
for(n = 0 ; n < 80 ; n++)
{
if((n % 40) == 0)
me.ClickItem(0, x, y, 0);
NTC_Delay(100);
if(!me.itemoncursor)
break;
}
NTC_PingDelay(200);
}
if(!me.itemoncursor)
break;
}
}
if(_havespace && !me.itemoncursor)
break;
}
if(_cube.itemloc != 0)
return false;
}
// put the keys inside the cube
//if(!NTCU_OpenCubeInt(_cube))
// return false;
KeyofTerror = me.GetItems("pk1");
KeyofHate = me.GetItems("pk2");
KeyofDestruction = me.GetItems("pk3");
for(var i = 0; i < KeyofTerror.length; i++)
{
if(terror_in_inv && KeyofTerror[i].itemloc == 4 && i < KeyofTerror.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofTerror[i]))
return false;
else
break;
}
for(var i = 0; i < KeyofHate.length; i++)
{
if(hate_in_inv && KeyofHate[i].itemloc == 4 && i < KeyofHate.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofHate[i]))
return false;
else
break;
}
for(var i = 0; i < KeyofDestruction.length; i++)
{
if(dest_in_inv && KeyofDestruction[i].itemloc == 4 && i < KeyofDestruction.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofDestruction[i]))
return false;
else
break;
}
//NTT_ManageStash();
// close stash
me.Cancel(1);
}
else
{
// open inventory
SetUIState(0x01, true);
// put the keys inside the cube
//if(!NTCU_OpenCubeInt(_cube))
//return false;
KeyofTerror = me.GetItems("pk1");
KeyofHate = me.GetItems("pk2");
KeyofDestruction = me.GetItems("pk3");
for(var i = 0; i < KeyofTerror.length; i++)
{
if(terror_in_inv && KeyofTerror[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofTerror[i]))
return false;
else
break;
}
for(var i = 0; i < KeyofHate.length; i++)
{
if(hate_in_inv && KeyofHate[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofHate[i]))
return false;
else
break;
}
for(var i = 0; i < KeyofDestruction.length; i++)
{
if(dest_in_inv && KeyofDestruction[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, KeyofDestruction[i]))
return false;
else
break;
}
//NTCU_CloseCubeInt();
// close inventory
me.Cancel(1);
}
// moving to an openPortal spot
NTOF_MoveToOpenRedPortalSpot();
// open inventory
SetUIState(0x01, true);
// open cube
if(!NTCU_OpenCubeInt(_cube))
return false;
// transmute
if(!Transmute())
{
NTCU_CloseCubeInt();
me.Cancel(1);
return false;
}
NTC_PingDelay(800);
NTCU_CloseCubeInt();
me.Cancel(1);
return true;
}
function NTOF_CubeOrgans()
{
var mephistosbrain = me.GetItems("mbr");
var baalseye = me.GetItems("bey");
var diabloshorn = me.GetItems("dhn");
var cube = me.GetItems(NTC_UNIT_CUBE);
if(!mephistosbrain || mephistosbrain.length < 1 || !baalseye || baalseye.length < 1 || !diabloshorn || diabloshorn.length < 1 || !cube || cube.length < 1 || !NTTM_CheckAct(5))
return false;
var _cube = cube[0];
// checking if we have a keyset in inventory, or if we need to go to stash
var diabloshorn_in_inv = false;
for(var i = 0; i < diabloshorn.length; i++)
{
if(diabloshorn[i].itemloc == 0)
{
diabloshorn_in_inv = true;
break;
}
}
var mephistosbrain_in_inv = false;
for(var i = 0; i < mephistosbrain.length; i++)
{
if(mephistosbrain[i].itemloc == 0)
{
mephistosbrain_in_inv = true;
break;
}
}
var baalseye_in_inv = false;
for(var i = 0; i < baalseye.length; i++)
{
if(baalseye[i].itemloc == 0)
{
baalseye_in_inv = true;
break;
}
}
// checking if we have the cube in inventory
var cube_in_inv = _cube.itemloc == 0;
if(NTCU_CheckCubeInventoryInt() > 0)
cube_in_inv = false; // we have something in the cube, we need to stash it.
if(!(diabloshorn_in_inv && mephistosbrain_in_inv && baalseye_in_inv && cube_in_inv))
{
// we need to go to stash
NTTM_CheckAct(5);
NTTM_TownMove("stash");
var _stash;
for(var i = 0 ; i < 10 ; i++)
{
_stash = NTC_FindUnit(NTC_UNIT_OBJECT, NTC_UNIT_STASH);
if(_stash)
break;
}
if(!_stash)
return false;
if(!NTT_DoInteract(_stash))
return false;
NTT_ManageStash();
// empty the cube
if(NTCU_CheckCubeInventoryInt() > 0)
{
if(!NTCU_OpenCubeInt(_cube))
return false;
if(NTCU_ClearCubeInt() < 1)
return false;
NTCU_CloseCubeInt();
NTT_ManageStash();
}
// pick up cube
if(_cube.itemloc != 0)
{
var _invspace = new Array(4);
for(var y = 0 ; y < 4 ; y++)
_invspace[y] = new Array(10);
for(var y = 0 ; y < 4 ; y++)
for(var x = 0 ; x < 10 ; x++)
_invspace[y][x] = 1;
_items = me.GetItems();
if(_items)
for(var i = 0 ; i < _items.length ; i++)
if(_items[i].itemloc == 0)
for(var y = 0 ; y < _items[i].ysize ; y++)
for(var x = 0 ; x < _items[i].xsize ; x++)
_invspace[y+_items[i].y][x+_items[i].x] = 0;
var _havespace = true;
for(var y = 0 ; y < 4 ; y++)
{
for(var x = 0 ; x < 10 ; x++)
{
_havespace = true;
for(var cubeysize = 0; cubeysize < _cube.ysize; cubeysize++)
for(var cubexsize = 0; cubexsize < _cube.xsize; cubexsize++)
if(y+cubeysize > 3 || x+cubexsize > 9 || _invspace[y+cubeysize][x+cubexsize] == 0)
_havespace = false;
if(_havespace)
{
if(NTC_ItemToCursor(_cube))
{
for(n = 0 ; n < 80 ; n++)
{
if((n % 40) == 0)
me.ClickItem(0, x, y, 0);
NTC_Delay(100);
if(!me.itemoncursor)
break;
}
NTC_PingDelay(200);
}
if(!me.itemoncursor)
break;
}
}
if(_havespace && !me.itemoncursor)
break;
}
if(_cube.itemloc != 0)
return false;
}
// put the keys inside the cube
//if(!NTCU_OpenCubeInt(_cube))
//return false;
mephistosbrain = me.GetItems("mbr");
baalseye = me.GetItems("bey");
diabloshorn = me.GetItems("dhn");
for(var i = 0; i < mephistosbrain.length; i++)
{
if(mephistosbrain_in_inv && mephistosbrain[i].itemloc == 4 && i < mephistosbrain.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, mephistosbrain[i]))
return false;
else
break;
}
for(var i = 0; i < baalseye.length; i++)
{
if(baalseye_in_inv && baalseye[i].itemloc == 4 && i < baalseye.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, baalseye[i]))
return false;
else
break;
}
for(var i = 0; i < diabloshorn.length; i++)
{
if(diabloshorn_in_inv && diabloshorn[i].itemloc == 4 && i < diabloshorn.length - 1)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, diabloshorn[i]))
return false;
else
break;
}
//NTCU_CloseCubeInt();
//NTT_ManageStash();
// close stash
me.Cancel(1);
}
else
{
// open inventory
SetUIState(0x01, true);
// put the keys inside the cube
//if(!NTCU_OpenCubeInt(_cube))
//return false;
mephistosbrain = me.GetItems("mbr");
baalseye = me.GetItems("bey");
diabloshorn = me.GetItems("dhn");
for(var i = 0; i < mephistosbrain.length; i++)
{
if(mephistosbrain[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, mephistosbrain[i]))
return false;
else
break;
}
for(var i = 0; i < baalseye.length; i++)
{
if(baalseye[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, baalseye[i]))
return false;
else
break;
}
for(var i = 0; i < diabloshorn.length; i++)
{
if(diabloshorn[i].itemloc == 4)
continue;
if(!NTCU_MoveItemToCubeInt(_cube, diabloshorn[i]))
return false;
else
break;
}
//NTCU_CloseCubeInt();
// close inventory
me.Cancel(1);
}
// moving to an openPortal spot
NTOF_MoveToOpenRedPortalSpot();
// open inventory
SetUIState(0x01, true);
// open cube
if(!NTCU_OpenCubeInt(_cube))
return false;
// transmute
if(!Transmute())
{
NTCU_CloseCubeInt();
me.Cancel(1);
return false;
}
NTC_PingDelay(800);
NTCU_CloseCubeInt();
me.Cancel(1);
return true;
}
var red_portal_spots = ["larzuk", "cain", "qual-kehk", "malah"];
var red_portal_index = 0;
function NTOF_MoveToOpenRedPortalSpot()
{
var _result = NTTM_TownMove(red_portal_spots[red_portal_index]);
red_portal_index++;
if(red_portal_index > red_portal_spots.length - 1)
red_portal_index = 0;
return _result;
}
function NTOF_KillUberLilith()
{
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToPresetUnit(me.areaid, NTC_UNIT_OBJECT, 397, 2, 2))
return false;
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTA_KillMonster(707))
return false;
NTC_PingDelay(100);
Print(" ˙c;Thanks for the Horn")
NTC_PingDelay(100);
NTSI_PickItems();
return true;
}
function NTOF_KillUberIzual()
{
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToPresetUnit(me.areaid, NTC_UNIT_OBJECT, 397, 2, 2))
return false;
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTA_KillMonster(706))
return false;
NTC_PingDelay(100);
Print(" ˙c;Thanks for the Brain")
NTC_PingDelay(200);
NTSI_PickItems();
return true;
}
function NTOF_KillUberDuriel()
{
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTOF_FindUberDuriel())
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
var UberDuriel = NTC_FindMonster(708);
if(!UberDuriel)
return false;
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
NTM_MoveTo(me.areaid, UberDuriel.x, UberDuriel.y);
if(!NTA_KillMonster(708))
return false;
NTC_PingDelay(100);
Print(" ˙c;Thanks for the Eye")
NTC_PingDelay(200);
NTSI_PickItems();
return true;
}
function NTOF_FindUberDuriel()
{
var FindLoc = [20196, 8694, 20308, 8588, 20187, 8639, 20100, 8550, 20103, 8688, 20144, 8709, 20263, 8811, 20247, 8665];
var _teleport;
var _path;
var _result;
for(var k = 0 ; k < FindLoc.length; k+=2)
{
if(NTC_InTown() || NTC_GetSkillLevel(54) < 1)
_teleport = false;
else
_teleport = true;
_path = GetPath(me.areaid, me.x, me.y, FindLoc[k], FindLoc[k+1], _teleport);
if(_path)
{
for(var i = 0 ; i < _path.length ; i++)
{
if(_teleport)
_result = NTM_TeleportTo(_path[i][0], _path[i][1]);
else
_result = NTM_WalkTo(_path[i][0], _path[i][1]);
if(NTC_FindMonster(708))
return true;
}
}
}
return false;
}
function NTC_FindMonster(classid, spectype)
{
var _monster;
if(arguments.length < 1)
return null;
if(arguments.length < 2)
spectype = 0;
for(var i = 0 ; i < 2 ; i++)
{
_monster = GetUnit(NTC_UNIT_MONSTER, classid);
if(_monster)
{
if(spectype)
{
do
{
if(_monster.spectype & spectype)
return _monster;
} while(_monster.GetNext());
}
else
return _monster;
}
if(i < 1)
NTC_PingDelay(NTC_DELAY_FRAME);
}
return null;
}
function NTOF_PreBuffFade()
{
var _result = false;
if(NTTM_CheckAct())
{
if(NTTM_TownMove("waypoint"))
{
if(NTM_TakeWaypoint(107))
{
NTP_DoPrecast(true);
NTM_MoveTo(me.areaid, 7811, 5872);
Print("˙c;Getting Buffed");
var timer = 0;
while(timer < 60001) // 1 min max
{
if(me.GetStat(181) > 0)
{
Print("˙c;There's Our Fade");
_result = true;
break;
}
NTC_Delay(200);
timer += 200;
}
if(timer > 60000)
Print("It was too long, moving on!");
if(NTTM_CheckAct(5))
NTTMGR_TownManager();
}
}
}
return _result;
}
function NTOF_KillCountess()
{
var _countess;
if(!NTTM_TownMove("waypoint"))
return false;
if(!NTM_TakeWaypoint(6))
return false;
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
for(var i = 0 ; i < 6 ; i++)
{
if(!NTM_MoveToStair(me.areaid, 20+i))
return false;
if(!NTM_TakeStair(20+i))
return false;
}
if(NTConfig_ClearPosition)
{
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
NTA_ClearPosition(10, true, 2);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
}
if(me.y > 11060 && me.y <= 11078)
{
if(!NTM_MoveTo(me.areaid, 12544, 11066))
return false;
}
else
{
if(!NTM_MoveTo(me.areaid, 12570, 11057))
return false;
}
_countess = NTC_FindUnit(NTC_UNIT_MONSTER, GetLocaleString(2875), 5);
if(!_countess)
return false;
if(me.y > 11060 && me.y <= 11078)
{
if(_countess.y <= 11054)
NTM_MoveTo(me.areaid, 12537, 11042);
if(_countess.y > 11056 && _countess.y <= 11070)
{
if(_countess.x < 12533)
NTM_MoveTo(me.areaid, 12518, 11057);
else
NTM_MoveTo(me.areaid, 12548, 11057);
}
if(_countess.y > 11070 && _countess.y <= 11085)
{
if(_countess.x < 12533)
NTM_MoveTo(me.areaid, 12518, 11083);
else
NTM_MoveTo(me.areaid, 12548, 11083);
}
if(_countess.y > 11086)
NTM_MoveTo(me.areaid, 12542, 11098);
}
else
{
if(_countess.x <= 12550)
{
NTM_MoveTo(me.areaid, 12562, 11057);
NTM_MoveTo(me.areaid, 12548, 11043);
}
if(_countess.x > 12550 && _countess.x <= 12561)
{
if(_countess.y < 11027)
NTM_MoveTo(me.areaid, 12577, 11043);
else
{
NTM_MoveTo(me.areaid, 12565, 11043);
NTM_MoveTo(me.areaid, 12577, 11025);
}
}
if(_countess.x > 12561 && _countess.x <= 12579)
{
if(_countess.y < 11027)
NTM_MoveTo(me.areaid, 12555, 11043);
else
{
NTM_MoveTo(me.areaid, 12565, 11043);
NTM_MoveTo(me.areaid, 12555, 11025);
}
}
if(_countess.x > 12579)
{
NTM_MoveTo(me.areaid, 12578, 11057);
NTM_MoveTo(me.areaid, 12582, 11043);
}
}
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTA_KillMonster(GetLocaleString(2875)))
return false;
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
if(NTConfig_OpenChest)
{
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToStair(me.areaid, 24))
return false;
if(me.areaid, me.x > 12565 && me.y > 11127)
{
if(!NTM_MoveTo(me.areaid, 12515, 11099))
NTM_MoveTo(me.areaid, 12603, 11014);
}
var _armor;
_armor = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3247), 1);
NTC_OpenChest(_armor);
var _weapon;
_weapon = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3248), 1);
NTC_OpenChest(_weapon);
}
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
return true;
}
function NTOF_KillSummoner()
{
if(!NTTM_TownMove("waypoint"))
return false;
if(!NTM_TakeWaypoint(74))
return false;
NTP_DoPrecast(true);
if(NTConfig_KillFireEye)
{
if(NTM_TakeUnit(NTC_UNIT_OBJECT, 298))
{
if(NTA_KillMonster(GetLocaleString(2885)))
{
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
}
if(!NTM_MoveToPresetUnit(me.areaid, NTC_UNIT_OBJECT, 298))
return false;
if(!NTM_TakeUnit(NTC_UNIT_OBJECT, 298))
return false;
}
}
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToPresetUnit(me.areaid, NTC_UNIT_OBJECT, 357, 2, 2))
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
if(!NTA_KillMonster(250))
return false;
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
return true;
}
var _NTNihlathak_Locations = new Array(8, 4);
_NTNihlathak_Locations[0] = [12519, 5203, 12522, 5227]; // Top Left
_NTNihlathak_Locations[1] = [12704, 5019, 12692, 5022]; // Top Right
_NTNihlathak_Locations[2] = [12705, 5391, 12723, 5413]; // Bottom Right
_NTNihlathak_Locations[3] = [12889, 5206, 12898, 5228]; // Bottom Left
_NTNihlathak_Locations[4] = [12519, 5203, 12522, 5196]; // Top Left
_NTNihlathak_Locations[5] = [12704, 5019, 12692, 5413]; // Top Right
_NTNihlathak_Locations[6] = [12705, 5391, 12727, 5022]; // Bottom Right
_NTNihlathak_Locations[7] = [12889, 5206, 12898, 5192]; // Bottom Left
function NTOF_KillNilhatack()
{
if(!NTTM_TownMove("waypoint"))
return false;
if(!NTM_TakeWaypoint(123))
{
me.Cancel(1);
if(!NTTM_CheckAct(5))
return false;
NTConfig_PindleskinExtension = false;
if(!NTTM_TownMove("portal"))
return false;
if(!NTM_UsePortal("Portal", 121))
return false;
NTP_DoPrecast(true);
if(!NTM_MoveTo(me.areaid, 10061, 13234))
return false;
if(NTA_KillMonster(GetLocaleString(22497)))
{
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
}
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToStair(me.areaid, 122))
return false;
if(!NTM_TakeStair(122))
return false;
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
if(!NTM_MoveToStair(me.areaid, 123))
return false;
if(!NTM_TakeStair(123))
return false;
}
NTP_DoPrecast(true);
if(NTConfig_SwitchTele)
NTC_SwapWeapons(1);
if(!NTM_MoveToStair(me.areaid, 124))
return false;
if(!NTM_TakeStair(124))
return false;
_location = NT_FindNihlathakInt();
if(_location == -1)
return false;
if(!NTM_MoveTo(me.areaid, _NTNihlathak_Locations[_location][2], _NTNihlathak_Locations[_location][3]))
return false;
if(NTConfig_SwitchTele)
NTC_SwapWeapons(0);
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return false;
if(NTA_KillMonster(526))
{
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
}
else
{
return false;
}
if(NTConfig_PindleskinExtension)
{
for(var i = 0 ; i < 2 ; i++)
{
if(!NTM_MoveToStair(me.areaid, 123-i))
return true;
if(!NTM_TakeStair(123-i))
return true;
}
if(!NTM_MoveToStair(me.areaid, 121))
return true;
if(!NTTMGR_CheckSafe(NTConfig_CheckSelfSafe, NTConfig_CheckMercSafe))
return true;
NTP_DoPrecast(false);
if(!NTM_TakeStair(121))
return true;
if(!NTM_MoveTo(me.areaid, 10061, 13234))
return true;
if(!NTA_KillMonster(GetLocaleString(22497)))
return true;
if(NTConfig_ClearPosition)
NTA_ClearPosition();
NTSI_PickItems();
}
return true;
}
function NT_FindNihlathakInt()
{
var i, x, y;
var _nihlathak;
var _mindist = 999999;
var _currdist;
var _location = -1;
_nihlathak = GetPresetUnits(me.areaid, NTC_UNIT_OBJECT, 462);
if(!_nihlathak || _nihlathak.length < 1)
return _location;
x = _nihlathak[0].roomx*5 + _nihlathak[0].x;
y = _nihlathak[0].roomy*5 + _nihlathak[0].y;
for(i = 0 ; i < 8 ; i++)
{
_currdist = GetDistance(_NTNihlathak_Locations[i][0], _NTNihlathak_Locations[i][1], x, y);
if(_currdist < _mindist)
{
_mindist = _currdist;
_location = i;
}
}
return _location;
}
ich hät gedacht das zu löschen
Code:
NTOF_CubeOrgans();
NTOF_EnterRedPortal();
if(!NTOF_UberTristram())
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTOF_UberTristram()");
return;
}
if(!NTTM_CheckAct(5))
{
NTC_SendMsgToScript("NTBotGame.ntj", "NTTM_CheckAct()");
return;
}
NTOF_CheckKeptTorch();
}
NTC_SendMsgToScript("NTBotGame.ntj", "SCRIPT_END");
}
// internal functions
function NTOF_EnterRedPortal()
{
var _portal = NTC_FindUnit(NTC_UNIT_OBJECT, GetLocaleString(3226))
if(_portal)
{
while(GetDistance(me, _portal) > 15)
_portal.GetNext();
do
{
if(NTM_GetCloserInt(_portal))
NTC_DoClick(NTC_CLICK_LDOWN, NTC_SHIFT_NONE, _portal);
NTC_Delay(100);
if(me.areaid != 109)
break;
} while(_portal);
}
}
[Only registered and activated users can see links. Click Here To Register...]
MFG
Matze