Author Topic: Подсчёт выполненного куска скрипта  (Read 3121 times)

0 Members and 2 Guests are viewing this topic.

komandirbk

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Здравствуйте. Условие такое - происходит варка в игре - исход - успешный либо неудачный.
Задача - нужно помимо LoGWRITE - так же считать сколько раз данное действие было выполнено, например - нужно, чтобы когда 500 раз варка была успешная - весь скрипт остановился. Спасибо!

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #1 on: March 02, 2020, 04:13:30 PM »
Code: (clickermann) [Select]
INC($check_varka,1) // внутри нужного условия вставляем счетчик (каждый раз увеличивает значение на 1)


IF($check_varka >= 500) // в нужном месте вставляем условие. Если счетчик больше или равно 500 СТОП
HALT
END_IF

komandirbk

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #2 on: March 02, 2020, 05:23:31 PM »
Code: (clickermann) [Select]
INC($check_varka,1) // внутри нужного условия вставляем счетчик (каждый раз увеличивает значение на 1)


IF($check_varka >= 500) // в нужном месте вставляем условие. Если счетчик больше или равно 500 СТОП
HALT
END_IF



Как бы я только что не тестил - никак не получается. По разным местам даже пихал. Что не так в коде?

Code: (clickermann) [Select]
// PROVERKA NA SGORANIE
GETSCREEN
IF_PIXEL_IN(888,361, 888,361, 879830)
   waitms(50)
   KEYDOWN(#V)
   waitms(60)
   KEYUP(#V)
   waitms(500)
   goto(varka)
   //INA4E PROVERKA NA USPEWNOST
ELSE
   IF($check_varka >= 2)
   halt
   END_IF
   INC($check_varka, 1)
   MOVE(902,361)
   WAITMS(200)
   LDOWN(909,367)
   waitms(60)
   LUP(909,367)
   WAITMS(200)
   
   
   END_IF
   
   //peremewenie svarki v invent
   GETSCREEN
   IF_PIXEL_IN (1240,481, 1579,750, 1271751)
     
LOGWRITE("Âàðêà SD óñïåøíà")
     
      MOVE($_return1+3, $_return2+5)
      WAITMS(200)
      LDOWN($_return1+3, $_return2+5)
      waitms(60)
      LUP($_return1+3, $_return2+5)
      WAITMS(500)
     
    //  END_IF
      END_IF
     
      //    ZAKRUTIE CHAOS MACHINE
      waitms(100)
      KEYDOWN(#V)
      waitms(60)
      KEYUP(#V)              ;
      //ZAKRUTIE CHAOS MACHINE
     
   END_IF 

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #3 on: March 02, 2020, 06:02:16 PM »
Code: (clickermann) [Select]
// PROVERKA NA SGORANIE
GETSCREEN
IF_PIXEL_IN(888,361, 888,361, 879830)
   waitms(50)
   KEYDOWN(#V)
   waitms(60)
   KEYUP(#V)
   waitms(500)
   goto(varka)
   //INA4E PROVERKA NA USPEWNOST
ELSE
   IF($check_varka >= 2)
   halt
   END_IF
   INC($check_varka, 1)
   MOVE(902,361)
   WAITMS(200)
   LDOWN(909,367)
   waitms(60)
   LUP(909,367)
   WAITMS(200)
   
   
   END_IF
   
   //peremewenie svarki v invent
   GETSCREEN
   IF_PIXEL_IN (1240,481, 1579,750, 1271751)
     
LOGWRITE("Âàðêà SD óñïåøíà")
     
      MOVE($_return1+3, $_return2+5)
      WAITMS(200)
      LDOWN($_return1+3, $_return2+5)
      waitms(60)
      LUP($_return1+3, $_return2+5)
      WAITMS(500)
     
    //  END_IF
      END_IF
     
      //    ZAKRUTIE CHAOS MACHINE
      waitms(100)
      KEYDOWN(#V)
      waitms(60)
      KEYUP(#V)              ;
      //ZAKRUTIE CHAOS MACHINE
     
   END_IF 

А от какого условия у тебя последний END_IF  в скрипте...? (строка 49)
« Last Edit: March 02, 2020, 11:13:04 PM by Vint »
Я не ду... Потому и не бу...

komandirbk

  • Освоившийся
  • **
  • Posts: 36
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #4 on: March 02, 2020, 06:09:44 PM »
Code: (clickermann) [Select]
INC($check_varka,1) // внутри нужного условия вставляем счетчик (каждый раз увеличивает значение на 1)


IF($check_varka >= 500) // в нужном месте вставляем условие. Если счетчик больше или равно 500 СТОП
HALT
END_IF

Code: (clickermann) [Select]
waitms(1000)
varka:


//$check = 0
//WHILE($check = 0)
   GETSCREEN
   IF_PIXEL_IN(919,333, 1199,624, 15663869)
      $check = 1
      MOVE($_return1, $_return2+30)
      waitms(400)
      KEYDOWN(#ALT)
      waitms(100)
      LDOWN($_return1, $_return2+30)
      waitms(60)
      LUP($_return1, $_return2+30)
WAITMS(150)
KEYUP(#ALT)
   ELSE
      WAITMS(250)
      goto(varka)
   END_IF
END_CYC



//najatie na chaos machine





//OJIDANIE KNOPKI REGULAR
GETSCREEN
WHILE(PXL (915, 425) ! 15598333) // öèêë çàäåðæèâàåò ñêðèïò ïîêà íå ïîÿâèòñÿ çàäàííûé öâåò
   WAITMS (100)
   GETSCREEN
END_CYC

//OJIDANIE KNOPKI REGULAR



//NAJATIE KNOPKI REGULAR

WAITMS(60)
MOVE(957,427)
waitms(50)
LDOWN(957,427)  // 2431013
waitms(60)
LUP(957,427)

waitms(300)
//NAJATIE KNOPKI REGULAR




//regular combination


//proverka na nali4ie banki v inventare
GETSCREEN
IF_PIXEL_IN(1245,478, 1582,758, 592303)
   logwrite("Áàíêà íàéäåíà")
   MOVE($_return1, $_return2)
   waitms(100)
   LDOWN($_return1, $_return2)
   WAITMS(60)
   LUP($_return1, $_return2)
   waitms(100)
   
//   
//   ELSE
//   
//   GETSCREEN
//IF_PIXEL_IN(1245,619, 1578,755, 526512)
//   logwrite("Áàíêà íàéäåíà")
//   MOVE($_return1, $_return2)
//   waitms(250)
//   LDOWN($_return1, $_return2)
//   WAITMS(60)
//   LUP($_return1, $_return2)
//   waitms(150)
   
   
   //perekladuvanie banki      iz inventarya
   MOVE(956,423)
   LOGWRITE("Ïåðåòàñêèâàåì áàíêó èç èíâåíòàðÿ")
   WAITMS(100)
   LDOWN(956,423)
   WAITMS(60)
   LUP(956,423)
   waitms(150)
   goto(combine)
else

   logwrite("NET BANOK")
   
   #include("shop_banki.cms")
   
   //proverka na nali4ie banki v inventare
   
end_if      ;



// Æäåì ïîÿâëåíèÿ öâåòà 255 ïî êîîðäèíàòå 100,100
GETSCREEN
WHILE(PXL (1014, 804) ! 917281) // öèêë çàäåðæèâàåò ñêðèïò ïîêà íå ïîÿâèòñÿ çàäàííûé öâåò
   WAITMS (100)
   GETSCREEN
END_CYC
//Proverka


//COMBINE
combine:
waitms(500)
MOVE(1020,801)
waitms(200)
LDOWN(1020,801)
WAITMS(60)
LUP(1020,801)
waitms(10)

////combine



// Æäåì ïîÿâëåíèÿ öâåòà 255 ïî êîîðäèíàòå 100,100
GETSCREEN
WHILE(PXL (848, 490) ! 15598333) // öèêë çàäåðæèâàåò ñêðèïò ïîêà íå ïîÿâèòñÿ çàäàííûé öâåò
   WAITMS (100)
   GETSCREEN
END_CYC



//Proverka


//// podtverjdenie
 waitms(50)
MOVE(866,481)  // 9670800
waitms(100)
LDOWN(866,481)
waitms(60)
LUP(866,481)
//PODTVERJDENIE
waitms(2000)



// PROVERKA NA SGORANIE
GETSCREEN
IF_PIXEL_IN(888,361, 888,361, 879830)
   waitms(50)
   KEYDOWN(#V)
   waitms(60)
   KEYUP(#V)
   waitms(500)
   goto(varka)
   //INA4E PROVERKA NA USPEWNOST
ELSE

INC($check_varka, 1)
   IF($check_varka >= 2)
   halt
   END_IF
   
   MOVE(902,361)
   WAITMS(200)
   LDOWN(909,367)
   waitms(60)
   LUP(909,367)
   WAITMS(200)
   
   
   END_IF
   
   //peremewenie svarki v invent
   GETSCREEN
   IF_PIXEL_IN (1240,481, 1579,750, 1271751)
     
LOGWRITE("Âàðêà SD óñïåøíà")
     
      MOVE($_return1+3, $_return2+5)
      WAITMS(200)
      LDOWN($_return1+3, $_return2+5)
      waitms(60)
      LUP($_return1+3, $_return2+5)
      WAITMS(500)
     
    //  END_IF
      END_IF
     
      //    ZAKRUTIE CHAOS MACHINE
      waitms(100)
      KEYDOWN(#V)
      waitms(60)
      KEYUP(#V)              ;
      //ZAKRUTIE CHAOS MACHINE
     
   END_IF                   
   // end_if
   //PEREKLADUVANIE V PUSTYY YA4EIKU
   

   waitms(100)
   
END_IF



Как бы я только что не тестил - никак не получается. По разным местам даже пихал. Что не так в коде?

Code: (clickermann) [Select]
// PROVERKA NA SGORANIE
GETSCREEN
IF_PIXEL_IN(888,361, 888,361, 879830)
   waitms(50)
   KEYDOWN(#V)
   waitms(60)
   KEYUP(#V)
   waitms(500)
   goto(varka)
   //INA4E PROVERKA NA USPEWNOST
ELSE
   IF($check_varka >= 2)
   halt
   END_IF
   INC($check_varka, 1)
   MOVE(902,361)
   WAITMS(200)
   LDOWN(909,367)
   waitms(60)
   LUP(909,367)
   WAITMS(200)
   
   
   END_IF
   
   //peremewenie svarki v invent
   GETSCREEN
   IF_PIXEL_IN (1240,481, 1579,750, 1271751)
     
LOGWRITE("Âàðêà SD óñïåøíà")
     
      MOVE($_return1+3, $_return2+5)
      WAITMS(200)
      LDOWN($_return1+3, $_return2+5)
      waitms(60)
      LUP($_return1+3, $_return2+5)
      WAITMS(500)
     
    //  END_IF
      END_IF
     
      //    ZAKRUTIE CHAOS MACHINE
      waitms(100)
      KEYDOWN(#V)
      waitms(60)
      KEYUP(#V)              ;
      //ZAKRUTIE CHAOS MACHINE
     
   END_IF 

А от какого условия у тебя последний END_IF  в скрипте...? (строка 49)

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #5 on: March 02, 2020, 09:35:31 PM »
Народ, ну вы совсем уже. На всех форумах карают за оверквотинг. Старайтесь лишнее не цитировать. И уж точно не цитировать больше одного вложения.
Заодно подучитесь, кому надо, следить сколько начальных тегов, сколько закрывающих.


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #6 on: March 02, 2020, 11:03:01 PM »
Народ, ну вы совсем уже. На всех форумах карают за оверквотинг. Старайтесь лишнее не цитировать. И уж точно не цитировать больше одного вложения.
Заодно подучитесь, кому надо, следить сколько начальных тегов, сколько закрывающих.
Прошу прощения...
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Подсчёт выполненного куска скрипта
« Reply #7 on: March 02, 2020, 11:11:44 PM »
Где само сообщение? Кроме цитирования.

P.S. Аааа. Ты и тут умудрился напутать. Вставил код внутрь чужого цитирования второго уровня.

Работай блоками. Закомментировал 6-ю строку, комменть уж и 23-ю, чего хвосты оставляешь.
Дальше вообще вроде бы 2 лишних END_IF-а (если я не ошибся считая с телефона)
« Last Edit: March 02, 2020, 11:24:52 PM by Vint »