Advertisement
lu4kedr

Untitled

Apr 2nd, 2018
274
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     var spells=
  2.     [
  3.         ["Harm",1200],
  4.         ["Fireball",1850],
  5.         ["Lightning",3100],
  6.         ["Energy Bolt",2800],
  7.         ["frostbolt",2750],
  8.         ["necrobolt",2700],
  9.         ["Mind Blast",3200],
  10.         ["Paralyze",5000],
  11.         ["Flame Strike",3700],
  12.         ["Meteor Swarm",6500],
  13.         ["Energy Field",7200],
  14.  
  15.     ];
  16. function Autostart()
  17. {
  18.     Orion.Terminate('all', ['Autostart']);
  19.  
  20.     Orion.SetGlobal('autoCast',false);
  21.     SwitchArm(1);
  22.     Orion.Exec("AutoLoot");
  23.     Orion.Exec("HPCheck");
  24.     Orion.Exec("potionWatch");
  25.     Orion.Exec("AutoMesec");
  26.     Orion.Exec("Naprahy");
  27.     Orion.Exec("OnHitBandage");
  28.     Orion.Exec("JournalCheck");
  29.     Orion.Exec("LotSet");
  30.  
  31.     Orion.OptionScaleSpeechDelay(60);
  32.  
  33.     Orion.Print(Player.Name());
  34.     if(Player.Name()=="Malmhin")
  35.     {
  36.         Orion.SetGlobal("sh",true);
  37.     }
  38.     else
  39.     {
  40.         Orion.SetGlobal("sh",false);
  41.     }
  42. }
  43.  
  44. function TakeAll()
  45. {
  46.     Orion.AddObject("trg");
  47.     while(Orion.HaveTarget()) Orion.Wait(100);
  48.     var target =  Orion.FindObject('trg');
  49.     var items=Orion.FindType('-1', '-1', target.Serial());
  50.    
  51.     for (var i = 0; i < items.length; i++)
  52.     {
  53.         Orion.MoveItem(items[i], 0, 'lotBag');
  54.         Orion.Wait(100);
  55.     }
  56.    
  57.     Orion.RemoveObject('trg');
  58. }
  59.  
  60. function LotSet()
  61. {
  62.     Orion.SetGlobal('gold',1);
  63.     Orion.SetGlobal('regs',1);
  64.     Orion.SetGlobal('gems',1);
  65.     Orion.SetGlobal('leathers',1);
  66.     Orion.SetGlobal('feathers',1);
  67.     Orion.SetGlobal('custom',1);
  68.     Orion.SetGlobal('food',0);
  69.     Orion.SetGlobal('hideEmptyCorpse',0);
  70. }
  71.  
  72. function BandCast(spellName,target)
  73. {
  74.     if(Player.Hits!=Player.MaxHits)
  75.     {
  76.         Bandage();
  77.         Orion.Wait(100);
  78.     }
  79.     Orion.SetGlobal('castSpell',true);
  80.     if(target!=null)
  81.     {
  82.         if(spellName=="frostbolt")
  83.         {
  84.             Orion.WaitTargetObject(target);
  85.             Orion.Say(".frostbolt");
  86.         }
  87.         if(spellName=="necrobolt")
  88.         {
  89.             Orion.WaitTargetObject(target);
  90.             Orion.Say(".necrobolt");
  91.         }
  92.         else{
  93.         Orion.Cast(spellName,target);}
  94.     }
  95.     else
  96.     {      
  97.         if(spellName=="frostbolt")
  98.         {
  99.             Orion.WaitTargetObject(target.Serial());
  100.             Orion.Say(".frostbolt");
  101.         }
  102.         if(spellName=="necrobolt")
  103.         {
  104.             Orion.WaitTargetObject(target.Serial());
  105.             Orion.Say(".necrobolt");
  106.         }
  107.         else{
  108.             Orion.Cast(spellName);}
  109.     }
  110.     Orion.SetGlobal('lastSpell',spellName);
  111.     for(i=0;i<spells.length;i++)
  112.     {
  113.  
  114.         if(spells[i][0]==spellName)
  115.         {
  116.             Wait4Cast(spells[i][1]);
  117.             Orion.SetGlobal('castSpell',false);
  118.             break;
  119.         }
  120.     }
  121.  
  122. }
  123.  
  124.  
  125. function AutoCast()
  126. {
  127.     if(Orion.GetGlobal('autoCast')=='true')
  128.     {
  129.         Orion.SetGlobal('autoCast',false);
  130.         Orion.CharPrint('self',33,'AutoCast Off');
  131.         return;
  132.     }
  133.     else
  134.     {
  135.         Orion.SetGlobal('autoCast',true);
  136.         Orion.CharPrint('self',53,'AutoCast On');
  137.     }
  138.  
  139.         // name, delay(ms)
  140.  
  141.     var delay=200;
  142.     for(i=0;i<spells.length;i++)
  143.     {
  144.         if(spells[i][0]==Orion.GetGlobal('lastSpell'))
  145.         {
  146.             delay=spells[i][1];
  147.             break;
  148.         }
  149.     }
  150.     while(Orion.GetGlobal('autoCast')=='true')
  151.     {
  152.         if(Player.Hidden())
  153.         {
  154.             Orion.SetGlobal('autoCast',false);
  155.             Orion.CharPrint('self',33,'AutoCast Off');
  156.             Orion.Terminate('AutoCast');
  157.             return;
  158.         }
  159.         BandCast(Orion.GetGlobal('lastSpell'),lasttarget);
  160.         //Orion.Wait(delay);
  161.         //Wait4Cast(delay);
  162.         if(Orion.FindObject(lasttarget)== null)
  163.         {
  164.             Orion.SetGlobal('autoCast',false);
  165.             Orion.CharPrint('self',33,'AutoCast Off');
  166.             Orion.Terminate('AutoCast');
  167.             return;
  168.         }
  169.     }
  170. }
  171. function Wait4Cast(delay)
  172. {
  173.     Orion.ClearJournal('Nevidis na cil.');
  174.     Orion.ClearJournal('Kouzlo se nezdarilo.');
  175.     var StartTime=Orion.Now();
  176.     var EndTime=StartTime+delay;
  177.     while(Orion.Now()<EndTime)
  178.     {
  179.         if(Orion.InJournal('Nevidis na cil.|Kouzlo se nezdarilo.','my|sys',0,0xFFFF,StartTime,EndTime))
  180.         {
  181.         //Orion.Print("fiz");
  182.         return;
  183.         }
  184.     }
  185. }
  186.  
  187.  
  188.  
  189.  
  190. function JournalCheck()
  191. {
  192.     Orion.Wait(2000);
  193.     Orion.ClearJournal();
  194.     var expstart=GetActualExp();
  195.     var startTime=Orion.Now();
  196.     while(true)
  197.     {
  198.         Orion.Wait(100);
  199.         if(Orion.InJournal('uspesne osetren|Leceni se ti nepovedlo.| neni zranen.| krvacet.| Nevidis cil.| moc daleko.','my|sys')!=null)
  200.         {
  201.             Orion.ClearJournal('uspesne osetren|Leceni se ti nepovedlo.| neni zranen.| krvacet.| Nevidis cil.| moc daleko.');
  202.             Orion.SetGlobal("bandageDone",true);
  203.         }
  204.        
  205.         if(Orion.InJournal('exp?','my')!=null)
  206.         {
  207.             Orion.ClearJournal('exp?');
  208.             var xp=GetActualExp();
  209.             var xpp= xp.Min - expstart.Min;
  210.             Orion.Print("Ziskano "+xpp+" zkusenosti.");
  211.             Orion.Print("ZabitĂ˝ch "+Orion.GetGlobal('killCnt').toString()+" monster.");
  212.             var cas=(Orion.Now()-parseInt(Orion.GetGlobal('killStart')))/60000;
  213.             var prum=cas/parseInt(Orion.GetGlobal('killCnt'));
  214.             Orion.Print("Prumerne "+ prum + " zabiti za minutu.");
  215.             Orion.Print("Celkovy cas: "+cas+" minut.");
  216.         }
  217.         var txt=Orion.InJournal('Anna Tir Esgal');
  218.         if(txt!=null)
  219.         {
  220.             Orion.ClearJournal('Anna Tir Esgal');
  221.             var params=
  222.             [
  223.             txt.Serial(),1000,4,"Zed za ",15
  224.             ]
  225.             Orion.Exec('CustomCountDown',false,params);
  226.         }
  227.         var txt=Orion.InJournal('Anna Tir Kemen');
  228.         if(txt!=null)
  229.         {
  230.             Orion.ClearJournal('Anna Tir Kemen');
  231.             var params=
  232.             [
  233.             txt.Serial(),1000,6,"Zed za ",15
  234.             ]
  235.             Orion.Exec('CustomCountDown',false,params);
  236.         }
  237.         var txt=Orion.InJournal('Ruth Fuin Val','my');
  238.         if(txt!=null)
  239.         {
  240.             Orion.ClearJournal('Ruth Fuin Val');
  241.             var params=
  242.             [
  243.             txt.Serial(),800,3,"",19
  244.             ]
  245.             Orion.Exec('CustomCountDown',false,params);
  246.         }
  247.        
  248.     }
  249. }
  250.  
  251. function GetActualExp()
  252. {
  253.     Orion.Say(".explevel");
  254.     Orion.Wait(200);
  255.     var gum=Orion.GetLastGump();
  256.     var exp=gum.Text(2);
  257.     gum.Select(Orion.CreateGumpHook(0));
  258.     var expS=exp.split('/');
  259.     var rtn= {Min: expS[0], Max: expS[1]};
  260.     return rtn;
  261. }
  262.  
  263. function CustomCountDown(serial,partDelay,parts,text,color)
  264. {
  265.     for(i=parts;i>0;i--)
  266.     {
  267.         Orion.Wait(partDelay);
  268.         CharPrintDelayed(serial,color,text+" "+i);
  269.     }
  270. }
  271.  
  272. function AutoMesec()
  273. {
  274.     while(true)
  275.     {
  276.         Orion.Wait(5000);
  277.         if(Player.Dead())continue;
  278.         var gp=Orion.Count('0x0EED');
  279.         if(gp>6000)
  280.         Orion.Say(".mesec");
  281.     }
  282. }
  283.  
  284. function Naprahy()
  285. {
  286.     while(true)
  287.     {  
  288.         Orion.Wait(100);
  289.         var msg=Orion.WaitJournal('animationecho',Orion.Now(),0);
  290.        
  291.         if(Orion.Contains(msg.Text(),'action=26|action=29') && Orion.Contains(msg.Text(),'serial='+Player.Serial()) )
  292.             CharPrintDelayed('self', '0xfa',"Naprah" );
  293.             Orion.Wait(200);
  294.     }
  295. }
  296.  
  297. function Hid()
  298. {
  299.     Orion.ClearJournal();
  300.    
  301.    
  302.     if(Orion.SkillValue('Hiding', 'real')>750)
  303.     {
  304.     var HidDelay=1750; // prumer HidTest fce
  305.     }
  306.     else
  307.     {
  308.         var HidDelay=2100; // prumer HidTest fce
  309.     }
  310.     var first=true;
  311.     if(Player.WarMode)
  312.     {
  313.         Orion.WarMode(0);
  314.     }
  315.     Orion.OptionAlwaysRun(true);
  316.    
  317.     Orion.UseSkill("Hiding");
  318.     var start=Orion.Now();
  319.     var params=[    self,500,3,"",0x00FD    ]   ;
  320.     Orion.Exec('CustomCountDown',false,params);
  321.    
  322.     if(!HidWait(HidDelay-150))
  323.     {
  324.         Orion.OptionAlwaysRun(true);
  325.         CharPrintDelayed('self', '0x099B', 'Hidden Failed');
  326.         return;
  327.     }
  328.  
  329.     Orion.OptionAlwaysRun(false);
  330.     var x=Orion.WaitJournal('Nepovedlo se ti schovat.|Skryti se povedlo.',Orion.Now()-(HidDelay),Orion.Now()+500);
  331.  
  332.     if(x.Text()=='Nepovedlo se ti schovat.')
  333.     {
  334.     CharPrintDelayed('self', '0x099B', 'Hidden Failed');
  335.         Orion.OptionAlwaysRun(true);
  336.         return;
  337.     }
  338.     while(Player.Hidden())
  339.     {
  340.     if(first)
  341.     {
  342.         first=false;
  343.         Orion.SetGlobal("hidTime",Orion.Now());
  344.         CharPrintDelayed('self', '0x00FD', 'Hidden Success');
  345.         Bandage();
  346.     }
  347.  
  348.     Orion.Wait(100);
  349.     }
  350.     Orion.OptionAlwaysRun(true);
  351.     return;
  352. }
  353.  
  354. function HidWait(Limit)
  355. {
  356.     var start= Orion.Now();
  357.     var loop=start+parseInt(Limit);
  358.  
  359.     while(loop>Orion.Now())
  360.     {
  361.         if(Orion.InJournal('Nepovedlo se ti schovat.','my|sys',0,0xFFFF,start,loop)){
  362.             return false;
  363.         }
  364.         Orion.Wait(100);
  365.     }
  366.     return true;
  367. }
  368.  
  369.  
  370. function TrackPlayers()
  371. {
  372.     var list=Orion.GetFriendList();
  373.     var listName =[];
  374.     for(i=0;i<list.length;i++)
  375.     {
  376.         var obj =Orion.FindObject(list[i]);
  377.         if(!obj)continue;
  378.         listName.push(obj.Name());
  379.     }
  380.  
  381.     Orion.WarMode(false);
  382.     Orion.CancelWaitMenu();
  383.  
  384.     Orion.WaitMenu('Tracking', 3);
  385.     Orion.UseSkill('Tracking');
  386.     Orion.Wait(200);
  387.  
  388.     var menu = Orion.GetMenu(0);
  389.     if (Orion.InJournal('You see'))
  390.     {
  391.         menu.Close();
  392.         Orion.ClearJournal('You see');
  393.         return;
  394.     }
  395.  
  396. var count = menu.ItemsCount();
  397.  
  398. var items = [];
  399. var add=true;
  400. for (var i=0; i < count; i++){
  401.     add=true;
  402.     for(a=0;a<listName.length;a++)
  403.     {
  404.         if(listName[a]==menu.ItemName(i))
  405.         {
  406.             add=false;
  407.             break;
  408.         }
  409.     }
  410.     if(add==true)
  411.     {
  412.         items.push(" "+menu.ItemName(i)+" ");
  413.     }
  414. }
  415. menu.Close();
  416. Orion.Print('Na tracku: ' + items);
  417. menu.Close();
  418.  
  419. }
  420.  
  421. function SwitchTarget()
  422. {
  423.     if(Orion.GetGlobal("trgMode")==0)
  424.     {
  425.         Orion.SetGlobal("trgMode", 1);
  426.         Orion.Print("Target Mordor");
  427.     }
  428.     else if(Orion.GetGlobal("trgMode")==1)
  429.     {
  430.         Orion.SetGlobal("trgMode", 2);
  431.         Orion.Print("Target Gondor");
  432.     }
  433.     else
  434.     {
  435.         Orion.SetGlobal("trgMode", 0);
  436.         Orion.Print("Target PVM");
  437.     }
  438. }
  439.  
  440. function TargetNext()
  441. {
  442.     var serial = FindNearestTarget();
  443.     if(!serial.length) return;
  444.     Orion.CloseStatusbar('lasttarget');
  445.     CharPrintDelayed(serial, '30',Orion.RequestName(serial,100)+ ' - TARGET');
  446.     Orion.ShowStatusbar(serial,1000,200);
  447.     Orion.ClientLastTarget(serial);
  448.     Orion.TargetObject(serial);
  449.     Orion.Ignore(serial);        
  450. }
  451.  
  452. function TargetClosestRed()
  453. {
  454.     Orion.IgnoreReset();
  455.     var humans = Orion.FindType('-1', '-1', ground, 'near|mobile', '18','murderer');   
  456.     if (humans.length )
  457.     {
  458.         Orion.CloseStatusbar('lasttarget');
  459.         CharPrintDelayed(humans[0], '30', 'TARGET');
  460.         Orion.ClientLastTarget(humans[0]);
  461.         Orion.TargetObject(humans[0]);
  462.         Orion.ShowStatusbar(humans[0],1000,200);
  463.         Orion.Ignore(humans[0]);
  464.     }
  465. }
  466.  
  467. function FindNearestTarget()
  468. {  
  469.     Orion.Ignore('self');
  470.      if(Orion.GetGlobal("trgMode")==1)
  471.      {
  472.         var humans = Orion.FindType('0x0190|0x0191', '-1', ground, 'near|mobile|human', '18','murderer');  
  473.         if ( !humans.length )
  474.         {
  475.             //Orion.Print( '-1', 'no humans found, resetting ignore list');
  476.             Orion.IgnoreReset();
  477.             return '';
  478.         }
  479.     return humans[0];
  480.     } else
  481.     if(Orion.GetGlobal("trgMode")==2)
  482.      {
  483.         var humans = Orion.FindType('0x0190|0x0191', '-1', ground, 'near|mobile|human', '18','innocent|friendly|gray|criminal');   
  484.         if ( !humans.length )
  485.         {
  486.             //Orion.Print( '-1', 'no humans found, resetting ignore list');
  487.             Orion.IgnoreReset();
  488.             return '';
  489.         }
  490.     return humans[0];
  491.     }
  492.     else
  493.      {
  494.         var humans = Orion.FindType('-1', '-1', ground, 'near|mobile', '18','gray|criminal|murderer'); 
  495.         if ( !humans.length )
  496.         {
  497.             //Orion.Print( '-1', 'no humans found, resetting ignore list');
  498.             Orion.IgnoreReset();
  499.             return '';
  500.         }
  501.         for(i=0;i<humans.length;i++)
  502.         {
  503.             var tmp= Orion.FindObject(humans[i]).CanChangeName();
  504.             if(tmp==false)
  505.             {
  506.                 return humans[i];
  507.             }
  508.             else
  509.             {
  510.                 Orion.Ignore(humans[i]);
  511.             }
  512.         }
  513.     return '';
  514.     }
  515. }
  516.  
  517.  
  518. function CharPrintDelayed(serial, color, text)
  519. {
  520.     var oldUse = Orion.OptionScaleSpeech();
  521.     var oldDelay = Orion.OptionScaleSpeechDelay();
  522.  
  523.     Orion.OptionScaleSpeech(true);
  524.     Orion.OptionScaleSpeechDelay(15);
  525.  
  526.     Orion.CharPrint(serial, color, text);
  527.     Orion.Wait(100);
  528.  
  529.     Orion.OptionScaleSpeech(oldUse);
  530.     Orion.OptionScaleSpeechDelay(55);
  531. }
  532.  
  533.  
  534. function SwitchArm(max)
  535. {          
  536.     for (var i = 0; i <= max; i++)
  537.     {
  538.         if(Orion.GetGlobal("weap")==i)
  539.         {
  540.             if((i+1)>max)
  541.             {
  542.                 Orion.Arm(1);
  543.                 Orion.SetGlobal("weap",1);
  544.             }
  545.             else
  546.             {
  547.                 Orion.Arm(i+1);
  548.                 Orion.SetGlobal("weap",i+1);
  549.             }
  550.         return;
  551.         }
  552.     }
  553. }
  554.  
  555. function Bandage()
  556. {
  557.     if(Orion.Now()>Orion.GetGlobal("bandageStart"))
  558.     {
  559.         Orion.SetGlobal("bandageDone",true);
  560.     }
  561.     if(Orion.GetGlobal("bandageDone")=='false')return;
  562.     if(Player.Hits()==Player.MaxHits())
  563.     {
  564.         if(Player.MaxMana()>100)
  565.         {
  566.             if(!Orion.ObjAtLayer('LeftHand'))
  567.             {
  568.                 Orion.Arm(Orion.GetGlobal("weap"));
  569.             }
  570.         }
  571.         else{
  572.             Orion.Wait(200);
  573.             Orion.Arm(Orion.GetGlobal("weap"));
  574.         }
  575.         return;
  576.     }
  577.     Orion.SetGlobal("bandageDone",'false');
  578.     Orion.SetGlobal("bandageStart",Orion.Now()+7000);
  579.     if(Orion.GetGlobal("sh")=='false')
  580.     {
  581.         Orion.UseType(0x0E21); //ciste bandy
  582.         Orion.WaitTargetObject(self);
  583.     }
  584.     else{
  585.         Orion.UseType(0x0E20); // krvave bandy
  586.         Orion.WaitTargetObject(self);
  587.     }
  588.  
  589.     Orion.Print('Bandim');
  590.     if(Player.MaxMana()>100)
  591.     {
  592.         if(!Orion.ObjAtLayer('LeftHand'))
  593.         {
  594.             Orion.Print("lefth");
  595.             Orion.Arm(Orion.GetGlobal("weap"));
  596.         }
  597.     }
  598.     else
  599.     {
  600.         Orion.Wait(200);
  601.         Orion.Arm(Orion.GetGlobal("weap"));
  602.     }
  603. }
  604.  
  605. function bandageT(target, bloodbandage)
  606. {
  607.     if(Orion.Now()>Orion.GetGlobal("bandageStart"))Orion.SetGlobal("bandageDone",true);
  608.     if(Orion.GetGlobal("bandageDone")=="false" )return;
  609.     if(Orion.GetGlobal("castSpell")=="true" )return;
  610.         var trg = Orion.FindObject(target.Serial());
  611.         Orion.Print("bandim "+ trg.Name());
  612.         Orion.SetGlobal("bandageDone",false);
  613.         if(bloodbandage==true)
  614.         {  
  615.             Orion.Say(".improvement");
  616.             Orion.Wait(100);
  617.             Orion.WaitTargetObject(trg.Serial());
  618.             Orion.UseType(0x0E20);
  619.             Orion.Wait(500);
  620.             Orion.Say(".improvement");
  621.         }
  622.         else
  623.         {
  624.             Orion.WaitTargetObject(trg.Serial());
  625.             Orion.UseType(0x0E21);
  626.         }
  627.         Orion.SetGlobal("bandageStart",Orion.Now()+4500);
  628.  
  629. }
  630.  
  631. function OnHitBandage()
  632. {
  633.     while(true)
  634.     {
  635.         var tmp=Orion.WaitJournal('Tvuj cil krvaci.|Skvely zasah!|Kriticky zasah!|Vysavas staminu|Vysavas zivoty!',Orion.Now(),0);
  636.         Orion.ClearJournal('Tvuj cil krvaci.|Skvely zasah!|Kriticky zasah!|Vysavas staminu|Vysavas zivoty!');
  637.         if(Player.Hits!=Player.MaxHits)
  638.         {
  639.             var lh=Orion.ObjAtLayer('LeftHand');
  640.             if(lh.Graphic()=='0x1405' || lh.Graphic()=='0x1404') continue;
  641.             Bandage();
  642.         }
  643.         Orion.Wait(200);
  644.     }
  645. }
  646.  
  647. function HPCheck()
  648. {
  649.     var criticalHits=45;
  650.     var lastHP=Player.Hits();
  651.     var change=0;
  652.     while(true)
  653.     {
  654.         if(Player.Dead())continue;
  655.         if(lastHP!=Player.Hits())
  656.         {
  657.             if(lastHP<Player.Hits() & (Player.Hits()-lastHP)>4 )
  658.             {
  659.                 change=Player.Hits()-lastHP;
  660.                  if(change<4)continue;
  661.                 //CharPrintDelayed('self', '0x0044', "["+Player.Hits()+"/"+Player.MaxHits()+"]   +"+change);// +HP
  662.                 CharPrintDelayed('self', '0x0044', "+"+(change/(Player.MaxHits()/100)).toFixed(1));// +HP
  663.             }
  664.             else
  665.             {
  666.                 change=lastHP-Player.Hits();
  667.                 if(change<4)continue;
  668.                 //CharPrintDelayed('self', '0x098E', "["+Player.Hits()+"/"+Player.MaxHits()+"]   -"+change);// -HP
  669.                 CharPrintDelayed('self', '0x0087', "-"+(change/(Player.MaxHits()/100)).toFixed(1));// +HP
  670.             }
  671.             lastHP=Player.Hits();
  672.            
  673.            
  674.         }
  675.         if( !Player.Dead() && Player.Hits()<criticalHits && Player.Hits()>0)
  676.         {
  677.             var params=['heal'];
  678.             Orion.Exec('Potion',false,params);
  679.         }
  680.         Orion.Wait(100);
  681.     }
  682. }
  683.  
  684.  
  685. function AutoLoot()
  686. {
  687.     var corpse;
  688.     while(true)
  689.     {
  690.         Orion.Wait(200);
  691.         if(Player.Dead()){continue;}
  692.         if(Player.Hidden()){continue;}
  693.         corpse = FindCorpse();
  694.         if (corpse == null)continue;
  695.         var it=Orion.FindType('-1',  '-1', corpse.Serial());
  696.         if(it.length>9)
  697.         {
  698.             Orion.Ignore(corpse.Serial());
  699.             continue;
  700.         }
  701.         Lot(corpse,"LotItemMaps");
  702.         partLot(corpse,parseInt(Orion.GetGlobal('gold')),parseInt(Orion.GetGlobal('regs')),parseInt(Orion.GetGlobal('gems')),parseInt(Orion.GetGlobal('leathers')),parseInt(Orion.GetGlobal('feathers')),parseInt(Orion.GetGlobal('custom')),parseInt(Orion.GetGlobal('food')));
  703.     }
  704. }
  705. function CutLeather()
  706. {
  707.     var siccors= Orion.FindType('0x0F9E|0x0F9F', '0xFFFF', 'backpack');
  708.     var leathers= Orion.FindType('0x1078', '0xFFFF', 'backpack');
  709.     if(!siccors || !siccors)return;
  710.     for(var i=0;i<leathers.length;i++)
  711.     {
  712.        
  713.         Orion.WaitTargetObject(leathers[i]);
  714.        
  715.         Orion.UseType('0x0F9E|0x0F9F');
  716.         Orion.Wait(300);
  717.     }
  718.    
  719. }
  720. function partLot(corpse,gold,regs,gems,leathers,feathers,custom,food)
  721. {
  722.     if(gold==1) Lot(corpse,"LotGold");
  723.     if(regs==1) Lot(corpse,"LotRegs");   
  724.     if(gems==1) Lot(corpse,"LotGems");
  725.     if(leathers==1) Lot(corpse,"LotLeather");
  726.     if(feathers==1) Lot(corpse,"LotFeather");
  727.     if(custom==1) Lot(corpse,"LotCustom");
  728.     if(food==1) Lot(corpse,"LotFood");
  729.     if(parseInt(Orion.GetGlobal('hideEmptyCorpse'))==1)
  730.     {
  731.         var cnt=Orion.FindType('0xFFFF','0xFFFF',corpse.Serial());
  732.         if(cnt.length=='0')
  733.         {
  734.             Orion.Hide(corpse.Serial());
  735.         }
  736.     }
  737.     Orion.Ignore(corpse.Serial());
  738. }
  739.  
  740. function Lot(corpse, listName)
  741. {
  742.     var list = Orion.FindList(listName,corpse.Serial());
  743.     if (!list.length)
  744.     {
  745.         return false;
  746.     }
  747.     for (var i = 0; i < list.length; i++)
  748.     {
  749.         if (Orion.GetDistance(corpse.Serial()) > 3){
  750.             return false;
  751.         }
  752.         var item = Orion.FindObject(list[i]);
  753.         if(item){
  754.             if(item.Graphic()==0x0E76)
  755.             {
  756.                 if(item.Color()!=0x0430) continue;
  757.             }
  758.         }
  759.         Orion.MoveItem(list[i], 0, 'lotBag');
  760.         Orion.Wait(100);
  761.     }
  762.     return true;
  763. }
  764.  
  765. function Carv()
  766. {
  767.     var carvTool =Orion.FindObject('carv');
  768.     if(carvTool==null)
  769.     {
  770.         Orion.Print("Nemas nastaveny nuz - carv");
  771.         return;
  772.     }
  773.     Orion.IgnoreReset();
  774.     var corpses = Orion.FindType('0x2006','-1',ground,3);
  775.     if(!corpses.length)return;
  776.     for(i=0;i<corpses.length;i++)
  777.     {
  778.         var name= Orion.RequestName(corpses[i]);
  779.         if(Orion.Contains(name,'mustang|oclock|orn|zostrich|ledni|ridgeback|zostrich',true))continue;
  780.         Orion.WaitTargetObject(corpses[i]);
  781.         Orion.UseObject(carvTool.Serial());
  782.         Orion.Wait(100);
  783.     }
  784.     Orion.Arm(Orion.GetGlobal('weap'));
  785. }
  786.  
  787. function FindCorpse()
  788. {
  789.     var list = Orion.FindType('0x2006', '0xFFFF', ground, 'near|fast', '3');
  790.     if (list.length)
  791.     {
  792.         return Orion.FindObject(list[0]);
  793.     }
  794.     return null;
  795. }
  796.  
  797. function Throw()
  798. {
  799.  
  800.     if(Orion.GetGlobal("throwDelay")=='')Orion.SetGlobal("throwDelay",Orion.Now());
  801.     if(Orion.GetGlobal("throwDelay")>Orion.Now())
  802.     {
  803.         CharPrintDelayed('self', '0x00AD', 'Jeste nemuzes Hazet');
  804.         return;
  805.     }
  806.     if(Orion.GetDistance(lasttarget)>6)
  807.     {
  808.         CharPrintDelayed('self', '0x00AD', 'Moc Daleko <'+Orion.GetDistance(lasttarget)+'>');
  809.     }
  810.     else
  811.     {
  812.         var start=Orion.Now();
  813.         Orion.Attack(lasttarget);
  814.         Orion.Say(".throw");
  815.         Orion.Wait(200);
  816.         Orion.Arm(Orion.GetGlobal("weap"));
  817.         Orion.Wait(200);
  818.         if(Orion.InJournal('Nevidis na cil!','sys|my')!=null){
  819.             Orion.ClearJournal('Nevidis na cil!');
  820.             return;
  821.         }
  822.         Orion.SetGlobal("throwDelay",Orion.Now()+4800);
  823.         Orion.Wait(1300);
  824.         CharPrintDelayed('self', '0x00AD', ' <  3  >');
  825.         Orion.Wait(1100);
  826.         CharPrintDelayed('self', '0x00AD', ' <  2  >');
  827.         Orion.Wait(1300);
  828.         CharPrintDelayed('self', '0x00AD', ' <  1  >');
  829.         Orion.Wait(1200);
  830.         CharPrintDelayed('self', '0x00AD', '<< HAZEJ >>');
  831.     }
  832. }
  833.  
  834.  
  835. function Telep()
  836. {
  837.     var teleSc=Orion.FindType('0x1F42','0x0000','backpack','item',true);
  838.     if(Orion.GetDistance(lasttarget)>12)return;
  839.     if(teleSc.length)
  840.     {
  841.         Orion.UseObject(teleSc[0]);
  842.         Orion.TargetObject(lasttarget);
  843.     }
  844.     else
  845.     {
  846.         Orion.Cast("teleport",lasttarget);
  847.     }
  848. }
  849.  
  850. function potionWatch()
  851. {
  852.     var annouced=false;
  853.     var CureAnnouced=false;
  854.     while(true)
  855.     {
  856.         if(Orion.GetGlobal("cureDuration")<=Orion.Now())
  857.         {
  858.             if(!CureAnnouced)
  859.             {  
  860.                 CureAnnouced=true;
  861.                 CharPrintDelayed('self', '0x002A', ' !! CURE vyprchalo!!');
  862.  
  863.             }
  864.         }
  865.         else CureAnnouced=false;
  866.         if(Orion.GetGlobal("potionDelay")<=Orion.Now())
  867.         {
  868.             if(!annouced)
  869.             {  
  870.                 annouced=true;
  871.                 CharPrintDelayed('self', '0x0044', ' > MUZES PIT <');
  872.  
  873.             }
  874.         }
  875.         else
  876.         {
  877.             annouced=false;
  878.             if(Orion.GetGlobal("potionDelay")-Orion.Now()<=1000)
  879.             {
  880.                 Orion.Print(0x0035,"Piti za 1");
  881.             }
  882.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=2000)
  883.             {
  884.                 Orion.Print(0x0035,"Piti za 2");
  885.             }
  886.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=3000)
  887.             {
  888.                 Orion.Print(0x0035,"Piti za 3");
  889.             }
  890.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=4000)
  891.             {
  892.                 Orion.Print(0x0035,"Piti za 4");
  893.             }
  894.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=5000)
  895.             {
  896.                 Orion.Print(0x0035,"Piti za 5");
  897.             }
  898.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=10000)
  899.             {
  900.                 Orion.Print(0x0035,"Piti za 10");
  901.             }
  902.             else if(Orion.GetGlobal("potionDelay")-Orion.Now()<=15000)
  903.             {
  904.                 Orion.Print(0x0035,"Piti za 15");
  905.  
  906.             }
  907.  
  908.         }
  909.         Orion.Wait(1500);
  910.     }
  911. }
  912.  
  913. function Potion(name)
  914. {
  915.     if(Orion.GetGlobal("potionDelay")=='')Orion.SetGlobal("potionDelay",Orion.Now());
  916.     if(Orion.GetGlobal("potionDelay")>Orion.Now())
  917.     {
  918.         CharPrintDelayed('self', '0x00CD', 'Jeste nemuzes Pit  ['+ (Orion.GetGlobal("potionDelay")-Orion.Now()) +']');
  919.         return;
  920.     }
  921.    
  922.     // name, color, delay, duration
  923.     var pots=
  924.     [
  925.         ["heal",0x0160,21000,0],
  926.         ["cure",0x008E,21000,400000],
  927.         ["cure",0x002B,21000,200000],
  928.         ["invis",0x0447,21000,200000],
  929.         ["refresh",0x00ED,21000,0],
  930.         ["refresh",0x0027,16000,0],
  931.         ["reflex",0x0985,21000,500000],
  932.         ["mobility",0x000F,6000,30000],
  933.         ["nightsight",0x0980,6000,0],
  934.         ["agility",0x00CF,6000,600000],
  935.         ["agility",0x0005,6000,300000],
  936.         ["strength",0x076B,6000,600000],
  937.         ["strength",0x0388,6000,300000],
  938.         ["clever",0x047D,6000,600000],
  939.         ["clever",0x073E,6000,300000],
  940.         ["stoneskin",0x0999,6000,600000]
  941.        
  942.     ];
  943.     //Orion.Print(pots[2][3]);
  944.    
  945.     switch(name)
  946.     {
  947.         case "heal":
  948.         {
  949.             if(Orion.FindType(0x0F0E,pots[0][1],backpack,'item',true).length)
  950.             {
  951.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[0][2]);
  952.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[0][3]);
  953.                 Orion.Say(".potion"+name);
  954.             }
  955.             else
  956.             {
  957.                 Orion.Print("Nemas "+ name +" potion");
  958.             }
  959.             break;
  960.         }
  961.         case "cure":
  962.         {
  963.             if(Orion.FindType(0x0F0E,pots[1][1],backpack,'item',true).length)
  964.             {
  965.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[1][2]);
  966.                 Orion.SetGlobal("cureDuration",Orion.Now()+pots[1][3]);
  967.                 Orion.Say(".potion"+name);
  968.             }
  969.             else
  970.             {
  971.                  if(Orion.FindType(0x0F0E,pots[2][1],backpack,'item',true).length)
  972.                 {
  973.                     Orion.SetGlobal("potionDelay",Orion.Now()+pots[2][2]);
  974.                     Orion.SetGlobal("cureDuration",Orion.Now()+pots[2][3]);
  975.                     Orion.Say(".potion"+name);
  976.                 }
  977.                 else Orion.Print("Nemas "+ name +" potion");
  978.             }
  979.             break;
  980.         }
  981.         case "invis":
  982.         {
  983.             if(Orion.FindType(0x0F0E,pots[3][1],backpack,'item',true).length)
  984.             {
  985.                 Orion.WarMode(0);
  986.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[3][2]);
  987.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[3][3]);
  988.                 Orion.Say(".potion"+name);
  989.             }
  990.             else
  991.             {
  992.                 Orion.Print("Nemas "+ name +" potion");
  993.             }
  994.             break;
  995.         }
  996.         case "refresh":
  997.         {
  998.             if(Orion.FindType(0x0F0E,pots[4][1],backpack,'item',true).length)
  999.             {
  1000.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[4][2]);
  1001.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[4][3]);
  1002.                 Orion.Say(".potion"+name);
  1003.             }
  1004.             else
  1005.             {
  1006.                  if(Orion.FindType(0x0F0E,pots[5][1],backpack,'item',true).length)
  1007.                 {
  1008.                     Orion.SetGlobal("potionDelay",Orion.Now()+pots[5][2]);
  1009.                     Orion.SetGlobal("potionDuration",Orion.Now()+pots[5][3]);
  1010.                     Orion.Say(".potion"+name);
  1011.                 }
  1012.                 else Orion.Print("Nemas "+ name +" potion");
  1013.             }
  1014.             break;
  1015.         }
  1016.         case "reflex":
  1017.         {
  1018.             if(Orion.FindType(0x0F0E,pots[6][1],backpack,'item',true).length)
  1019.             {
  1020.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[6][2]);
  1021.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[6][3]);
  1022.                 Orion.Say(".potion"+name);
  1023.             }
  1024.             else
  1025.             {
  1026.                 Orion.Print("Nemas "+ name +" potion");
  1027.             }
  1028.             break;
  1029.         }
  1030.         case "mobility":
  1031.         {
  1032.             if(Orion.FindType(0x0F0E,pots[7][1],backpack,'item',true).length)
  1033.             {
  1034.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[7][2]);
  1035.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[7][3]);
  1036.                 Orion.Say(".potion"+name);
  1037.             }
  1038.             else
  1039.             {
  1040.                 Orion.Print("Nemas "+ name +" potion");
  1041.             }
  1042.             break;
  1043.         }
  1044.         case "nightsight":
  1045.         {
  1046.             if(Orion.FindType(0x0F0E,pots[8][1],backpack,'item',true).length)
  1047.             {
  1048.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[8][2]);
  1049.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[8][3]);
  1050.                 Orion.Say(".potion"+name);
  1051.                 Orion.SetLight(1,31);
  1052.                 Orion.SetLight(0,31);
  1053.             }
  1054.             else
  1055.             {
  1056.                 Orion.Print("Nemas "+ name +" potion");
  1057.             }
  1058.             break;
  1059.         }
  1060.         case "agility":
  1061.         {
  1062.             if(Orion.FindType(0x0F0E,pots[9][1],backpack,'item',true).length)
  1063.             {
  1064.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[9][2]);
  1065.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[9][3]);
  1066.                 Orion.Say(".potion"+name);
  1067.             }
  1068.             else
  1069.             {
  1070.                  if(Orion.FindType(0x0F0E,pots[10][1],backpack,'item',true).length)
  1071.                 {
  1072.                     Orion.SetGlobal("potionDelay",Orion.Now()+pots[10][2]);
  1073.                     Orion.SetGlobal("potionDuration",Orion.Now()+pots[10][3]);
  1074.                     Orion.Say(".potion"+name);
  1075.                 }
  1076.                 else Orion.Print("Nemas "+ name +" potion");
  1077.             }
  1078.             break;
  1079.         }
  1080.         case "strength":
  1081.         {
  1082.             if(Orion.FindType(0x0F0E,pots[11][1],backpack,'item',true).length)
  1083.             {
  1084.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[11][2]);
  1085.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[11][3]);
  1086.                 Orion.Say(".potion"+name);
  1087.             }
  1088.             else
  1089.             {
  1090.                  if(Orion.FindType(0x0F0E,pots[12][1],backpack,'item',true).length)
  1091.                 {
  1092.                     Orion.SetGlobal("potionDelay",Orion.Now()+pots[12][2]);
  1093.                     Orion.SetGlobal("potionDuration",Orion.Now()+pots[12][3]);
  1094.                     Orion.Say(".potion"+name);
  1095.                 }
  1096.                 else Orion.Print("Nemas "+ name +" potion");
  1097.             }
  1098.             break;
  1099.         }
  1100.         case "clever":
  1101.         {
  1102.             if(Orion.FindType(0x0F0E,pots[13][1],backpack,'item',true).length)
  1103.             {
  1104.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[13][2]);
  1105.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[13][3]);
  1106.                 Orion.Say(".potion"+name);
  1107.             }
  1108.             else
  1109.             {
  1110.                  if(Orion.FindType(0x0F0E,pots[14][1],backpack,'item',true).length)
  1111.                 {
  1112.                     Orion.SetGlobal("potionDelay",Orion.Now()+pots[14][2]);
  1113.                     Orion.SetGlobal("potionDuration",Orion.Now()+pots[14][3]);
  1114.                     Orion.Say(".potion"+name);
  1115.                 }
  1116.                 else Orion.Print("Nemas "+ name +" potion");
  1117.             }
  1118.             break;
  1119.         }
  1120.         case "stoneskin":
  1121.         {
  1122.             if(Orion.FindType(0x0F0E,pots[15][1],backpack,'item',true).length)
  1123.             {
  1124.                 Orion.SetGlobal("potionDelay",Orion.Now()+pots[8][2]);
  1125.                 Orion.SetGlobal("potionDuration",Orion.Now()+pots[8][3]);
  1126.                 Orion.Say(".potion"+name);
  1127.             }
  1128.             else
  1129.             {
  1130.                 Orion.Print("Nemas "+ name +" potion");
  1131.             }
  1132.             break;
  1133.         }
  1134.  
  1135.        
  1136.     }
  1137.     Orion.Print("Pouzit potion: "+ name);
  1138.     Bandage();
  1139. }
  1140.  
  1141.  
  1142. function OpenDoor()
  1143. {
  1144.     var portaFechada= Orion.FindType('0x3EB2|0x3EB1|0x0675|0x0677|0x0679|0x067B|0x067D|0x067F|0x0681|0x0683|0x0685|0x0687|0x0689|0x068B|0x068D|0x068F|0x0691|0x0693|0x0695|0x0697|0x0699|0x069B|0x069D|0x069F|0x06A1|0x06A3|0x06A5|0x06A7|0x06A9|0x06AB|0x06AD|0x06AF|0x06B1|0x06B3|0x06B5|0x06B7|0x06B9|0x06BB|0x06BD|0x06BF|0x06C1|0x06C3|0x06C5|0x06C7|0x06C9|0x06CB|0x06CD|0x06CF|0x06D1|0x06D3|0x06D5|0x06D7|0x06D9|0x06DB|0x06DD|0x06DF|0x06E1|0x06E3|0x06E5|0x06E7|0x06E9|0x06EB|0x06ED|0x06EF|0x06F1|0x06F3|0x06F5|0x0824|0x0826|0x0828|0x082A|0x082C|0x082E|0x0830|0x0832|0x0839|0x083B|0x083D|0x083F|0x0841|0x0843|0x0845|0x0847|0x084C|0x084E|0x0850|0x0852|0x0854|0x0856|0x0858|0x085A|0x0866|0x0868|0x086A|0x086C|0x086E|0x0870|0x0872|0x0874|0x1FED|0x1FEF|0x1FF1|0x1FF3|0x1FF5|0x1FF7|0x1FF9|0x1FFB|0x00E8|0x00EA|0x00EC|0x00EE|0x00F0|0x00F2|0x00F4|0x00F6|0x0314|0x0316|0x0318|0x031A|0x031C|0x031E|0x0320|0x0322|0x0324|0x0326|0x0328|0x032A|0x032C|0x032E|0x0330|0x0332|0x0334|0x0336|0x0338|0x033A|0x033C|0x033E|0x0340|0x0342|0x0344|0x0346|0x0348|0x034A|0x034C|0x034E|0x0350|0x0352|0x0354|0x0356|0x0358|0x035A|0x035C|0x035E|0x0360|0x0362','-1',ground,'',2);
  1145.     var portaAberta =Orion.FindType('0x3ED5|0x3ED4|0x0676|0x0678|0x067A|0x067C|0x067E|0x0680|0x0682|0x0684|0x0686|0x0688|0x068A|0x068C|0x068E|0x0690|0x0692|0x0694|0x0696|0x0698|0x069A|0x069C|0x069E|0x06A0|0x06A2|0x06A4|0x06A6|0x06A8|0x06AA|0x06AC|0x06AE|0x06B0|0x06B2|0x06B4|0x06B6|0x06B8|0x06BA|0x06BC|0x06BE|0x06C0|0x06C2|0x06C4|0x06C6|0x06C8|0x06CA|0x06CC|0x06CE|0x06D0|0x06D2|0x06D4|0x06D6|0x06D8|0x06DA|0x06DC|0x06DE|0x06E0|0x06E2|0x06E4|0x06E6|0x06E8|0x06EA|0x06EC|0x06EE|0x06F0|0x06F2|0x06F4|0x06F6|0x0825|0x0827|0x0829|0x082A|0x082C|0x082E|0x0831|0x0833|0x083A|0x083C|0x083E|0x0840|0x0842|0x0844|0x0846|0x0848|0x084D|0x084F|0x0851|0x0853|0x0855|0x0857|0x0859|0x085B|0x0867|0x0869|0x086B|0x086D|0x086F|0x0871|0x0873|0x0875|0x1FEE|0x1FF0|0x1FF2|0x1FF4|0x1FF6|0x1FF8|0x1FFA|0x1FFC|0x00E9|0x00EB|0x00ED|0x00EF|0x00F1|0x00F3|0x00F5|0x00F7|0x0315|0x0317|0x0319|0x031B|0x031D|0x031F|0x0321|0x0323|0x0325|0x0327|0x0329|0x032B|0x032D|0x032F|0x0331|0x0333|0x0335|0x0337|0x0339|0x033B|0x033D|0x033F|0x0341|0x0343|0x0345|0x0347|0x0349|0x034B|0x034D|0x034F|0x0351|0x0353|0x0355|0x0357|0x0359|0x035B|0x035D|0x035F|0x0361|0x0363','-1',ground,'',3);
  1146.     var shipDoorOpen =Orion.FindType('0x3EB2|0x3EB1|0x3E8A|0x3E85','-1',ground,'',18);
  1147.     var shipDoorClosed =Orion.FindType('0x3E89|0x3E84','-1',ground,'',18);
  1148.  
  1149.     if (portaAberta.length > 0)
  1150.     {
  1151.         var porta = portaAberta;
  1152.     }
  1153.     else
  1154.     {
  1155.         var porta = portaFechada;
  1156.     }
  1157.     if(porta.length)
  1158.     {
  1159.         var quantity = porta.length;
  1160.         Orion.Print(quantity);
  1161.         for (i = 0; i < quantity; i++)
  1162.         {
  1163.             Orion.UseObject(porta[i]);
  1164.             Orion.Wait(30);
  1165.         }
  1166.     }
  1167.    
  1168.     if (shipDoorClosed.length > 0)
  1169.     {
  1170.         var porta = portaAberta;
  1171.     }
  1172.     else
  1173.     {
  1174.         var porta = shipDoorOpen;
  1175.     }
  1176.     if(porta.length)
  1177.     {
  1178.         var quantity = porta.length;
  1179.         Orion.Print(quantity);
  1180.         for (i = 0; i < quantity; i++)
  1181.         {
  1182.             Orion.UseObject(porta[i]);
  1183.             Orion.Wait(30);
  1184.         }
  1185.     }
  1186. }
  1187.  
  1188.  
  1189. function AddProvo()
  1190. {
  1191.     var start= Orion.Now()+6000;
  1192.     Orion.AddObject('trg1');
  1193.     while(Orion.HaveTarget()){
  1194.         Orion.Wait(100);
  1195.         if(Orion.Now()>start)return;
  1196.     }
  1197.     Orion.AddObject('trg2');
  1198. }
  1199. function Provo()
  1200. {
  1201.     var start= Orion.Now()+1000;
  1202.     Orion.WaitTargetObject('trg1');
  1203.     Orion.Say(".provo");
  1204.     while(!Orion.HaveTarget()){
  1205.         Orion.Wait(100);
  1206.         if(Orion.Now()>start)return;
  1207.     }
  1208.     Orion.TargetObject('trg2');
  1209. }
  1210.  
  1211. function Probo()
  1212. {
  1213.     if(!Player.Hidden())
  1214.     {
  1215.         Hid();
  1216.         return;
  1217.     }
  1218.     if(Orion.GetGlobal("probo")=='true')
  1219.     {
  1220.         Orion.SetGlobal("probo",false);
  1221.         CharPrintDelayed('self', '0x00FA', "Probo Off");
  1222.         return;
  1223.     }
  1224.     Orion.SetGlobal("probo",true);
  1225.     CharPrintDelayed('self', '0x00F1', "Probo ON");
  1226.     while((Orion.Now()-3000)<Orion.GetGlobal("hidTime"))
  1227.     {
  1228.         Orion.Wait(100);
  1229.         if(Orion.GetGlobal("probo")=='false')
  1230.         {
  1231.             CharPrintDelayed('self', '0x00FA', "Probo Off");
  1232.             return;
  1233.         }
  1234.         if(!Player.Hidden())
  1235.         {
  1236.             Orion.SetGlobal("probo",false);
  1237.             Hid();
  1238.             return;
  1239.         }
  1240.     }
  1241.     CharPrintDelayed('self', '0x00AA', "Bodam");
  1242.     while(Player.Hidden())
  1243.     {
  1244.         if(Orion.GetGlobal("probo")=='false')
  1245.         {
  1246.             CharPrintDelayed('self', '0x00FA', "Probo Off");
  1247.             return;
  1248.         }
  1249.         if(Orion.GetDistance(lasttarget)<2)
  1250.         {
  1251.             Orion.WaitTargetObject(lasttarget);
  1252.             Orion.Say(".usehand");
  1253.             Orion.Wait(100);
  1254.         }
  1255.         Orion.Wait(100);
  1256.     }
  1257.     Orion.SetGlobal("probo",false);
  1258.     Hid();
  1259. }
  1260.  
  1261. function Entic(target)
  1262. {
  1263.     Orion.ClearJournal('Zameruj jen monstra');
  1264.     Orion.ClearJournal('Tohle nemuzes oslabit.');
  1265.     Orion.ClearJournal('Oslabeni teto prisery presahuje tve moznosti');
  1266.     Orion.ClearJournal('Oslabeni bylo uspesne.');
  1267.     Orion.ClearJournal('Oslabeni se nepovedlo.');
  1268.     Orion.ClearJournal('Nespechej s pouzivanim dovednosti.');
  1269.  
  1270.  
  1271.     var maxTry=1;
  1272.  
  1273.     for(i=0;i<maxTry;i++)
  1274.     {
  1275.         if(Orion.GetDistance(target)>18) return;
  1276.         var Start=Orion.Now();
  1277.         Orion.WarMode(false);
  1278.         Orion.UseSkill("enticement",target);
  1279.         var rtn=Orion.WaitJournal('Zameruj jen monstra|Tohle nemuzes oslabit.|Oslabeni teto prisery presahuje tve moznosti|Oslabeni bylo uspesne.|Oslabeni se nepovedlo.|Nespechej s pouzivanim dovednosti.',Start,Start+3000);
  1280.         if(rtn==null)return;
  1281.         if(rtn.Text()=='Oslabeni bylo uspesne.')
  1282.         {
  1283.             break;
  1284.         }
  1285.         if(rtn.Text()=='Zameruj jen monstra|Tohle nemuzes oslabit.|Oslabeni teto prisery presahuje tve moznosti')
  1286.             return;
  1287.     }
  1288. }
  1289.  
  1290. function SetTarg()
  1291. {
  1292.     Orion.Print("zamer novy target");
  1293.     var acTarg= Orion.lasttarget;
  1294.     Orion.CloseStatusbar(acTarg);
  1295.     Orion.AddObject("trg");
  1296.     while(Orion.HaveTarget()) Orion.Wait(100);
  1297.     var obj =Orion.FindObject("trg");
  1298.     Orion.ClientLastTarget(obj.Serial());
  1299.     Orion.TargetObject(obj.Serial());
  1300.     Orion.RemoveObject("trg");
  1301.     Orion.ShowStatusbar(obj.Serial(),1000,200);
  1302. }
  1303.  
  1304. function AutoHeal()
  1305. {
  1306.     var Shaman=false;
  1307.     var crystal=false;
  1308.     while(true)
  1309.     {
  1310.         Orion.Wait(200);
  1311.         if(Player.Dead())continue;
  1312.         if(Player.Hidden())continue;       
  1313.         if(Orion.GetGlobal('castSpell')=="true")continue;
  1314.         if(Orion.GetGlobal('res')=="true")continue;
  1315.         if(Player.Hits()<120)
  1316.         {
  1317.             Bandage();
  1318.         }
  1319.         var lowHP=90;
  1320.         var heal=null;
  1321.         var list=Orion.GetFriendList();
  1322.         for (var i = 0; i < list.length; i++)
  1323.         {
  1324.             var targ = Orion.FindObject(list[i]);
  1325.             if(!targ)continue;
  1326.             if(Orion.GetDistance(targ.Serial())>6)continue;
  1327.             if(targ.Hits()<lowHP && targ.Hits()>0 && !targ.Dead())
  1328.             {
  1329.                 lowHP=targ.Hits();
  1330.                 heal=targ;
  1331.             }
  1332.         }
  1333.        
  1334.         if(!heal)
  1335.         {
  1336.         //Orion.Print(crystal);
  1337.             if(crystal==true)
  1338.             {
  1339.                 crystal=false;
  1340.                 Orion.Say(".enlightment");
  1341.             }
  1342.             Orion.Wait(100);
  1343.         }
  1344.         else
  1345.         {
  1346.             if(Shaman==false)
  1347.             {
  1348.                 if(crystal==false)
  1349.                 {
  1350.                     crystal=true;
  1351.                     Orion.Say(".enlightment");
  1352.                 }
  1353.             }
  1354.             bandageT(heal, Shaman);
  1355.         }
  1356.     }
  1357. }
  1358.  
  1359. function VooDooObet()
  1360. {
  1361.     if(Player.Hits()<85)return;
  1362.     if(Player.Mana()==Player.MaxMana())return;
  1363.     Orion.Exec("bandage");
  1364.     Orion.Say(".voodooobet");
  1365.     Orion.Wait(100);
  1366. }
  1367.  
  1368. function BloodPact()
  1369. {
  1370.     Orion.Say(".bloodpact");
  1371.     while(Orion.HaveTarget())
  1372.     {
  1373.         Orion.Wait(100);
  1374.     }
  1375.     var endTime= Orion.Now()+400000;
  1376.     while(Orion.Now()<endTime)
  1377.     {
  1378.         Orion.Wait(3000);
  1379.     }
  1380.     Orion.CharPrint(Player.Serial(), 0x00E0, 'Voodoo Blood Pact');
  1381. }
  1382.  
  1383. function VoodooBoost(typ)
  1384. {
  1385.     var str = Orion.FindType(0x0F0E, 0x0835, 'backpack');
  1386.     var dex = Orion.FindType(0x0F0E, 0x0006, 'backpack');
  1387.     var int = Orion.FindType(0x0F0E, 0x06C2, 'backpack');
  1388.     var ar = Orion.FindType(0x0F0E, 0x0999, 'backpack');
  1389.     var heads =[];
  1390.     var head=Orion.FindType(0x1CE9, 0x0000, backpack);
  1391.     for (var i = 0; i < head.length; i++)
  1392.     {
  1393.         heads.push(head[i]);
  1394.     }
  1395.     head=Orion.FindType(0x1CE1, 0x0000, backpack);
  1396.     for (var i = 0; i < head.length; i++)
  1397.     {
  1398.         heads.push(head[i]);
  1399.     }
  1400.    
  1401.     for (var i = 0; i < heads.length; i++)
  1402.     {
  1403.         var h=Orion.FindObject(heads[i]);
  1404.         Orion.Click(heads[i]);
  1405.         Orion.Wait(100);
  1406.         if(!h)continue;
  1407.         if(h.Name()==Player.Name())
  1408.         {
  1409.             if(typ=="str")
  1410.             {
  1411.                 Orion.WaitTargetObject(str[0]);
  1412.                 Orion.UseObject(heads[i]);
  1413.             }
  1414.             if(typ=="dex")
  1415.             {
  1416.                 Orion.WaitTargetObject(dex[0]);
  1417.                 Orion.UseObject(heads[i]);
  1418.             }
  1419.             if(typ=="int")
  1420.             {
  1421.                 Orion.WaitTargetObject(int[0]);
  1422.                 Orion.UseObject(heads[i]);
  1423.             }
  1424.             if(typ=="ar")
  1425.             {
  1426.                 Orion.WaitTargetObject(ar[0]);
  1427.                 Orion.UseObject(heads[i]);
  1428.             }
  1429.         }
  1430.     }
  1431. }
  1432.  
  1433. function Res(shaman)
  1434. {
  1435.     Orion.IgnoreReset();
  1436.     var list = Orion.FindType(0x2006, '-1', ground, 2);
  1437.  
  1438.     if(shaman==true)    {
  1439.         var band=Orion.FindType('0x0E20', '-1', backpack);
  1440.         var wrongBody="Jako Shaman nemuzes takhle ozivovat.";
  1441.     }
  1442.     else{
  1443.         var band=Orion.FindType('0x0E21', '-1', backpack);
  1444.         var wrongBody="Jako Priest nemuzes ozivovat";
  1445.     }
  1446.     if(!list)return;
  1447.  
  1448.     for (var i = 0; i < list.length; i++)
  1449.     {
  1450.  
  1451.         Orion.WaitTargetObject(list[i]);
  1452.         Orion.UseObject(band[0]);
  1453.         var start=Orion.Now();
  1454.         Orion.Wait(200);
  1455.         if(Orion.InJournal(wrongBody, start,Orion.Now()))
  1456.         {
  1457.             Orion.ClearJournal(wrongBody);
  1458.             Orion.SetGlobal("res",true);
  1459.             Orion.Say("Resuju");
  1460.             ResWait(10000);
  1461.             Orion.SetGlobal("res",false);
  1462.         }
  1463.         Orion.Wait(100);
  1464.     }
  1465. }
  1466.  
  1467. function ResWait(Limit)
  1468. {
  1469.     var start= Orion.Now();
  1470.     var loop=start+parseInt(Limit);
  1471.  
  1472.     while(loop>Orion.Now())
  1473.     {
  1474.         if(Orion.InJournal('Telo je prilis daleko.|duch neni ve|ozivil jsi|ozivila jsi','my|sys')){
  1475.             Orion.ClearJournal('Telo je prilis daleko.|duch neni ve|ozivil jsi|ozivila jsi');
  1476.             return;
  1477.         }
  1478.         Orion.Wait(300);
  1479.     }
  1480. }
  1481.  
  1482. function Uklid()
  1483. { // rozmery chest bednicky
  1484.     var MinX=16;
  1485.     var MinY=51;
  1486.     var MaxX=105;
  1487.     var MaxY=105;
  1488.     var x=MinX;
  1489.     var y=MinY;
  1490.     Orion.AddObject("tt");
  1491.     while(Orion.HaveTarget()) Orion.Wait(100);
  1492.     var target =  Orion.FindObject('tt');
  1493.     var items = Orion.FindType('0xFFFF', '0xFFFF', target.Serial());
  1494.     items.sort(ComparePots);
  1495.     Orion.Print(items.length);
  1496.     for (var i = 0; i < items.length; i++)
  1497.     {
  1498.     Orion.Print(x+": "+y);
  1499.         Orion.MoveItem(items[i],0, target.Serial(),x,y);
  1500.         Orion.Wait(100);
  1501.         x+=13;
  1502.         if(x>=MaxX)
  1503.         {
  1504.             x=MinX;
  1505.             y+=17;
  1506.         }
  1507.     }
  1508.         Orion.RemoveObject("tt");
  1509. }
  1510.  
  1511. function ComparePots(a,b) {
  1512.     var aa= Orion.FindObject(a);
  1513.     var bb= Orion.FindObject(a);
  1514.   if (aa.Graphic()=='0x0F0E')
  1515.     return -1;
  1516.   if (bb.Graphic()=='0x0F0E')
  1517.     return 1;
  1518.   return 0;
  1519. }
  1520.  
  1521.  
  1522. function VoodooBoostyAFK()
  1523. {
  1524. Orion.ClearJournal();
  1525.     var Heads={};//[];
  1526.     var HeadsCount=0;
  1527.     Orion.AddObject("hlav");
  1528.     while(Orion.HaveTarget()) Orion.Wait(100);
  1529.     var target =  Orion.FindObject('hlav');
  1530.     var hlavy=Orion.FindType('0x1CE9|0x1DAE|0x1CE1|0x1DA0', '0xFFFF', target.Serial());
  1531.     HeadsCount=hlavy.length;
  1532.     for(var i=0;i<hlavy.length;i++)
  1533.     {
  1534.         var h=Orion.FindObject(hlavy[i]);
  1535.         Orion.RequestName(h.Serial(), 250);
  1536.         if(!Heads[h.Name()])//)==-1)
  1537.         {
  1538.             var hea = { Name: h.Name(), Serial: h.Serial()};  
  1539.             Heads[h.Name()]=h.Serial()//.push(hea);
  1540.             Orion.Print("add "+hea.Name+", "+hea.Serial);
  1541.         }
  1542.     }
  1543.     Orion.RemoveObject('hlav');
  1544.  
  1545.     var str = Orion.FindType(0x0F0E, 0x0835, target.Serial());
  1546.     var dex = Orion.FindType(0x0F0E, 0x0006, target.Serial());
  1547.     var int = Orion.FindType(0x0F0E, 0x06C2, target.Serial());
  1548.     var ar = Orion.FindType(0x0F0E, 0x0999, target.Serial());
  1549.  
  1550.     while(!Player.Dead())
  1551.     {
  1552.         var boostWait=Orion.WaitJournal('str:|dex:|int:|ar:|svetlo:', Orion.Now(),Orion.Now()+120000);
  1553.         Orion.Print(boostWait);
  1554.         if(!boostWait)
  1555.         {
  1556.             Orion.UseFromGround('0x097B');
  1557.             var seeds= Orion.FindType('0x0C4F|0x0C5A|0x1EBD|0x0DF9', '0xFFFF', 'ground');
  1558.             if(seeds)
  1559.             {
  1560.                 for(var i=0;i<seeds.length;i++)
  1561.                 {
  1562.                     Orion.UseObject(seeds[i]);
  1563.                     Orion.Wait(200);
  1564.                     var itb= Orion.FindType('0x0C4F|0x0C5A|0x1EBD|0x0DF9', '0xFFFF', 'backpack');
  1565.                     for(var x=0;x<itb.length;x++)
  1566.                     {
  1567.                         Orion.MoveItem(itb[x], 0, '0x400545AE');
  1568.                     }
  1569.                 }
  1570.             }
  1571.  
  1572.            
  1573.            
  1574.             Orion.Cast('Night Sight',self);
  1575.             Orion.Wait(2222);
  1576.             if(!Player.Hidden())
  1577.                         Orion.Exec('Hid');
  1578.             continue;
  1579.         }
  1580.         var t=Orion.FindObject(boostWait.Serial());
  1581.         Orion.RequestName(t.Serial(), 250);
  1582.         Orion.Print(Heads[t.Name()]);
  1583.         if(!Heads.hasOwnProperty(t.Name()))//i].Name==t.Name())
  1584.         {
  1585.             Orion.SayEmote('Nenaleza hlavu '+t.Name());
  1586.         }
  1587.         else
  1588.         {
  1589.             var ser =Heads[t.Name()];//i].Serial;
  1590.             var he=Orion.FindObject(ser);
  1591.             var pos={x:he.X(), y:he.Y()};
  1592.             Orion.MoveItem(ser, 1, 'backpack');
  1593.             Orion.Wait(100);
  1594.             if(boostWait.Text()=="str:")
  1595.             {
  1596.                 Orion.WaitTargetObject(str[0]);
  1597.                 Orion.UseObject(ser);
  1598.                
  1599.                 Orion.SayEmote("Smaci hlavu "+t.Name()+" v lektvaru sily.");
  1600.             }
  1601.             if(boostWait.Text()=="dex:")
  1602.             {
  1603.                 Orion.WaitTargetObject(dex[0]);
  1604.                 Orion.UseObject(ser);
  1605.                 Orion.SayEmote("Smaci hlavu "+t.Name()+" v lektvaru obratnosti.");
  1606.             }
  1607.             if(boostWait.Text()=="int:")
  1608.             {
  1609.                 Orion.WaitTargetObject(int[0]);
  1610.                 Orion.UseObject(ser);
  1611.                 Orion.SayEmote("Smaci hlavu "+t.Name()+" v lektvaru moudrosti.");
  1612.                    
  1613.             }
  1614.             if(boostWait.Text()=="ar:")
  1615.             {
  1616.                 Orion.WaitTargetObject(ar[0]);
  1617.                 Orion.UseObject(ser);
  1618.                 Orion.SayEmote("Smaci hlavu "+t.Name()+" v lektvaru kamenne kuze.");
  1619.             }
  1620.             if(boostWait.Text()=="svetlo:")
  1621.             {
  1622.                 Orion.Cast("Night Sight",t.Serial());
  1623.                 Orion.Wait(1500);
  1624.                 continue;
  1625.             }
  1626.             Orion.Wait(200);
  1627.             Orion.MoveItem(ser, 1, target.Serial(),pos.x,pos.y);
  1628.             var tmp=Orion.WaitJournal('Nepovedlo se|Jeste nelze pouzit.|seslano uspesne',0,Orion.Now()+2000);
  1629.             if(Orion.InJournal('Nepovedlo se|Jeste nelze pouzit.','my|sys'))
  1630.             {
  1631.                 Orion.ClearJournal('Nepovedlo se|Jeste nelze pouzit.');
  1632.                 Orion.Wait(3300);
  1633.                 Orion.SayEmote('Selhal v ritualu VooDoo');
  1634.             }
  1635.             else{
  1636.                 Orion.ClearJournal('Nepovedlo se|Jeste nelze pouzit.|seslano uspesne');
  1637.                 Orion.Wait(3300);
  1638.                 Orion.SayEmote('Dokoncil ritual VooDoo');
  1639.             }  
  1640.         }
  1641.     }
  1642. }
  1643.  
  1644.  
  1645.  
  1646. function SetPois()
  1647. {
  1648.     Orion.AddObject("Poison");
  1649.     while(Orion.HaveTarget())
  1650.     {
  1651.         Orion.Wait(100);
  1652.     }
  1653. }
  1654.  
  1655. function Pois()
  1656. {
  1657.     Orion.WarMode('false');
  1658.     var btl = Orion.FindObject("Poison");
  1659.     var pois= Orion.FindType(btl.Graphic(), btl.Color(), 'backpack', '', '', '', true);
  1660.     if(pois.length<=0)return;
  1661.     var weap=Orion.ObjAtLayer('RightHand');
  1662.     Orion.WaitTargetObject(weap.Serial());
  1663.     Orion.UseObject(btl.Serial());
  1664. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement