Скрипт на прокачку некромантии и тест ид
Это походу последняя оставшееся на сервере нудятина с прокачкой . ( Begging я уже выложил =)
для настройки просто впиши ТИП и ЦВЕТ сумки из которой брать яди и мясо ( Цвет должен быть уникальным! ) BAG_TYPE = "0x0E75"; и BAG_COLOR = "0x003F"; и положи эту сумку в банк. Встань рядом с банком и запусти __do() .
USE_test_ident = true; // для прокачки тестИД можно отключить
там есть функция Info() чтобы узнать цвет и тип вашей сумки
// Paste your code here :)
var USE_test_ident = true;
// BAG for poison and meat
//uses the first bag found of this type and color. Make sure that the color is unique
var BAG_TYPE = "0x0E75";
var BAG_COLOR = "0x003F";
var CRAFT_BAG = [BAG_TYPE , BAG_COLOR];
//Контейнер в котором лежит CRAFT_BAG
var arhiContainer = Player.BankSerial();
var Meat = "0x09F1";
var Poison = "0x1837";
var RED_collor = "0x0026";
var GREN_collor = "0x0049";
var NO_collor = "0x0000";
var Test_Identification_TIMEOUT = 10000 ; //Time for several attempts
//==========================functions ======================================
function Info()
{
Orion.Info();
}
function ___do()
{
var M_in_Backpak = Orion.FindType(Meat , "0x0000" , backpack, "recurse" );
if ( !M_in_Backpak.length )
{
razgruz();
M_in_Backpak = Orion.FindType(Meat , "0x0000" , backpack, "recurse" );
}
while ( M_in_Backpak.length )
{
var LEN = M_in_Backpak.length;
for ( i = 0 ; i < LEN ; i++ )
{
var M = Orion.FindObject(M_in_Backpak[i])
if (!M ) continue ;
if (M.Count() == 1 ) Poison_ ( M_in_Backpak[i] );
if (M.Count() > 1 ) Split ( M );
collect();
M_in_Backpak = Orion.FindType(Meat , "0x0000" , backpack, "recurse" );
if ( !M_in_Backpak.length )
{
razgruz();
M_in_Backpak = Orion.FindType(Meat , "0x0000" , backpack, "recurse" );
}
}
}
}
function Poison_ ( target_ser )
{
var m_obj = Orion.FindObject (target_ser );
if (! m_obj ) return "ERROR";
var P_ser = Orion.FindType(Poison , "0x0000" , backpack, "recurse" );
if ( P_ser.length )
{
while ( m_obj.Color() == "0x0000" )
{
Orion.WaitTargetObject(target_ser);
Orion.Wait(100);
Orion.UseObject (P_ser[0] ) ;
Orion.Wait(100);
}
}
else razgruz();
if ( USE_test_ident )
{
var tim = Orion.Now() + Test_Identification_TIMEOUT;
while ( m_obj.Color() != "0x0049" )
{
Orion.WaitTargetObject(target_ser);
Orion.UseSkill ( "Taste Identification" );
//Orion.UseSkillTarget( "Taste Identification", target_ser )
Orion.Wait (500);
if (Orion.Now() > tim )
{
Orion.Print ("TIME OUT!!!! TEST_IDENTIFICATION ERROR" )
Orion.Wait (2000)
break;
}
}
}
}
function Split ( objJ )
{
if (objJ.Count() )
{
while ( objJ.Count() > 1 )
{
Orion.MoveItem(objJ.Serial() , 1 , backpack, 1 , 1 )
Orion.Wait (300);
}
}
}
function collect()
{
var color = RED_collor;
if ( USE_test_ident ) color = GREN_collor;
var M_red= Orion.FindType(Meat , color , backpack, "recurse" );
while ( M_red.length > 1 )
{
Orion.MoveItem(M_red[0] , 0 , M_red[1] )
Orion.Wait (300);
M_red= Orion.FindType(Meat , color , backpack, "recurse" );
}
}
function razgruz ()
{
bank();
Orion.Wait(1000);
var BAGG = Orion.FindType(CRAFT_BAG[0] , CRAFT_BAG[1], arhiContainer );
if (!BAGG.length )
{
Orion.Print ("BAG NOT FINDED" )
TextWindow.Open();
TextWindow.Print("BAG NOT FINDED");
Orion.PauseScript();
}
Orion.OpenContainer(BAGG[0] );
Orion.Wait(2000);
//skidivajem mjaso
var xz = Orion.FindType (Meat , RED_collor + " | " + GREN_collor , backpack )
for (i = 0; i < xz.length; i ++)
{
Orion.MoveItem(xz[i] , 0 , BAGG[0] )
Orion.Wait (1000);
}
// proverka svobodnogo mesta
var Free_ves = ( Player.MaxWeight() * 0.7 ) - Player.Weight() ;
Orion.Print("Свободное место =" + Free_ves );
if (Free_ves < 50 )
{
Orion.Print(2175, "PEREGRUZZZZZZZZ!!!!" );
TextWindow.Open();
TextWindow.Print("PEREGRUZZZZZZZZ!!!!");
Orion.PauseScript();
}
//berem Mjaso
var fresh_m = Orion.FindType(Meat , NO_collor, BAGG[0] );
{
if (!fresh_m.length )
{
Orion.Print(2175, "НЕТ МЯСА" );
TextWindow.Open();
TextWindow.Print("НЕТ МЯСА!!!!");
Orion.PauseScript();
}
var quanity_m = Free_ves / 2;
Orion.MoveItem(fresh_m[0] , quanity_m , backpack );
Orion.Print(2175, "ВЗЯЛ МЯСА =" + quanity_m );
}
Orion.Wait (1000);
//berem jad
var fresh_p = Orion.FindType(Poison , NO_collor, BAGG[0] );
{
if (!fresh_m.length )
{
Orion.Print(2175, "НЕТ ЯДЯ" );
TextWindow.Open();
TextWindow.Print("НЕТ ЯДЯ!!!!");
Orion.PauseScript();
}
var quanity_m = Free_ves / 2;
Orion.MoveItem(fresh_p[0] , quanity_m , backpack );
Orion.Print(2175, "ВЗЯЛ ЯДА =" + quanity_m );
}
}
function bank()
{
var bank_obj = Orion.FindType("0x0ED5" , "0x0445", "ground", "fast" , 3);
if ( ! bank_obj.length )
{
Orion.Say(".BANK");
return ;
}
Orion.UseObject(bank_obj[0]);
Orion.WaitForContainerGump(8000);
}






