Author Topic: Подскажите, что не так  (Read 19936 times)

0 Members and 2 Guests are viewing this topic.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Подскажите, что не так
« Reply #30 on: November 01, 2013, 04:52:37 PM »
Ох и как же кликерманщики обходились раньше одной только функцией IF_PIXEL_IN???!!!

Тебе надо искать цвет пикселов из этого камня. Подобрать их поможет Unique Colors Search
http://crapware.aidf.org/forum/index.php?topic=42.msg572#msg572

Ну и цветокоррекция тоже приветствуется.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Подскажите, что не так
« Reply #31 on: November 03, 2013, 03:54:46 PM »
Охренеть вы тут развернули сценарий...) Очень поучительно было бы для многих, если бы в таких темах объяснялись команды, как в случае с "Else".
Объясню и тебе смысл "Else"

Code: (clickermann) [Select]
GETSCREEN
IF_PIXEL_IN(0,0, 600,600, 255)
// вот здесь код выполнится если пиксел найден
Else
// а здесь если пиксел не найден!!!
   KEYPRESS(#A) // нажатие клавиши
   WAITMS(500)
END_IF
Я, например, хоть понял, что это за команда, благодаря этой теме...)
Я не ду... Потому и не бу...

dmutruk

  • Освоившийся
  • **
  • Posts: 40
    • View Profile
Re: Подскажите, что не так
« Reply #32 on: December 06, 2013, 08:52:15 AM »
А можно ли как нибуть сделать ожидание появления картинки, как вот есть для появления пикселя?
Code: (clickermann) [Select]
GETSCREEN
WHILE(PXL (100, 100) ! 255)
   WAITMS (100)
   GETSCREEN
END_CYC
А то варианты типа:
Code: (clickermann) [Select]
WHILE($var = 0)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      $var = 1
   else
      waitms(50)
   END_IF
   
END_CYC
надоели тем, что очень много переменных и путаешься если в комментариях не пишешь сразу для чего данная переменная

aden

  • Оплот сообщества
  • ****
  • Posts: 363
    • View Profile
Re: Подскажите, что не так
« Reply #33 on: December 06, 2013, 09:23:53 AM »
А можно ли как нибуть сделать ожидание появления картинки, как вот есть для появления пикселя?
Code: (clickermann) [Select]
GETSCREEN
WHILE(PXL (100, 100) ! 255)
   WAITMS (100)
   GETSCREEN
END_CYC
А то варианты типа:
Code: (clickermann) [Select]
WHILE($var = 0)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      $var = 1
   else
      waitms(50)
   END_IF
   
END_CYC
надоели тем, что очень много переменных и путаешься если в комментариях не пишешь сразу для чего данная переменная

Code: [Select]

nachalo:
GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      goto(dalshe)
   else
      waitms(50)
goto(nachalo)
   END_IF
dalshe:
мои любимые goto )))

ps. сори за отступы, редактировал на бегу)
« Last Edit: December 06, 2013, 09:27:20 AM by aden »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Подскажите, что не так
« Reply #34 on: December 06, 2013, 01:55:19 PM »
А можно ли как нибуть сделать ожидание появления картинки, как вот есть для появления пикселя?
Code: (clickermann) [Select]
GETSCREEN
WHILE(PXL (100, 100) ! 255)
   WAITMS (100)
   GETSCREEN
END_CYC
А то варианты типа:
Code: (clickermann) [Select]
WHILE($var = 0)
   GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      $var = 1
   else
      waitms(50)
   END_IF
   
END_CYC
надоели тем, что очень много переменных и путаешься если в комментариях не пишешь сразу для чего данная переменная

Code: (clickermann) [Select]
nachalo:
GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      goto(dalshe)
   else
      waitms(50)
goto(nachalo)
   END_IF
dalshe:

мои любимые goto )))

ps. сори за отступы, редактировал на бегу)

