Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: АНТИКЛАН on March 06, 2015, 11:22:41 AM

Title: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: АНТИКЛАН on March 06, 2015, 11:22:41 AM
Всем привет! С вами снова я АНТИКЛАН! :D
Давным-давно... В далекой-далекой галактике... Хотя о чем это я? :D
Короче, други, проблемка нарисовалась! :D

Не работает вот этот кусок кода:

Code: (clickermann) [Select]
THREAD(BANKI_MP, 1)
   GETSCREEN
   IF(PXL(36,59) ! 8796421)
      KEYPRESS(#F10)
      WAIT(5)
   END_IF
   WAITMS(5)
END_THREAD

Код должен следить за пикселем на экране и как только он станет другого цвета выполнить действие. При запуске поведение очень странное... Скрипт либо вообще ничего не делает, даже когда наступает момент, что должно сработать, либо его заклинивает и он начинает работать без остановки не взирая на условия. Пробовал и так и сяк даже отдельно без потока в новом чистом скрипте. Значение цвета брал прям из полноэкранного режима по Alt+Q. Делал серию скриншотов и сравнивал нужный пиксель, нигде он не меняется ни от поворота камеры ни от смены места. Применять COLORMODE тоже пробовал эффект один.
Кто сталкивался с таким уже поделитесь опытом.
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Vint on March 06, 2015, 11:41:42 AM
И даже с еденицей не работает?  ;)

А ты не гробишь всё делая гетскрин через каждые 5 миллисекунд?
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: АНТИКЛАН on March 06, 2015, 11:42:47 AM
и даже с еденицей не работает?  ;)

С единицей где?
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Vint on March 06, 2015, 11:44:19 AM
С единицей где?
Здесь
Code: (clickermann) [Select]
THREAD(BANKI_MP, 1)Сначала был 0, пока я писал ответ, ноль сменился на один.
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: АНТИКЛАН on March 06, 2015, 11:47:28 AM
Здесь
Code: (clickermann) [Select]
THREAD(BANKI_MP, 1)Сначала был 0, пока я писал ответ, ноль сменился на один.

А ну это я специально поставил чтобы вы не сбивались на то что мол я его не включил :D Так то этот кусок - часть скрипта, там управление по горячим клавишам реализовано так что на старте этот поток выключен.

А ты не гробишь всё делая гетскрин через каждые 5 миллисекунд?

Ну насколько я понимаю то GETSCREEN выполняется только после того как отработают все предыдущие команды в цикле(условие, задержка)... Или я не прав?
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Vint on March 06, 2015, 12:02:50 PM
Я не про то. Не слишком ли часто? Такая маленькая задержка.
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: АНТИКЛАН on March 06, 2015, 12:06:30 PM
Я не про то. Не слишком ли часто? Такая маленькая задержка.

Я тоже не точно выразился. Я точно не знаю ждет ли кликерман пока функция GETSCREEN завершится или нет и сразу переходит к следующей команде. По идее должно быть так: делаем снимок, проверяем пиксель ждем 5 мс, делаем снимок и т.д. Вообще ощущение что где-то кто-то кого-то не ждет ;D
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Vint on March 06, 2015, 01:00:12 PM
...Я точно не знаю ждет ли кликерман пока функция GETSCREEN завершится или нет и сразу переходит к следующей команде...
Ждёт. Но отдельный поток с гетскрином всего экрана через каждые 5 мс сильно грузить должен.
На поиск влиять, правда, не должно. Расставляй логи, а не только по нажатиям ориентируясь. Может нажатия не срабатывают и их нужно растянуть во времени.
Скриншот в конце концов.
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Oraven on March 06, 2015, 01:09:11 PM
Зону GETSCREEN нужно ограничить, тогда нагрузка будет минимальной
Code: (clickermann) [Select]
THREAD(BANKI_MP, 1)
   GETSCREEN(36,59,37,60) // вот именно так на 1 пиксель больше
   IF(PXL(36,59) ! 8796421)
      KEYPRESS(#F10)
      WAIT(5)
   END_IF
   WAITMS(5)
END_THREAD

Проблема может быть в том что в других потоках тоже есть GETSCREEN
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: Vint on March 06, 2015, 01:21:06 PM
Проблема может быть в том что в других потоках тоже есть GETSCREEN
Находить это ему не помешает в данном случае.
Title: Re: Проблема. Цвет пикселя. Действия.
Post by: АНТИКЛАН on March 06, 2015, 03:07:51 PM
Ждёт. Но отдельный поток с гетскрином всего экрана через каждые 5 мс сильно грузить должен.
На поиск влиять, правда, не должно. Расставляй логи, а не только по нажатиям ориентируясь. Может нажатия не срабатывают и их нужно растянуть во времени.
Скриншот в конце концов.

Про растянуть во времение можно поподробнее, а то я не понял пока что?

Зону GETSCREEN нужно ограничить, тогда нагрузка будет минимальной
Code: (clickermann) [Select]
THREAD(BANKI_MP, 1)
   GETSCREEN(36,59,37,60) // вот именно так на 1 пиксель больше
   IF(PXL(36,59) ! 8796421)
      KEYPRESS(#F10)
      WAIT(5)
   END_IF
   WAITMS(5)
END_THREAD

Проблема может быть в том что в других потоках тоже есть GETSCREEN

Ну пока что GETSCREEN только один в будующем я думаю его в отдельный поток оформить вообще. А просто один пиксель можно за зону взять?
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: Oraven on March 06, 2015, 04:20:56 PM
А просто один пиксель можно за зону взять?
А я тебе что написал?! Снимок всего 1 пиксела!
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: АНТИКЛАН on March 07, 2015, 12:56:26 AM
А я тебе что написал?! Снимок всего 1 пиксела!

Там вроде четырех получается... Если я правильно думаю...
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: Vint on March 07, 2015, 10:14:18 AM
Просто верь.
На сегодняшний день там один.
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: АНТИКЛАН on March 08, 2015, 01:50:00 AM
Просто верь.
На сегодняшний день там один.

А так тогда сколько?

Code: (clickermann) [Select]
GETSCREEN(36,59,36,59)
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: Oraven on March 08, 2015, 08:01:58 AM
0
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: droll on April 22, 2015, 10:22:35 AM
Просто верь.
На сегодняшний день там один.

0

Поверить то можно, но логика какая-то железная получается :))) Там где 1 пиксель - ноль, а там где их 2 - один.
Title: Re: Проблема. Цвет пикселя. Действия от цвета пикселя.
Post by: Vint on April 22, 2015, 11:55:58 AM
Просто верь.
На сегодняшний день там один.

0

Поверить то можно, но логика какая-то железная получается :))) Там где 1 пиксель - ноль, а там где их 2 - один.

Блин, ну ошибка в программе. Недавно сами нашли. Надеюсь в новой версии поправят.
Зачем искать логику в ошибке/опечатке.