Author Topic: Пожалуйста помогите)  (Read 5600 times)

0 Members and 9 Guests are viewing this topic.

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Пожалуйста помогите)
« on: November 17, 2017, 10:58:38 PM »
Скрипт должен одновременно следить за несколькими координатами на совпадения цвета(разного) и смотря какой и когда совпадет продолжать скрипт по разным вариантам.
Code: [Select]
GETSCREEN
IF(PXL(1443,824) = 8583929)
LCLICK(942,712)
WAIT(0.5)
LCLICK(1191,445)
ELSE
IF(PXL(1547,888) = 8583929)
LCLICK(942,712)
WAIT(0.5)
LCLICK(1191,445)
ELSE
IF(PXL(1513,945) = 15856113)
LCLICK(942,712)
WAIT(0.5)
LCLICK(1191,445)
ELSE
IF(PXL(1514,823) = 8518136)
LCLICK(942,712)
WAIT(0.5)
LCLICK(1191,445)
END_IF
GETSCREEN
IF(PXL(1384,747) = 7392945)
LCLICK(1421,737)
WAIT(0.5)
LCLICK(946,719)
WAIT(0.5)
LCLICK(1204,526)
GETSCREEN
IF(PXL(1204,254) = 15526380)
LCLICK(1411,819)
WAIT(0.5)
LCLICK(946,719)
WAIT(0.5)
LCLICK(1204,526)
END_IF
« Last Edit: November 17, 2017, 11:20:12 PM by nipter »

Adlet_Veltman

  • Зашел в гости
  • *
  • Posts: 6
    • View Profile
Re: Пожалуйста помогите)
« Reply #1 on: November 17, 2017, 11:28:56 PM »
Cам я не очень много знаю, поэтому могу ошибаться. Точно не знаю, но по-моему правильно должно выглядеть так. И я не понял почему в конце ты сделал два действия отдельно(ещё два раза "GETSCREEN" и "IF(PXL)" отдельно). И сразу скажу, что данный цикл предназначен для одноразового использования.

Code: (clickermann) [Select]
GETSCREEN
IF(PXL(1443,824) = 8583929)
LCLICK(942,712)
WAIT(0.5)
LCLICK(1191,445)
ELSE
  IF(PXL(1547,888) = 8583929)
    LCLICK(942,712)
    WAIT(0.5)
    LCLICK(1191,445)
  ELSE
    IF(PXL(1513,945) = 15856113)
        LCLICK(942,712)
        WAIT(0.5)
        LCLICK(1191,445)
    ELSE
      IF(PXL(1514,823) = 8518136)
          LCLICK(942,712)
          WAIT(0.5)
          LCLICK(1191,445)
      END_IF
    END_IF   
  END_IF         
