Рыцарская Сага

Главная Регистрация Вход
Среда, 27.11.2024, 09:40

Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Трофейная рыбалка 2
RemmДата: Вторник, 18.08.2020, 12:15 | Сообщение # 1
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Трофейная рыбалка 2 бот

Решил вспомнить молодость... Написал скрипт ловли для кликера Clickermann

Работает для 1-3 слотов удочек. Поплавочная или донная в любых комбинациях. Два вида заброса, на автомате (F8), если нет привязки, то задается дальность переменной $max. Есть автовываживание. 3 режима ловли на поплавок: топит; ложит; нет подсечки (для ручной подсечки). Есть режим ловли на течении. Можно задать быстрый опрос удочек, для сложной ловли.



Код
////////////////////////////////////////////////////////////
//////////////// Трофейная рыбалка 2 ///////////////////////
////////////////////////////////////////////////////////////

$Xe = 1440 // координата X ширина экрана
$Xe2 = 720 // координата X половина ширины экрана
$Ye = 900 // координата Y высота экрана
$Ye2 = 450 // координата Y половина высоты экрана

$Slot = 3 // число удочек
$ch = 30 // опрос удочек
$zabrosA = 2 // заброс  (1 ручной заброс. 2 атозаброс)
$TF = 0 // 1(500) 3(300) 5(200) 7(100)  10(0)
$donka1 = 0 // 1 для донки 1 СЛОТ
$donka2 = 0 // 1 для донки 2 СЛОТ
$donka3 = 0 // 1 для донки 3 СЛОТ
$max = 435 // max 435  дальность заброса
$topit = 0 // 0 всё 1 топит 2 ложит 3 нет подсечки
$TS = 0 // 1 стоп для течения

////////////////////////  выбор удочки  ////////////////////////////////////////
SUB(uda)
   GETSCREEN
   COLORMODE(6, 40,$Ye-92,230,$Ye-84)
   $wTF = PXLCOUNT(40,$Ye-92,230,$Ye-84, 4194303)
   IF($wTF > 3)
      $TF = 1
   END_IF
   
   $wTF = PXLCOUNT(100,$Ye-92,140,$Ye-84, 4194303)
   IF($wTF > 3)
      $TF = 2
   END_IF
   
   $wTF = PXLCOUNT(190,$Ye-92,230,$Ye-84, 4194303)
   IF($wTF > 3)
      $TF = 3
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////  ЗАПРЕТ  //////////////////////////////////////////
SUB(zapret, $x,$y,$x2,$y2)
   COLORMODE(6, $x,$y,$x2,$y2)
   $red = PXLCOUNT($x,$y,$x2,$y2, 8355839)
   IF($red > 100)
      RCLICK($Xe2,$Ye2)
      WAIT(5)
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////  клик при подсечке  ///////////////////////////////////
SUB(klik)
   MOVE($Xe2,175)
   WAITMS(50)
   LCLICK($Xe2,175)
   WAITMS(500)
END_SUB
//------------------------------------------------------------------------------

