Author Topic: пропуск переменных по условию  (Read 6347 times)

0 Members and 3 Guests are viewing this topic.

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: пропуск переменных по условию
« Reply #15 on: August 23, 2018, 09:04:12 PM »
Code: (clickermann) [Select]
//......

start: //метка start:
buy()    //код будет крутитьтся в этом месте
sell()
goto(start) //возврат к метке start:
//далее код не будет рабтать

//......
Чем тебе не понравился код который я тебе написал выше? Может подскажу что поправить.
все равно перебиваю
« Last Edit: August 27, 2018, 02:33:18 PM by panelka2 »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: помогите пожалуйста
« Reply #16 on: August 23, 2018, 09:12:06 PM »
Если что вот этим кодом я хотел разок запустить покупку ,чтобы потом проходили проверки.
       
Code: [Select]

 start:
         buy()
 
goto(start)
бред какойто :o.

 вот код, он должен работать верно
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB
 
SUB(sell)
   // 2 выставляю колбаску на продажу
 
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB
 
//далее наш выполняемый код.
 
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
 
 
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
 
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
 
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
      buy() // и снова пытаемся купить
   END_IF
 
   //-----------------------------------------------
 
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
 
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
   else
      //если не купили
 
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
 
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 

      sell() // и пытаемся продать еще раз (2)
 
   END_IF
 
END_CYC

Что не так? Чтото работает не правильно? Твои эксперименты с гото бессмысленны...

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #17 on: August 23, 2018, 09:18:50 PM »
Если что вот этим кодом я хотел разок запустить покупку ,чтобы потом проходили проверки.
       
Code: [Select]

 start:
         buy()
 
goto(start)
бред какойто :o.

 вот код, он должен работать верно
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB
 
SUB(sell)
   // 2 выставляю колбаску на продажу
 
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB
 
//далее наш выполняемый код.
 
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
 
 
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
 
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
 
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
      buy() // и снова пытаемся купить
   END_IF
 
   //-----------------------------------------------
 
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
 
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
   else
      //если не купили
 
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
 
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 

      sell() // и пытаемся продать еще раз (2)
 
   END_IF
 
END_CYC

Что не так? Чтото работает не правильно? Твои эксперименты с гото бессмысленны...
Он видит что моя колбаса лежит , но все равно перебивает

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: помогите пожалуйста
« Reply #18 on: August 23, 2018, 09:48:21 PM »
Он видит что моя колбаса лежит , но все равно перебивает
А сейчас поподробнее, что значит лежит? При продаже или при покупке?

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: помогите пожалуйста
« Reply #19 on: August 23, 2018, 09:57:52 PM »
Я наверное понял.
Вот это блак скорее всего должен работать так:
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
   //если не купили, колбаса на прилавке
   
   //6 - поднимаю колбасу
   //
   $_N1=1350
   $_N2=86
   
   GETSCREEN (720,857,769,987)
   IF_PIXEL_IN(720,857,769,987,4411888)
     
     
      MOVE($_return1, $_return2)
      WAITMS(500)
     
      FOR($a=0,$a<$_N1)
         MOVER(1,0)
         
      END_CYC
     
      WAITMS(500)
      LCLICK($_xmouse, $_ymouse)
     
     
      FOR($a=0,$a<$_N2)
         MOVER(0,-1)
      END_CYC
     
      WAIT(1)
      LCLICK($_xmouse, $_ymouse)
      WAIT(1)
   END_IF
   
   
   sell() // и пытаемся продать еще раз (2)
else
   
   //если купили
   print("колбаса продана!")
   sell() //пытаемся продать еще
   
END_IF

Так как ты скорее всего ищешь  картинку колбасы на прилавке. И если она там есть, то забираем и кладем снова. Если же ее нет, то кладем еще.



Весь код:
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB

SUB(sell)
   // 2 выставляю колбаску на продажу
   
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB

//далее наш выполняемый код.

// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()


//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
   
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
     
      $_N1=1350
      $_N2=86
     
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
         
         
         MOVE($_return1, $_return2)
         WAITMS(500)
         
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
         
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
         
         
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
         
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
     
      buy() // и снова пытаемся купить
   END_IF
   
   //-----------------------------------------------
   
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
   
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
      //если не купили, колбаса на прилавке
     
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
     
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
         
         
         MOVE($_return1, $_return2)
         WAITMS(500)
         
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
           
         END_CYC
         
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
         
         
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
         
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
     
     
      sell() // и пытаемся продать еще раз (2)
   else
     
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
     
   END_IF
   