END_IF
GETSCREEN
IF(PXL(1384,747) = 7392945)
LCLICK(1421,737)
WAIT(0.5)
LCLICK(946,719)
WAIT(0.5)
LCLICK(1204,526)
END_IF
GETSCREEN
IF(PXL(1204,254) = 15526380)
LCLICK(1411,819)
WAIT(0.5)
LCLICK(946,719)
WAIT(0.5)
LCLICK(1204,526)
END_IF

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #2 on: November 18, 2017, 01:39:05 AM »
Здравствуйте спасибо большое за такой развернутый ответ,  эту программу можно будет использовать много раз? Тоесть я ее настрою включу и как только пиксель загорится нужным цветом выполнится определенная для него команда?

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #3 on: November 18, 2017, 05:27:07 PM »
Почему то не работает.
Code: [Select]
SUB(LCLICK,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(500)
END_SUB
 
GETSCREEN
IF((PXL(1443,824)=8583929)|(PXL(1547,888)=8583929)|(PXL(1513,945)=15856113)|(PXL(1514,823)=8518136))
   LCLICK(942,712)   
   LCLICK(1191,445)
END_IF
GETSCREEN
IF(PXL(1384,747)=7392945)
   LCLICK(1421,737)
   LCLICK(946,719)
   LCLICK(1204,526)
END_IF
GETSCREEN
IF(PXL(1204,254)=15526380)
   LCLICK(1411,819)
   LCLICK(946,719)
   LCLICK(1204,526)
END_IF
GETSCREEN
IF(PXL(1282,378)=15858446)
   LCLICK(1403,749)
END_IF
GETSCREEN
IF(PXL(1412,726)=7658942)
   LCLICK(1412,726)
   LCLICK(946,719)
   LCLICK(1204,526)
END_IF
GETSCREEN
IF(PXL(1412,737)=6925974)
   LCLICK(1412,737)
   LCLICK(946,719)
   LCLICK(1204,526)
END_IF

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #4 on: November 18, 2017, 05:59:39 PM »
Да все перепроверил. Может можно как то программу привязать к окну.

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #5 on: November 18, 2017, 06:17:22 PM »
Хорошо, сейчас перепроверю все координаты попробую написать все заново.

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #6 on: November 19, 2017, 04:32:11 PM »
Как мне добавить вот к этому еще 2 условия (по какой то причине работает не корректно после добавления)
Code: [Select]
SUB(клик,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(500)
END_SUB
GETSCREEN
IF((PXL(1547,888)=8583929)|(PXL(1514,823)=8518136)|(PXL(1476,859)=8583673)|(PXL(1513,945)=15856113))
   клик(942,712)   
   LCLICK(1191,445)
END_IF
вот это
Code: [Select]
GETSCREEN
IF((PXL(1473,823)=7592122)
   клик(1473,823)
   клик(942,712)
   клик(1185,529)
END_IF
и вот это
Code: [Select]
GETSCREEN
IF((PXL(1463,744)=7525301)
   клик(1463,744)
   клик(942,712)
   клик(1185,529)
END_IF
вот что получилось у меня
Code: [Select]
SUB(клик,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(500)
END_SUB
GETSCREEN
IF((PXL(1547,888)=8583929)|(PXL(1514,823)=8518136)|(PXL(1476,859)=8583673)|(PXL(1513,945)=15856113))
   клик(942,712)   
   LCLICK(1191,445)
END_IF
GETSCREEN
IF((PXL(1473,823)=7592122)
   клик(1473,823)
   клик(942,712)
   клик(1185,529)
END_IF
GETSCREEN
IF((PXL(1463,744)=7525301)
   клик(1463,744)
   клик(942,712)
   клик(1185,529)
END_IF
« Last Edit: November 19, 2017, 04:46:04 PM by nipter »

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #7 on: November 19, 2017, 05:55:34 PM »
Вот вроде поправил теперь нет ошибок?
Code: [Select]
SUB(клик,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(500)
END_SUB
GETSCREEN
IF((PXL(1547,888)=8583929)|(PXL(1514,823)=8518136)|(PXL(1476,859)=8583673)|(PXL(1513,945)=15856113|(PXL(1513,948)=8517880)))
   клик(942,712)   
   LCLICK(1191,445)
END_IF
GETSCREEN
IF(PXL(1473,823)=7592122)
   клик(1473,823)
   клик(942,712)
   клик(1185,529)
END_IF
GETSCREEN
IF(PXL(1463,744)=7525301)
   клик(1463,744)
   клик(942,712)
   клик(1185,529)
END_IF
GETSCREEN
IF(PXL(1277,378)=15990543)
   клик(1419,744)
END_IF
GETSCREEN
IF(PXL(1290,298)=13892607)
   клик(1423,778)
END_IF

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Пожалуйста помогите)
« Reply #8 on: November 19, 2017, 06:11:08 PM »
Че у тебя скобки туда сюда пляшут? Правильно так
Code: (clickermann) [Select]
IF((PXL(1547,888)=8583929)|(PXL(1514,823)=8518136)|(PXL(1476,859)=8583673)|(PXL(1513,945)=15856113)|(PXL(1513,948)=8517880))

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #9 on: November 20, 2017, 10:51:11 PM »
Добрый день и снова я со своими глупенькими вопросами)))подскажите как сделать двойное условие, то есть если два цвета совпадают то заданные действия выполняются.
На примере вот этого.
Code: [Select]
GETSCREEN
IF(PXL(1514,823)=8518136)
   клик(942,712)   
   клик(1191,445)
   LOGWRITE (1 и 2 цвет найдены)      \\PXL(1658,837)=1172228 нужно добавить
END_IF

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Пожалуйста помогите)
« Reply #10 on: November 20, 2017, 10:55:36 PM »
Добрый день и снова я со своими глупенькими вопросами)))подскажите как сделать двойное условие, то есть если два цвета совпадают то заданные действия выполняются.
На примере вот этого.
Code: [Select]
GETSCREEN
IF(PXL(1514,823)=8518136)
   клик(942,712)   
   клик(1191,445)
   LOGWRITE (1 и 2 цвет найдены)      \\PXL(1658,837)=1172228 нужно добавить
END_IF

