Author Topic: if_picture_in не работает в приложении и прочие нубовопросы  (Read 8097 times)

0 Members and 1 Guest are viewing this topic.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Добавь параметр начального значения переменной цикла.
Code: (clickermann) [Select]
#logfile


// upper right

$S_CORR = 0

waitms(100 + $S_CORR)
keyDown(39)
waitms(1000 + $S_CORR)
keyUp(39)
waitms(100 + $S_CORR)
keyDown(38)
waitms(1000 + $S_CORR)
keyUp(38)
waitms(100 + $S_CORR)
RCLICK(849,525)
waitms(100 + $S_CORR)
LCLICK(849,525)
waitms(2000 + $S_CORR)

//colors

$arr[0]=263172
$arr[1]=197636
$arr[2]=197380
$arr[3]=197379
$arr[4]=131843
$arr[5]=131587
$arr[6]=131586
$arr[7]=197122
$arr[8]=262915

//black staff

$x[0]=930
$y[0]=449
$x1[0]=1323
$y1[0]=519

$x[1]=790
$y[1]=795
$x1[1]=828
$y1[1]=887

$x[2]=1089
$y[2]=342
$x1[2]=1229
$y1[2]=401

$x[3]=1217
$y[3]=142
$x1[3]=1267
$y1[3]=245

$x[4]=853
$y[4]=234
$x1[4]=935
$y1[4]=291

$x[5]=931
$y[5]=528
$x1[5]=1028
$y1[5]=627

$x[6]=652
$y[6]=93
$x1[6]=753
$y1[6]=165

$x[7]=1173
$y[7]=636
$x1[7]=1211
$y1[7]=755

GETSCREEN
FOR($c=0, $c < 8)
   FOR($a=0, $a < 8)
      $i[$a]=PXLCOUNT($x[$c],$y[$c], $x1[$c],$y1[$c], $arr[$a])
      LOGWRITE ($i[$a])
      IF($i[$a] > 0)
         $b=$i[$a]
         $a=8
         $c=7
      end_if
   END_CYC
END_CYC

LOGWRITE ("Сообщение ",$b)
SCREENSHOTEX(0,0, $_xmax,$_ymax, $b, 0)

halt


Hool

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Добавь параметр начального значения переменной цикла.
Спасибо огромное! :) В каких случаях обязательно задавать начальное значение для переменной цикла

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Quote
В каких случаях обязательно задавать начальное значение для переменной цикла
Сам цикл FOR не обнуляет переменную в конце цикла. Если переменной $a нигде больше в скрипте не задается новое значение то в большинстве.

Обычный вид цикла
Code: (clickermann) [Select]
FOR($a=0,$a<5) // цикл на 5 повторов

END_CYC


Hool

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
День добрый. Как сделать чтоб скрипт считывал PID процесса?
Да и возможна ли такая конструкция:
IF_PICTURE_IN
else
IF_PICTURE_IN
else
END_IF
END_IF
« Last Edit: December 09, 2016, 06:12:11 PM by Hool »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Подскажите  зачем вам нужно это считывание, если никаких действий с процессами данная программа делать не умеет?
Как это не умеет, очень даже умеет, читать из памяти умеет, и писать в память умеет. И как раз для этих функций и требуется ид процесса, с которым в кликермане проблемы, вроде как он показан в окошке кликермана при наведении курсора на нужное окно, а вот достать его программно не умеет. Давно уже просили в предложениях. Пока вписывать приходится вручную при каждом перезапуске процесса с которым требуется работа.
 

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
День добрый. Как сделать чтоб скрипт считывал PID процесса?

Сам кликер этого не умеет, но можно написать стороннюю программку.
Набросал на AutoIt простой код
Code: [Select]
If $cmdline[0] > 0 Then
$Pid = ProcessExists($cmdline[1])
IniWrite("Find_PID.ini", "default", "PID", $Pid)
EndIf

Запускаем программку Find_PID.exe с параметром имени процесса.
Пример:
Find_PID.exe notepad.exe

Результат возвращается рядом в INI файл. Если вернет 0 значит процесс не найден.

В архиве скомпилированная программа и пример для кликермана.
« Last Edit: December 10, 2016, 09:15:04 AM by Oraven »

Hool

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Спасибо большое