Здравствуйте, гость ( Вход | Регистрация )

> Подскажитепжлста #2, вон скин там есть этот скрипт
Levo222
сообщение 11.2.2019, 19:53
Сообщение #1


*****

Journeyman
Сообщений: 399
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.689



Посдкажите как заставить Pilot нажимать конкретные кнопки в конкретное время? Т.е. у меня есть цикл 5-ти минуток, чтобы он нажал 1 кнопку в
Алгоритм

2:00:00
[2:04:30 действия по подготовке]
вторую в
2:04:59
[2:09:30 действия по подготовке]
3-ю в
2:09:59
[2:14:30 действия по подготовке]
4-ю в
2:14:59
5-ю
[2:29:30 действия по подготовке]
2:29:59
и т.д. ?
Но! чтобы постоянно не менять периоды тайминга в часах, между этих промежутков он должен незадолго до следующего времени [применить таймер] проделать определенные действия для подготовки к нажатию.
Как это сделать?

Вобщем нужно так: чтобы при запуске скрипта считывалось текущее время и делилось на периоды по N минут (окргугляя их до целых: Т.е. если сейчас 02:13:05 то цикл бы начал свою работу в 02:14:59(ну грубо говоря в 02:15, 02:20, 02:25 и пр. чтобы он искал сразу кратные 5-ти временные рубежи))(чтобы их можно было менять), в конце каждого периода проделывать действия по подготовке и непосредственно в конце сами действия, по завершения цикла остановить скрипт.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
cirus
сообщение 12.2.2019, 2:16
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26701
Пользователь №: 16.971
Возраст: 29



