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 - Vint

Pages: 1 ... 258 259 [260] 261 262 263
3886
 FIFA ver.2.8
Добавлен режим простого поиска при достижении 836 страницы и возврат в нормальный режим.
Пришлось перекомпоновать связь блоков программы. Может где и сломал то, что работало как часы.
Не проверял. Ну это понятно, т.к. не было возможности дойти до нового режима.

3887
Прочее / Re: Юмор по теме и не только
« on: December 19, 2012, 08:09:30 AM »
Не, не, правда!  :) ;D

3888
Прочее / Юмор по теме и не только
« on: December 18, 2012, 05:23:43 PM »
Погода на эту неделю.

3889
Поспешил и в 17-ой накосячил. Зато быстро :)

3890
C перезагрузкой через заданное время
+ Поставил 5 сек. не найденные серые поля.
rebut.bmp в FIFA\textures

3891
Наступал на те же грабли :)
Поэтому и указал в коде с пробелами и тире: 
"Clickermann - "

3892
Ошибки / Re: Непонятки
« on: December 14, 2012, 08:42:00 PM »
Кто в курсе, если я например вышеупомянутю текстовую  переменную цифры скопирую в сторонний файл тхт , а потом его оттуда снова вытащу может тогда переменная из буквенной ("-125") станет числовой -125 ?
 Ну должно же быть решение.
только хотел предложить такой вариант но без пробы не решился. Попробовать возможности нет.
кстати инт я сразу тогда попробовал. Он не помогал никогда. Текстовая оставалась текстовой.

3893
Цикл FOR сам объявляет переменную сам её и обнуляет, так что $i=0 это лишнее

Цикл FOR обнуляет переменную после окончания своей работы, а не до.
Если переменная где-то использовалась то входящее значение может быть не 0.

Поэтому если мне специально не нужно другое входящее значение, я чтоб подстраховаться перед циклом обнуляю. Потом, в большом скрипте фиг вспомнишь, какие переменные задействованы были и какое там может быть значение.

В этом скрипте из 20 строк это может и лишнее. Когда он вырастет до 500 будет не лишним, потом спасибо скажет.

3894
И можно ли использовать LCLICK или RCLICK без координат?
Code: (clickermann) [Select]
LCLICK($_xmouse,$_ymouse)
RCLICK($_xmouse,$_ymouse)


Мне нужно что бы при нажатии определенной кнопки, например "Num 1"  выполнялось действие например: LCLICK (9 раз) потом LDOWN и дальше LUP. Если была нажата клавила "Num 2" то 8 раз LCKICK и 1 раз RCLICK, и так дальше.

Code: (clickermann) [Select]
IF (ISKEYDOWN(97)=1)  //Если нажата NumPad 1
   $i=0
   FOR ($i, $i<9)
      LCLICK($_xmouse,$_ymouse)
   END_CYC
   // здесь твои LDOWN LUP, что ты под этим имел ввиду   
END_IF

IF (ISKEYDOWN(98)=1)  //Если нажата NumPad 2
   $i=0
   FOR ($i, $i<8)
      LCLICK($_xmouse,$_ymouse)
   END_CYC
   RCLICK($_xmouse,$_ymouse)   
END_IF

// и т.д.

HALT

3895
Устранение пропущенных моментов.
Версия 2.4
[spoiler]
Code: (clickermann) [Select]

#name "FIFA ver.2.4"
// Author: Vint
// Version: 2.4 (14.12.2012)
// под версию Clickermann 4.7 SE

//--------------------------------
$speed=20 // количество страниц пропускаемых, от начала, быстро без проверки
//--------------------------------

//--------------------------------
$forward=1 // o-нет перемотки, 1-перемотка вперёд
//--------------------------------


WAIT(1)