///////////////////////////// ЗАБРОС  //////////////////////////////////////////
SUB(zabros)
   KEYUP(#SPACE)
   WAITMS(10)
   //-------------------------------- окно выбора удочки
   GETSCREEN
   COLORMODE(6, $Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75)
   $Vuda = PXLCOUNT($Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75, 8372031)
   IF($Vuda > 5)
      MOVE($Xe2-300,$Ye2+220)
      WAITMS(50)
      LCLICK($Xe2-300,$Ye2+220)
      WAITMS(200)
      SOUND ("data/sound/stop")
   END_IF
   //-------------------------------- заброс авто
   IF($zabrosA = 2)
      MOVE($Xe2,$max) // max 435  дальность заброса
      WAITMS(500)
      LCLICK($Xe2,$max)
   END_IF
   IF($zabrosA = 1)
      MOVE($Xe2,100)
      WAITMS(500+$TF) // задержка на махе
      LDOWN($Xe2,100)
      WAITMS(100)
      MOVER(0,700) // отпускание
      WAITMS(200)
      LUP($Xe2,700)
      WAITMS(10)
      MOVE($Xe2,900)
   END_IF
   WAITMS(500)
END_SUB
//-----------------------------------------------------------------------------

////////////////////////////////////////////////////////////////////////////////
SUB(start, $x1,$x2)
   GETSCREEN
   COLORMODE(6, $x1,$Ye-16, $x2,$Ye-8)
   $obTF1 = PXLCOUNT($x1,$Ye-16, $x2,$Ye-8, 4194111)
   IF($obTF1 > 5)
      $time1 = 0
      $LTF1 = 0
      $DOZ1 = 0
      MOVE($Xe2,330)
      WAITMS(100)
      zabros()// заброс при обрыве
   END_IF
END_SUB
//------------------------------------------------------------------------------

//////////////////////////// Подсечка  /////////////////////////////////////////
SUB(podsek1, $x,$y,$x2,$y2)
   COLORMODE(6, $x,$y,$x2,$y2)
   $red = PXLCOUNT($x,$y,$x2,$y2, 4145151)
   $bel = PXLCOUNT($x,$y,$x2,$y2, 16777215)
   IF(($red > 2)&($LTF1 = 0))
      $LTF1 = 1
   END_IF
   IF(($LTF1 = 1)&($red < 1)&($bel < 1))
      GETSCREEN
      COLORMODE(6, 36,$Ye-16, 56,$Ye-8)
      $obTF1 = PXLCOUNT(36,$Ye-16, 56,$Ye-8, 4194111)
      IF($obTF1 < 5)
         SWITCH($topit)
         CASE(0) // всё
            KEYPRESS(#1)
            WAITMS(50)
            $LTF1 = 0
            $DOZ1 = 1
         CASE(1)// топит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 65535)  // желтый
            $col2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 < 1)&($col1 < 1)&($col2 < 1))
               KEYPRESS(#1)
               WAITMS(50)
               $LTF1 = 0
               $DOZ1 = 1
            END_IF
         CASE(2)// ложит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 > 2)|($col1 > 2))
               KEYPRESS(#1)
               WAITMS(50)
               $LTF1 = 0
               $DOZ1 = 1
            END_IF
         END_SWITCH
         $time1 = 0
         SOUND ("data/sound/record")
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

//////////////////////////// Подсечка 2 ////////////////////////////////////////
SUB(podsek2, $x,$y,$x2,$y2)
   COLORMODE(6, $x,$y,$x2,$y2)
   $red = PXLCOUNT($x,$y,$x2,$y2, 4145151)
   $bel = PXLCOUNT($x,$y,$x2,$y2, 16777215)
   IF(($red > 2)&($LTF2 = 0))
      $LTF2 = 1
      IF(($T2 = 0)&($T = 1))
         LCLICK($Xe2,$Ye2-200)
         $T2 = 1
         WAITMS(50)
      END_IF
   END_IF
   IF(($LTF2 = 1)&($red < 1)&($bel < 1))
      GETSCREEN
      COLORMODE(6, 125,$Ye-16, 145,$Ye-8)
      $obTF2 = PXLCOUNT(125,$Ye-16, 145,$Ye-8, 4194111)
      IF($obTF2 < 5)
         SWITCH($topit)
         CASE(0) // всё
            KEYPRESS(#2)
            WAITMS(50)
            $LTF2 = 0
            $DOZ2 = 1
         CASE(1)// топит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 65535)  // желтый
            $col2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 < 1)&($col1 < 1)&($col2 < 1))
               KEYPRESS(#2)
               WAITMS(50)
               $LTF2 = 0
               $DOZ2 = 1
            END_IF
         CASE(2)// ложит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 > 2)|($col1 > 2))
               KEYPRESS(#2)
               WAITMS(50)
               $LTF2 = 0
               $DOZ2 = 1
            END_IF
         END_SWITCH
         $time2 = 0
         SOUND ("data/sound/record")
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

//////////////////////////// Подсечка 3 ////////////////////////////////////////
SUB(podsek3, $x,$y,$x2,$y2)
   COLORMODE(6, $x,$y,$x2,$y2)
   $red = PXLCOUNT($x,$y,$x2,$y2, 4145151)
   $bel = PXLCOUNT($x,$y,$x2,$y2, 16777215)
   IF(($red > 2)&($LTF3 = 0))
      $LTF3 = 1
      IF(($T3 = 0)&($T = 1))
         LCLICK($Xe2,$Ye2-200)
         $T3 = 1
         WAITMS(50)
      END_IF
   END_IF
   IF(($LTF3 = 1)&($red < 1)&($bel < 1))
      GETSCREEN
      COLORMODE(6, 215,$Ye-16, 235,$Ye-8)
      $obTF3 = PXLCOUNT(215,$Ye-16, 235,$Ye-8, 4194111)
      IF($obTF3 < 5)
         SWITCH($topit)
         CASE(0) // всё
            KEYPRESS(#3)
            WAITMS(50)
            $LTF3 = 0
            $DOZ3 = 1
         CASE(1)// топит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 65535)  // желтый
            $col2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 < 1)&($col1 < 1)&($col2 < 1))
               KEYPRESS(#3)
               WAITMS(50)
               $LTF3 = 0
               $DOZ3 = 1
            END_IF
         CASE(2)// ложит
            WAITMS(500)
            GETSCREEN
            $red2 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 255) // красный
            $col1 = PXLCOUNT($x-30,$y,$x2+30,$y2+30, 0)  // чёрный
            IF(($red2 > 2)|($col1 > 2))
               KEYPRESS(#3)
               WAITMS(50)
               $LTF3 = 0
               $DOZ3 = 1
            END_IF
         END_SWITCH
         $time3 = 0
         SOUND ("data/sound/record")
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////  Подсечка донка  //////////////////////////////////
SUB(podsekD, $x,$y,$x2,$y2,$Batton)
   COLORMODE(6, $x,$y,$x2,$y2)
   $zel = PXLCOUNT($x,$y,$x2,$y2, 4194111)
   IF($zel > 5)
      uda()
      SWITCH($Batton)
      CASE(1)
         IF($TF ! 1)
            KEYPRESS(#1)
         END_IF
      CASE(2)
         IF($TF ! 2)
            KEYPRESS(#2)
         END_IF
      CASE(3)
         IF($TF ! 3)
            KEYPRESS(#3)
         END_IF
      END_SWITCH
      klik()
      SOUND ("data/sound/record")
      $VVV = 1
   END_IF
END_SUB
//------------------------------------------------------------------------------

///////////////////////////////  засеклась /////////////////////////////////////
SUB(zaz)
   IF(($time1 > $ch)&($Slot > 1))
      KEYPRESS(#1)
      $time1 = 0
      IF(($T1 = 0)&($TS = 1)) // для течения
         WAITMS(500)
         LCLICK($Xe2,$Ye2-100)
         $T1 = 1
         WAITMS(50)
      END_IF
      zapret(23,$Ye-60,63,$Ye-25)
      start(36,56)
   END_IF
   IF(($time2 > ($ch+1))&($Slot > 1))
      KEYPRESS(#2)
      $time2 = 0
      IF(($T2 = 0)&($TS = 1)) // для течения
         WAITMS(500)
         LCLICK($Xe2,$Ye2-100)
         $T2 = 1
         WAITMS(50)
      END_IF
      zapret(120,$Ye-60,160,$Ye-25)
      start(125,145)
   END_IF
   IF(($time3 > ($ch+2))&($Slot > 2))
      KEYPRESS(#3)
      $time3 = 0
      IF(($T3 = 0)&($TS = 1)) // для течения
         WAITMS(500)
         LCLICK($Xe2,$Ye2-100)
         $T3 = 1
         WAITMS(50)
      END_IF
      zapret(200,$Ye-60,240,$Ye-25)
      start(215,235)
   END_IF
   WAITMS(100)
END_SUB
//------------------------------------------------------------------------------

////////////////////////////////////////////////////////////////////////////////
////////////////////////// ПРОДАЖА /////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
COLORMODE(6, $Xe2-30,$Ye-45, $Xe2+155, $Ye-35)
$col1 = PXLCOUNT($Xe2-30,$Ye-45, $Xe2-25, $Ye-35, 4144959)
$col2 = PXLCOUNT($Xe2+145,$Ye-45, $Xe2+155, $Ye-35, 4194303)
IF(($col1 > 5) & ($col2 > 5))
   $zapret = 0
   KEYUP(#SPACE)
   WAITMS(50)
   LUP($Xe2,875)
   WAITMS(100)// продажа
   MOVE($Xe2-75,$Ye-40) // золото (энергия + 140)
   WAITMS(500)
   LCLICK($Xe2-75,$Ye-40)
   WAITMS(100)
   MOVE($Xe2,330)
   WAITMS(100)
   //-------------------------------- // проверка области
   FOR($Esc=0, $Esc < 50)
      GETSCREEN
      $ob1 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob2 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob1 > 5) & ($ob2 > 20)) // окно лова
         $Esc = 100
         zabros()// заброс
      END_IF
      WAITMS(100)
   END_CYC
END_IF
//----------------------- ПРОДАЖА конец ----------------------------------------

////////////////////////////////////////////////////////////////////////////////
/////////////////////       окно лова      /////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
$ob1 = PXLCOUNT(40,10, 50, 20, 53248)
$ob2 = PXLCOUNT(30,10, 40, 20, 16777215)
IF(($ob1 > 5)&($ob2 > 20)) // окно лова
   IF($topit ! 3)
      IF($donka1 = 0)
         podsek1(43,$Ye-64,52,$Ye-50)// подсечка
      ELSE
         podsekD(53,$Ye-58,63,$Ye-50,1)// подсечка
      END_IF
      IF(($Slot > 1)&($DOZ1 = 0))
         WAITMS(100)
         IF($donka2 = 0)
            podsek2(130,$Ye-64,140,$Ye-50)// подсечка 2 удочка
         ELSE
            podsekD(140,$Ye-58,150,$Ye-50,2)// подсечка
         END_IF
      END_IF
      IF(($Slot = 3)&($DOZ1 = 0)&($DOZ2 = 0))
         WAITMS(100)
         IF($donka3 = 0)
            podsek3(220,$Ye-64,230,$Ye-50)// подсечка 3 удочка
         ELSE
            podsekD(230,$Ye-58,240,$Ye-50,3)// подсечка
         END_IF
      END_IF
   END_IF
   
   //--------------------------------  засеклась
   IF($topit ! 3)
      zaz()
      $time1 = $time1+1
      $time2 = $time2+1
      $time3 = $time3+1
   END_IF
   //--------------------------------
   //-------------------------------- РУЧНИК 1 УДОЧКА
   IF(ISKEYDOWN(#Q) = 1)
      KEYPRESS(#1)
      WAITMS(50)
      MOVE($Xe2,175)
      WAITMS(50)
      RCLICK($Xe2,175)
      SOUND ("data/sound/stop")
      WAIT(5)
   END_IF
   //-------------------------------- РУЧНИК 2 УДОЧКА
   IF(ISKEYDOWN(#W) = 1)
      KEYPRESS(#2)
      WAITMS(50)
      MOVE($Xe2,175)
      WAITMS(50)
      RCLICK($Xe2,175)
      SOUND ("data/sound/stop")
      WAIT(5)
   END_IF
   //-------------------------------- РУЧНИК 3 УДОЧКА
   IF(ISKEYDOWN(#E) = 1)
      KEYPRESS(#3)
      WAITMS(50)
      MOVE($Xe2,175)
      WAITMS(50)
      RCLICK($Xe2,175)
      SOUND ("data/sound/stop")
      WAIT(5)
   END_IF
   //--------------------------------  возврат уды при забросе
   IF($DOZ1 = 1)
      $DOZ1 = 0
      $DOZ2 = 0
      $DOZ3 = 0
      KEYPRESS(#1)
      WAITMS(100)
   END_IF
   IF($DOZ2 = 1)
      $DOZ2 = 0
      $DOZ3 = 0
      KEYPRESS(#2)
      WAITMS(100)
   END_IF
   IF($DOZ3 = 1)
      $DOZ3 = 0
      KEYPRESS(#3)
      WAITMS(100)
   END_IF
END_IF
//-------------------------  окно лова конец  ----------------------------------

////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// ВЫВАЖИВАНИЕ //////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
$ob11 = PXLCOUNT(40,10, 50, 20, 53248)
$ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
   $zapret = 0
   WAITMS(10)
   //--------------------------------  торможение
   IF(ISKEYDOWN(#Tab) = 1)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
   END_IF
   //--------------------------------  для течения
   IF($TS = 1)
      uda()
      SWITCH($TF)
      CASE(1)
         $T1 = 0
      CASE(2)
         $T2 = 0
      CASE(3)
         $T3 = 0
      END_SWITCH
   END_IF
   //--------------------------------
   GETSCREEN
   COLORMODE(6, $Xe-45,$Ye2-120,$Xe-20,$Ye2+125)
   //$ob1 = PXLCOUNT($Xe-45,$Ye2+50, $Xe-30,$Ye2+100, 16777215)
   $ob2 = PXLCOUNT($Xe-45,$Ye2+100, $Xe-30,$Ye2+125, 16777215)
   $ob3 = PXLCOUNT($Xe-35,$Ye2, $Xe-30,$Ye2+30, 4194303) // желтая зона
   $ob4 = PXLCOUNT($Xe-35,$Ye2-70, $Xe-30,$Ye2-60, 4161535) // оранжевая зона
   $ob5 = PXLCOUNT($Xe-35,$Ye2-100, $Xe-30,$Ye2-90, 4145151) // красная зона
   $ob6 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4194303) // желтая зона превышения
   $ob7 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4145151) // красная зона превышения
   IF($ob3 > 2)
      KEYDOWN(#SPACE)
      WAITMS(10)
   END_IF
   IF(($ob7 > 2)|($ob6 > 2)) //превышение нагрузки
      MOVE($Xe2,875)
      WAITMS(10)
      LUP($Xe2,875)
      WAITMS(500)
      KEYUP(#SPACE)
      WAITMS(50)
   END_IF
   IF($ob4 < 2)|($ob5 < 2))
      IF($ob2 < 2)
         $Yv = 175
      ELSE
         $Yv = $Yv-25
      END_IF
      MOVE($Xe2,$Yv)
      WAITMS(100)
      LDOWN($Xe2,$Yv)
   END_IF
END_IF
//-------------------------------- ВЫВАЖИВАНИЕ КОНЕЦ --------------------------
WAITMS(50) // опрос скрипта





Модмейкер
Рыцарская Сага
 
RemmДата: Вторник, 18.08.2020, 12:19 | Сообщение # 2
Капитан
Группа: Администраторы
Сообщений: 269
Репутация: 10
Статус: Offline
Чисто для спининга

Код
/////////////////////////////////////////////////////////////////////
//////////////// Трофейная рыбалка 2 Спининг  ///////////////////////
/////////////////////////////////////////////////////////////////////

$zabrosA = 2 // 1 2 автозаброс
$TF = 0 //
$Xe = 1440 // координата X ширина экрана
$Xe2 = 720 // координата X половина ширины экрана
$Ye = 900 // координата Y высота экрана
$Ye2 = 450 // координата Y половина высоты экрана
$sek = 2500 + $Glubina // время опускания блесны 0 ручной режим
$avto = 1 // автопроводка
$DLINA = 93 // длина блеснения

///////////////////////// ЗАБРОС ///////////////////////////////////////////////
SUB(zabros)
   //-------------------------------- заброс ручной
   IF($zabrosA = 1)
      MOVE($Xe2,100)
      WAITMS(500+$TF) // задержка на махе
      LDOWN($Xe2,100)
      WAITMS(100)
      MOVER(0,$Ye-200) // отпускание
      WAITMS(100)
      LUP($Xe2,$Ye-200)
      MOVE($Xe2,$Ye)
      $provodka = 0
      IF($sek ! 0)
         WAITMS($sek)
         $provodka = 1
      END_IF
   END_IF
   
   //-------------------------------- заброс авто
   IF($zabrosA = 2)
      MOVE($Xe2,$Ye2)
      WAITMS(100)
      LCLICK($Xe2,$Ye2)
      $provodka = 0
      IF($sek ! 0)
         WAITMS($sek)
         $provodka = 1
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////// ПОДСЕЧКА ////////////////////////////////////////
SUB(podsek)
   IF((ISKEYDOWN(#V) = 1)
      MOVE($Xe2+100,$Ye2)
      WAITMS(50)
      LUP($Xe2+100,$Ye2)
      WAITMS(50)
      LDOWN($Xe2+100,$Ye2)
      WAITMS(100)
      MOVE(0,$Ye2)
      WAITMS(50)
      LUP(0,$Ye2)
      WAITMS(500)
      GETSCREEN
      $ob11 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
         SOUND ("data/sound/record")
         $provodka = 0
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////////////////////////////////////////////////////////
//////////////////////////// ПРОДАЖА ///////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
COLORMODE(6, $Xe2-30,$Ye-45, $Xe2+155, $Ye-35)
$col1 = PXLCOUNT($Xe2-30,$Ye-45, $Xe2-25, $Ye-35, 4144959)
$col2 = PXLCOUNT($Xe2+145,$Ye-45, $Xe2+155, $Ye-35, 4194303)
IF(($col1 > 5) & ($col2 > 5))
   $provodka = 0
   $SPACE = 0
   LUP($Xe2,$Ye-25)
   WAITMS(10)
   KEYUP(#SPACE)
   WAIT(1) // продажа
   MOVE($Xe2-75,$Ye-40)
   WAITMS(50)
   LCLICK($Xe2-75,$Ye-40)
   WAITMS(100)
   MOVE($Xe2,330)
   
   //-------------------------------- // проверка области
   FOR($Esc=0, $Esc < 10)
      GETSCREEN
      $ob1 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob2 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob1 > 5) & ($ob2 > 20)) // окно лова
         $Esc = 100
      END_IF
      WAITMS(500)
   END_CYC
   WAIT(2)
   zabros()
END_IF
//////////////////////// продажа конец /////////////////////////////////////////

//-------------------------------- окно выбора удочки
GETSCREEN
COLORMODE(6, $Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75)
$Vuda = PXLCOUNT($Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75, 8372031)
IF(($Vuda > 5) & ($stop = 0))
   $provodka = 0
   MOVE($Xe2-300,$Ye2+220)
   WAITMS(50)
   LCLICK($Xe2-300,$Ye2+220)
   WAITMS(50)
   MOVE($Xe2,330)
   WAIT(1)
   SOUND ("data/sound/stop")
END_IF
//--------------------------------

////////////////////////////////////////////////////////////////////////////////
/////////////////////////  БЛЕСНЕНИЕ ///////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
IF($stop = 0)
   //--------------------------------  проверка области при проводке
   IF($provodka > 0)
      GETSCREEN
      $ob11 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
         $provodka = 0
         SOUND ("data/sound/stop")
      END_IF
   END_IF
   
   //--------------------------------  заброс удочки
   IF($avto = 1)
      COLORMODE(6, 36,$Ye-16, 56,$Ye-8)
      $Vuda = PXLCOUNT(36,$Ye-16, 56,$Ye-8, 4194111)
      IF($Vuda > 5)
         $provodka = 0
         LUP($Xe2,$Ye-25)
         WAITMS(10)
         KEYUP(#SPACE)
         MOVE($Xe2,330)
         WAIT(2)
         zabros()  // заброс
      END_IF
   END_IF
   
   //--------------------------------  БЛЕСНЕНИЕ
   IF($provodka > 0)
      MOVE($Xe2,$Ye2-50)
      LDOWN($Xe2,$Ye2-50)
      FOR($a=0, $a < 4)
         IF(ISKEYDOWN(#V) = 1)
            $a=100
            podsek()
         ELSE
            $var = 400+$speed
            WAITMS($var)
            COLORMODE(6, 36,$Ye-16, 56,$Ye-8)
            $Vuda = PXLCOUNT(36,$Ye-16, 56,$Ye-8, 4194111)
            IF(($avto = 1) & ($Vuda < 5))
               KEYPRESS(#1)
               $provodka = $provodka + 1
            END_IF
         END_IF
      END_CYC
      LUP($Xe2,$Ye2-50)
   END_IF
END_IF
//---------------------------- БЛЕСНЕНИЕ  конец  -------------------------------

////////////////////////////////////////////////////////////////////////////////
//////////////////// клавиши управления ////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

//--------------------------------  СТОП проводка ВЫВАЖИВАНИЕ
IF(ISKEYDOWN(#C) = 1)//
   $provodka = 0
   $stop = 1
   LUP($Xe2,300)
   WAITMS(10)
   KEYUP(#SPACE)
   SOUND ("data/sound/stop")
   WAITMS(50)
   MOVE($Xe2,300)
   WAIT(1)
END_IF

//-------------------------------- заброс ручной
IF(ISKEYDOWN(#Z) = 1)
   $provodka = 0
   $stop = 0
   KEYUP(#SPACE)
   IF($zabrosA = 2)
      MOVE($Xe2,$Ye2)
      WAITMS(100)
      LCLICK($Xe2,$Ye2)
   else
      MOVE($Xe2,100)
      WAITMS(500+$TF) // задержка на махе
      LDOWN($Xe2,100)
      WAITMS(100)
      MOVER(0,$Ye-200) // отпускание
      WAITMS(100)
      LUP($Xe2,$Ye-200)
      MOVE($Xe2,$Ye)
   END_IF
   IF($sek ! 0)
      WAITMS($sek)
      $provodka = 1
   END_IF
END_IF

//-------------------------------- скорость проводки
IF((ISKEYDOWN(#B) = 1) & ($N < 8)) // больше
   $speed = $speed + 50
   $N = $N+1
   SOUND ("data/sound/load")
   WAIT(1)
END_IF
IF((ISKEYDOWN(#M) = 1) & ($N > - 8))// меньше
   $speed = $speed - 50
   $N = $N-1
   SOUND ("data/sound/load")
   WAIT(1)
END_IF
//-------------------------------- инвентарь
IF(ISKEYDOWN(#I) = 1)
   MOVE($Xe-30,$Ye2+25)
   WAITMS(100)
   LCLICK($Xe-30,$Ye2+25)
   WAITMS(30)
   MOVE($Xe2,$Ye2)
   WAIT(2)
END_IF
//--------------------------------

//--------------------------------  СМОТАТЬ
IF(ISKEYDOWN(#N) = 1)
   $provodka = 0
   $stop = 1
   MOVE($Xe2,350)
   WAITMS(100)
   LCLICK($Xe2,350)
   WAITMS(100)
   RCLICK($Xe2,350)
   WAITMS(100)
   SOUND ("data/sound/stop")
   WAIT(1)
END_IF

//--------------------------------  ГЛУБИНА
IF(ISKEYDOWN(#G) = 1)
   IF($Glubina > 3000)
      $Glubina = 0
   ELSE
      $Glubina = $Glubina + 2000
   END_IF
   SOUND ("data/sound/load")
   WAIT(1)
END_IF

//-------------------------------- проводка
IF((ISKEYDOWN(#X) = 1)
   $provodka = 1
   $stop = 0
END_IF
//--------------------- клавиши управления конец -------------------------------

//--------------------------------  СМОТАТЬ обнулить подсечки (длина блеснения)
IF($provodka > $DLINA)
   $provodka = 0
   MOVE($Xe2,300)
   WAITMS(100)
   RCLICK($Xe2,300)
   WAITMS(100)
   SOUND ("data/sound/stop")
   WAIT(1)
END_IF

////////////////////////////////////////////////////////////////////////////////
////////////////////////////// ВЫВАЖИВАНИЕ /////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
$ob11 = PXLCOUNT(40,10, 50, 20, 53248)
$ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
   $zapret = 0
   $provodka = 0
   WAITMS(10)
   //--------------------------------  торможение
   IF(ISKEYDOWN(#Tab) = 1)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
   END_IF
   GETSCREEN
   COLORMODE(6, $Xe-45,$Ye2-120,$Xe-20,$Ye2+125)
   //$ob1 = PXLCOUNT($Xe-45,$Ye2+50, $Xe-30,$Ye2+100, 16777215)
   $ob2 = PXLCOUNT($Xe-45,$Ye2+100, $Xe-30,$Ye2+125, 16777215)
   $ob3 = PXLCOUNT($Xe-35,$Ye2, $Xe-30,$Ye2+30, 4194303) // желтая зона
   $ob4 = PXLCOUNT($Xe-35,$Ye2-70, $Xe-30,$Ye2-60, 4161535) // оранжевая зона
   $ob5 = PXLCOUNT($Xe-35,$Ye2-100, $Xe-30,$Ye2-90, 4145151) // красная зона
   $ob6 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4194303) // желтая зона превышения
   $ob7 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4145151) // красная зона превышения
   $ob8 = PXLCOUNT($Xe-35,$Ye2-70, $Xe-30,$Ye2-20, 4194303) // желтая зона
   IF($ob3 > 2)
      KEYDOWN(#SPACE)
      WAITMS(10)
   END_IF
   IF(($ob8 > 2) & ($SPACE = 1)) // РЫВОК
      $PL = $PL + 1
      IF($PL > 10)
         LUP($Xe2,175)
         WAITMS(50)
         MOVE($Xe2,800)
         WAIT(1)
         LDOWN($Xe2,175)
         $PL = 0
      END_IF
   END_IF
   IF(($ob7 > 2)|($ob6 > 2)) //превышение нагрузки
      MOVE($Xe2,875)
      WAITMS(10)
      LUP($Xe2,875)
      WAITMS(500)
      KEYUP(#SPACE)
      WAITMS(50)
      $SPACE = 1
   END_IF
   IF(($ob4 < 2)|($ob5 < 2))
      IF($ob2 < 2)
         $Yv = 175
      ELSE
         $Yv = $Yv-25
         $PL = 0
      END_IF
      IF($SPACE = 1)
         KEYDOWN(#SPACE)
      END_IF
      WAITMS(10)
      MOVE($Xe2,$Yv)
      WAITMS(100)
      LDOWN($Xe2,$Yv)
   END_IF
END_IF
//-------------------------------- ВЫВАЖИВАНИЕ КОНЕЦ --------------------------

// опрос скрипта
WAITMS(100)

Если кнопки не прожимаются

Код
/////////////////////////////////////////////////////////////////////
//////////////// Трофейная рыбалка 2 Спининг N  ///////////////////////
/////////////////////////////////////////////////////////////////////

$zabrosA = 2 // 1 2 автозаброс
$TF = 0 //
$Xe = 1440 // координата X ширина экрана
$Xe2 = 720 // координата X половина ширины экрана
$Ye = 900 // координата Y высота экрана
$Ye2 = 450 // координата Y половина высоты экрана
$sek = 2500 + $Glubina // время опускания блесны 0 ручной режим
$avto = 1 // автопроводка
$DLINA = 27 // длина блеснения

///////////////////////// ЗАБРОС ///////////////////////////////////////////////
SUB(zabros)
   //-------------------------------- заброс ручной
   IF($zabrosA = 1)
      MOVE($Xe2,100)
      WAITMS(500+$TF) // задержка на махе
      LDOWN($Xe2,100)
      WAITMS(100)
      MOVER(0,$Ye-200) // отпускание
      WAITMS(100)
      LUP($Xe2,$Ye-200)
      MOVE($Xe2,$Ye)
      $provodka = 0
      IF($sek ! 0)
         WAITMS($sek)
         $provodka = 1
      END_IF
   END_IF
   
   //-------------------------------- заброс авто
   IF($zabrosA = 2)
      MOVE($Xe2,$Ye2)
      WAITMS(100)
      LCLICK($Xe2,$Ye2)
      $provodka = 0
      IF($sek ! 0)
         WAITMS($sek)
         $provodka = 1
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////// ПОДСЕЧКА ////////////////////////////////////////
SUB(podsek)
   IF((ISKEYDOWN(#V) = 1)
      MOVE($Xe2+100,$Ye2)
      WAITMS(50)
      LUP($Xe2+100,$Ye2)
      WAITMS(50)
      LDOWN($Xe2+100,$Ye2)
      WAITMS(100)
      MOVE(0,$Ye2)
      WAITMS(50)
      LUP(0,$Ye2)
      WAITMS(500)
      GETSCREEN
      $ob11 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
         SOUND ("data/sound/record")
         $provodka = 0
      END_IF
   END_IF
END_SUB
//------------------------------------------------------------------------------

////////////////////////////////////////////////////////////////////////////////
//////////////////////////// ПРОДАЖА ///////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
COLORMODE(6, $Xe2-30,$Ye-45, $Xe2+155, $Ye-35)
$col1 = PXLCOUNT($Xe2-30,$Ye-45, $Xe2-25, $Ye-35, 4144959)
$col2 = PXLCOUNT($Xe2+145,$Ye-45, $Xe2+155, $Ye-35, 4194303)
IF(($col1 > 5) & ($col2 > 5))
   $provodka = 0
   $SPACE = 0
   LUP($Xe2,$Ye-25)
   WAITMS(10)
   KEYUP(#SPACE)
   WAIT(1) // продажа
   MOVE($Xe2-75,$Ye-40)
   WAITMS(50)
   LCLICK($Xe2-75,$Ye-40)
   WAITMS(100)
   MOVE($Xe2,330)
   
   //-------------------------------- // проверка области
   FOR($Esc=0, $Esc < 10)
      GETSCREEN
      $ob1 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob2 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob1 > 5) & ($ob2 > 20)) // окно лова
         $Esc = 100
      END_IF
      WAITMS(500)
   END_CYC
   WAIT(2)
   zabros()
END_IF
//////////////////////// продажа конец /////////////////////////////////////////

//-------------------------------- окно выбора удочки
GETSCREEN
COLORMODE(6, $Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75)
$Vuda = PXLCOUNT($Xe2-70,$Ye2+55, $Xe2-50,$Ye2+75, 8372031)
IF(($Vuda > 5) & ($stop = 0))
   $provodka = 0
   MOVE($Xe2-300,$Ye2+220)
   WAITMS(50)
   LCLICK($Xe2-300,$Ye2+220)
   WAITMS(50)
   MOVE($Xe2,330)
   WAIT(1)
   SOUND ("data/sound/stop")
END_IF
//--------------------------------

////////////////////////////////////////////////////////////////////////////////
/////////////////////////  БЛЕСНЕНИЕ ///////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
IF($stop = 0)
   //--------------------------------  проверка области при проводке
   IF($provodka > 0)
      GETSCREEN
      $ob11 = PXLCOUNT(40,10, 50, 20, 53248)
      $ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
      IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
         $provodka = 0
         SOUND ("data/sound/stop")
      END_IF
   END_IF
   
   //--------------------------------  заброс удочки
   IF($avto = 1)                    
      COLORMODE(6, 36,$Ye-16, 56,$Ye-8)
      $Vuda = PXLCOUNT(36,$Ye-16, 56,$Ye-8, 4194111)
      IF($Vuda > 5)
         $provodka = 0
         LUP($Xe2,$Ye-25)
         WAITMS(10)
         KEYUP(#SPACE)
         MOVE($Xe2,330)
         WAIT(2)
         zabros()  // заброс
      END_IF
   END_IF
   
   //--------------------------------  БЛЕСНЕНИЕ
   IF($provodka > 0)
      MOVE($Xe2,$Ye2-50)
      LDOWN($Xe2,$Ye2-50)
      FOR($a=0, $a < 4)
         IF(ISKEYDOWN(#V) = 1)
            $a=100
            podsek()
         ELSE
            $var = 400+$speed
            WAITMS($var)
            //KEYPRESS(#1)
         END_IF
      END_CYC
      GETSCREEN
      COLORMODE(6, 36,$Ye-16, 56,$Ye-8)
      $Vuda = PXLCOUNT(36,$Ye-16, 56,$Ye-8, 4194111)
      IF($Vuda < 5)
         MOVE($Xe2+100,$Ye2)
         WAITMS(5)
         LUP($Xe2+100,$Ye2)
         WAITMS(5)
         LDOWN($Xe2+100,$Ye2)
         WAITMS(5)
         MOVE(0,$Ye2)
         WAITMS(50) // пауза при подсечки
         LUP(0,$Ye2)
         WAITMS(5)
         MOVE($Xe2,$Ye2-50)
         $provodka = $provodka + 1
      END_IF
   END_IF
END_IF
//---------------------------- БЛЕСНЕНИЕ  конец  -------------------------------

////////////////////////////////////////////////////////////////////////////////
//////////////////// клавиши управления ////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

//--------------------------------  СТОП проводка ВЫВАЖИВАНИЕ
IF(ISKEYDOWN(#C) = 1)//
   $provodka = 0
   $stop = 1
   LUP($Xe2,300)
   WAITMS(10)
   KEYUP(#SPACE)
   SOUND ("data/sound/stop")
   WAITMS(50)
   MOVE($Xe2,300)
   WAIT(1)
END_IF

//-------------------------------- заброс ручной
IF(ISKEYDOWN(#Z) = 1)
   $provodka = 0
   $stop = 0
   KEYUP(#SPACE)
   IF($zabrosA = 2)
      MOVE($Xe2,$Ye2)
      WAITMS(100)
      LCLICK($Xe2,$Ye2)
   else
      MOVE($Xe2,100)
      WAITMS(500+$TF) // задержка на махе
      LDOWN($Xe2,100)
      WAITMS(100)
      MOVER(0,$Ye-200) // отпускание
      WAITMS(100)
      LUP($Xe2,$Ye-200)
      MOVE($Xe2,$Ye)
   END_IF
   IF($sek ! 0)
      WAITMS($sek)
      $provodka = 1
   END_IF
END_IF

//-------------------------------- скорость проводки
IF((ISKEYDOWN(#B) = 1) & ($N < 8)) // больше
   $speed = $speed + 50
   $N = $N+1
   SOUND ("data/sound/load")
   WAIT(1)
END_IF
IF((ISKEYDOWN(#M) = 1) & ($N > - 8))// меньше
   $speed = $speed - 50
   $N = $N-1
   SOUND ("data/sound/load")
   WAIT(1)
END_IF
//-------------------------------- инвентарь
IF(ISKEYDOWN(#I) = 1)
   MOVE($Xe-30,$Ye2+25)
   WAITMS(100)
   LCLICK($Xe-30,$Ye2+25)
   WAITMS(30)
   MOVE($Xe2,$Ye2)
   WAIT(2)
END_IF
//--------------------------------

//--------------------------------  СМОТАТЬ
IF(ISKEYDOWN(#N) = 1)
   $provodka = 0
   $stop = 1
   MOVE($Xe2,350)
   WAITMS(100)
   LCLICK($Xe2,350)
   WAITMS(100)
   RCLICK($Xe2,350)
   WAITMS(100)
   SOUND ("data/sound/stop")
   WAIT(1)
END_IF

//--------------------------------  ГЛУБИНА
IF(ISKEYDOWN(#G) = 1)
   IF($Glubina > 3000)
      $Glubina = 0
   ELSE
      $Glubina = $Glubina + 2000
   END_IF
   SOUND ("data/sound/load")
   WAIT(1)
END_IF

//-------------------------------- проводка
IF((ISKEYDOWN(#X) = 1)
   $provodka = 1
   $stop = 0
END_IF
//--------------------- клавиши управления конец -------------------------------

//--------------------------------  СМОТАТЬ обнулить подсечки (длина блеснения)
IF($provodka > $DLINA)
   $provodka = 0
   MOVE($Xe2,300)
   WAITMS(100)
   RCLICK($Xe2,300)
   WAITMS(100)
   SOUND ("data/sound/stop")
   WAIT(1)
END_IF

////////////////////////////////////////////////////////////////////////////////
////////////////////////////// ВЫВАЖИВАНИЕ /////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
GETSCREEN
$ob11 = PXLCOUNT(40,10, 50, 20, 53248)
$ob22 = PXLCOUNT(30,10, 40, 20, 16777215)
IF(($ob11 < 5) & ($ob22 < 20)) // экран вываживания
   $zapret = 0
   $provodka = 0
   WAITMS(10)
   //--------------------------------  торможение
   IF(ISKEYDOWN(#Tab) = 1)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
      LCLICK($Xe2,175)
      WAITMS(300)
   END_IF
   GETSCREEN
   COLORMODE(6, $Xe-45,$Ye2-120,$Xe-20,$Ye2+125)
   //$ob1 = PXLCOUNT($Xe-45,$Ye2+50, $Xe-30,$Ye2+100, 16777215)
   $ob2 = PXLCOUNT($Xe-45,$Ye2+100, $Xe-30,$Ye2+125, 16777215)
   $ob3 = PXLCOUNT($Xe-35,$Ye2, $Xe-30,$Ye2+30, 4194303) // желтая зона
   $ob4 = PXLCOUNT($Xe-35,$Ye2-70, $Xe-30,$Ye2-60, 4161535) // оранжевая зона
   $ob5 = PXLCOUNT($Xe-35,$Ye2-100, $Xe-30,$Ye2-90, 4145151) // красная зона
   $ob6 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4194303) // желтая зона превышения
   $ob7 = PXLCOUNT($Xe-45,$Ye2-120, $Xe-20,$Ye2-105, 4145151) // красная зона превышения
   $ob8 = PXLCOUNT($Xe-35,$Ye2-70, $Xe-30,$Ye2-20, 4194303) // желтая зона
   IF($ob3 > 2)
      KEYDOWN(#SPACE)
      WAITMS(10)
   END_IF
   IF(($ob7 > 2)|($ob6 > 2)) // превышение нагрузки
      MOVE($Xe2,875)
      WAITMS(10)
      LUP($Xe2,875)
      WAITMS(500)
      KEYUP(#SPACE)
      WAITMS(50)
      $SPACE = 1
   ELSE
      //--------------------------------
      IF($ob2 < 2)
         $Yv = 175
      ELSE
         $Yv = $Yv-25
         $PL = 0
      END_IF
      
      IF($SPACE = 1)
         KEYDOWN(#SPACE)
         $PL = $PL + 1
      END_IF
      
      IF(($ob5 > 2) & ($SPACE = 1)) // отпускание
         LUP($Xe2,175)
         WAITMS(500)
      END_IF
      
      IF(($SPACE = 1) & ($PL > 10) & ($ob8 > 2)) // РЫВОК
         LUP($Xe2,175)
         WAITMS(50)
         MOVE($Xe2,800)
         WAIT(1)
         LDOWN($Xe2,175)
         $PL = 0
      END_IF
      //---------- тащим -------------
      WAITMS(10)
      MOVE($Xe2,$Yv)
      WAITMS(10)
      LDOWN($Xe2,$Yv)
      WAITMS(400)
   END_IF
END_IF
//-------------------------------- ВЫВАЖИВАНИЕ КОНЕЦ --------------------------

// опрос скрипта
WAITMS(100)


Модмейкер
Рыцарская Сага
 
  • Страница 1 из 1
  • 1
Поиск:


Сайт создан: 24.04.2007 Бесплатный конструктор сайтов - uCoz