- function findLead(leader)
- {
- var _lead= getUnit(0, leader)
- if(_lead)
- return _lead.area;
- // leader not found look in party
- var area =0;
- var a = getParty();
- if(!a)
- return false;
- do {
- if (a.name==leader){
- area=a.area;
- }
- } while(a.getNext());
- if (area==0) {
- //sendCopyData(null, "OOG", 0,"Quit:Quit()" );
- return false;
- }
- return area;
- }
- var _NTLW_timerLastDrink = new Array(5);
- var myself;
- var pause = false;
- var _LifeMax
- var _ManaMax
- var _count = 0;
- var _mercHP;
- var _party, _mypartyid;
- var Result =" ";
- var Reason =" ";
- var _NTLW_timerLastDrink = new Array(5);
- var debugStr;
- function main()
- {
- Result =" ";
- Reason =" ";
- delay(500);
- //text "text",x,y,color,font,alingment
- //var LWHook = new Text("LWHook", 400, 550, 2, 6, 2);
- //var LWHook2 = new Text("", 400, 540, 2, 6, 2);
- include("common/NTCommon.dbl");
- NTC_IncludeConfig();
- var DrinkHP;
- var DrinkMP;
- var DrinkRV;
- var MercHP;
- var meHP;
- var meMP;
- var DrinkRVm;
- var LastAction =" " ;
- var _count = 0;
- var _LifeMax, _ManaMax;
- var _mercHP;
- var _party, _mypartyid;
- print("ÿc3Start ToolsThread script");
- NT_LoadConfig();
- _LifeMax = me.hpmax;
- _ManaMax = me.mpmax;
- if(NTConfig_LifeChicken > 0)
- me.chickenhp = parseInt((_LifeMax*NTConfig_LifeChicken)/100,10);
- if(NTConfig_ManaChicken > 0)
- me.chickenmp = parseInt((_ManaMax*NTConfig_ManaChicken)/100,10);
- for(var i = 0 ; i < 5 ; i++)
- _NTLW_timerLastDrink[i] = ((getTickCount())-5000);
- //print( _NTLW_timerLastDrink[2] );
- myself = copyUnit(me);
- while(me.ingame)
- {
- if(!LW_InTown())
- {
- if(_LifeMax != me.hpmax)
- {
- _LifeMax = me.hpmax;
- if(NTConfig_LifeChicken > 0)
- me.chickenhp = parseInt((_LifeMax*NTConfig_LifeChicken)/100,10);
- }
- if(_ManaMax != me.mpmax)
- {
- _ManaMax = me.mpmax;
- if(NTConfig_ManaChicken > 0)
- me.chickenmp = parseInt((_ManaMax*NTConfig_ManaChicken)/100);
- }
- /*
- DrinkHP = parseInt((_LifeMax*NTConfig_LifeThresh)/100);
- DrinkMP = parseInt((_ManaMax*NTConfig_ManaThresh)/100,10);
- DrinkRV =parseInt((_LifeMax*NTConfig_LifeRejuvThresh)/100,10);
- DrinkRVm = parseInt((_ManaMax*NTConfig_ManaRejuvThresh)/100,10)
- meHP =me.hp;
- meMP = me.mp;
- debugStr ="Drinking HP at:"+DrinkHP+" Drinking MP at:"+DrinkMP+" Drinking RVhp at:"+DrinkRV +" ManaJuv at:"+DrinkRVm;
- LWHook.text = debugStr;
- LWHook2.text = LastAction + " " + Reason;
- */
- //me.overhead( LastAction + " " + Reason);
- if(me.hp < parseInt((_LifeMax*NTConfig_LifeRejuvThresh)/100,10) || me.mp < parseInt((_ManaMax*NTConfig_ManaRejuvThresh)/100,10)){
- LastAction="Drink Rejuve";
- if (!NTLW_DrinkPotInt(2)){ //failed to find juvie drink hp/mp
- if(me.hp < parseInt((_LifeMax*NTConfig_LifeThresh)/100,10)){
- NTLW_DrinkPotInt(0);
- LastAction="Drinking HP";
- }
- if(me.mp < parseInt((_ManaMax*NTConfig_ManaThresh)/100,10)){
- NTLW_DrinkPotInt(1);
- LastAction="Drinking MP";
- }
- }
- }else
- {
- if(me.hp < parseInt((_LifeMax*NTConfig_LifeThresh)/100,10)){
- NTLW_DrinkPotInt(0);
- LastAction="Drinking HP";
- }
- if(me.mp < parseInt((_ManaMax*NTConfig_ManaThresh)/100,10)){
- NTLW_DrinkPotInt(1);
- LastAction="Drinking MP";
- }
- }
- _mercHP = getMercHP();
- if(_mercHP > 0)
- {
- if(_mercHP < NTConfig_MercChicken)
- {
- quit();
- break;
- }
- if(_mercHP < NTConfig_MercRejuvThresh){
- NTLW_DrinkPotInt(4);
- LastAction="Merc Rejuve";
- }
- else if(_mercHP < NTConfig_MercLifeThresh){
- LastAction="Merc HP";
- NTLW_DrinkPotInt(3);
- }
- }
- }
- if(_count++ > 10)
- {
- if(NTConfig_PublicMode)
- {
- var leader;
- _party = getParty();
- if(_party)
- {
- _mypartyid = _party.partyid;
- for (var z = 0 ; z < NT_Leader.length ; z++) {
- if (findLead(NT_Leader[z])) {
- leader = NT_Leader[z];
- break;
- }
- else sendCopyData(null,"OOG",0,"Leader Not Found -->" +NT_Leader[z]);
- }
- while(_party.getNext())
- {
- if((leader && _party.name == leader) || !leader || me.charname == leader)
- if(_party.partyid == 65535 || _party.partyid != _mypartyid)
- {
- if(_party.partyflag == 2)
- {
- clickParty(_party, 2);
- continue;
- }
- if(_party.partyid == 65535 && me.charname == leader)
- {
- if(_party.partyflag == 4)
- continue;
- clickParty(_party, 2);
- delay(40);
- if(_party.partyflag == 4 || (_party.partyid != 65535 && _party.partyid == _mypartyid))
- continue;
- }
- }
- }
- }
- }
- _count = 0;
- }
- delay(500);
- }
- }
- // Internal function
- function NTLW_DrinkPotInt(type)
- {
- Reason ="Attempting to drink" +type;
- var _pottype;
- var _potion;
- var _tNow = getTickCount();
- if(type == 2 || type == 4)
- {
- Reason ="timer check"+_NTLW_timerLastDrink[type] ;
- if(_tNow-_NTLW_timerLastDrink[type] < 1000){
- Reason ="Failed Drink Timer";
- //print("last drink "+ _NTLW_timerLastDrink[type] + " Diff "+ (_tNow-_NTLW_timerLastDrink[type]) +" type " +type);
- return false;
- }
- }
- else
- {
- Reason ="timer check"+_NTLW_timerLastDrink[type] ;
- if(_tNow-_NTLW_timerLastDrink[type] < 3000){
- Reason ="Failed Drink Timer";
- //print("last drink "+ _NTLW_timerLastDrink[type] + " Diff "+ (_tNow-_NTLW_timerLastDrink[type]) +" type " +type);
- return false;
- }
- }
- Reason ="after timer check";
- switch(type)
- {
- case 0:
- case 3:
- _pottype = 76;
- break;
- case 1:
- _pottype = 77;
- break;
- default:
- _pottype = 78;
- break;
- }
- Reason ="Getting Pot type" +_pottype;
- _potion = NTLW_GetPotionInt(_pottype);
- if(_potion)
- {
- Reason ="Found Pot";
- if(me.mode == 0 || me.mode == 17 || me.mode == 18){
- Reason ="bad Mode Failed";
- return false;
- }
- if(type < 3)
- _potion.interact();
- else
- clickItem(2, _potion);
- _NTLW_timerLastDrink[type] = getTickCount();
- Reason ="Success";
- return true;
- }
- Reason ="Failed to find pot";
- return false;
- }
- function NTLW_GetPotionInt(pottype)
- {
- var _items = me.getItems();
- if(!_items)
- return false;
- for(var i = 0 ; i < _items.length ; i++)
- {
- if(_items[i].mode == 2 && _items[i].itemType == pottype){
- //print("pot Found");
- return copyUnit(_items[i]);
- }
- }
- return false;
- }
- function LW_InTown(who)
- {
- var _area;
- if(arguments.length < 1)
- who = myself;
- _area = who.area;
- return (_area == NTC_AREA_ID_ACT_1 || _area == NTC_AREA_ID_ACT_2 || _area == NTC_AREA_ID_ACT_3 || _area == NTC_AREA_ID_ACT_4 || _area == NTC_AREA_ID_ACT_5);
- }