END_CYC
« Last Edit: August 23, 2018, 10:00:45 PM by dramster »

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #20 on: August 23, 2018, 10:43:00 PM »
Он видит что моя колбаса лежит , но все равно перебивает
А сейчас поподробнее, что значит лежит? При продаже или при покупке?
Ну при покупке на подносе лежит колбаса.При продаже колбаса на подносе

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #21 on: August 23, 2018, 10:46:11 PM »
Я наверное понял.
Вот это блак скорее всего должен работать так:
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
   //если не купили, колбаса на прилавке
   
   //6 - поднимаю колбасу
   //
   $_N1=1350
   $_N2=86
   
   GETSCREEN (720,857,769,987)
   IF_PIXEL_IN(720,857,769,987,4411888)
     
     
      MOVE($_return1, $_return2)
      WAITMS(500)
     
      FOR($a=0,$a<$_N1)
         MOVER(1,0)
         
      END_CYC
     
      WAITMS(500)
      LCLICK($_xmouse, $_ymouse)
     
     
      FOR($a=0,$a<$_N2)
         MOVER(0,-1)
      END_CYC
     
      WAIT(1)
      LCLICK($_xmouse, $_ymouse)
      WAIT(1)
   END_IF
   
   
   sell() // и пытаемся продать еще раз (2)
else
   
   //если купили
   print("колбаса продана!")
   sell() //пытаемся продать еще
   
END_IF

Так как ты скорее всего ищешь  картинку колбасы на прилавке. И если она там есть, то забираем и кладем снова. Если же ее нет, то кладем еще.



Весь код:
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB

SUB(sell)
   // 2 выставляю колбаску на продажу
   
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB

//далее наш выполняемый код.

// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()


//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
   
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
     
      $_N1=1350
      $_N2=86
     
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
         
         
         MOVE($_return1, $_return2)
         WAITMS(500)
         
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
         
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
         
         
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
         
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
     
      buy() // и снова пытаемся купить
   END_IF
   
   //-----------------------------------------------
   
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
   
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
      //если не купили, колбаса на прилавке
     
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
     
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
         
         
         MOVE($_return1, $_return2)
         WAITMS(500)
         
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
           
         END_CYC
         
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
         
         
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
         
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
     
     
      sell() // и пытаемся продать еще раз (2)
   else
     
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
     
   END_IF
   
END_CYC
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: помогите пожалуйста
« Reply #22 on: August 23, 2018, 11:04:23 PM »
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB
 
SUB(sell)
   // 2 выставляю колбаску на продажу
 
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB
 
//далее наш выполняемый код.
 
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
 
 
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
 
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
 
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
      buy() // и снова пытаемся купить
   END_IF
 
   //-----------------------------------------------
 
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
 
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
   else
      //если не купили
 
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
 
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
 
      sell() // и пытаемся продать еще раз (2)
 
   END_IF
 
END_CYC
Именно так все и должно работать. Проверяй, правильно ли находит (не находит) искомые картинки. Правильно ли идет поиск пикселя.

Может тебе стоит начать с малого? В начале написать скрипт в роли покупателя к примеру. Пошагово самому разобраться в принципе работы условий и поисках картинок. Для отладки используй print("текст"), чтобы видеть в каком месте в данный момент выполняется скрипт.

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #23 on: August 24, 2018, 12:29:57 AM »
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)
Code: (clickermann) [Select]
//тут две подпрограммы, они выше основного кода
SUB(buy)
   // 1  ставим цену выше других и пытаемся купить колбасу
   LCLICK(410,464)
   LCLICK(751,534)
   LCLICK(751,534)
   RCLICK(751,534)
   WAITMS(50)
   LCLICK(830,596)
   RCLICK(1838,639)
   WAITMS(50)
   LCLICK(1765,689)
   LCLICK(1873,956)
   LCLICK(1721,1007)
   LCLICK(1800,1008)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1721,1007)
   LCLICK(1642,960)
   LCLICK(1872,1005)
   RCLICK(1838,639)
   WAITMS(300)
   LCLICK(1763,663)
   WAITMS(500)
   LCLICK(751,534)
   LCLICK(751,534)
   WAITMS(500)
   RCLICK(751,534)
   WAITMS(500)
   LCLICK(850,629)
   WAITMS(500)
   LCLICK(912,609)
   waitms(200)
   LCLICK(819,704)
   wait(3)
END_SUB
 
SUB(sell)
   // 2 выставляю колбаску на продажу
 
   LCLICK(424,372)
   LCLICK(1013,535)
   LCLICK(1013,535)
   RCLICK(1013,535)
   WAITMS(200)
   LCLICK(1077,603)
   RCLICK(1816,642)
   WAITMS(200)
   LCLICK(1747,696)
   LCLICK(1878,904)
   LCLICK(1720,1005)
   LCLICK(1799,1008)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1720,1005)
   LCLICK(1645,961)
   LCLICK(1870,1010)
   RCLICK(1824,645)
   WAITMS(200)
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)
END_SUB
 