//====  Находим Fifa
MOVE($_xmax, $_ymax)  //паркуемся
GETSCREEN
COLORMODE(5)
IF_PICTURE_IN (0,0, $_xmax, $_ymax, "textures\home.bmp")
   LCLICK($_return1,$_return2+70)
   WAITMS(100)
   $vX=$_return1-16
   $vY=$_return2+51
   LOGWRITE("Fifa found")
   LOGWRITE("vX = ", $vX, "  vY = ", $vY)
   WAITMS(200)
ELSE
   LOGWRITE("Fifa not found")
   HINTPOPUP("Fifa not found")
   HALT
END_IF

//====  Инициализация
$first=1 // 1-перый проход, 0- не первый
$napr=2 // куда идём 1-влево, 2-вправо
$sdelano=0 // счётчик купленных карточек
$park_x=$vX+640 // парковка
$park_y=$vY+220
$page_Lx=$vX+405 // стрелка по страницам  влево
$page_Ly=$vY+220
$page_Rx=$vX+558 // стрелка по страницам  вправо
$page_Ry=$vY+220
$stavka_1x=$vX+540 //  поле stavka
$stavka_1y=$vY+122
$stavka_2x=$vX+600
$stavka_2y=$vY+140
$nostavka_1x=$vX+440 //  поле no_stavka
$nostavka_1y=$vY+90
$nostavka_2x=$vX+470
$nostavka_2y=$vY+102
$gebot_1x=$vX+390 //  поле gebot
$gebot_1y=$vY+120
$gebot_2x=$vX+435
$gebot_2y=$vY+142
$startmany_1x=$vX+460 //  поле startmany
$startmany_1y=$vY+50
$startmany_2x=$vX+480
$startmany_2y=$vY+70
$basik_1x=$vX+13 //  поле карточек
$basik_1y=$vY+246
$basik_2x=$vX+840
$basik_2y=$vY+262
$lx=$vX+40 //  левая карточка
$ly=$vY+275
$l_1x=$vX+140 //  поле левой карточки
$l_1y=$vY+140
$l_2x=$vX+222 //250 старое значение
$l_2y=$vY+158
$rx=$vX+820 //  правая карточка
$ry=$vY+275
$r_1x=$vX+850 //  поле правой карточки
$r_1y=$vY+140
$r_2x=$vX+920
$r_2y=$vY+158

//====

IF($forward=0)
   //GOTO(poisk)    //для отладки
   GOTO(start)
END_IF

GETSCREEN        // если 1-я стр. мотаем на ~30 страниц без проверки
IF_PICTURE_IN ($vX+420,$vY+210,$vX+510,$vY+228, "textures\seite1von.bmp")
   LOGWRITE("1 page, forward ~30")
   $i=0
   FOR($i, $i < $speed)     // мотаем вправо на N страниц
      LCLICK($page_Rx,$page_Ry)
      WAITMS(100)
      GOSUB(zagruzka)
   END_CYC
END_IF

$pic = 1          // перелистывание вправо по 5 страниц
WHILE($pic = 1)
   MOVE($lx, $ly)  //  левая карточка
   WAITMS(150)
   $many_time=$_time_t+30
   
   $fon = 1
   WHILE($fon = 1)
     
      IF($_time_t>$many_time)
         LCLICK($lx+128, $ly)
         WAITMS(100)
         MOVE($lx, $ly)
         WAITMS(400)
         $many_time=$_time_t+30
      END_IF
     
      GETSCREEN
      IF (PXL($lx+60, $ly-137)=6643283)
         $fon = 0
      END_IF
      WAITMS(100)
   END_CYC
   
   GETSCREEN
   IF_PICTURE_IN ($l_1x,$l_1y,$l_2x,$l_2y, "textures\stunden.bmp")
      $pic = 0
      LCLICK($page_Lx,$page_Ly)   // на 1 страницу назад
      WAITMS(100)
      GOSUB(zagruzka)
   ELSE
      $i=0
      FOR($i, $i < 5)    // 5 раз вправо
         LCLICK($page_Rx,$page_Ry)
         WAITMS(100)
         GOSUB(zagruzka)
      END_CYC
      $pic = 1
   END_IF
   //LOGWRITE("$pic ",$pic)
