Помощь - Поиск - Пользователи - Календарь
Полная версия: Подскажитепжлста #2
UoKit.com Форумы > Кликер > UO Pilot
Levo222
Посдкажите как заставить 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-ти временные рубежи))(чтобы их можно было менять), в конце каждого периода проделывать действия по подготовке и непосредственно в конце сами действия, по завершения цикла остановить скрипт.
sutra
Код
log clear
log mode compact
set #timePodgotovka min + 1
repeat 10         // 10*5 крутим 50 минут
  log Ожидание
  while mod(#timePodgotovka 5) <> 0 or sec < 32
    set #timePodgotovka min + 1
    if mod (#timePodgotovka 5) = 0 and sec > 30
      log Подготовка
      // ... операторы подготовки
      wait 1000
      break
    end_if
  end_while
  log Действие
  // ... операторы действия
  while mod(#timePodgotovka 5) = 0 and sec < 59
    wait 1000
    set #timePodgotovka min + 1
  end_while
  wait 1000
end_repeat
end_script
Примерно так, не вникал в суть.
cirus
Цитата
Т.е. если сейчас 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
sutra
Красиво, я тоже сначала хотел что-то в этом роде показать. НО - просто плюсовать не совсем хорошо, всё может запросто поплыть. Задача конкретная - минуты кратны 5. В противном случае всё решается элементарным таймером (аналог здесь и представлен). Далее, первое действие подготовки - БУДЕТ ПОТЕРЯНО. Ну и задавать секунды с точностью до нуля - тоже рискованная задача. Кто знает? Может винда начнёт что-то тихо для себя и про себя делать.

Мой алгоритм гораздо надёжнее.

Да и собственно задачу предварительной подготовки к финальным действиям я не вижу.
cirus
Цитата
первое действие подготовки - БУДЕТ ПОТЕРЯНО

Ждать можно и до 4 минут 30 секунд, а не 5 минут ровно.
Я лишь показал принцип.
sutra
Цитата
Я лишь показал принцип.
Я тоже, исключительно принцип. Уверен, что со временем никто ничего ждать не станет, уверен, что алгоритм будет разрастаться, как снежный ком. Программирование - затягивает. Я на этих интервалах ... собаку съел. Сорри, если что не так сказал.


Всегда задаю интервал, А НЕ ТОЧНОЕ значение. Собственно не только во времени, а и в поиске RGB тоже. Да везде!!!
Levo222
Как сделать так, чтобы незадолго до этого:
Цитата(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 - кинуть зеленому
Как Предподготовку то перед поиском кратности провести?
cirus
код
Код
init_arr %pig Свин1 Свин2 Свин3 Свин4
set #z 1

log clear
log mode compact

while #z < 5
    while mod(min 5) != 4 or sec < 40 or sec > 50
        hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
        wait 10
    end_while
    log Достали еду    hour min sec

    while mod(min 5) != 4 or sec < 59
        hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
        wait 10
    end_while
    log Кормим %pig[#z]   hour min sec
    log

    wait 1000
    set #z #z + 1
end_while
end_script
Levo222
Цитата(cirus @ 12.2.2019, 16:25) *

код
Код
init_arr %pig Свин1 Свин2 Свин3 Свин4
set #z 1

log clear
log mode compact

while #z < 5
    while mod(min 5) != 4 or sec < 40 or sec > 50
        hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
        wait 10
    end_while
    log Достали еду    hour min sec

    while mod(min 5) != 4 or sec < 59
        hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
        wait 10
    end_while
    log Кормим %pig[#z]   hour min sec
    log

    wait 1000
    set #z #z + 1
end_while
end_script


Он ждёт подготовки 21 час
P.S: Как ассоциировать свиней с нажатием конкретной кнопки?
Например чтобы заместо Свин 1 было [kleft 1200 550 abs(красный)] Свин 2 [kleft 1200 470 abs(зеленый)] Свин 3 [kleft 1200 470 abs(зеленый)] Свин 4 [kleft 1200 550 abs(красный)]?
cirus
Цитата
Он ждёт подготовки 21 час

Какой ещё 21 час? Он ждёт когда будет 4 мин 40 сек, 9 мин 40 сек, 14 мин 40 сек и т. д.
Цитата
Как ассоциировать свиней с нажатием конкретной кнопки?

Также как: Кормим %pig[#z]
sutra
Цитата
Как ассоциировать свиней с нажатием конкретной кнопки?
Так сколько свиней то? 4 или 2 ? Если 4, то почему координат кликов для кормёжки всего 2 варианта. Опиши подробней задачу и не надо будет ничего расскомментировать, будут отъедаться, пока комп не выключишь. Насколько я понял нужно определить интервалы кормёжки для конкретного цвета поросёнка. Вот про это и расскажи подробнее. Наверняка какие-то циферки нарисованы. Если покажешь скрин этих циферок, решим задачу.
Levo222
Цитата(cirus @ 13.2.2019, 5:29) *

Какой ещё 21 час? Он ждёт когда будет 4 мин 40 сек, 9 мин 40 сек, 14 мин 40 сек и т. д.

Да всё нормально, он у меня текущее время показывал))) вот я и....
Теперь нужно заместо выделенного жирным
-

Код
init_arr %pig !!! Свин1 Свин2 Свин3 Свин4!!!
set #z 1

log clear
log mode compact

while #z < 5
    while mod(min 5) != 4 or sec < 40 or sec > 50
        hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
        wait 10
    end_while
    log Достали еду    hour min sec
    wait 100
    Kleft 70, 10 abs   //1 ВКЛАДКА 30, 2 -70, 3- 110, 4 -150 х
    //звук
    wait random (300) + 200
    Kleft 132 200           // открыть дверцу
    wait random (300) + 200
    kleft 1200 300 abs      // достать еду
    wait random (300) + 200
    kleft 1200 480 abs   //задать цикл пищеварения 5 мин
    wait random (300) + 200
    while mod(min 5) != 4 or sec < 59
        hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
        wait 10
    end_while
    log Кормим %pig[#z]   hour min sec
    log

    wait 1000
    set #z #z + 1
end_while
end_script


-
чтобы init_arr %pig Свин1 Свин2 Свин3 Свин4 это было kleft 1200 550 abs kleft 1200 470 abs kleft 1200 470 abs kleft 1200 550 abs
Присвоить - переменной [Зеленый] - kleft 1200 470 abs
переменной [Красный] - kleft 1200 550 abs
Итого: За цикл должно быть накормлено в таком порядке: Красный, Зеленый, Зеленый, Красный
set R=Kleft 1200 550 abs
set G=Kleft 1200 470 abs
init_arr %pig #R, #G, #G, #R???

Цитата(sutra @ 13.2.2019, 8:16) *

Так сколько свиней то? 4 или 2 ?

Свиней 2 типа biggrin.gif , но фактически беру 4 интервала, за каждый интервал может быть накормлена только 1 тип свиньи, тип задается вначале перед запуском скрипта. Фактически это подброс монеты - какая свинья выстрелит - вручную это делать лень.
sutra
Ну так задай координаты кликов массивом. вместо 1200 550 и т.д. Задай kleft 1200 %pigclick[#z] abs

init_arr %pigclick 550 470 470 550

Цитата
какая свинья выстрелит - вручную это делать лень.

Так колором можно посмотреть. Конечно трудно соображать в уме, когда сам не видел конкретики.

Код
init_arr %pigclick 550 470 470 550
set #z 1
//...
kleft 1200 %pigclick[#z] abs
set #z 2
//...
kleft 1200 %pigclick[#z] abs
и так далее.
Levo222
Цитата(sutra @ 13.2.2019, 9:03) *

Код
init_arr %pigclick 550 470 470 550
set #z 1
//...
kleft 1200 %pigclick[#z] abs
set #z 2
//...
kleft 1200 %pigclick[#z] abs
и так далее.

Это в непосредственно в цикл кормления или подготовки?
sutra
Цитата
Это в непосредственно в цикл кормления или подготовки?

Ну как я понимаю, там где надо кормить. Подготовка то вроде стандартная и одинаковая для всех.

Подготовка - это там где заремаренные многоточия.

Цитата
log Кормим %pig[#z]
Вот вместо этого ставишь kleft 1200 %pigclick[#z] abs
Levo222
Цитата(sutra @ 13.2.2019, 12:36) *

Ну как я понимаю, там где надо кормить. Подготовка то вроде стандартная и одинаковая для всех.

Подготовка - это там где заремаренные многоточия.

Вот вместо этого ставишь kleft 1200 %pigclick[#z] abs

Так как сделать 4 цикла то? Он останавливается после 1-го
-

Код

init_arr %pigclick 550 470 470 550
set #z 1
//kleft 1200 %pigclick[#z] abs
set #z 2
//kleft 1200 %pigclick[#z] abs
set #z 3
//kleft 1200 %pigclick[#z] abs
set #z 4
//kleft 1200 %pigclick[#z] abs

log clear
log mode compact
for #i 1 4
    while #z < 5
        while mod(min 5) != 4 or sec < 40 or sec > 50
            hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
            wait 10
        end_while
        log Достали еду    hour min sec
        wait 100
        Kleft 70, 10 abs   //1
        wait random (300) + 200
        Kleft 132 200           // открыть дверцу
        wait random (300) + 200
        kleft 1200 300 abs      // достать еду
        wait random (300) + 200
        kleft 1200 480 abs   //задать цикл 5 мин
        wait random (300) + 200
        while mod(min 5) != 4 or sec < 59
            hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
            wait 10
        end_while
        log Кормим
        kleft 1200 %pigclick[#z] abs hour min sec
        //    %pig[#z]   hour min sec
        log
        wait 1000
        set #z #z + 1
    end_while
end_for
end_script



Цитата(cirus @ 13.2.2019, 5:29) *

Он ждёт когда будет 4 мин 40 сек, 9 мин 40 сек, 14 мин 40 сек и т. д.

аналогично для 15 минут нужно, они тоже кратны 5-ти но нужно делать тоже самое но каждые 15 минут
cirus
Цитата
Он останавливается после 1-го

Цитата
set #z 1
//kleft 1200 %pigclick[#z] abs
set #z 2
//kleft 1200 %pigclick[#z] abs
set #z 3
//kleft 1200 %pigclick[#z] abs
set #z 4
//kleft 1200 %pigclick[#z] abs

И что это?
#z равно 4
while #z < 5 пока #z меньше 5, т. е. выполниться 1 раз, потому что на следующем шаге #z будет 5.
for в таком виде вообще не имеет смысла. Переменная #z нигде не обнуляется.
Цитата
kleft 1200 %pigclick[#z] abs hour min sec

Что в клике делают hour min sec?
Цитата
аналогично для 15 минут нужно, они тоже кратны 5-ти но нужно делать тоже самое но каждые 15 минут

И как выполнять действия одновременно в 5 и 15 минут? Либо в разное время, либо по очереди.
Levo222
Цитата(cirus @ 13.2.2019, 18:42) *

И как выполнять действия одновременно в 5 и 15 минут? Либо в разное время, либо по очереди.

Нет отдельно для 5-ти и для 15 мин, это просто разные скрипты

То есть так:?
КОД

Код
init_arr %pigclick 550 470 470 550
set #z 1

log clear
log mode compact
for #i 1 4
    while #z < 5
        while mod(min 5) != 4 or sec < 40 or sec > 50
            hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
            wait 10
        end_while
        log Достали еду    hour min sec
        wait 100
        Kleft 70, 10 abs   //1
        wait random (300) + 200
        Kleft 132 200           // открыть дверцу
        wait random (300) + 200
        kleft 1200 300 abs      // достать еду
        wait random (300) + 200
        kleft 1200 480 abs   //задать цикл 5 мин
        wait random (300) + 200
        while mod(min 5) != 4 or sec < 59
            hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
            wait 10
        end_while
        log Кормим
        kleft 1200 %pigclick[#z] abs
        //    %pig[#z]   hour min sec
        log hour min sec
        wait 1000
        set #z #z + 1
    end_while
end_for
end_script
cirus
Цитата
То есть так:?

for не нужен. А если нужен, то после end_while надо дописать set #z 1
Вот так сейчас у вас:
Код
set #z 1
for #i 1 4
    while #z < 5
        log  #z
        set #z #z + 1
    end_while
end_for
end_script

Тоже самое без for:
Код
set #z 1
while #z < 5
    log  #z
    set #z #z + 1
end_while
end_script

Цитата
Нет отдельно для 5-ти и для 15 мин, это просто разные скрипты

Причём тут разные скрипты. Курсор у винды только один. На 15й минуте будет 3й раз выполняться скрипт для 5 минут и первый раз для 15 минут. Одновременно один курсор будут дёргать друг у друга?
Levo222
Цитата
Цитата(cirus @ 13.2.2019, 19:19) *

for не нужен. А если нужен, то после end_while надо дописать set #z 1
Вот так сейчас у вас:
Код
set #z 1
for #i 1 4
    while #z < 5
        log  #z
        set #z #z + 1
    end_while
end_for
end_script

Тоже самое без for:
Код
set #z 1
while #z < 5
    log  #z
    set #z #z + 1
end_while
end_script


Причём тут разные скрипты. Курсор у винды только один. На 15й минуте будет 3й раз выполняться скрипт для 5 минут и первый раз для 15 минут. Одновременно один курсор будут дёргать друг у друга?

Про for понял. Про 5 и 15 Эти скрипты будут выполняться в разное время, вообще никак не пересекаться !=На разных компах

Сейчас цикл выполнился как надо, и for никак не помешал, непонятно как он будет работать если нужно выполнить 4 раза по 4 Т.е. после End_While дописываю Set #z 1 и он выполняет 4 по 4?

Если я сопоставлю переменные массиву координат #Y в init_arr %pigclick 550 470 470 550
set #R 550
set #G 470
и напишу init_arr %pigclick #R #G #G #R
Это будет работать?

----------Upd--------------------

Упс) Не работает
Image

Изображение
sutra
Цитата
Упс) Не работает
А где set #z


Скрипт просто не знает индекс массива. Наверное придётся рисовать всё целиком, что-то тяжеловато у Вас идёт.

В некоторых случаях, некоторые операторы не понимают массивы. Надёжнее делать так set #Y %pigclick[#z] #z - должна быть индексом какого-либо цикла.

И потом left 1200 #Y abs

Выбор варианта корма хрюшек можно делать используя оператор promt
sutra
Цитата
Про 5 и 15 Эти скрипты будут выполняться в разное время, вообще никак не пересекаться !=На разных компах

Новая новость, так если на разных и делайте для каждого компа СВОЙ скрипт, где 5 минут, где 15.
Levo222
Цитата(sutra @ 13.2.2019, 21:13) *

Новая новость, так если на разных и делайте для каждого компа СВОЙ скрипт, где 5 минут, где 15.

Я так и хочу
sutra
Код
log clear
log mode compact
while 1 = 1   // крутить бесконечно
    set #b prompt (Зеленый-Красный-Красный-Зеленый Красный-Зеденый-Зеленый-Красный)
    if #b = 1
        init_arr %pigclick 470 550 550 470
      else
        init_arr %pigclick 550 470 470 550
    end_if
    set #z 1          // будем кормить начиная с первого
    while #z < 5      // цикл кормёжки 4-х свинов
        while mod(min 5) != 4 or sec < 40 or sec > 50
            hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
            wait 10
        end_while
        Kleft 70, 10 abs   // это у вас - не знаю что это
        wait random (300) + 200
        Kleft 132 200           // открыть дверцу
        wait random (300) + 200
        kleft 1200 300 abs      // достать еду
        while mod(min 5) != 4 or sec < 59
            hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
            wait 10
        end_while
        kleft 1200 %pigclick[#z] abs  // Кормим кого надо
        wait 1000
        set #z #z + 1
    end_while
end_while
end_script


На основе ваших действий примерно так, естественно не проверял.

Интервалы, если они разные и без всякой логики тоже можно задать используя promt
Levo222
Цитата(sutra @ 13.2.2019, 21:43) *

[code]
set #b prompt (Зеленый-Красный-Красный-Зеленый Красный-Зеденый-Зеленый-Красный)


Что означает эта функция? И как она сопоставляется с переменными? Сл. Зеленый синий красный где именно привязываются?

А я понял это заранее заданные шаблоны которые подтверждаются при запуске. У меня нет готовых вариаций последовательности кормёжки свиней. Вариации свиней всегда рандомные, там не подойдут заготовленные шаблоны, ну если и подойдут то их будет 100500 комбинаций.

Levo222
Цитата(sutra @ 13.2.2019, 20:51) *

А где set #z

Надёжнее делать так set #Y %pigclick[#z] #z - должна быть индексом какого-либо цикла.

И потом left 1200 #Y abs

Не работает
Изображение

Ниче не понял. Вот это вот мне куда всунуть?

А можно сделать чтобы Prompt предлагал вариацию кормления следующей чушки незадолго до времени кормления? Т.е. чтобы подавал звуковой сигнал и предлагал выбрать какую чушку кормить следующую? А сам автоматически всё делал?
sutra
По поводу ошибки. Либо значение #z не определено (что скорее всего), либо значение массива для ДАННОГО #z не определено. Незадолго ... конечно можно. Вам дали пример, какая разница что делать. Так же определяйте время когда его вызывать. Сигнал - можно вроде (вроде видел в справке), но никогда не пользовался им. Сам автоматически - конечно можно. Можно ВСЁ. Вопрос в том, что Ваших знаний пока маловато, но шаг за шагом будете совершенствоваться.

Цитата
Вариации свиней всегда рандомные
Ну Вы же видете цвет хрюшек? И Пилот может посмотреть. Вы же знаете время кормления? И Пилот может узнать. Так что конечно всё это можно автоматизировать без особых усилий.
sutra
Цитата
Вариации свиней всегда рандомные, там не подойдут заготовленные шаблоны
А вот тут уже я не понимаю. Если ВСЁ рэндомно, то КАК ВЫ методом простого расскомментирования решаете эту задачу. Я смотрю, что Вы пытаетесь делать и даю рекомендации исходя ИЗ ПОСТАВЛЕННОЙ ВАМИ задачи. Ставьте задачу корректно - получите 100% действенную реализацию.


Цитата
их будет 100500 комбинаций
И опять не понял. Как могут 4 свина двух цветов дать такое количество комбинаций. Не понимаю я Вашей задачи, следовательно и советовать как-то не с руки. Спрашиваете одно ... потом вдруг несколько компьютеров появляется ... и т.д. Ставьте конкретные задачи...


По ошибкам ... давайте конкретный код, Вам скажут ПОЧЕМУ она произошла. В данном конкретном случае, если сказать упрощённо по-русски, то Вы пытаетесь присвоить переменной #Y значение, которое не является числом.
Levo222
Цитата(sutra @ 14.2.2019, 3:42) *

По ошибкам ... давайте конкретный код, Вам скажут ПОЧЕМУ она произошла.

Так. Вот в таком виде она работает:
Код
Код
 init_arr %pigclick 550 470 470 550
set #z 1

log clear
log mode compact
    while #z < 5
        while mod(min 5) != 4 or sec < 40 or sec > 50
            hint (24 clRed 500 500 -1 -1 (Ждём подготовки\n hour min sec))
            wait 10
        end_while
        log Достали еду    hour min sec
        wait 100
        Kleft 70, 10 abs   //1
        wait random (300) + 200
        Kleft 132 200           // открыть дверцу
        wait random (300) + 200
        kleft 1200 300 abs      // достать еду
        wait random (300) + 200
        kleft 1200 480 abs   //задать длительность 5 мин
        wait random (300) + 200
        while mod(min 5) != 4 or sec < 59
            hint (24 clRed 500 500 -1 -1 (Ждём кормления\n hour min sec))
            wait 10
        end_while
        log Кормим
        kleft 1200 %pigclick[#z] abs
        log hour min sec
        wait 1000
        set #z #z + 1
    end_while
end_script

Теперь нужно init_arr %pigclick 550 470 470 550
привести к такому виду, где бы он выглядел как init_arr %pigclick А В В А
А это синяя хрюшка, В зеленая, и никаких других данных.
sutra
Цитата
привести к такому виду, где бы он выглядел как init_arr %pigclick А В В А
Эх! Вот что мне нравится ... не сворачивать с избранного пути. Вот Вы говорите привести к такому виду. А ЗАЧЕМ? Приводить ничего не надо. init_arr - это способ быстренько создать массив с уже определёнными значениями. Да Вы можете сделать хоть так : init_arr %pig Красный Зелёный ... В итоге %pig[1] будет иметь значение Красный - тип элемента СТРОКА, %pig[2] будет иметь значение Зеленый. Конечно можно и строки сравнивать. Можно сделать ДВУМЕРНЫЙ массив, но даже боюсь начинать объяснять. Поставьте ЗАДАЧУ. ЧТО НАДО СДЕЛАТЬ? И тогда будем думать.


Цитата
%pigclick 550 470 470 550
- этот массив содержит координаты (4 варианта)
Код
init_arr %pigclick А В В А
Этот вариант имеет 4 элемента со строковыми значениями "А" "В" "В" "А" соответственно.


Зачем Вам строки? Объясните задачу...
cirus
И что там с 5 и 15 минутами?
Первый скрипт для 5 минут, т. е. срабатывает в 4:59, 9:59, 14:59 и т.д.
Второй для 15 минут, срабатывает в ???
sutra
У меня конкретный вопрос. Время кормления (интервал) зависит от цвета свинки? Если не зависит, то КАКАЯ ВАМ РАЗНИЦА какого она цвета? Нужно знать : интервал кормления и от чего он зависит. Если интервал кормления ни от чего не зависит и полный рэндом. Скажите, а КАК Вы сами видете этот интервал???

Возможно каждая хрюшка сидит на "своём" месте. И для этого конкретного места рэндомно задаётся интервал кормления. ЗНАЧИТ НУЖНО привязываться к конкретным координатам кормления, а не к цвету свинки. Короче ... нужны подробности.
Levo222
Цитата(cirus @ 14.2.2019, 5:33) *

И что там с 5 и 15 минутами?
Первый скрипт для 5 минут, т. е. срабатывает в 4:59, 9:59, 14:59 и т.д.
Второй для 15 минут, срабатывает в ???

00:00, 00:14:59, 00:29:59, 00:44:59, 00:59:59 и т.д
sutra
Цитата
И что там с 5 и 15 минутами?Первый скрипт для 5 минут, т. е. срабатывает в 4:59, 9:59, 14:59 и т.д.Второй для 15 минут, срабатывает в ???
Блин, да он настоящий партизан. Ему надо грамотно и подробно сформулировать задачу. Уверен, всё легко автоматизируется, времени для ЛЮБОГО анализа ... вагон и маленькая тележка.
cirus
Цитата
00:00, 00:14:59, 00:29:59, 00:44:59, 00:59:59 и т.д

В 14:59 сработают оба скрипта? Курсор они как будут делить?
sutra
Цитата
00:00, 00:14:59, 00:29:59, 00:44:59, 00:59:59 и т.д
Вроде начинаю понимать. Вопрос, а почему на разных компах? Может всё сделаем на одном?


Интервал ... 5, 15, 20 ... да сколько угодно, тоже можно задать при помощи массива , например %pigtime и с его помощью сделать один универсальный скрипт.

Цитата
В 14:59 сработают оба скрипта? Курсор они как будут делить?
Браво!! Резонный вопрос.


Мне кажется, что он просто решил, что разбивкой скрипта для работы на разных компах будет проще решить задачу. ЭТО НЕ ТАК - будет сложнее. Всё можно делать в одном окне.
Levo222
Цитата(sutra @ 14.2.2019, 5:36) *

У меня конкретный вопрос. Время кормления (интервал) зависит от цвета свинки? Если не зависит, то КАКАЯ ВАМ РАЗНИЦА какого она цвета? Нужно знать : интервал кормления и от чего он зависит. Если интервал кормления ни от чего не зависит и полный рэндом. Скажите, а КАК Вы сами видете этот интервал???

Возможно каждая хрюшка сидит на "своём" месте. И для этого конкретного места рэндомно задаётся интервал кормления. ЗНАЧИТ НУЖНО привязываться к конкретным координатам кормления, а не к цвету свинки. Короче ... нужны подробности.

Не зависит он от цвета свинки.
Зависимость такая же как у большинства людей выбор того или иного человека для общения - дело вкуса. Я думаю этот вопрос слишком глубокий чтобы на него ответить в 2-х словах.

Цитата(cirus @ 14.2.2019, 5:41) *

В 14:59 сработают оба скрипта? Курсор они как будут делить?

Да не будут они делить курсор. Как будет выглядеть другой скрипт работающий по циклам 15минут а не 5?
sutra
Цитата
Не зависит он от цвета свинки.
Ну значит я угадал. Значит в одних и тех же координатах появляется новая задача кормления свинки. У этих координат есть конкретный интервал кормления, вот это и надо определить, но без Вас мне это не определить. Ну если Вы не можете ответить в 2-х словах, то мне понять Вас при помощи одного слова не получится. Если Вам не нравятся мои реплики - согласен, я резковат, ну тогда не буду навязываться.
cirus
Цитата
Как будет выглядеть другой скрипт работающий по циклам 15минут а не 5?

Точно также. while mod(min 5) заменить на while mod(min 15)
Levo222
Цитата(sutra @ 14.2.2019, 5:46) *

Вроде начинаю понимать. Вопрос, а почему на разных компах? Может всё сделаем на одном?.

Сделайте, Я закоментирую просто
sutra
Цитата
Вы бы доверили программе с заданным алгоритмом выбирать для вас жену?
Я привык вообще никому не доверять, извините, обжигался не раз. Я всегда всё проверяю сам.
Levo222
Цитата(cirus @ 14.2.2019, 5:55) *

Точно также. while mod(min 5) заменить на while mod(min 15)

Гениально, можно было сказать сразу)

Цитата(sutra @ 14.2.2019, 5:27) *

Этот вариант имеет 4 элемента со строковыми значениями "А" "В" "В" "А" соответственно.
Зачем Вам строки? Объясните задачу...

Сложность восприятия числовых данных, время на дешифровку числового выражения. Каждый раз нужно будет сопоставлять числовые данные с визуальным обозначением, можно же это автоматизировать, потом вывести кнопки

Цитата(sutra @ 14.2.2019, 5:56) *

Я привык вообще никому не доверять, извините, обжигался не раз. Я всегда всё проверяю сам.

Вот поэтому невозможно всё задать в алгоритме
sutra
Цитата
Гениально, можно было сказать сразу) Возни на 3 страницы...
Да, гениально!! Высшая точка IQ!! То, что я пытался сразу сказать, оказалось гениальным, а я оказался изгоем... Но видимо надо было сразу сказать, чтобы как-то понять. Сорри - умываю руки.
cirus
Цитата
Точно также. while mod(min 5) заменить на while mod(min 15)

Ну и сравнивать не с 4, естественно.
Levo222
Цитата(sutra @ 14.2.2019, 5:54) *

Ну значит я угадал. Значит в одних и тех же координатах появляется новая задача кормления свинки. У этих координат есть конкретный интервал кормления, вот это и надо определить, но без Вас мне это не определить. Ну если Вы не можете ответить в 2-х словах, то мне понять Вас при помощи одного слова не получится. Если Вам не нравятся мои реплики - согласен, я резковат, ну тогда не буду навязываться.

Ладно если вам легче воспринимайте это как комбинацию из селективного выбора свиней для получения суперсвина, набор генных качеств это рандомный скрытый набор, а процесс выбора это творческий процесс, невозможно задать выбор того, что еще не случилось
Levo222
Цитата(cirus @ 14.2.2019, 6:10) *

Ну и сравнивать не с 4, естественно.

А с чем?
Цитата(sutra @ 14.2.2019, 5:27) *

Этот вариант имеет 4 элемента со строковыми значениями "А" "В" "В" "А" соответственно.
Зачем Вам строки? Объясните задачу...

Сложность восприятия числовых данных, там бабушка божий одуванчик будет сидеть и кормить свинок, она числа не учила, а только Алфавит)
cirus
Цитата
А с чем?

C 14.
Levo222
Цитата(sutra @ 14.2.2019, 5:27) *

Можно сделать ДВУМЕРНЫЙ массив, но даже боюсь начинать объяснять. Поставьте ЗАДАЧУ. ЧТО НАДО СДЕЛАТЬ? И тогда будем думать.

Нужно сделать двумерный массив!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.