условия в автомакросе: как учитывать % от лвл?

Общие вопросы по OpenKore обсуждаются здесь. Можно сказать, что это - основной раздел форума.
Возник вопрос? Вам сюда.

Модератор: 4epT

Правила форума
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
ЯМобУр-99
Энтузиаст
Сообщения: 84
Зарегистрирован: Пт апр 13, 2007 1:34 pm

условия в автомакросе: как учитывать % от лвл?

Сообщение ЯМобУр-99 »

есть такие условия
base <условие> <уровень>
job <условие> <уровень>
но они вроде работают с целыми значениями, а мне надо чтоб автомакрос срабатывал при достижении указанного % от лвл.
Возможно ли такое сделать?
ЯМобУр-99
Энтузиаст
Сообщения: 84
Зарегистрирован: Пт апр 13, 2007 1:34 pm

Сообщение ЯМобУр-99 »

я дурак :o
Последний раз редактировалось ЯМобУр-99 Пт фев 29, 2008 8:21 pm, всего редактировалось 1 раз.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Тот же совет, что и в соседнем потсе - используем eval в условиях автомакроса. Но, надо лезть внутрь ОпенКоры, чтобы узнать, как взять эти цифры.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
ЯМобУр-99
Энтузиаст
Сообщения: 84
Зарегистрирован: Пт апр 13, 2007 1:34 pm

Сообщение ЯМобУр-99 »

а все, разобрался :)

немного доработал Automacro.pm

sub checkExp {
my ($cond, $exp) = $_[0] =~ /([<>=!]+)\s*(\d+)/;
return cmpr($char->{exp}, $cond, $exp)
}

...

foreach my $i (@{$automacro{$am}->{BaseExp}}) {next CHKAM unless checkExp($i, "exp")}

Правда я не совсем понял что делает первая строчка в процедуре, но все заработало и в автомакросе можно писать типа

...
BaseExp >= 1000000
...



Про eval я как-то пропустил тему, значит можно было проще сделать. :( Спасибо за совет.
Ответить