51

Re: Условия использования

mozgin пишет:
Travel пишет:

Подскажите условие... Мне нужно что бы бот в изломе использовал "Воля к победе" когда напротив остался один моб  с 5% жизней.

if((top.Battle.oBattle.oEnemySlot.nHP * 100 / top.Battle.oBattle.oEnemySlot.nMaxHP) <= 5 && EnemiesCount == 1)
_name = "hit_willpower";

 
Благодарю!  big_smile

Selfie сейчас популярен!

52

Re: Условия использования

Ребят помогите, нужно чтоб маг использовал песчаный щит на служители глубин!
Делал так:

if(top.Battle.oBattle.sEnemyLogin.indexOf("Служитель бездны") > -1)
{
_name = "wis_earth_shield2";
}

и так

var enemies = top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.split(", ");
for(i=0; i<enemies.length; i++)
{
    if(enemies.indexOf("Служитель Бездны") > -1)
        _target = enemies;
}
_name = "wis_earth_shield2"

помогите напильником доработать!

53

Re: Условия использования

На 24-й версии - всё так же ходит как и прежде, но морковки не пьет. sad

Selfie сейчас популярен!

54

Re: Условия использования

Nikita_KrM пишет:

На 24-й версии - всё так же ходит как и прежде, но морковки не пьет. sad

обновись до последней версии

Вы обладаете Благодатью Алхимика  до 05.04.16

55

Re: Условия использования

qwerty пишет:
Nikita_KrM пишет:

На 24-й версии - всё так же ходит как и прежде, но морковки не пьет. sad

обновись до последней версии

  Поставил 24, т.к. была проблема. Временный плагин пещер решил её. Ещё раз спасибо.

Selfie сейчас популярен!

56

Re: Условия использования

if(typeof(top.Battle.oBattle.oMySlot.arrEffects["krit_blooddrink"]) != "object")
{
_name = "hit_willpower";
}
else
_name = "hit_empower";

Почему использует усиленные удары, только в том случае, если на мне Хлебнуть крови(причем Воля к победе не включается)?
Как правильно написать прием или разделить на приемЫ с условиями : Если включен Хлебнуть крови, то использовать воля к победе, а если не висит ничего, то гда усиленные удары. Или же (если проще): использовать Воля к победе + усиленные удары , ТОЛЬКО если а мне Хлебнуть крови.

Отредактировано Nikita_KrM (2015-03-15 10:50:32)

Selfie сейчас популярен!

57

Re: Условия использования

if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/hammer[\d]+.gif/)
        _name = "krit_skipblock";

Почему не работает? (Если противник с дубиной - использовать прием). Но бот делает один размен и стопорится. Может со скобками напутал?

58

Re: Условия использования

добавь скобку в конце

Вранье.Вранье.Вранье.Правда.(с)Rand

59

Re: Условия использования

qwerty пишет:

добавляет в чат слово выполнено:

top.Chat.Self.AddMessage("Выполнено");

я правильно понимаю, в чат сообщение не уходит smile

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

60

Re: Условия использования

нет, естественно, только ты его видишь

Вы обладаете Благодатью Алхимика  до 05.04.16

61

Re: Условия использования

Еще момент.
Разбираю пример из первого поста:

SPOILER Show

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["counter_piercingwounds"]) != "object") 
        _name = "counter_piercingwounds";
    else
    {
        piercingwoundsCount = top.Battle.oBattle.oEnemySlot.arrEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/counter_piercingwounds\.gif">/i);
        if(piercingwoundsCount != null)
        {
            if(parseInt(piercingwoundsCount[1]) < 5)
                _name = "counter_piercingwounds";
        }
        else
            _name = "counter_piercingwounds";
    }


Ни как не могу выцепить условие проверки на себе 3х яростей и 3х стойкостей?