END_CYC



//====
start:

// проверка stunden слева
MOVE($lx, $ly)  //  левая карточка
WAITMS(150)
$many_time=$_time_t+30

$fon = 1
WHILE($fon = 1)
   
   IF($_time_t>$many_time)
      LCLICK($lx+128, $ly)
      WAITMS(100)
      MOVE($lx, $ly)
      WAITMS(400)
      $many_time=$_time_t+30
   END_IF
   
   GETSCREEN
   IF (PXL($lx+60, $ly-137)=6643283)
      $fon = 0
   END_IF
   WAITMS(100)
END_CYC

GETSCREEN
IF_PICTURE_IN ($l_1x,$l_1y,$l_2x,$l_2y, "textures\stunden.bmp")
   LCLICK($page_Lx,$page_Ly)
   WAITMS(200)
   GOSUB(zagruzka)
   $napr=1
   GOTO(start)
END_IF

// проверка меньше 58-59 справа
MOVE($rx, $ry)  //  правая карточка
WAITMS(150)
$many_time=$_time_t+30

$fon = 1
WHILE($fon = 1)
   
   IF($_time_t>$many_time)
      LCLICK($rx-128, $ry)
      WAITMS(100)
      MOVE($rx, $ry)
      WAITMS(400)
      $many_time=$_time_t+30
   END_IF
   
   GETSCREEN
   IF (PXL($rx+60, $ry-137)=6643283)
      $fon = 0
   END_IF
   WAITMS(100)
END_CYC
WAITMS(100)

$nichego=0
$poisk=0
GETSCREEN
IF_PICTURE_IN ($r_1x,$r_1y,$r_2x,$r_2y, "textures\stunden.bmp")
   $poisk=1
   $napr=1
   INC($nichego)
END_IF

IF($first=1)
   IF_PICTURE_IN ($r_1x,$r_1y,$r_2x,$r_2y, "textures\58_1sm.bmp")
      $poisk=1
      $napr=2
      INC($nichego)
   END_IF
   
   IF_PICTURE_IN ($r_1x,$r_1y,$r_2x,$r_2y, "textures\58_2sm.bmp")
      $poisk=1
      INC($nichego)
   END_IF
END_IF

IF_PICTURE_IN ($r_1x,$r_1y,$r_2x,$r_2y, "textures\59_1sm.bmp")
   $poisk=1
   INC($nichego)
END_IF

IF_PICTURE_IN ($r_1x,$r_1y,$r_2x,$r_2y, "textures\59_2sm.bmp")
   $poisk=1
   INC($nichego)
END_IF

IF(($nichego=0) & ($first=1)) // проверка первого прохода, оптимизация
   $first=0
END_IF

IF($poisk=0)
   LCLICK($page_Rx,$page_Ry)
   WAITMS(200)
   GOSUB(zagruzka)
   $napr=2
   GOTO(start)
END_IF

poisk:
$basik_temp=$basik_1x
$kart2=0

