1

Тема: Приемы с условиями! Для лучника.

Есть следующий прием.


if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/axe[\d]+.gif/))
        _name = "attack_volley";
else if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/knife[\d]+.gif/) || top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/bow[\d]+.gif/))
        _name = "attack_volley";
else if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/crossbow[\d]+.gif/) || top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/hammer[\d]+.gif/))
        _name = "attack_multishot";
else if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/sword[\d]+.gif/))
        _name = "attack_volley";

Как сюда добавить условие, что если передо мной  меньше 3 противников (включительно) то только  стремительные стрелы.

Боты, боты наши всё!

2

Re: Приемы с условиями! Для лучника.

А в таком виде,как сейчас работает?
P.S.И да...Ребят,такие темы создавайте в своих ветках...Скажем этот приём можно в "Приёмы 7 левела" или там создать тему по приёмам лука отдельную.

Отредактировано Mr Blanco (2011-12-05 20:17:07)

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

3

Re: Приемы с условиями! Для лучника.

Mr Blanco пишет:

А зачем прописывать так?Ты вроде как указал все виды бойцрв...Не проще просто прописать стремительные стрелы,они и будут во всех пулять...Или что-то не так понял...



Опишу ситуацию по бою.


начало боя, мы набираем 6 тактик ударов.  И стоит выбор, что юзать. Стремительные или Залп. Если напротив танк, то лучше залп, так как больше урона нанесешь, чем по нему стремительными, а если уворот или лучник, то стремительные куда эффективнее будут.  Но когда конец боя и против тебя остался один танк, то конечно лучше юзать стремительные стрелы, чем залп.

Так мне и нужно условие, что прием Стремительные стрелы будет использоваться, только в Уворота, Лучника, крита, топорщика или в танка, но в танка при уловии, что противников осталось 3 или меньше.



Могу ещё так написать \ объяснить

Напротив лучник = Стремительные стрелы
Напротив уворот = Стремительные стрелы
Напротив топорщик  =  Стремительные стрелы
Напротив маг = Стремительные стрелы
Напротив крит =  Стремительные стрелы
Напротив танк = Стремительные стрелы, если в команде противника меньше 3х человек, иначе залп стрел

Отредактировано RIF17 (2011-12-05 20:14:00)

Боты, боты наши всё!

4

Re: Приемы с условиями! Для лучника.

Я логику понял)))Не заметил там в условии Залпа)))

Отредактировано Mr Blanco (2011-12-05 20:20:27)

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

5

Re: Приемы с условиями! Для лучника.

Блин, все ещё актуально. Да и как туда засунуть следующие условие.

Если напротив Отморозок\зверь\камнестраж, то стремительные и залп стрел не использовать, при условии, что есть ещё противники.

Боты, боты наши всё!

6

Re: Приемы с условиями! Для лучника.

стёрто за убогостью))))

Вот такую загогулину изобрёл.

Если осталось 2 противника или меньше - смотрим на уровень хп, если 150 или больше - стремительные стрелы, если меньше - залп, даже если зверь или каменный страж (скорее всего убьём первого и раним второго).

Если противников 3 или больше - смотрим, если перед нами силовик, крит, уворот, лучник и нет зверей или каменных стражей и жизни врага больше 150 - применяем стремительные стрелы
Иначе используем залп стрел на врага(остается танк или арб)  если не зверь или не камнестраж.

Тестирую пока что smile
Но, вроде логика верная...

после первого боя, ну, вроде успешно smile  тест пройден smile

Доработанный Exile вариант smile  Работают оба, тут красивее smile
И главное тут логика на счет живности вернее, используем этот вариант!!!

if(EnemiesCount < 3)
{
    if (top.Battle.oBattle.oEnemySlot.nHP > 150) _name = "attack_volley";
    else _name = "attack_multishot";
}
else if (top.Battle.oBattle.sEnemyLogin.indexOf("Страж") < 0 && top.Battle.oBattle.sEnemyLogin.indexOf("(зверь") < 0)
{
    if(top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/(?:axe|sword|knife|bow)[\d]+.gif/) && top.Battle.oBattle.oMySlot.nHP > 150)
        _name = "attack_volley";
    else
        _name = "attack_multishot";
}
Ответы на большинство вопросов связанных с ботом, вы найдёте здесь: (Please log in or register to see this URL)
(Please log in or register to see this URL) - проверил лично! Подробнее (Please log in or register to see this URL)

7

Re: Приемы с условиями! Для лучника.

1.

if((top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/axe[\d]+.gif/) || top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/sword[\d]+.gif/) || top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/knife[\d]+.gif/) || top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/bow[\d]+.gif/))

Если перед тобой арб\танк\зверь\страж - конструкция выше вернет false и выставится залп.

2. Проверку на зверя\стража лучше выносить на самый верх, чтобы не делать её на каждой ветви условий.

ПС.  Не уверен в валидности, но...

top.Battle.oBattle.oEnemySlot.oLayer.innerHTML.match(/(?:axe|sword|knife|bow)[\d]+.gif/)

разве не красивее, чем награмождение проверок выше?)

Оставь надежду всяк сюда входящий ©

8

Re: Приемы с условиями! Для лучника.

Да, вот теперь условия правильные.

Отредактировано Exile (2012-02-25 00:53:52)

Оставь надежду всяк сюда входящий ©

9

Re: Приемы с условиями! Для лучника.

Петро пишет:

сколько ты сообщений понаизменял то, ужс))) я уже и твоё скопировать успел, оно красивее выполнено smile ты не против если я его поставлю?)

Я отпостил, потом заметил что ты исправил свое.
Удалил.
Потом заметил ошибку что ты вынес проверку на живность не туда и снова отпостил. Пока отправлял, ты её уже исправил.
Снова удалил)


Проверка на живность\стража тебе нужна в любом случае или только когда противников более 2?
А то в твоей последней версии кода она была для любого случая, а в моей только при n > 2

Отредактировано Exile (2012-02-25 01:02:10)

Оставь надежду всяк сюда входящий ©

10

Re: Приемы с условиями! Для лучника.

А вообще, подряжусь я приёмы для лука писать smile) а то скукотища smile)  создам новую тему, и перенесу эту туда smile

Но завтра  smile  утро вечера мудренее))

Отредактировано Петро (2012-02-25 01:09:55)

Ответы на большинство вопросов связанных с ботом, вы найдёте здесь: (Please log in or register to see this URL)
(Please log in or register to see this URL) - проверил лично! Подробнее (Please log in or register to see this URL)