if((((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 30) || parseInt(top.Battle.oBattle.arrRes["hp"].innerHTML) > 10 ) && parseInt(top.Battle.oBattle.arrRes["spirit"].innerHTML) > 0) {
       _name = "hp_regen"; // утереть пот
       _break = true; 
} else {
      if(typeof(top.Battle.oBattle.oMySlot.arrEffects["hp_defence"]) != "object"){
        _name = "hp_defence";
      } else {
        piercingwoundsCount = top.Battle.oBattle.oMySlot.arrEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/hp_defence\.gif">/i);
        if(piercingwoundsCount != null)
        {
             if(parseInt(piercingwoundsCount[1]) < 3) {
                _name = "hp_defence";
             }       
        } else {
            _name = "hp_enrage";
        }
     }
}

По условиям должно срабатывать так...
Если хп мало - пот
Если много то разгоняет стойкость до максима... за ней ярость...
что то после первой стокости зависте бот.
Давно просто не писал на JS (навык потерял) sad

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

Re: Условия использования

Для утереть пот в первый слот с простым условием на проверку хп. Во-второй просто чистый параметр стойкость. В третий чистую ярость.. Будет работать ровно так как ты хочешь.

63

Re: Условия использования

Потрашитель пишет:

Для утереть пот в первый слот с простым условием на проверку хп. Во-второй просто чистый параметр стойкость. В третий чистую ярость.. Будет работать ровно так как ты хочешь.

Так сейчас и есть...
но хочу что бы при разогноных стойкости и ярости... тер пот в не зависимости от количества хп.
Так что все равно надо выдергивать текущий уровень усилия...

Сейчас обкатываю вариант предложенный Анахроником(нашел на форуме), но он почему не отрабатывает первую ступень...

var hp_def = (typeof(top.Battle.oBattle.oMySlot.arrEffects["hp_defence"]) != "object") ? null : top.Battle.oBattle.oMySlot.arrEffects["hp_defence"].innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/hp_defence\.gif">/i);
    hp_def = (hp_def != null) ? hp_def[1] : 0;
var hp_enr = (typeof(top.Battle.oBattle.oMySlot.arrEffects["hp_enrage"]) != "object") ? null : top.Battle.oBattle.oMySlot.arrEffects["hp_enrage"].innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/hp_enrage\.gif">/i);
    hp_enr = (hp_enr != null) ? hp_enr[1] : 0;
 
external.AddToChat("Провека " + hp_def + " / " + hp_enr);

На выходе выходит:
1. Нет усилки - "Проверка 0 / 0"
2. 1я ступень стойкости - "Проверка 0 / 0"
3. 2я ступень стойкости - "Проверка 2 / 0"
4. 3я ступень стойкости - "Проверка 3 / 0"

далее когда разгоняет ярость
1. 1я ступень ярость и 3 ступень стойкости - "Проверка 3 / 0"
2. 2я ступень ярость и 3 ступень стойкости - "Проверка 3 / 2"
3. 3я ступень ярость и 3 ступень стойкости - "Проверка 3 / 3"

Не могу сообразить почему при первой ступени переменная принимает -  0

Еще вопрос..

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects[XXXXX]) != "object"){

как можно в качестве XXXX использовать регулярку .(+) что бы вылавливать любой эффект?

Отредактировано Andy_SPB (2015-04-10 21:57:21)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

64

Re: Условия использования

есть ли условие определения оставшейся задержки для приема?

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

65

Re: Условия использования

Здравствуйте, помогите осуществить условие:
Если перед мной один противник и его уровень жизни меньше 33 процентов то выпустить зверька.
Заранее спасибо  smile

66

Re: Условия использования

Поидее должно выглядеть так:

SPOILER Show

if((EnemiesCount < 2) && ((top.Battle.oBattle.sEnemyLogin.nHP * 100 / top.Battle.oBattle.sEnemyLogin.nMaxHP) < 33)) 
_name="pet_unleash";

Отредактировано Евжений (2015-05-25 13:24:02)

Ответы на многие вопросы по приемам (Please log in or register to see this URL)

67

Re: Условия использования

Евжений пишет:

Поидее должно выглядеть так:

SPOILER Show

if{(EnemiesCount < 2) && ((top.Battle.oBattle.sEnemyLogin.nHP * 100 / top.Battle.oBattle.sEnemyLogin.nMaxHP) < 33)} 
_name="pet_unleash";

Спасибо, проверю...

68

Re: Условия использования

Slafkin пишет:
Евжений пишет:

Поидее должно выглядеть так:

SPOILER Show

if{(EnemiesCount < 2) && ((top.Battle.oBattle.sEnemyLogin.nHP * 100 / top.Battle.oBattle.sEnemyLogin.nMaxHP) < 33)} 
_name="pet_unleash";

Спасибо, проверю...

Не работает  sad Qwerty помоги с этим вопросом

Отредактировано Slafkin (2015-05-23 15:32:49)

69

Re: Условия использования

Slafkin пишет:

Не работает  sad Qwerty помоги с этим вопросом

ошибка в коде или опечатка...
оператор if идет с круглыми скобками, а не с фигуристыми скобками...

if((EnemiesCount < 2) && ((top.Battle.oBattle.sEnemyLogin.nHP * 100 / top.Battle.oBattle.sEnemyLogin.nMaxHP) < 33)) 
_name="pet_unleash";

так то по логике все вроде как верно...

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

70

Re: Условия использования

Насчет фигурных незнал, а внутри круглых скобок фигурные могут быть? вообще с приемами какой то швах, если пытаюсь прописать, кроме просто приема что-то более сложное почти все не работает, да и при копирование с форума почти все приемы не работают.  Может проблема в том, что я пытаюсь сначала в текстовом редакторе их составить?
Вот типичный пример:
Если мага шокнули или не доступны приемы, чтоб ударил посохом. Сколько не крутил нифига не получается и разные варианты с форума пробовал. Итог один приемы не работают и стоит, или приходится голый духит туда засовывать.

Вот к примеру опробованные варианты:

SPOILER Show

if((!top.Battle.oBattle.arrMethods["wis_air_chainlight12"].oMethod.bEnable) ||  (!top.Battle.oBattle.arrMethods["wis_air_shaft12"].oMethod.bEnable)) _name ="wis_gray_meditation";  else DoHit();
 
if(!top.Battle.oBattle.arrMethods["wis_water_strike"].oMethod.bEnable && !top.Battle.oBattle.arrMethods["wis_water_frost12"].oMethod.bEnable && !top.Battle.oBattle.arrMethods["wis_water_cloud12"].oMethod.bEnable  && !top.Battle.oBattle.arrMethods["wis_gray_meditation"].oMethod.bEnable)
{
DoHit();
_break = true;
}
 
{if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_water_frost12"]) == "object" && (top.Battle.oBattle.oEnemySlot.nHP * 100 / top.Battle.oBattle.oEnemySlot.nMaxHP) < 30) _target = top.Battle.oBattle.sEnemyLogin; _name = "wis_water_break";} || { if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_water_poison12"]) != "object") _target = top.Battle.oBattle.sEnemyLogin; _name = "wis_water_poison12";_name = "wis_water_strike";}||{_name = "wis_water_frost12";}|| {_name = "wis_water_cloud12";}|| {_name = "wis_white_meditation";}|| {DoHit();}