WHILE($basik_temp<$basik_2x)
   
   IF($kart2=1)
      $kart2=0
      MOVE($lx, $ly)
      WAITMS(300)
   ELSE
      MOVE($lx, $ly)
      WAITMS(100)
      $many_time=$_time_t+30
     
      $fon = 1
      WHILE($fon = 1)
         
         IF($_time_t>$many_time)
            LCLICK($lx+128, $ly)
            WAITMS(100)
            MOVE($lx, $ly)
            WAITMS(400)
            $many_time=$_time_t+30
         END_IF
         
         GETSCREEN
         IF (PXL($lx+60, $ly-137)=6643283)
            $fon = 0
         END_IF
         WAITMS(100)
      END_CYC
   END_IF
   
   MOVE($park_x, $park_y)  //паркуемся
   WAITMS(500)
   
   $img1=5000
   $img2=5000
   $img3=5000
   $img4=5000
   
   GETSCREEN
   COLORMODE(7,$basik_temp,$basik_1y,$basik_2x,$basik_2y)
   //LOGWRITE("ищу 75")
   IF_PICTURE_IN($basik_temp,$basik_1y,$basik_2x,$basik_2y, "textures\75cm7_01.bmp")
      $img1=$_return1
   END_IF
   
   IF_PICTURE_IN($basik_temp,$basik_1y,$basik_2x,$basik_2y, "textures\75cm7_02.bmp")
      $img2=$_return1
   END_IF
   
   IF_PICTURE_IN($basik_temp,$basik_1y,$basik_2x,$basik_2y, "textures\75cm7_03.bmp")
      $img3=$_return1
   END_IF
   
   IF_PICTURE_IN($basik_temp,$basik_1y,$basik_2x,$basik_2y, "textures\75cm7_04.bmp")
      $img4=$_return1
   END_IF
   
   IF(($img1=5000) & ($img2=5000) & ($img3=5000) & ($img4=5000))
      $basik_temp=$basik_2x+1
      //LOGWRITE("нет 75")
      //HINTPOPUP("нет 75")
   ELSE
      GOSUB(nashli_75)
   END_IF
   
END_CYC

//HALT

GETSCREEN
IF_PICTURE_IN ($vX+420,$vY+210,$vX+510,$vY+228, "textures\seite1von.bmp")
   $napr=2
END_IF

IF($napr=1)
   LCLICK($page_Lx,$page_Ly)
   WAITMS(300)
ELSE
   LCLICK($page_Rx,$page_Ry)
   WAITMS(300)
END_IF
GOSUB(zagruzka)

//LOGWRITE("На старт")
GOTO(start)
HALT


//==============================================================================
SUB(nashli_75) //======== nashli_75  ===========================================
   
   $pos=0
   $min=0
   IF($img2 < $img1)
      $pos=2
      $min=$img2
   ELSE
      $pos=1
      $min=$img1
   END_IF
   
   IF($img3 < $min)
      $pos=3
      $min=$img3
   END_IF
   
   IF($img4 < $min)
      $pos=4
      $min=$img4
   END_IF
   
   LOGWRITE("nashli 75 image:  ",$pos)
   $basik_temp=$min+60
   IF($min<$vX+60)
      $kart2=1
      //LOGWRITE ("kart2  ",$kart2)
   END_IF
   
   MOVE($min,$_return2)
   WAITMS(100)
   LDOWN($min,$_return2)
   WAITMS(100)
   LUP($min,$_return2)
   WAITMS(300)
   $kart2=0
   //LCLICK($_return1,$_return2)
   //WAITMS(300)
   
   $picgdem= "textures\start_many.bmp"
   $picgd_1x=$startmany_1x
   $picgd_1y=$startmany_1y
   $picgd_2x=$startmany_2x
   $picgd_2y=$startmany_2y
   GOSUB(gdem_kartinku)
   
   GETSCREEN
   IF_PICTURE_IN ($vX+350,$vY+19,$vX+380,$vY+35, "textures\stunden_kart.bmp")
      $napr=1
      LOGWRITE("проверку stunden не прошла, время stunden")
      GOTO(end_nashli)
   END_IF
   WAITMS(500)
   IF_PICTURE_IN ($nostavka_1x,$nostavka_1y,$nostavka_2x,$nostavka_2y, "textures\no_stavka.bmp")
      IF_PICTURE_IN ($gebot_1x,$gebot_1y,$gebot_2x,$gebot_2y, "textures\gebot_150.bmp")
         LCLICK($vX+468,$vY+132)
         WAITMS(200)
         LCLICK($vX+468,$vY+132)
         WAITMS(200)
         GOSUB(stavka)
         GOTO(end_nashli)
      END_IF
     
      IF_PICTURE_IN ($gebot_1x,$gebot_1y,$gebot_2x,$gebot_2y, "textures\gebot_200.bmp")
         LCLICK($vX+468,$vY+132)
         WAITMS(200)
         GOSUB(stavka)
         GOTO(end_nashli)
      END_IF
     
      IF_PICTURE_IN ($gebot_1x,$gebot_1y,$gebot_2x,$gebot_2y, "textures\gebot_250.bmp")
         WAITMS(200)
         GOSUB(stavka)
      END_IF
   ELSE
      LOGWRITE("уже есть ставка")
   END_IF
