Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Riversong

Pages: [1]
1
Общие вопросы / Не видит картинку
« on: April 03, 2020, 02:56:13 PM »
Я видел на форуме множество подобных тем и перепробовал разные варианты из решений, что нашел тут. Но всё тщетно. На windows 10 кликерман не желает находить картинку в приложениях (exe). Изначально я писал скрипт нахождения кнопки в игре. На windows 7 все работает. Но не на win10. Сначала были проблемы с разрешением экрана. Кликерман не охватывал весь экран при скрине, но эту проблему я решил через настройки "...высокого DPI". Так же пытался использовать colormode + скрин сделанный с этим параметром, используемый для сравнения. Кликерман находит картинку только на рабочем столе. Если же речь идет об приложениях - не работает( Подскажите пожалуйста, в чем ошибка?

Пример скрипта без использования colormode
Code: [Select]
$checkSt = 0   
  WHILE($checkSt = 0)
            GETSCREEN
          IF_PICTURE_IN(0,0,$_xmax,$_ymax,"server2.bmp")
         $checkSt = 1
              print ("Нашел")
  ELSE
               waitms(500)
          END_IF
   END_CYC 

2
Здравствуйте. Я пишу код для кликера, который обходит n-ное количество аккаунтов одной онлайн игры. Зайдя на аккаунт кликер делает определенные операции, после чего выходит убив процессы игры, меняет номер аккаунта (+1) в цикле и приступает ко входу на другой аккаунт. И так до тех пор, пока не пройдется по всем аккаунтам. Однако в игре может произойти вылет. В случае вылета игра выдаёт табличку. Для отлова вылета я написал поток, в котором происходит поиск этой таблички по цвету. В случае нахождения - поток выключает игру и должен зайти заново на тот же аккаунт, на котором произошел вылет. Я смог написать в потоке код, который отлавливает табличку и убивает процесс, но не смог написать код чтобы кликер запускал аккаунт повторно на котором произошел вылет. Подскажите пожалуйста как написать код?

Code: [Select]
$S_CORR = 0
THREAD(proverka,1)//поток который отлавливает табличку гласящую об вылете
$find=0
   WHILE($find = 0)
      GETSCREEN
        IF_PIXEL_IN(635,400, 730,425,2049638)
          print("Вылет")//677 416
           EXECUTE("TASKKILL","/F /IM процессИгры.exe")
           WAIT(2)       
        ELSE
          WAIT(2)
        END_IF
   END_CYC 
END_THREAD

$numAkk = 1  //номер аккаунта с которого начинаем обход
WHILE($numAkk <= 10)  //всего к примеру 10 аккаунтов
     //основной блок кода, который обеспечивает действия по входу в определенный аккаунт
     $numPers = $numPers +1 //пройдя по аккаунту и совершив в нём все необходимые действия прибавляем +1 к номеру аккаунта, убиваю процесс игры и цикл обеспечивает заход на след.аккаунт.
END_CYC 
HALT

Например произошел вылет на аккаунте номер 5. Необходимо, чтобы отлавливающий ошибку поток перезапустил цикл с аккаунтами именно с аккаунта 5 (на котором был вылет).

Pages: [1]