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.


Messages - PasqualeAcosta

Pages: 1 [2]
16
Использование / Re: Три в ряд
« on: October 21, 2018, 12:01:48 PM »
7 цветов имелось ввиду с сейфами, они на скрине есть.

17
Использование / Re: Три в ряд
« on: October 21, 2018, 11:16:11 AM »
Есть игра 3 в ряд, Gems of War. Только там поля 8х8. Подсобите, с чего вообще начать переделку скрипта под нее?
Возможно кто то уже делал под эту игру?
Поле там такое как на скрине и 7 элементов (цветов) сборки.


18
Биржа труда / Re: Бот для игры Gems of War
« on: October 21, 2018, 10:57:28 AM »
доделали конечно, даже с многочисленными избыточными возможностями, по сравнению с первоначальным описанием автора темы, к сожалению у меня авторский вариант не сохранился, так-как почти год темой ни кто здесь не интересовался.
Эх, жаль. Может в почте или где после пересылок осталось...

Есть тема по 3 в ряд http://crapware.aidf.org/forum/index.php?topic=1047.0 , но для меня как новичка пока это все очень жестко))

19
Биржа труда / Re: Бот для игры Gems of War
« on: October 21, 2018, 02:32:19 AM »
Бота случаем так и не доделали?)

20
Общие вопросы / Re: действие по цвету
« on: October 20, 2018, 01:00:57 PM »
Из всего скрипта что я видел выше, там только два вызова ф-ции pxl(), больше связанного с графикой ничего нет... Так что мне нечего сказать по этому поводу  :(.

Вот весь скрипт. Одно понял, что я нифига не понимаю в грамматике скриптописания и чувствую что все можно сделать гораздо проще и читабельнее. Ума не приложу чем менять Гото, а подпрограммы SUB не такие глюченые как Гото? И при переходе в подпрограмму все переменные из скрипта сохраняются и как я понял обнуляются только по завершению подпрограммы?

Code: (clickermann) [Select]
start:
WAITMS(1000)
LCLICK(952,327) // старт
WAITMS(500)


$time = $_ms + 5000 // проверка готовности к атаке
WHILE($time > $_ms)
   GETSCREEN(1206,132,1206,132)
   COLORMODE(6,1206,132,1206,132)
   IF(PXL(1206,132)=16777215)
      WAITMS(200)
      LCLICK(1038,286)  // экспедиция
      WAITMS(100)
      $time = 0
   ELSE
      WAITMS(100)
      LCLICK(952,327)
      WAITMS(200)
   END_IF
END_CYC

// к бою
atk:
WAITMS(500)
LOGWRITE ("В атаку!!!")
WAITMS(100)
LCLICK(899,560)
WAITMS(100)

// проверяем загрузились ли

perviy:
$var1 = 0
$time = $_ms + 10000 // 10 сек ищет цвет
WHILE($time > $_ms)
   GETSCREEN(642,97,642,97)
   LOGWRITE ("глюк1")
   COLORMODE(6,642,97,642,97)
   IF(PXL(642,97)=16777215)
      WAITMS(2000)
      LCLICK(647,163)
      LOGWRITE ("глюк2")
      WAITMS(500)
      GETSCREEN(886,501,886,501)
      COLORMODE(6,886,501,886,501)
      IF(PXL(886,501)=8355711)
         WAITMS(200)
         LCLICK(574,617)
         LOGWRITE ("глюк3")
         WAITMS(2000)
         $var1 = 1
         $time = 0
      ELSE
         WAITMS(200)
         LCLICK(958,500)
         LOGWRITE ("глюк4")
         WAITMS(3000)
         $var1 = 0
         $time = 0
      END_IF
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   LCLICK(574,617)
   WAITMS(50)
   LOGWRITE ("глюк5")
   GOTO(perviy)
END_IF

IF($var1 = 1)
   GOTO(perviy)
END_IF


vtoroy:
$var2 = 0
$time = $_ms + 10000 // делает второй ход
WHILE($time > $_ms)
   GETSCREEN(642,97,642,97)
   COLORMODE(6,642,97,642,97)
   IF(PXL(642,97)=16777215)
      WAITMS(500)
      LCLICK(647,277)  // кастует
      WAITMS(500)
      GETSCREEN(883,502,883,502)
      COLORMODE(6,883,502,883,502)
      IF(PXL(883,502)=8355711)
         WAITMS(200)
         LCLICK(574,617)
         WAITMS(2000)
         $var2 = 1
         $time = 0
      ELSE
         WAITMS(200)
         LCLICK(958,500)
         WAITMS(3000)
         $var2 = 0
         $time = 0
      END_IF
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   GOTO(end)
   
END_IF

IF($var2 = 1)
   GOTO(vtoroy)
END_IF


tretiy:
$var3 = 0
$time = $_ms + 10000 // делает третий ход
WHILE($time > $_ms)
   GETSCREEN(642,97,642,97)
   COLORMODE(6,642,97,642,97)
   IF(PXL(642,97)=16777215)
      $var3 = 1
      $time = 0
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   GOTO(end)
   
END_IF

IF($var3 = 1)
   GOTO(boll)
   
END_IF


boll:  // 3 ход!
$var4 = 0
$time = $_ms + 2000 // проверка заряда феникса
WHILE($time > $_ms)
   GETSCREEN(643,524,643,524)
   COLORMODE(6,643,524,643,524)
   IF(PXL(643,524)=8388607)
      WAITMS(100)
      LOGWRITE ("Заряжен")
      WAITMS(500)
      LCLICK(645,540)  // кастует феникс
      WAITMS(500)
      GETSCREEN(883,502,883,502)
      COLORMODE(6,883,502,883,502)
      IF(PXL(883,502)=8355711)
         WAITMS(200)
         LCLICK(574,617)
         LOGWRITE ("хз 1")
         WAITMS(2000)
         $var4 = 1
         $time = 0         
      ELSE
         WAITMS(200)
         LCLICK(958,500)
         LOGWRITE ("хз 2")
         WAITMS(200)
         $var4 = 2
         $time = 0
      END_IF
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   LOGWRITE ("Не видит заряд1")
   WAITMS(200)
   LCLICK(654,418)  // кастует шар
   WAITMS(500)
   GETSCREEN(883,502,883,502)
   COLORMODE(6,883,502,883,502)
   IF(PXL(883,502)=8355711)
      WAITMS(200)
      LCLICK(574,617)
      LOGWRITE ("хз 3")
      WAITMS(2000)
      GOTO(boll)
   ELSE
      WAITMS(200)
      LCLICK(958,500)
      LOGWRITE ("хз 4")
      WAITMS(3000)
      GOTO(phenix)
   END_IF
   
END_IF

IF($var4 = 1)
   LOGWRITE ("вар4 1")
GOTO(boll)
   
END_IF

IF($var4 = 2)
   LOGWRITE ("вар4 2")
GOTO(end)
   
END_IF


phenix:     // ход феникса
LOGWRITE ("феникс")
$time = $_ms + 10000 // проверяет ход феникса
WHILE($time > $_ms)
   GETSCREEN(642,97,642,97)
   COLORMODE(6,642,97,642,97)
   IF(PXL(642,97)=16777215)
      LOGWRITE ("ход феня")
$time = 0
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   GOTO(end)
   
END_IF

$var5 = 0
$time = $_ms + 2000 // проверка заряда феникса
WHILE($time > $_ms)
   GETSCREEN(643,524,643,524)
   COLORMODE(6,643,524,643,524)
   IF(PXL(643,524)=8388607)
      WAITMS(100)
      LOGWRITE ("Заряжен")
      WAITMS(500)
      LCLICK(645,540)  // кастует феникс
      WAITMS(500)
      GETSCREEN(883,502,883,502)
      COLORMODE(6,883,502,883,502)
      IF(PXL(883,502)=8355711)
         WAITMS(200)
         LCLICK(574,617)
         LOGWRITE ("ххз5")
         WAITMS(2000)
         $var5 = 1
         $time = 0
      ELSE
         WAITMS(200)
         LCLICK(958,500)
         LOGWRITE ("ххз6")
         WAITMS(1000)
         $var5 = 2
         $time = 0
      END_IF
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   WAITMS(100)
   LOGWRITE ("Не видит заряд2")
   WAITMS(100)
   LCLICK(1330,57)  // выходим
   WAITMS(1000)
   LCLICK(956,457)
   WAITMS(1000)
   LCLICK(1041,397)
   WAITMS(1000)
   GOTO(start)
     
END_IF

IF($var5 = 1)
   LOGWRITE ("вар5-1")
GOTO(phenix)
   
END_IF

IF($var5 = 2)
   LOGWRITE ("вар5-2")
GOTO(end)
   
END_IF

end:
$var6 = 0
$time = $_ms + 5000 // выходим
LOGWRITE ("енд")
WHILE($time > $_ms)
   GETSCREEN(1038,546,1038,546)
   COLORMODE(6,1038,546,1038,546)
   IF(PXL(1038,546)=4177791)
      WAITMS(100)
      LOGWRITE ("Зашел в энд")
      WAITMS(200)
      LCLICK(1038,546)
      WAITMS(1000)
      GETSCREEN(974,398,974,398)  // нет ли петомца
      COLORMODE(6,974,398,974,398)
      IF(PXL(974,398)=4177791)
         WAITMS(500)
         LOGWRITE ("ПЕТ")
         LCLICK(974,398)
         WAITMS(1000)
         $var6 = 1
         $time = 0
      ELSE
         WAITMS(100)
         LOGWRITE ("не пет")
         $var6 = 1
         $time = 0
      END_IF
      WAITMS(100)
      LCLICK(1038,546)
      WAITMS(500)
      GETSCREEN(1013,436,1013,436)
      COLORMODE(6,1013,436,1013,436)
      IF(PXL(1013,436)=16777215) // или 1009,279
         WAITMS(1000)
         LCLICK(1062,544)
         WAITMS(1000)
         LCLICK(888,443)  // прав 888,443, лев 1024,453
         WAITMS(2000)
         LOGWRITE ("лвл")
         $var6 = 1
         $time = 0
      ELSE
         LOGWRITE ("не лвл")
$var6 = 1
         $time = 0
      END_IF
   ELSE
      WAITMS(100)
      LCLICK(1053,503)
      WAITMS(100)
   END_IF
END_CYC
IF($time ! 0)
   LCLICK(1330,57)  // не нашел ход выходит
   WAITMS(1000)
   LCLICK(956,457)
   WAITMS(1000)
   LOGWRITE ("не вышел")
   LCLICK(1041,397)
   WAITMS(1000)
   GOTO(start)
   
END_IF

IF($var6 = 1)
LOGWRITE ("вар6")
GOTO(atk)
   
END_IF

halt

21
Общие вопросы / Re: действие по цвету
« on: October 19, 2018, 10:02:17 PM »
Вот это вот условие IF(PXL(886,501)=6118493) никогда не выполнится. Так как перед ним стоит COLORMODE(6), а в шестом колормоде такой цвет отсутствует.

Варианта два, либо убирать колормод, либо ставить верный цвет. Твой цвет 6118493 -  в колормоде №6 он равен 8355711


А как так получилось? Я вроде все через лупу и алт+Q делал? Как мне тогда цвет в 6 колор перевести?
И можно ли в некоторых случаях использовать GOTO не в циклах, а по итогам IF вне цикла ?
P.S. проверил везде, как то странно вышло, в части скрипта указан цвет как вы и написали, а где то тот что я в части указал.

22
Общие вопросы / Re: действие по цвету
« on: October 19, 2018, 08:12:27 PM »
Первый день в этом варюсь. Прошу прощения и спасибо!

23
Общие вопросы / Re: действие по цвету
« on: October 19, 2018, 07:29:04 PM »
Не могу разобраться в данной части скрипта, что я использую не правильно. Глючит жутко и совсем не логично работает. Может какие то команды не соответствуют чему то.
То работает нормально, то судя по логам (сделал маяки) цыклирует по глукам 1, 2, 3, 1, 2, 3, а иногда улетает в 1,2,4 что тоже не логично, хотя ситуация одинаковая.
Quote
perviy:
$time = $_ms + 10000 // 10 сек ищет цвет
WHILE($time > $_ms)
   GETSCREEN(642,97,642,97)
   LOGWRITE ("глюк1")
   COLORMODE(6,642,97,642,97)
   IF(PXL(642,97)=16777215)
      WAITMS(500)
      LCLICK(647,163)
      LOGWRITE ("глюк2")
      GETSCREEN(886,501,886,501)     
      COLORMODE(6,886,501,886,501)
      IF(PXL(886,501)=6118493)     
         WAITMS(1000)
         LCLICK(574,617)
         LOGWRITE ("глюк3")
         WAITMS(2000)
         GOTO(perviy)
      ELSE
         WAITMS(500)
         LCLICK(958,500)
         LOGWRITE ("глюк4")
         WAITMS(3000)
         $time = 0
      END_IF
      $time = 0
   ELSE
      WAITMS(50)
   END_IF
END_CYC
IF($time ! 0)
   LCLICK(574,617)
   LOGWRITE ("глюк5")
   GOTO(perviy)

24
Общие вопросы / Re: действие по цвету
« on: October 19, 2018, 11:33:50 AM »
Огромное спасибо за оперативность, все работает. Разобрал пример, теперь есть понимание.

25
Общие вопросы / Re: действие по цвету
« on: October 19, 2018, 11:15:12 AM »
День добрый! Не стал создавать отдельную тему. С программированием особо не знаком и пытаюсь первые действия на основе этих скриптов сделать. Подсобите пожалуйста.
Суть такова, нужно в течении 10 секунд проверять цвет (с учетом 6 коррекции), если цвет совпал, то без ожидания 10 секунд делать клик по указанным координатам. Если же за 10 секунд цвет не был найдет, делать клик в другое место.
Я почитал азы, но так и не понял еще в какой последовательности выполняются действия. Подскажите как быть, желательно с пояснением. И прошу прощение если задаю глупые вопросы.
Скрипт который пробовал.
Quote
WAIT(5)
LCLICK(899,560)  // 2331970
WAIT(1)
$time = $_ms + 10000 // 10 сек ищет цвет
GETSCREEN
WHILE((PXL(642,97)=16777215)&($time > $_ms))
   WAITMS(50)
   GETSCREEN
   COLORMODE(6,642,97,642,97)
END_CYC
WAITMS(1000)
LCLICK(647,163)  // делает клик если находит цвет
WAITMS(50)
IF($time < $_ms)
   LCLICK(1330,57)  // делает клик если не находит
   WAITMS(50)
END_IF
halt

Pages: 1 [2]