Страница 1 из 2
Макрос после еквипа вещи - зависает
Добавлено: Вс дек 10, 2006 12:57 pm
demm
Или руки у меня кривые, Или опять что-то с макросами...
Если еквипить через макрос, то он виснет после первой вещи которую нацепил.
Т.е. макрос цепляет вещь и начинает просто думать что сделать ему дальше... и думает до бесконечности или пока не скажешь ему macro stop
Пример:
macro eq {
log start eq
do eq @inventory (Novice Guard)
log end eq
}
Получаем зависон после еквипа, лог "end eq" не выводится:
macro eq
[macro][log] start
You equip Novice Guard (18) - Shield (type 32)
Кора 1.9.3.
Добавлено: Вс дек 10, 2006 2:31 pm
piroJOKE
Вообще-то так не бывает. О_о
Единственное где у меня зависали макросы, это были игрища с релогином... (do relog ###). Там тогда где-то что-то инициализовалось заново и всё вклякало.
Добавлено: Вс дек 10, 2006 3:07 pm
demm
а вот у меня бывает ^_^
похоже я единственный такой ^_^
ну не может он одеть больше одной вещей и всё...
первую одевает и висит...
Кора качалась отсюда...
Добавлено: Вс дек 10, 2006 3:23 pm
piroJOKE
Хм... А цепочка uneq / eq ? (Это бред, но интересно попробовать)
Добавлено: Вс дек 10, 2006 4:43 pm
demm
снимает, одевает... виснет...
macro eq {
do uneq @inventory (Novice Guard)
do eq @inventory (Novice Guard)
log end
}
Одевает, ничего не снимает... висит..
macro eq {
do eq @inventory (Novice Guard)
do uneq @inventory (Novice Guard)
log end
}
Добавлено: Вс дек 10, 2006 4:58 pm
piroJOKE
ЭЭэ, погоди-погоди...
А как насчет цепочки
...
eq .......
c Хелло пацанята!
move x y
}
Если это сработает, то причем тут eq вообще?
Добавлено: Вс дек 10, 2006 5:08 pm
kLabMouse
demm
Здесь Лучше Поигратся "eval"'ом. А лечше всего не забывать про "do"
Добавлено: Вс дек 10, 2006 5:25 pm
piroJOKE
Оффтопик: Ггг, программерам писать макросы доктора не рекомендуют.
Добавлено: Вс дек 10, 2006 5:27 pm
kLabMouse
piroJOKE
Оффтоп. Уху. Програмера ОТ НИХ ТУПЕЮТ.
Вот я За год роботы с SmarteScript отупел совсем. Теперь пол часа думаю и вспоминаю синтаксис языка.
Добавлено: Вс дек 10, 2006 5:31 pm
demm
piroJOKE
в самом первом сообщении смотри, после еквипа лог не выводится...
kLabMouse
а с do что у меня не так?
Добавлено: Вс дек 10, 2006 5:33 pm
kLabMouse
demm
Как видиш. Запара именно в строчке
eq @inventory (Novice Guard)
Добавлено: Вс дек 10, 2006 5:34 pm
demm
так do - то стоит...
Добавлено: Вс дек 10, 2006 5:39 pm
piroJOKE
Слушай, так это ж старый синтаксис; это было надо, когда Kore понимал только eq ## (число). А теперь ты просто можешь написать...
do eq Novice Guard
... и всё.
Добавлено: Вс дек 10, 2006 5:49 pm
demm
пробовал я это...
что я только не перепробовал...
У меня новис одеться сам не может Т_Т
Сам макрос:
macro eq {
log start
do uneq Novice Guard
do eq Novice Guard
do uneq Novice Guard
log end
}
вот что получается при "
macro_orphans reregister_safe"
macro eq
[macro][log] start
You unequip Novice Guard (33) - Shield
You equip Novice Guard (33) - Shield (type 32) # тут висим
ai clear #вводим ручками
AI sequences cleared
[macro] orphaned macro!
found an active macro 'eq' but no 'macro' record in ai queue
using method 'reregister_safe' to solve this problem
[macro][log] end
You unequip Novice Guard (33) - Shield
и при "
macro_orphans reregister"
macro eq
[macro][log] start
You unequip Novice Guard (33) - Shield
You equip Novice Guard (33) - Shield (type 32) # тут висим
ai clear #вводим ручками
AI sequences cleared
[macro] orphaned macro!
found an active macro 'eq' but no 'macro' record in ai queue
using method 'reregister' to solve this problem
You unequip Novice Guard (33) - Shield
[macro][log] end
Добавлено: Вс дек 10, 2006 5:52 pm
kLabMouse
Ну. Здесь Один Выход.... eval