//далее наш выполняемый код.
 
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
 
 
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
 
   // 3 - проверяем, продали мне ее или нет
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
      //если продали
      print("колбаса моя!")
      buy() //снова пытаемся купить
   else
      //если не продали
      // 5 -  забираем деньги
 
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,7255099)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
            //скорость
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
      buy() // и снова пытаемся купить
   END_IF
 
   //-----------------------------------------------
 
   // 4  проверяем, купил у меня кто колбасу или нет
   $_N1=1350
   $_N2=86
 
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
      //если купили
      print("колбаса продана!")
      sell() //пытаемся продать еще
   else
      //если не купили
 
      //6 - поднимаю колбасу
      //
      $_N1=1350
      $_N2=86
 
      GETSCREEN (720,857,769,987)
      IF_PIXEL_IN(720,857,769,987,4411888)
 
 
         MOVE($_return1, $_return2)
         WAITMS(500)
 
         FOR($a=0,$a<$_N1)
            MOVER(1,0)
 
         END_CYC
 
         WAITMS(500)
         LCLICK($_xmouse, $_ymouse)
 
 
         FOR($a=0,$a<$_N2)
            MOVER(0,-1)
         END_CYC
 
         WAIT(1)
         LCLICK($_xmouse, $_ymouse)
         WAIT(1)
      END_IF
 
 
      sell() // и пытаемся продать еще раз (2)
 
   END_IF
 
END_CYC
Именно так все и должно работать. Проверяй, правильно ли находит (не находит) искомые картинки. Правильно ли идет поиск пикселя.

Может тебе стоит начать с малого? В начале написать скрипт в роли покупателя к примеру. Пошагово самому разобраться в принципе работы условий и поисках картинок. Для отладки используй print("текст"), чтобы видеть в каком месте в данный момент выполняется скрипт.
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #24 on: August 25, 2018, 08:19:26 PM »
Ребят, нет ни у кого предложений больше?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: помогите пожалуйста
« Reply #25 on: August 26, 2018, 10:14:53 AM »
Желательно чтобы после каждого действия типо клик и нажатие клавиши была задержка. Потому что игра может пропускать очень частые и быстрые клики.

К тому же почему у тебя вот здесь зажимается Ctrl а потом нигде не отпускается?
Code: (clickermann) [Select]
   LCLICK(1737,677)
   LCLICK(1013,535)
   LCLICK(1013,535)
   keydown(#ctrl)
   waitms(200)
   keypress(#v)
   LCLICK(1177,605)
   LCLICK(1085,703)

Хочешь вставить Ctrl+V пиши так

Code: (clickermann) [Select]
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#V)
KEYUP (#CTRL)

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: помогите пожалуйста
« Reply #26 on: August 27, 2018, 01:03:36 PM »
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???

С номерами 1, 2, 5 и 6 еще можно поверить, что работает как нужно. Но вот мне интересно, с чего такая уверенность в правильной работе №3 и №4?

Code: (clickermann) [Select]
// 3 - если оно верно направляет на 1 , если нет , то на 5
 
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
 
// 4 - если оно верно направляет на 2 , если нет , то на 6
 
$_N1=1350 
$_N2=86
 
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF

Это как бы самые главные условия работы всего скрипта. Именно от  нахождения нужной картинки зависит то что будет делать кликерман.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: помогите пожалуйста
« Reply #27 on: August 27, 2018, 01:54:02 PM »
Просьба к автору темы.
Дайте теме вразумительное название. Вот как в таких темах ориентироваться?


panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #28 on: August 27, 2018, 02:36:10 PM »
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???

С номерами 1, 2, 5 и 6 еще можно поверить, что работает как нужно. Но вот мне интересно, с чего такая уверенность в правильной работе №3 и №4?

Code: (clickermann) [Select]
// 3 - если оно верно направляет на 1 , если нет , то на 5
 
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
 
// 4 - если оно верно направляет на 2 , если нет , то на 6
 
$_N1=1350 
$_N2=86
 
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF

Это как бы самые главные условия работы всего скрипта. Именно от  нахождения нужной картинки зависит то что будет делать кликерман.
10 раз их проверил , все работает)

panelka2

  • Освоившийся
  • **
  • Posts: 20
    • View Profile
Re: помогите пожалуйста
« Reply #29 on: August 27, 2018, 02:36:58 PM »
Просьба к автору темы.
Дайте теме вразумительное название. Вот как в таких темах ориентироваться?
Я бы с радостью, но как поменять , найти не могу