Для этого использую я макрос с параметрами
![Smile :)](./images/smilies/smile.gif)
Добавлено спустя 2 минуты 24 секунды:
И в моем случае НПЦ ,дающий квест рандомно выдавал один из N вариантов списков лута - мне было проще написать для общего случае макрос с параметрами.
Модератор: 4epT
Пример так пример:4epT писал(а):Wider, CaToH, вы этой хренью для чего маетесь? Приведите пример
Не проще ли хранить переменные в конфиге?
Код: Выделить всё
macro macroMove {
if ($.param1 == ) goto help
if ($.param2 == ) goto town
$posit = $.param1 $.param2
if ($.param3 == ) goto coordinat
$gomap = $.param3
:prov
if ($gomap != $.map) goto repeate1
if ($posit != $.pos) goto repeate1
goto endstate
:repeate1
$place = $posit $gomap
do move $place
goto prov
:town
log town
$gomap = $.param1
while ($gomap != $.map) as maploop2
do move $gomap
end maploop2
goto endstate
:coordinat
$posit = $.param1 $.param2
while ($posit != $.pos) as posloop2
do move $posit
end posloop2
goto endstate
:help
log Наберите macro macroMove -- [coord] [map]
log coord - точка карты
log map - название карты
log !Внимание! Бот обязательно должен иметь
log возможность добраться до этой кооринаты,
log иначе макрос не завершит свою работу
:endstate
}
ммм.. ну и создай в конфиге свои переменные и там значения писать/читать. Если коннект слетел при переподключении читаем значение своих переменных их конфига... например создаем в конфиге:Wider писал(а):Требуется сделать макрос, чтобы он выполнял теже действия ,что и команда бота move, но шёл до цели пока не дойдёт, а не обрывал из-за ошибок stuck
Код: Выделить всё
lut1 name
kolicestvo1 10
Код: Выделить всё
macro sborLuta {
log нужно собрать:
$lut1 = @config (lut1)
$kolicestvo1 = @config (kolicestvo1)
}