|
|
|
возрат к предыдущей команде |
|
|
raritet |
30.5.2021, 23:05
|
Neophyte
Сообщений: 13
Регистрация: 28.12.2020 Группа: Пользователи Наличность: 0
Пользователь №: 19.841
Возраст: 24
|
друзья, подскажите пожалуйста хочу чтобы по ходу выполнения данного условия я смог перейти к определенной строке выше в данном скрипте как я понял для перехода я должен использовать goto но не совсем понимаю как я должен поставить метку code
Код while true do kleft (1600,900) -- возврат хотел бы сделать в это место wait (600) kleft (900,450) wait (600) kleft (1050, 550) wait (600) kleft (800, 150) wait (600) kleft (800, 340) wait (600) kleft (787, 767) wait (600) kleft (960, 850) wait (3000) if color (958, 429) == 7384988 then kleft (976, 659) wait (3500) if color (958, 429) == 7384988 then kleft (976, 659) wait (3500) else kleft (960, 500) wait (600) kleft (1100, 500) wait (600) if color (889, 606) == 2507417 then kleft (889, 606) wait (600) -- если дело дошло до данного условия, сделать переход к точке возврата else kleft (787, 800) wait (600) kleft (1038, 952) wait (600)
end end end end
еще хотел бы узнать одинаково ли будут выглядеть команды скрипта, если возврат осуществляется к началу скрипта и возврат, например, к какой-нибудь другой его части?
|
|
|
|
raritet |
30.5.2021, 23:54
|
Neophyte
Сообщений: 13
Регистрация: 28.12.2020 Группа: Пользователи Наличность: 0
Пользователь №: 19.841
Возраст: 24
|
Цитата(cirus @ 30.5.2021, 23:20) Код --lua while true do ::metka:: wait (100) if 1 == 1 then log (1) goto metka end log (2) end code
Код while true do ::metka:: -- правильно я делаю? kleft (1600,900) -- возврат хотел бы сделать в это место wait (600) kleft (900,450) wait (600) kleft (1050, 550) wait (600) kleft (800, 150) wait (600) kleft (800, 340) wait (600) kleft (787, 767) wait (600) kleft (960, 850) wait (3000) if color (958, 429) == 7384988 then kleft (976, 659) wait (3500) if color (958, 429) == 7384988 then kleft (976, 659) wait (3500) else kleft (960, 500) wait (600) kleft (1100, 500) wait (600) if color (889, 606) == 2507417 then kleft (889, 606) wait (600) goto metka
-- если дело дошло до данного условия, сделать переход к точке возврата
else kleft (787, 800) wait (600) kleft (1038, 952) wait (600)
end end end end
если допустим в скрипте будет 4 перехода в разные части скрипта то как это выполнить я добавил лишь открывок почему я спрашиваю, я не смогу протестить такой переход - это условие происходит редко произвольно его не добиться мне будет достаточно писать - ::metka1::, ::metka2:: и так далее?
|
|
|
|
raritet |
5.6.2021, 15:35
|
Neophyte
Сообщений: 13
Регистрация: 28.12.2020 Группа: Пользователи Наличность: 0
Пользователь №: 19.841
Возраст: 24
|
я добавил новое условие с переходом к метке 1 помогите разобраться пожалуйста, хочу для себя выяснить суть цикла повторяться каждые 32 минуты, один цикл это 4 повторения одних и тех же действий, но если сработает условие с меткой 1, осуществляется переход на начало цикла протестировать это не могу, так как само условие с меткой 1 происходит крайне редко метка 1 до функции for - будет заставлять скрипт снова делать 4 повторения метка 1 после функции for - завершит то повторение, в котором была метка, и завершит оставшиеся повторения, на чем цикл после закончится - именно это мне и нужно code
Код --lua
math.randomseed(os.clock())
while true do
for i = 1, 4 do ::metka1:: kleft (1600,900) wait (600) kleft (900,450) wait (600) kleft (1050, 550) wait (600) kleft (800, 150) wait (600) kleft (800, 340) wait (600)
local random_coord = math.random(1, 3) local coord = { {800, 800}, {1000, 800}, {1100, 800} } kleft(coord[random_coord][1], coord[random_coord][2]) wait (600) kleft (960, 850) wait (3000)
::metka::
if color (958, 429) == 7384988 then kleft (976, 659) wait (3500) goto metka
else kleft (960, 500) wait (600) kleft (1100, 500) wait (600) if color (817, 610) == 2376339 then -- новое условие с меткой kleft (817, 610) wait (600) goto metka1 local a = findcolor([[755, 777 1000, 850 (11652317) %arr]]) if a > 0 then move(arr[1][1], arr[1][2]) wait (200) kleft(arr[1][1], arr[1][2]) wait (200) kleft (1027, 941) wait (200) move(971, 482)
end end end end wait (1900000) end
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|