Цитата
Т.е. если сейчас 02:13:05 то цикл бы начал свою работу в 02:14:59(ну грубо говоря в 02:15, 02:20, 02:25 и пр.

Код
log clear
log mode compact
while mod(min 5) != 0 or sec != 0     // ждать когда минуты будут кратны 5 и секунды равны 0
    hint (24 clRed 500 500 -1 -1 (Ждём когда минуты будут кратны 5\nи секунды равны 0\n hour min sec))
    wait 10
end_while
log hour min sec

while 1 = 1
    log Выполняем действия
    log Ждём следующего периода
    set #t timestamp (TimeNow) + 10000  // через сколько следующий период, 10 секунд
    while #t > timestamp (TimeNow)
        set #t2 (#t - timestamp (TimeNow)) / 1000
        hint (24 clRed 500 500 -1 -1 (Осталось ждать #t2))
        wait 10
    end_while
    log hour min sec
end_while
end_script
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Levo222
сообщение 12.2.2019, 6:56
Сообщение #3


*****

Journeyman
Сообщений: 399
Регистрация: 18.11.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.689



Как сделать так, чтобы незадолго до этого:
Цитата(cirus @ 12.2.2019, 6:16) *

Код
log clear
log mode compact
while mod(min 5) != 0 or sec != 0     // ждать когда минуты будут кратны 5 и секунды равны 0
    hint (24 clRed 500 500 -1 -1 (Ждём когда минуты будут кратны 5\nи секунды равны 0\n hour min sec))
    wait 10
end_while
log hour min sec


-
За 10 секунд он сделал действия подготовки? Т.е. ожидание кратности не должно быть первичным
Я вроде бы всунул её внутрь скрипта, но каша получилась,

//////////// ========================================== ///////////////////////

задача #2
сделать 1 цикл внутри которого можно путём раскоментирования выбирать конкретное действие в каждый период цикла
т.е.
У меня есть задача накормить 4-х поросят за 20 минут. В первые 5 мин зеленого поросёнка, В начале следующих 5 мин красного поросёнка, в начале следующих 5 минут красного поросёнка, а в начале следующих 5 мин опять зеленого поросёнка.
Каждый следующий цикл эта задача может изменяться в части цвета поросят. Нужно задать код внутри цикла ожидания действий вручную изменение точки нажатия(выбора поросят) чтобы не писать по 100500 циклов
допустим
// 1====
kleft 1200 470 abs //зеленый
// kleft 1200 550 abs //красный
// 2====
// kleft 1200 470 abs //зеленый
kleft 1200 550 abs //красный
// 3====
// kleft 1200 470 abs //зеленый
kleft 1200 550 abs //красный
// 4====
kleft 1200 470 abs //зеленый
// kleft 1200 550 abs //красный

вот у меня есть 4 цикла я вручную раскоментировал на 30 минут какого поросёнка в какой промежуток кормить и он должен это выполнить
+ действия по подготовке кормушки чтобы открыть дверцу за 10 сек и достать корм из холодильника за 10 сек чтобы он не успел протухнуть

-

Вобщем цель следующая: Задаю в скрипте цвета поросят в каждый период(их 4). Нажимаю на скрипт он смотрит сколько осталось до кратности 5-ти минутам, когда остаётся 10-20 сек, он Жмёт "Достать еду!" Замирает в ожидании 07:09:59 и нажимает Зеленого поросёнка. Переходит в ожидание начала следующего 5-ти минутного периода, но с учётом "Достать еду!" за 10 секунд до начала
- повторить 5 раз -
07:09:45 - достать еду
07:09:59 - кинуть красному поросёнку [почему не использую 00:00 потому что нужно время на нажатие и отклик]
ждать следующего кратного 5-ти минутам периода
Не использую таймеры иначе все
Цитата(sutra @ 12.2.2019, 6:36) *

всё может запросто поплыть.

как уже сказали.
07:14:45 - достать еду
07:15:00 - кинуть зеленому
Как Предподготовку то перед поиском кратности провести?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме
Levo222   Подскажитепжлста #2   11.2.2019, 19:53
sutra   log clear log mode compact set #timePodgotovka min...   12.2.2019, 0:41
sutra   Красиво, я тоже сначала хотел что-то в этом роде п...   12.2.2019, 2:36
cirus   Ждать можно и до 4 минут 30 секунд, а не 5 минут ...   12.2.2019, 2:49
sutra   Я тоже, исключительно принцип. Уверен, что со врем...   12.2.2019, 2:55
cirus   init_arr %pig Свин1 Свин2 Свин3 Свин4 set #z 1 lo...   12.2.2019, 12:25
Levo222   [spoiler=код][code]init_arr %pig Свин1 Свин2 Свин...   12.2.2019, 17:57
cirus   Какой ещё 21 час? Он ждёт когда будет 4 мин 40 се...   13.2.2019, 1:29
Levo222   Какой ещё 21 час? Он ждёт когда будет 4 мин 40 се...   13.2.2019, 4:35
sutra   Так сколько свиней то? 4 или 2 ? Если 4, то почему...   13.2.2019, 4:16
sutra   Ну так задай координаты кликов массивом. вместо 12...   13.2.2019, 5:03
Levo222   init_arr %pigclick 550 470 470 550 set #z 1 //......   13.2.2019, 6:31
sutra   Ну как я понимаю, там где надо кормить. Подготовк...   13.2.2019, 8:36
Levo222   Ну как я понимаю, там где надо кормить. Подготовк...   13.2.2019, 14:00
cirus   И что это? #z равно 4 while #z < 5 пока #z ме...   13.2.2019, 14:42
Levo222   И как выполнять действия одновременно в 5 и 15 ми...   13.2.2019, 14:57
cirus   for не нужен. А если нужен, то после end_while на...   13.2.2019, 15:19
Levo222   for не нужен. А если нужен, то после end_while на...   13.2.2019, 15:22
sutra   А где set #z Скрипт просто не знает индекс масси...   13.2.2019, 16:51
Levo222   А где set #z Надёжнее делать так set #Y %pigcli...   13.2.2019, 20:08
sutra   Новая новость, так если на разных и делайте для к...   13.2.2019, 17:13
Levo222   Новая новость, так если на разных и делайте для к...   13.2.2019, 17:37
sutra   log clear log mode compact while 1 = 1 // крутит...   13.2.2019, 17:43
Levo222   [code] set #b prompt (Зеленый-Красный-Красный-Зе...   13.2.2019, 19:44
sutra   По поводу ошибки. Либо значение #z не определено (...   13.2.2019, 22:52
sutra   А вот тут уже я не понимаю. Если ВСЁ рэндомно, то ...   13.2.2019, 23:42
Levo222   По ошибкам ... давайте конкретный код, Вам скажут...   14.2.2019, 0:31
sutra   Эх! Вот что мне нравится ... не сворачивать с ...   14.2.2019, 1:27
Levo222   Можно сделать ДВУМЕРНЫЙ массив, но даже боюсь нач...   14.2.2019, 16:50
cirus   И что там с 5 и 15 минутами? Первый скрипт для 5 м...   14.2.2019, 1:33
Levo222   И что там с 5 и 15 минутами? Первый скрипт для 5 ...   14.2.2019, 1:39
sutra   У меня конкретный вопрос. Время кормления (интерва...   14.2.2019, 1:36
Levo222   У меня конкретный вопрос. Время кормления (интерв...   14.2.2019, 1:52
sutra   Блин, да он настоящий партизан. Ему надо грамотно ...   14.2.2019, 1:40
cirus   В 14:59 сработают оба скрипта? Курсор они как буд...   14.2.2019, 1:41
sutra   Вроде начинаю понимать. Вопрос, а почему на разных...   14.2.2019, 1:46
Levo222   Вроде начинаю понимать. Вопрос, а почему на разны...   14.2.2019, 1:55
sutra   Ну значит я угадал. Значит в одних и тех же коорди...   14.2.2019, 1:54
Levo222   Ну значит я угадал. Значит в одних и тех же коорд...   14.2.2019, 2:32
cirus   Точно также. while mod(min 5) заменить на while m...   14.2.2019, 1:55
Levo222   Точно также. while mod(min 5) заменить на while m...   14.2.2019, 2:03
sutra   Я привык вообще никому не доверять, извините, обжи...   14.2.2019, 1:56
sutra   Да, гениально!! Высшая точка IQ!! ...   14.2.2019, 2:07
cirus   Ну и сравнивать не с 4, естественно.   14.2.2019, 2:10
Levo222   Ну и сравнивать не с 4, естественно. А с чем? Э...   14.2.2019, 2:51
cirus   C 14.   14.2.2019, 3:11


Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 19.7.2025, 12:23
Designed by Nickostyle