Author Topic: Повтор с условием  (Read 6737 times)

0 Members and 4 Guests are viewing this topic.

NightWanted

  • Зашел в гости
  • *
  • Posts: 14
    • View Profile
Re: Повтор с условием
« Reply #15 on: April 19, 2016, 07:10:57 PM »
Еще один вопросик, в плане реализации... Есть какая-нибудь возможность перевести цифры из изображения в текст? Или нужно будет обязательно пользоваться доп. программами по распознаванию?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Повтор с условием
« Reply #16 on: April 20, 2016, 11:04:31 AM »
Vint, а что Вы можете предложить? Вот, что делает кликер https://youtu.be/QMaa2Vm3JcE
Все равно после первого противника идет переключение на второго, а дальше почему-то включается сразу автобой... Подскажите, как это исправить?

Предлагаю всё переделать.
Куча повторяющегося лишнего кода.
Зачем при поиске адреналин/не адреналин используются разные точки с разными цветами?
Не учтены все задержки. 500 мс перед скрином на смерть мало, от там падает не меньше секунды.

В итоге получится что-то типа такого кода (пример)
Code: (clickermann) [Select]
SUB(battle)
   WAITMS(500)
   GETSCREEN
   WHILE(PXL(665,339) ! 0)
      IF (PXL(795 - ($xx*$pers), 444) = 14145500) //УДАР ПЕРСА
         LCLICK(795 - ($xx*$pers),444)                          //ПРИ АДРЕНАЛИНЕ
         WAIT(4)
      ELSE
         LCLICK(814 - ($xx*$pers),509)            //БЕЗ АДРЕНАЛИНА
      END_IF
     
      INC($pers)
      IF($pers = 5)
         $pers = 0
         WAIT(13)  //ОЖИДАНИЕ АТАКИ СОПЕРНИКА
      END_IF
     
      WAITMS(1000)
      GETSCREEN
   END_CYC
END_SUB

$xx = 130
$pers = 0

LCLICK(738,238) //ВЫБИРАЕМ ПЕРВОГО ПРОТИВНИКА
battle()
LCLICK(790,310) //ВЫБИРАЕМ ВТОРОГО ПРОТИВНИКА
battle()

Для вычисления координат нужен полноразмерный не сжатый скриншот.

P.S. Мне не очень понятен выбор координат для атаки противника и для поиска смерти. Если они всегда одни, то OK
Ещё не очень нравится всё на задержках. Лучше определять зарядился наш перс или нет.
« Last Edit: April 20, 2016, 02:05:32 PM by Vint »


NightWanted

  • Зашел в гости
  • *
  • Posts: 14
    • View Profile
Re: Повтор с условием
« Reply #17 on: April 20, 2016, 12:28:44 PM »
Предлагаю всё переделать.
Куча повторяющегося лишнего кода.
Зачем при поиске адреналин/не адреналин используются разные точки с разными цветами?
Не учтены все задержки. 500 мс перед скрином на смерть мало, от там падает не меньше секунды.

P.S. Мне не очень понятен выбор координат для атаки противника и для поиска смерти. Если они всегда одни, то OK
Ещё не очень нравится всё на задержках. Лучше определять зарядился наш перс или нет.

Vint, спасибо за ответ. Адреналин у каждого перса срабатывает в разное время. И один и тот же пиксел при адреналине (в кружочке) имеет почему-то разный цвет. Поэтому, пришлось координату при адреналине прописывать каждому в отдельности. По поводу задержек, Вы сами говорите, что времени на определение смерти мало + в те моменты когда идет ход соперника, она сам может применять адреналин, а тогда включается анимация, что тоже отнимает время (а когда у противника будет адреналин то же неизвестно). Координаты для противников 1 или 2, я выбрал произвольно. Просто если сразу включить автобой, они ударяют беспорядочно, и шанс выиграть очень мал. Поэтому нужно избавиться от двоих, а потом уже включать автобой. Координаты противника всегда одинаковы, а смерть я определяю по тени, когда он падает. Огромное спасибо за код, сейчас поиграюсь с ним, я в принципе именно это и хотел. Я уже все в игре систематизировал, осталось только с рейдами разобраться). Еще раз огромное спасибо!