Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ UO Pilot в онлайн играх _ Пните ещё раз)

Автор: Idiot) 26.7.2020, 21:31

Пытался придумать как написать скрипт на автофарм по цвету)
Вот скриптик:

Исходный код
//--lua
left 1016, 196
wait 50
if color (806, 362) == 2237 then
left 817, 406
else
if color (806, 362) == 24041 then
left 817, 406
else
if color (806, 362) == 42233 then
left 817, 406
else
if color (806, 362) == 886563 then
left 817, 406
else
if color (806, 362) == 16758804 then
left 817, 406
else
if color (806, 362) == 16732416 then
left 817, 406
else
if color (806, 362) == 16726881 then
left 817, 406
else
if color (806, 362) == 10551077 then
left 817, 406
else
if color (806, 362) == 16376389 then
left 817, 406
else
if color (806, 362) == 3136185 then
left 817, 406
else
if color (806, 362) == 8454333 then
left 817, 406
else
left 801, 438
wait 50

Но вылез прекол:
21:26:51 0 (autosaved_0.txt, 3): if - Не могу найти конец условия: 'End_IF', проверьте скрипт
Спасити помогити как фиксить эту боль
---
Правило 1.9 , 1.18 , 1.4

Автор: cirus 26.7.2020, 22:04

Либо используйте синтаксис луа, либо старый синтаксис пилота. Но, не вместе. Смотрите примеры на вики:
https://uopilot.uokit.com/wiki/index.php?title=Список_функций
https://uopilot.uokit.com/wiki/index.php?title=Список_функций_(Lua)

старый синтаксис
Код
left 1016, 196
wait 50
if  color (806, 362) = 2237
    left 817, 406
else
    if  color (806, 362) = 24041
        left 817, 406
    else
        if  color (806, 362) = 42233
            left 817, 406
        else
            if  color (806, 362) = 886563
                left 817, 406
            end_if
        end_if
    end_if
end_if
end_script

синтаксис луа
Код
--lua
left (1016, 196)
wait (50)

if  color (806, 362) == 2237 then
    left (817, 406)
else
    if  color (806, 362) == 24041 then
        left (817, 406)
    else
        if  color (806, 362) == 42233 then
            left (817, 406)
        else
            if  color (806, 362) == 886563 then
                left (817, 406)
            end
        end
    end
end
end_script()

Если надо проверить 100 цветов так и будете писать километровое условие? Используйте массив и цикл.

Автор: Idiot) 26.7.2020, 22:07

Цитата(cirus @ 26.7.2020, 22:04) *

Либо используйте синтаксис луа, либо старый синтаксис пилота. Но, не вместе. Смотрите примеры на вики:
https://uopilot.uokit.com/wiki/index.php?title=Список_функций
https://uopilot.uokit.com/wiki/index.php?title=Список_функций_(Lua)
старый синтаксис
Код
left 1016, 196
wait 50
if  color (806, 362) = 2237
    left 817, 406
else
    if  color (806, 362) = 24041
        left 817, 406
    else
        if  color (806, 362) = 42233
            left 817, 406
        else
            if  color (806, 362) = 886563
                left 817, 406
            end_if
        end_if
    end_if
end_if
end_script

синтаксис луа
Код
--lua
left (1016, 196)
wait (50)

if  color (806, 362) == 2237 then
    left (817, 406)
else
    if  color (806, 362) == 24041 then
        left (817, 406)
    else
        if  color (806, 362) == 42233 then
            left (817, 406)
        else
            if  color (806, 362) == 886563 then
                left (817, 406)
            end
        end
    end
end
end_script()

Если надо проверить 100 цветов так и будете писать километровое условие? Используйте массив и цикл.

Буду писать километровое условие! Вспоминать что такое массив и цикл не хочу... А так благодарю за помощь

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)