Но вообще тот же вариант с отменить, копируешь и все сразу стоп бот  smile

Ответы на многие вопросы по приемам (Please log in or register to see this URL)

71

Re: Условия использования

Евжений,
честно скажу, сложных комбинаций стараюсь не использовать...
Бот использует принцип... 1 слот - 1 прием... т.е. он может в слоте с кодом вызвать только один прием...
по этому есть смысл прописывать приемы связанные с друг с другом по логике - либо первый... либо второй...

По твоему коду...

if((!top.Battle.oBattle.arrMethods["wis_air_chainlight12"].oMethod.bEnable) ||  (!top.Battle.oBattle.arrMethods["wis_air_shaft12"].oMethod.bEnable)) _name ="wis_gray_meditation";  else DoHit();
if(!top.Battle.oBattle.arrMethods["wis_water_strike"].oMethod.bEnable && !top.Battle.oBattle.arrMethods["wis_water_frost12"].oMethod.bEnable && !top.Battle.oBattle.arrMethods["wis_water_cloud12"].oMethod.bEnable  && !top.Battle.oBattle.arrMethods["wis_gray_meditation"].oMethod.bEnable)
{
DoHit();
_break = true;
}

Это должны быть два разных слота с кодами... иначе на запашет

{if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_water_frost12"]) == "object" && (top.Battle.oBattle.oEnemySlot.nHP * 100 / top.Battle.oBattle.oEnemySlot.nMaxHP) < 30) _target = top.Battle.oBattle.sEnemyLogin; _name = "wis_water_break";} || { if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_water_poison12"]) != "object") _target = top.Battle.oBattle.sEnemyLogin; _name = "wis_water_poison12";_name = "wis_water_strike";}||{_name = "wis_water_frost12";}|| {_name = "wis_water_cloud12";}|| {_name = "wis_white_meditation";}|| {DoHit();}

тут неверен синтаксис... да и в общем беда smile

1. У тебя не верно используются {}, они описывают границы цикла или функции

if (условие) {код если условие верно} else {код если условие не верно}

2. Беда с перечислением приемов?!

{_name = "wis_water_cloud12";}|| {_name = "wis_white_meditation";}

так не запашет...
в одном слоте кода, должен выполняться 1 прием... перечислить можешь 10, но по условиям они не должны пересекаться... а у тебя просто без условия либо тот... либо этот... как определить какой?
по логике должны быть как то так:

if (мои больше хп 90%) {супер удар} else if (у меня хп больше 50% и меньше 90%) {супер защита} else {готовимся к смерти}

как то так...
а у тебя получается по нескольку приемов в подряд... в одном условии... бот так не работает...

Евжений пишет:

Насчет фигурных незнал, а внутри круглых скобок фигурные могут быть?

нет.
у круглых принцип действия как в математики, {} - границы кода цикла/функции

Отредактировано Andy_SPB (2015-05-24 13:42:43)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

72

Re: Условия использования

Так насчет моей просьбы кто нибудь поможет?

73

Re: Условия использования

Slafkin пишет:

Так насчет моей просьбы кто нибудь поможет?

так я ж поправил код?
(Please log in or register to see this URL)

Отредактировано Andy_SPB (2015-05-24 14:08:45)

(Please log in or register to see this URL), лучше (Please log in or register to see this URL) (с)
Помощь приходит быстрее если:
1. Понятно сформулирован вопрос.
2. Использованы нужный (Please log in or register to see this URL).

74

Re: Условия использования

Andy_SPB пишет:

у круглых принцип действия как в математики, {} - границы кода цикла/функции

Спасибо за пояснения, немного прояснился вроде принцип. На неделе попробую пошаманить. Посмотрим, что получится, если что выложу сюда, что не будет получаться.  smile

Ответы на многие вопросы по приемам (Please log in or register to see this URL)

75

Re: Условия использования

господа, как прописать, чтобы танк использовал прием Контузия во время действия эффекта Гнев освобожденный?