end_nashli:
GOSUB(zagruzka)
END_SUB


//==============================================================================
SUB(stavka) //=========== stavka  ==============================================

WAITMS(200)
GETSCREEN
IF_PICTURE_IN ($gebot_1x,$gebot_1y,$gebot_2x,$gebot_2y, "textures\gebot_250.bmp")
   IF_PICTURE_IN ($stavka_1x,$stavka_1y,$stavka_2x,$stavka_2y, "textures\stavka.bmp")
      LOGWRITE("НАШЁЛ!!! СТАВЛЮ!!!")
      //HINTPOPUP("НАШЁЛ!!! СТАВЛЮ!!!") //заглушка для отладки
      //HALT                          //заглушка для отладки
      LCLICK($_return1,$_return2)
      WAITMS(1500) // задержка на проверку успел-нет
      GOSUB(oblom)
   END_IF
   WAITMS(300)
   GOSUB(zagruzka)
END_IF
END_SUB


//==============================================================================
SUB(oblom) //=========== опоздал, хе-хе  =======================================

GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax, "textures\ok.bmp")
   LCLICK($_return1,$_return2)
   LOGWRITE("Опоздали. Hi-hi.")
ELSE
   INC($sdelano)
   LOGWRITE("Подтвердил ставку")
   LOGWRITE("Куплено карточек всего: ", $sdelano)
   WAITMS(200)
END_IF

END_SUB


//==============================================================================
SUB(zagruzka) //=========== zagruzka  ==========================================

MOVE($park_x, $park_y)  //паркуемся
WAITMS(150)

$gknb_sch=0
$pic = 1
WHILE($pic = 1)
   INC ($gknb_sch)
   IF($gknb_sch = 30)
      LOGWRITE("Не дождался загрузки")
   END_IF
   
   GETSCREEN
   IF ((PXL($vX+182,$vY+11)=15658217) & (PXL($vX+170,$vY+20)=15657960))
      $pic = 0
   END_IF
   WAITMS(150)
END_CYC
END_SUB


//==============================================================================
SUB(gdem_kartinku) //======== gdem_kartinku  ===================================

MOVE($park_x, $park_y)  //паркуемся
WAITMS(300)

$gknb_sch=0
$pic = 1
WHILE($pic = 1)
   INC ($gknb_sch)
   IF($gknb_sch = 30)
      LOGWRITE("Не дождался картинки")
   END_IF
   
   GETSCREEN
   IF_PICTURE_IN ($picgd_1x,$picgd_1y, $picgd_2x, $picgd_2y, $picgdem)
      $pic = 0
   END_IF
   WAITMS(100)
END_CYC
END_SUB


//==============================================================================
[/spoiler]

3896
могу пояснить про точку.
но сначала небольшое отступление: в россии всегда все через жопу. запомните это.
...
проблема известна. можно ее исправить через настройки региональных стандартов, можно ждать пока я выпущу очередной патч
Ага... Спасибо за разъяснение. Хоть с этим теперь понятно.

3897
Так это будет выглядеть ?
Нет. Ну почти.
А что вот это у тебя?
...
lclick($_540, $_600)
...
GOTO(1)

