Перенес в отдельную тему, прошу почистить тему - http://forum.oldp.ne...howtopic=103382
Аутостарт
function Autostart() { Orion.Exec('horse'); Orion.Exec('Paralyze'); }
Аутопоизон шея
для парализ некласов меняется цвет, для браслетов if(!Orion.ObjAtLayer('Necklace')) на ('Bracelet') и тип с цветом
function zelsheja() { while(!Player.Dead()) { if(!Orion.ObjAtLayer('Necklace')) { Orion.EquipT('0x1088','0x0433'); Orion.Wait(500); } else Orion.Wait(10); } }
Таргет и аттака красного игрока, чтобы атаковать синих нужно заменить "gray|orange|red" на "blue"
//helper function for AttacktNextHuman() and TargetNextHuman() function FindNearestHumanEnemy() { Orion.Ignore('self'); var friends = Orion.GetFriendList(); for(var i = 0; i < friends.length; i++) { Orion.Ignore(friends[i]); } var humans = Orion.FindType("-1", "-1", "ground", "human|near|live", 18, "gray|orange|red"); //Orion.FindType('0x0190|0x0191', '-1', ground, 'near|mobile', '18'); if ( !humans.length ) { Orion.Print( '-1', 'no humans found, resetting ignore list'); Orion.IgnoreReset(); return ''; } return humans[0]; } //This function will swap between players in range of 18 and attack them. function AttacktNextHuman() { var serial = FindNearestHumanEnemy(); if(!serial.length) return; CharPrintDelayed(serial, '30', 'ATTACKING'); Orion.ClientLastAttack(serial); Orion.Attack(serial); Orion.Ignore(serial); } //This function will swap between players in range of 18 and target them. function TargetNextHuman() { var serial = FindNearestHumanEnemy(); if(!serial.length) return; CharPrintDelayed(serial, '30', 'TARGET'); Orion.ClientLastTarget(serial); Orion.TargetObject(serial); Orion.Ignore(serial); } function CharPrintDelayed(serial, color, text) { var oldUse = Orion.OptionScaleSpeech(); var oldDelay = Orion.OptionScaleSpeechDelay(); Orion.OptionScaleSpeech(true); Orion.OptionScaleSpeechDelay(50); Orion.CharPrint(serial, color, text); Orion.Wait(50); Orion.OptionScaleSpeech(oldUse); Orion.OptionScaleSpeechDelay(oldDelay); }
Автотрапедс
function Paralyze() { var Msg = "You are frozen and can not move"; Orion.ClearJournal(Msg); while (!Player.Dead()) { if (Orion.InJournal(Msg)) { Orion.ClearJournal(Msg); Orion.WaitTargetType("0x0E26", "0x066E"); Orion.Say('.usetraped'); } else { Orion.Wait(100); } } }
Сено
function seno() { var list = Orion.FindType('0x0F36', '-1', 'backpack'); if (list.length) Orion.DropHere(list[0]); }
Трекинг
function TrackPP() { Orion.CancelWaitMenu(); Orion.CloseMenu('Tracking'); Orion.WarMode(false); Orion.WaitMenu('Tracking', 'Players'); Orion.UseSkill('Tracking'); }
Реколл
function RecallFromBook() { var runeIndex = 13; var runebook = '0x4009727F'; Orion.WaitGump(Orion.CreateGumpHook(runeIndex)); Orion.UseObject(runebook); }
Автохил
function Heal() { var Timer, Msg = "You put the bloody bandage|failed"; while (!Player.Dead() && Orion.Count("bandage")) { if (Player.Hits() < Player.MaxHits() - 1) { Orion.ClearJournal(Msg); Orion.BandageSelf(); Timer = Orion.Now() + 5000; while (!Orion.InJournal(Msg) && Orion.Now() < Timer) { Orion.Wait(100); } } else { Orion.Wait(100); } } }
Автоконь
function horse() { while(!Player.Dead()) { if (Orion.ObjAtLayer('Mount')) { Orion.Wait(200); } else { Orion.Say('.mounts'); Orion.Wait(500); } } }
ПикАп
function pilesos() { while (!Player.Dead()) { Orion.Wait(50); var items = Orion.FindType('0xFFFF', '0xFFFF', ground, 'items', 2); for (var i = 0; i < items.length; i++) { var obj = Orion.FindObject(items[i]); if (obj != null && !obj.Locked()) { Orion.MoveItem(items[i], 0, backpack); Orion.Wait(50); } } } }
function paralyzka() { Orion.Say('.useparalyze'); Orion.WaitTargetObject('lasttarget'); } function poizanka() { Orion.Say('.usepoison'); Orion.WaitTargetObject('lasttarget'); } function massdispel() { Orion.UseType('0x183C', '0x0427'); } function massdetect() { Orion.UseType('0x183C', '0x0447'); } function masspoison() { Orion.UseType('0x1832', '0x0487'); }
Атака мобов. AttackNextHuman для гуманойдов (некры эльфы и тд. так же можно использовать для атаки играков) Monster для всех остальных.
function AttackNextHuman(){ var Target = Orion.FindType("-1", "-1", "ground", "human|near|live", 18, "gray|orange|red"); if (Target.length != 0) { Orion.Attack(Target[0]); Orion.Ignore(Target[0]); } else { Orion.IgnoreReset(); Target = Orion.FindType("-1", "-1", "ground", "human|near|live", 18, "gray|orange|red"); if (Target.length != 0) { Orion.Attack(Target[0]); Orion.Ignore(Target[0]); } } } function AttackNextMonster(){ var Target = Orion.FindType("!0x0190|!0x0191", "-1", "ground", "near|live", 18, "gray|red"); if (Target.length != 0) { Orion.Attack(Target[0]); Orion.Ignore(Target[0]); } else { Orion.IgnoreReset(); Target = Orion.FindType("!0x0190|!0x0191", "-1", "ground", "near|live", 18, "gray|red"); if (Target.length != 0) { Orion.Attack(Target[0]); Orion.Ignore(Target[0]); } } }