И в чём сокральный смысл такой экономии?
Сэкономил переменную "$var"  но ввёл две метки "dalshe:" и  "nachalo:", поменял шило на мыло попутно нафиг разломав стройный и понятный порядок выполнения. При этом увеличив код на 1 строку. :-\
Понятно из вопроса, что человек жаждет использовать IF_PICTURE_IN прямо в условии цикла WHILE. К сожалению так нельзя. Да это и не важно, размер кода увеличивается незначительно. Я переменных вообще не жалею.

Нужно просто использовать не безсмысленные var, а что нибудь понятнее.
"Безликие" переменные типа $i далее $j можно иногда использовать для организации конечных циклов, т.е. не содержащих вложенных циклов/подпрограмм. Максимум одно вложение. Внешнее $i внутреннее $j
Если вложений больше, для внешних (можно для всех, кроме маленьких незначащих) использовать осмысленные переменные для циклов.
(ох и написал... кроме меня это хоть кто нибудь понял?  :) )

Со временем вырабатывается привычка делать, так то и так то. Путаться не будешь точно.

P. S. dmutruk используй для оформления кода не кнопку "Код", а выпадающий список "Код" - "Clickermann". Если конечно пишешь не с телефона (у меня с телефона пользоваться списком нельзя).


dmutruk

  • Освоившийся
  • **
  • Posts: 40
    • View Profile
Re: Подскажите, что не так
« Reply #35 on: December 17, 2013, 03:03:42 AM »
Здравствуйте, ребят, были проблемы с интернетом, не было возможности отписаться. Далее по делу:
Quote
Нужно просто использовать не безсмысленные var, а что нибудь понятнее.
"Безликие" переменные типа $i далее $j можно иногда использовать для организации конечных циклов, т.е. не содержащих вложенных циклов/подпрограмм. Максимум одно вложение. Внешнее $i внутреннее $j
Если вложений больше, для внешних (можно для всех, кроме маленьких незначащих) использовать осмысленные переменные для циклов.
(ох и написал... кроме меня это хоть кто нибудь понял?  :) )
Ну я так в общем и делаю, но бывает иногда в коде меняю частично алгоритм и выходит что переменная либо стает ненужной (так как выше бывает 1 переменная на несколько однотипных задач) и в ходе анализа могу запутаться, бывает редко, но все же хотелось избавиться от этого  использовав IF_PICTURE_IN прямо в условии цикла WHILE. Ну нельзя так нельзя, буду стараться быть внимательнее ;)


Quote
P. S. dmutruk используй для оформления кода не кнопку "Код", а выпадающий список "Код" - "Clickermann". Если конечно пишешь не с телефона (у меня с телефона пользоваться списком нельзя).

Дык я же так и делаю всегда, за исключением первого поста в этом топе (не знал что так можно тогда). Возможно ты имел в виду aden с его постом:
Quote
Code: [Select]

nachalo:
GETSCREEN
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile.bmp")
      print("Найден в координатах X=", $_return1, ", Y=", $_return2)
      LCLICK($_return1, $_return2)
      goto(dalshe)
   else
      waitms(50)
goto(nachalo)
   END_IF
dalshe:

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Подскажите, что не так
« Reply #36 on: December 17, 2013, 09:40:31 AM »
Дык я же так и делаю всегда, за исключением первого поста в этом топе (не знал что так можно тогда). Возможно ты имел в виду aden с его постом:
Сори. Из-за вложенности ответов неправильно написал. Это относилось к aden.
Всего лишь рекомендация. Так всем удобней читать форум.


dmutruk

  • Освоившийся
  • **
  • Posts: 40
    • View Profile
Re: Подскажите, что не так
« Reply #37 on: December 20, 2013, 03:41:08 AM »
Задам вопрос не по теме, но после того как получил бан за использовании сторонних программ, возник вопрос, какими способами отслеживаются такие программы как наш кликкер? Все действия которые делались, были все с рандомными задержками которые сам  опытным путем определял дабы они были близки к моим) И еще, если отслеживание происходит через проверку моих процессов, то есть ли программы которые запретят доступ к моему компу от таких "вторжений") ::)