Проблемка с @eval

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

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

Правила форума
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
Zellos
Начинающий
Сообщения: 29
Зарегистрирован: Чт сен 20, 2007 1:28 am

Проблемка с @eval

Сообщение Zellos »

В общем нужно к координатам игрока добавить рандомное "смещение".
В макросе я реализовал это так:

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

         $p = @player($.lastpm)
         $x = @eval($::players{$::playersID[$p]}->{pos_to}{x})
         $y = @eval($::players{$::playersID[$p]}->{pos_to}{y})
         $rx = @eval($x+@random("-2", "-1", "1", "2"))
         $ry = @eval($y+@random("-2", "-1", "1", "2"))
         log координаты $rx $ry
Однако в результате в консоле появляется такая строчка:

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

[macro][log] координаты @eval(199+-1 @eval(137+-1
fant
Новичок
Сообщения: 7
Зарегистрирован: Сб май 10, 2008 12:01 am

Сообщение fant »

Получание просто кардинат х и y

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

$x = @eval(@eval($::char->{pos_to}{x})) 
$y = @eval(@eval($::char->{pos_to}{y})) 
Получения кординат(от первоначального положения) со смещением по рамдому

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

$x = @eval(@eval($::char->{pos_to}{x})+@random("-2", "-1", "1", "2")) 
$y = @eval(@eval($::char->{pos_to}{y})+@random("-2", "-1", "1", "2")) 
Вроде всё.
Zellos
Начинающий
Сообщения: 29
Зарегистрирован: Чт сен 20, 2007 1:28 am

Сообщение Zellos »

Всё равно та же самая фигня вылазит.
И смысл от того что ты написал, если это тоже самое что у меня.
fant
Новичок
Сообщения: 7
Зарегистрирован: Сб май 10, 2008 12:01 am

Сообщение fant »

Zellos писал(а):Всё равно та же самая фигня вылазит.
И смысл от того что ты написал, если это тоже самое что у меня.
У меня в макросе написано так

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

$x = @eval(@eval($::char->{pos_to}{x})+4)
$y = @eval(@eval($::char->{pos_to}{y})+4) 
И оно всё прекрасно работает потому и написал, проверить несмог, на работе... ну попробуй рамдом занести в переменые там... и уже эти переменые прибавлять... хотя это мало масленое =)

Странно вобщем о_О домой приду тестану.
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

обнови кору до svn 6340 хотябы
http://forums.openkore.com/viewtopic.php?f=32&t=641
раньше не работало когда много скобкаф
Ответить