Code: (clickermann) [Select]
GETSCREEN
IF((PXL(1514,823)=8518136)&(PXL(1658,837)=1172228))
   клик(942,712)
   клик(1191,445)
   LOGWRITE ("1 и 2 цвет найдены")
END_IF

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #11 on: November 20, 2017, 11:32:22 PM »
Спасибки :) :) :) :)

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #12 on: November 21, 2017, 08:21:32 PM »
И снова Здравствуйте что то не работает у меня криворучки двойное условие :)если быть точнее он тыкает в верхний левый угол экрана... (все координаты я пятьсот раз проверил)
Code: [Select]
SUB(клик,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(1000)
END_SUB
GETSCREEN
IF((PXL(1514,823)=8518136)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("1 (1)")
END_IF
GETSCREEN
IF((PXL(1547,888)=8583929)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("2(2)")
END_IF
GETSCREEN
IF((PXL(1476,889)=8583673)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("3(3)")
END_IF
GETSCREEN
IF((PXL(1513,948)=8517880)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("4(4)")
END_IF
GETSCREEN
IF((PXL(1814,948)=8517624)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("5(5)")
END_IF
GETSCREEN
IF((PXL(1513,945)=15856113)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("6")
END_IF
GETSCREEN
IF(PXL(1473,823)=7592122)
   клик(1473,823)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("7")
END_IF
GETSCREEN
IF(PXL(1463,744)=7525301)
   клик(1463,744)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("8")
END_IF
GETSCREEN
IF(PXL(1277,378)=15990543)
   клик(1419,744)
   LOGWRITE ("9")
END_IF
GETSCREEN
IF(PXL(1290,298)=13892607)
   клик(1423,778)
   LOGWRITE ("10")
END_IF
GETSCREEN
IF(PXL(1412,730)=7592379)
   клик(1412,730)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("11")
END_IF
GETSCREEN
IF(PXL(1078,348)=15329001)
   клик(1441,730)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("12")
END_IF
GETSCREEN
IF(PXL(1430,706)=6725771)
   клик(1430,706)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("13")
END_IF
« Last Edit: November 21, 2017, 08:30:53 PM by nipter »

nipter

  • Освоившийся
  • **
  • Posts: 23
    • View Profile
Re: Пожалуйста помогите)
« Reply #13 on: November 21, 2017, 10:56:09 PM »
Может я тупень опять со скобками ошибся?

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Пожалуйста помогите)
« Reply #14 on: November 21, 2017, 11:08:06 PM »
И снова Здравствуйте что то не работает у меня криворучки двойное условие :)если быть точнее он тыкает в верхний левый угол экрана... (все координаты я пятьсот раз проверил)
Code: [Select]
SUB(клик,$par1,$par2)
   LCLICK($par1,$par2)
   WAITMS(1000)
END_SUB
GETSCREEN
IF((PXL(1514,823)=8518136)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("1 (1)")
END_IF
GETSCREEN
IF((PXL(1547,888)=8583929)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("2(2)")
END_IF
GETSCREEN
IF((PXL(1476,889)=8583673)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("3(3)")
END_IF
GETSCREEN
IF((PXL(1513,948)=8517880)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("4(4)")
END_IF
GETSCREEN
IF((PXL(1814,948)=8517624)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("5(5)")
END_IF
GETSCREEN
IF((PXL(1513,945)=15856113)&(PXL(1658,837)=1172228))
   клик(942,712)   
   клик(1191,445)
   LOGWRITE ("6")
END_IF
GETSCREEN
IF(PXL(1473,823)=7592122)
   клик(1473,823)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("7")
END_IF
GETSCREEN
IF(PXL(1463,744)=7525301)
   клик(1463,744)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("8")
END_IF
GETSCREEN
IF(PXL(1277,378)=15990543)
   клик(1419,744)
   LOGWRITE ("9")
END_IF
GETSCREEN
IF(PXL(1290,298)=13892607)
   клик(1423,778)
   LOGWRITE ("10")
END_IF
GETSCREEN
IF(PXL(1412,730)=7592379)
   клик(1412,730)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("11")
END_IF
GETSCREEN
IF(PXL(1078,348)=15329001)
   клик(1441,730)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("12")
END_IF
GETSCREEN
IF(PXL(1430,706)=6725771)
   клик(1430,706)
   клик(942,712)
   клик(1185,529)
   LOGWRITE ("13")
END_IF
со скобками вроде все норм. а что лог пишет? какие бы условия не были, тыкать в верхний левый угол не должно. проверь работоспособность кликов без условий, возможно причина где то глубже. это весь код? случаем не балуешься привязкой?