| 
		
	
	
	
	
	   Подскажитепжлста #2, вон скин там есть этот скрипт  | 
	 
	    
	  | 
	           | 
	 
   
	 
  
 
	
		| Levo222 | 
		
			
			
				   12.2.2019, 6:56
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 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 - кинуть зеленому Как Предподготовку то перед поиском кратности провести?  
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
	
		| Levo222 | 
		
			
			
				   12.2.2019, 17:57
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 18.11.2017         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 18.689
  
        		 
        	 
        	   
        | 
       
			
			Цитата(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(красный)]?  
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
	
		| Levo222 | 
		
			
			
				   13.2.2019, 4:35
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 18.11.2017         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 18.689
  
        		 
        	 
        	   
        | 
       
			
			Цитата(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 типа  (IMG: style_emoticons/default/biggrin.gif) , но фактически беру 4 интервала, за каждый интервал может быть накормлена только 1 тип свиньи, тип задается вначале перед запуском скрипта. Фактически это подброс монеты - какая свинья выстрелит - вручную это делать лень.  
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
	
		| sutra | 
		
			
			
				   13.2.2019, 5:03
			 
			
			
		 | 
	 
	
		
        	
  
        		       
  
        		Adept 
        		Сообщений: 923 
        		Регистрация: 10.8.2018         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 19.007
  
        		 
        	 
        	   
        | 
       
			
			Ну так задай координаты кликов массивом. вместо 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  и так далее.  
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
	
		| sutra | 
		
			
			
				   13.2.2019, 8:36
			 
			
			
		 | 
	 
	
		
        	
  
        		       
  
        		Adept 
        		Сообщений: 923 
        		Регистрация: 10.8.2018         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 19.007
  
        		 
        	 
        	   
        | 
       
			
			Цитата Это в непосредственно в цикл кормления или подготовки? Ну как я понимаю, там где надо кормить. Подготовка то вроде стандартная и одинаковая для всех. Подготовка - это там где заремаренные многоточия. Цитата log Кормим %pig[#z] Вот вместо этого ставишь kleft 1200 %pigclick[#z] abs  
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
	
		| Levo222 | 
		
			
			
				   13.2.2019, 14:00
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 18.11.2017         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 18.689
  
        		 
        	 
        	   
        | 
       
			
			Цитата(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 | 
		
			
			
				   13.2.2019, 14:42
			 
			
			
		 | 
	 
	
		
        	 
  
        		          
  
        		Elder 
        		Сообщений: 3.480 
        		Регистрация: 18.8.2014         		Группа: Пользователи Наличность: 26043         		
        		Пользователь №: 16.971 
Возраст: 29
  
        		 
        	 
        	   
        | 
       
			
			Цитата Он останавливается после 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 | 
		
			
			
				   13.2.2019, 14:57
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 18.11.2017         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 18.689
  
        		 
        	 
        	   
        | 
       
			
			Цитата(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 | 
		
			
			
				   13.2.2019, 15:19
			 
			
			
		 | 
	 
	
		
        	 
  
        		          
  
        		Elder 
        		Сообщений: 3.480 
        		Регистрация: 18.8.2014         		Группа: Пользователи Наличность: 26043         		
        		Пользователь №: 16.971 
Возраст: 29
  
        		 
        	 
        	   
        | 
       
			
			Цитата То есть так:? 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 | 
		
			
			
				   13.2.2019, 15:22
			 
			
			
		 | 
	 
	
		
        	
  
        		     
  
        		Journeyman 
        		Сообщений: 411 
        		Регистрация: 18.11.2017         		Группа: Пользователи Наличность: 0         		
        		Пользователь №: 18.689
  
        		 
        	 
        	   
        | 
       
			
			Цитата 
Цитата(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 
 
			
			
					
		 | 
	 
	
		| 
			
		 | 
		
			
			
			
         	
          | 
	 
	| 
	
	 | 
 
 
 
	1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0) 
	Пользователей: 0  
 
        				  
  | 
 |