Перенес в отдельную тему, прошу почистить тему - 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]);
}
}
}





