Страница 1 из 3

спелы под ногами? / [not] spell ...? / eval в автомакро [!!]

Добавлено: Сб янв 12, 2008 10:43 pm
nikitaaa
скажем, если есть под ногами брага от это будет выгледить вот так:
spell брага

а как проверить что под ногами нет браги?

spell [not?] брага

Добавлено: Сб янв 12, 2008 11:05 pm
piroJOKE
Я не знаю, можно ли написать отрицание в макро, я бы сделал так :

Код: Выделить всё

doCommand macro goAwayKaka {
	whenNotGround mySpell
	timeout 1
}
Добавлено спустя 1 минуту 32 секунды:

Если нужны какие-то сложные условия, то можно приделать, чтобы doCommand управлял release/lock для автомакроса, содержащего те хитрые условия.

PS: Интересно, что скажет г-н 4орт?

Добавлено: Вс янв 13, 2008 5:43 am
4epT
ну а шо я могу сказать :)

если макросами, то тока регэкспом :twisted: (типо у нас появился такой-то статус)

а так всё как ты написал :)

Добавлено: Пн янв 14, 2008 12:27 pm
DInvalid
4epT писал(а):ну а шо я могу сказать :)

если макросами, то тока регэкспом :twisted: (типо у нас появился такой-то статус)

а так всё как ты написал :)
Несогласен :oops:

Наличие браги под ногами в макросе проверяется так:

Код: Выделить всё

macro BragiCheck {
$var0 = Misc::whenGroundStatus(Utils::calcPosition($::char),"Poem of Bragi")
$var1 = @eval ($var0)
log $var1
}
PS: Мва ха ха!

Добавлено: Пн янв 14, 2008 12:39 pm
piroJOKE
Так а смысл, это ж не автомакрос.
Вот если бы ты проверку @eval умудрился в условия автомакроса засунуть, родина бы тебя не забыла. :twisted:

Добавлено: Пн янв 14, 2008 2:35 pm
DInvalid
piroJOKE писал(а):Так а смысл, это ж не автомакрос.
Вот если бы ты проверку @eval умудрился в условия автомакроса засунуть, родина бы тебя не забыла. :twisted:
Автор топика ничего не сказал про АВТОмакрос он спросил как в макросе проверить что под ногами брага - я ему показал как )

piroJOKE, только потому что я тебя так сильно люблю, я сделаю это =)
Во вложении подправленный макроплугин.

Код: Выделить всё

automacro Bragi {
eval Misc::whenGroundStatus(Utils::calcPosition($::char),"Poem of Bragi")
timeout 60
call {
log Bragi!!!
}
}

automacro EEE {
eval 2+2+2+2 == 8
timeout 60
call {
log We are eval
}
}

Код: Выделить всё

[macro] automacro EEE triggered.
[macro][log] We are eval
ss 321
[macro] automacro Bragi triggered.
[macro][log] Bragi!!!


PS: Ke ke ke i lold
[/code]

Добавлено: Пн янв 14, 2008 2:45 pm
piroJOKE
Ого. Круто. :shock: Магёшь!
Так предлагаю опубликовать... ы?

Добавлено спустя 6 минут 47 секунд:

Э... я извиняюсь, а чего ты его в "сингл" запихал, а не в "мульти"?

Добавлено: Пн янв 14, 2008 2:45 pm
DInvalid
Согласен ... ы!

Ну по хорошему надо бы проверить в разных там условиях, но там вроде ошибке не где пролезть.

описание условия?
eval <argument>
Triggers when eval(<argument>) is true
Example


...


В сингл потому что имхо хватит и 1 эвала. Его можно сложным сделать...

Добавлено: Пн янв 14, 2008 2:50 pm
piroJOKE
Отлично. Предлагаю ВСЕМ тестировать, и если ничего такого не вылезет, нагло это закоммитим! :twisted: :twisted:

Добавлено спустя 1 минуту 19 секунд:

Бугога, это ж теперь можно автомакросы на что угодно вешать.

Добавлено: Пн янв 14, 2008 5:06 pm
kLabMouse
piroJOKE
Закоммить лучше. Потом розберёмся.
Или даже кто-то исправит если найдёт баг.

Хотя.... по коду багов вылазять не должно. Максимум, если будем сравнивать супер мега пупер условия типа: еслть ли такая строка в списке.

Добавлено: Пн янв 14, 2008 6:21 pm
piroJOKE
Готово, закоммитил. (С чем афтара и поздравляю!). SVN-6172.
http://forums.openkore.com/viewtopic.php?t=36986

Добавлено: Пн янв 14, 2008 10:17 pm
piroJOKE
Кстати, уважаемый афтар, а отчего у тебя в архиве файлы лежат с расширениями .pl , а не .pm? Как это так вышло? :twisted:

Добавлено: Пн янв 14, 2008 10:31 pm
DInvalid
piroJOKE писал(а):Кстати, уважаемый афтар, а отчего у тебя в архиве файлы лежат с расширениями .pl , а не .pm? Как это так вышло? :twisted:
Ы! Аа..эттта таккая защитта ат нупааффф!!! Во! :Yahoo!:

Когда дифал переименовывал ... а обратно неправильно переименовал
:o

Добавлено: Пн янв 14, 2008 11:07 pm
piroJOKE
Оффтопик/флуд.

Кстати, и дифф у тебя какой-то странный. По крайней мере, параметры, которыми я обычно пользуюсь (см. листинг дифф-ов твоего изменения на форуме ОК) куда наглядней.

Добавлено: Вт янв 15, 2008 12:03 am
nikitaaa
[quote="DInvalid"]

Код: Выделить всё


eval Misc::whenGroundStatus(Utils::calcPosition($::char),"Poem of Bragi")

круто, спасибо, а можно еще для таких как мну объяснить как эт работает? или ткните мну носам в нужный мануал пожалст..