3898
Начну с конца. С каких это пор несколько точек выхода из подпрограммы маразм?
Был не баг, а ограничение, которое Джони объяснил своим уровнем знаний на момент написания.
Вчера по вложенным IF_PICTURE_IN  написал тестовый скрипт. Мусолил его в разных вариантах, дальше 2-го уровня не проходил. Теперь внимание! Сегодня этот же скрипт находит все :o
Блин, да что же это такое. Что за фантомная ошибка в кликере.
Позавчера при переделке старого скрипта выяснилось, что не выполняется сложение. Начал копать, проставил везде логи, оказалось что переменная имеет значение "5"+0,17968 именно в таком виде. Копал дальше. Выяснилось: при делении число получается с запятой, а не точкой. Очистил скрипт, написал простое деление - тоже запятая. Уже собрался на форум писать. Перезагрузил кликер, результат с точкой.
Я полностью в непонятках. Т.е. ошибка может зародится спонтанная в совершенно произвольной команде.
Уже было 3 случая. Третий перестало искать заголовок окна WNDFIND в версии SE... наглухо. Выличилось только перезагрузкой компа (даже не кликера).
Всё больше писать не буду о ошибках.

3899
Воодушевившись сообщением, что ограничение на 2 вложенных цикла сняты, начал во всю использовать многоэтажные конструкции....
И долго ломал голову, почему часть картинок не видит :o >:( :'(.
Вот примерно такая конструкция обламалась:

Code: (clickermann) [Select]
GETSCREEN 
   IF_PICTURE_IN($basik_temp,0,$_xmax, $_ymax, "textures\Lit_1.bmp")
      LOGWRITE("nashli   1")
      HINTPOPUP("nashli    1")
      GOSUB(dvigat)
   ELSE
      IF_PICTURE_IN($basik_temp,0,$_xmax, $_ymax, "textures\Lit_2.bmp")
         LOGWRITE("nashli   2")
         HINTPOPUP("nashli    2")
         GOSUB(dvigat)
      ELSE
         IF_PICTURE_IN($basik_temp,0,$_xmax, $_ymax, "textures\Lit_3.bmp")
            LOGWRITE("nashli   3")
            HINTPOPUP("nashli    3")
            GOSUB(dvigat)
         ELSE
            IF_PICTURE_IN($basik_temp,0,$_xmax, $_ymax, "textures\Lit_4.bmp")
               LOGWRITE("nashli   4")
               HINTPOPUP("nashli    4")
               GOSUB(dvigat)
            ELSE
               $basik_temp=$_xmax
               LOGWRITE("нет ")
               HINTPOPUP("нет )
               WAITMS(300)
            END_IF
         END_IF
      END_IF
   END_IF

Оказалось IF_PICTURE_IN по прежнему ограничен двумя уровнями. Это просто упущение или с IF_PICTURE_IN особые сложности?

Кстати только заметил появление параметра [currency], отдельное спасибо. :)

Всегда хотел спросить о выходе из цикла по GOTO. Но не стал т.к. опыты показали что не влияет. Может и не прав. В новой справке стоит запрет....
???
Ещё вопрос: допускается несколько выходов из подпрограммы по END_SUB ? Интерпритатор не запутается?




3900
Предложения / Re: Анализ текста в окне
« on: December 11, 2012, 09:08:40 PM »
я знаю,что прошу:)) среднее арифметическое нужно,чтобы определять координаты кнопки(они довольно часто разные) а кнопка именно в форме ссылки ,а не картинки. была бы картинка - я бы тему не создавал
скажи что тебе мешает посчитать среднее арифметическое? Сложение и деление пока работают.
Ты бы показал свои кнопки, что гадать.
Если ссылка, то должна находиться по CTRL+F (+F3).
Если не находится, то алис... для кликера это картинка. Может и можно как то, он все молчат.

Pages: 1 ... 258 259 [260] 261 262 263