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

Pages: [1] 2
1
Общие вопросы / Re: Прошу подсказки
« on: November 02, 2017, 11:50:06 PM »
 :o ты же сам в вопросе ответил что , тебе нужно  ???
отвечаю на короткий вопрос  8) Можно !
я даже не поленюсь ещё подсказать нужную команду
[spoiler]
Скрипты для распознавания чисел
как то так, но можно и замудрить  ;D
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "700.bmp", -1, 90)
    LCLICK(111, 111)   //($_return1, $_return2)
      WAITMS(100)
      else
END_IF
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "1000.bmp", -1, 90)
   LCLICK($_return1, $_return2)
   WAITMS(100)
else
END_IF


[/spoiler]

2
Общие вопросы / Re: Повтор
« on: November 02, 2017, 11:35:40 PM »
режим выполнения в кликере,возле песочных часоиков =))
или
FOR($a, $a < 5)
^_^
END_CYC

3
я начинающий, так сказать и хотелось бы примеров 0=)
и я понимаю что проще в шапку закинуть условие, что бы не парить мозг, почему в браузере что то меняется или нажимается  ;D
Code: [Select]
IF($hwnd = 0)
$hwnd = HGET(60,95)
hset($hwnd, 1)
END_IF
раз вызвал и дальше всё работает...если у кого игра браузерная, то там нужно сложнее условие, на сравнение хвнд..
но суть вопроса другой, как без HGET можно получить хвнд дочерного окна
вот один умничал что можно числовым в постмесаге, а примера не дал =\ помог,как отрубил! я тоже теоретик и понимаю что всё реально, в плоть до создании всех функций и вписывать в скрипты на вызов... Я новенький!Зелёный, так сказать =) я не спрашивал как можно поумничать, а как реализовать!! мне ещё много,чего не понятно и не хотелось хламом голову запиливать. хочу сразу по правильном пути пойти..
вот к примеру, показывает мне нужный хвнд, но опять же, передний план и хгет
Code: [Select]
LOGCLEAR
$hwnd = wndfind("Viewer")
    $pause = 1000
    if($hwnd > 0)
      wndgetinfo($hwnd, $x, $y, $size_x, $size_y)
      WNDBUMP ($hwnd)
      wait(1)
      IF(HGET(int($x+($size_x/2)),int($y+($size_y/2))) = $hwnd)
         print("âñå â ïîðÿäêå")
      else
         print("hwnd íå òîò")
         print("âåðíûé hwnd ", HGET(int($x+($size_x/2)),int($y+($size_y/2))))
      END_IF
     
    else
      print("BlueStasks íå íàéäåí")
    end_if
    halt
без  HGET я не смогу узнать хвнд дочерного окна?
по сути,а бы инфу можно увидеть о том окне, там уже дело техники  :D

4
$a=0
WHILE($a=0)
 ;D

не знаю, пойдёт ли то, что по бырому написал, но проверь, вдруг подойдёт =ь
а не, то подкоректируй сам  :P
[spoiler]
Code: [Select]
$a=0
WHILE($a=0)
keyDown(116)
waitms(200)
keyUp(116)
$b=0
WHILE($b=0)
//back:
GETSCREEN(566,210,600,771)
if_pixel_in(566,210,600,771, 5102591)
waitms(600)
rclick($_return1+2,$_return2+2)
waitms(400)// rfr ns pervom 4etob ne vuletalo s kompa)
LCLICK(620,210)
if (($_time_m=10)&($_time_s=15))
$a=1
$b=1
end_if
else
    $a=0
$b=0 
//goto(back)
end_if
end_cyc
end_cyc
//exit:
logwrite($_time_m)
logwrite($_time_s)
WAITMS(rnd(1000,60000))
//waitms(60000)
//waitms(1000)

[/spoiler]

5
немного почитал и понял как правельно сформулировать вопрос =)
как получить хвнд дочерного окна, зная хвнд родительского
GetNextWindow() , EnumChildWindows() есть в кликермане ?

6
$hw = wndfind("VNC Viewer") (hget(50,60))
131870(131862)
как мне получить хвнд по виндфинд а не по хгету, второй хвнд!?
или могу как то просканировать на все хвнд окон?

я это вижу как то так, но как снять хвнд  :o
 скрипт на поиск цифр есть на сайте
[spoiler]

$hw = wndfind("VNC Viewer")
SendMessage($hw, WM_GETTEXT, (WPARAM)256, (LPARAM)Text)
[/spoiler]

вот параметры окон
1[spoiler]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Properties for window TvnWindowClass (0x0002031E)
Created by Window Detective
-->
<window>
    <windowClass>
        <name>TvnWindowClass</name>
        <classExtraBytes>0</classExtraBytes>
        <windowExtraBytes>0</windowExtraBytes>
        <brush>
            <handle>0x01100060</handle>
            <style value="0" name="BS_SOLID"/>
            <hatch value="0" name="HS_HORIZONTAL"/>
            <colour red="255" green="255" blue="255"/>
        </brush>
    </windowClass>
    <handle>0x0002031E</handle>
    <parentHandle>0x00010014</parentHandle>
    <windowText>ImPAD0314 - TightVNC Viewer</windowText>
    <dimensions>
        <rect x="-4" y="-4" width="252" height="252"/>
    </dimensions>
    <clientDimensions>
        <rect x="0" y="30" width="244" height="214"/>
    </clientDimensions>
    <styleBits>382664704</styleBits>
    <extendedStyleBits>256</extendedStyleBits>
    <font>none</font>
    <windowPropsList>
        <windowProp>
            <name>0x0000A918 (Atom)</name>
            <data>0x00345F48</data>
        </windowProp>
    </windowPropsList>
    <ownerProcessPath>F:\all\SOFT\TightVNC\tvnviewer.exe</ownerProcessPath>
    <ownerProcessId>3496</ownerProcessId>
    <ownerThreadId>3500</ownerThreadId>
</window>
[/spoiler]
2[spoiler]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Properties for window TvnWindowClass (0x00020316)
Created by Window Detective
-->
<window>
    <windowClass>
        <name>TvnWindowClass</name>
        <classExtraBytes>0</classExtraBytes>
        <windowExtraBytes>0</windowExtraBytes>
        <brush>
            <handle>0x01100060</handle>
            <style value="0" name="BS_SOLID"/>
            <hatch value="0" name="HS_HORIZONTAL"/>
            <colour red="255" green="255" blue="255"/>
        </brush>
    </windowClass>
    <handle>0x00020316</handle>
    <parentHandle>0x0002031E</parentHandle>
    <windowText>ImPAD0314 - TightVNC Viewer</windowText>
    <dimensions>
        <rect x="0" y="59" width="244" height="185"/>
    </dimensions>
    <clientDimensions>
        <rect x="0" y="59" width="244" height="185"/>
    </clientDimensions>
    <styleBits>1442840576</styleBits>
    <extendedStyleBits>0</extendedStyleBits>
    <font>none</font>
    <windowPropsList>
        <windowProp>
            <name>0x0000A918 (Atom)</name>
            <data>0xFFFFFFFF</data>
        </windowProp>
    </windowPropsList>
    <ownerProcessPath>F:\all\SOFT\TightVNC\tvnviewer.exe</ownerProcessPath>
    <ownerProcessId>3496</ownerProcessId>
    <ownerThreadId>3500</ownerThreadId>
</window>
[/spoiler]
может по параметрам можно определять хвнд
вот можно же искать окна
[spoiler]
procedure Tform1.GetAllWindow;
Var
    Wd : HWnd;
begin
    ListBox1.Items.Clear;         // Очистим список перед началом поисков
    Wd:=FindWindow(0,0);          // Найдем первое окно верхнего уровня любого класса
    While (Wd<>0) do              // Если такое окно существует
    Begin
        ListBox1.Items.Add(IntToStr(Wd));    // Добавим описатель в виде текста в список
        Application.ProcessMessages;         // Дадим возможность поработать другим
        Wd:=GetNextWindow(Wd,GW_HWNDNEXT);   // Найдем следующее окно в системе.
    End;
end;

function EnumProc (Wd: HWnd; Param: LongInt): Boolean; stdcall; // Обязательно stdcall !!!
Var
    Nm:Array[0..255] of Char;  // буфер для имени
    Cs: Array[0..255] of Char; // буфер для класса
Begin
    GetWindowText(Wd,Nm,255); // считываем  текст заголовка окна
    GetClassName(Wd,Cs,255); // считываем название класса окна
    ListBox1.Items.Add(String(Nm)+'/'+String(Cs)); // Добавляем название окна и класс в список
    EnumProc := TRUE;  // продолжать искать окна…
end;

function EnumProc (Wd: HWnd; Param: LongInt): Boolean; stdcall; // Обязательно stdcall !!!
Var
    Nm:Array[0..255] of Char;  // буфер для имени
    Cs: Array[0..255] of Char; // буфер для класса
    Ch:Char;                             //символ обозначающий, что окно минимизиравано
Begin
    GetWindowText(Wd,Nm,255); // считываем  текст заголовка окна
    GetClassName(Wd,Cs,255); // считываем название класса окна
    If IsIconic(Wd) then Ch:='+'
    Else Ch:='-';
    // Добавляем название окна и класс в список первый символ + означает, что окно - иконка
    If Wd<>Form1.Handle then ListBox1.Items.Add(Ch+' '+String(Nm)+'/'+String(Cs));     
    EnumProc := TRUE;
end;
[/spoiler]

7
$hwnd = HGET(60,95)
hset($hwnd, 1)
print($hwnd)
//$x = $_return1+2
//$y = $_return2+2
$x = rnd(1,20)
$y = rnd(1,20)
print("\x-"$x,  "\y-"$y)
//postmessage($hwnd, 0x0200, 0, $xp + ($yp*65536))
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0201, 0x0001, $x + ($y*65536))
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $x + ($y*65536))
WAITMS(rnd(800,1200))

8
//GETSCREEN
//COLORMODE(7)
//SCREENSHOTEX(99,90, 107,97, "vge7", 0)
//HALT

THREAD(name, 1)
GETSCREEN
IF_PIXEL_IN(0,0, $_xmax,$_ymax, 255)
   LCLICK($_return1, $_return2)
   WAITMS(100)
GETSCREEN
IF_PIXEL_IN(0,0, $_xmax,$_ymax, 255)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF
END_IF
END_THREAD

THREAD(name, 2)
GETSCREEN
IF_PIXEL_IN(0,0, $_xmax,$_ymax, 255)
   LCLICK($_return1, $_return2)
   WAITMS(100)
GETSCREEN
IF_PIXEL_IN(0,0, $_xmax,$_ymax, 255)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF
END_IF
END_THREAD

\\===============================
IF(pxl(55, 22) = 777)
$_return1+2
$y = $_return2+2
print( "  +")
//postmessage($hwnd, 0x0200, 0, $xp + ($yp*65536))
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0201, 0x0001, $x + ($y*65536))
postmessage($hwnd, 0x0202, 0x0000, $x + ($y*65536))
ELSE
END_IF
кусочек себе ре и           я спать

9
 ??? где смайлик, который бьёт по лбу? окей, я помогу, хоть не понял что имеешь в виду и о чём говоришь  :D
режим ванги включён
[spoiler]
$hwnd = HGET(60,95)
hset($hwnd, 1)
print($hwnd)

$o1 = 0
$o11 = 0
while(($o1 < 1) & ($o11 < 3))
WAIT(rnd(1,2))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(53,27, 66,41, "sl.bmp",-1,10)
$xzan = $_return1+rnd(1,18)
$yzan = $_return2+rnd(1,4)
print("\x-"$xzan,  "\y-"$yzan, "  zan6++")
postmessage($hwnd, 0x0201, 0x0001, $xzan + ($yzan*65536))
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xzan + ($yzan*65536))
WAITMS(rnd(800,1200))
WAIT(rnd(0,1))
print("o1+", $o1)
$o2 = 0
$o1 = 1
$poisk = 0
ELSE
$o1 = 1
$o2 = 1
$o3 = 1
$poisk = 1
print("o1-")
END_IF
   while($o2 < 1)
   WAIT(rnd(1,2))
   GETSCREEN
   WAITMS(rnd(50,60))
   COLORMODE(6)
   WAITMS(rnd(50,60))
   IF_PICTURE_IN(53,39, 66,54, "sl.bmp",-1,25)
   $xrss = rnd(127,167)
   $yrss = rnd(45,53)
   print("\x-"$xrss,  "\y-"$yrss, "  rss++")
   postmessage($hwnd, 0x0201, 0x0001, $xrss + ($yrss*65536))
   WAITMS(rnd(1000,2000))
   postmessage($hwnd, 0x0202, 0x0000, $xrss + ($yrss*65536))
   WAITMS(rnd(800,1200))
   print("o2+", $o2)
   WAIT(rnd(2,3))
   $o3 = 0
   $o2 = 1
   $poisk = 0
   ELSE
   print("o2-")
   $o1 = 1
   $o3 = 1
   $o2 = 1
   $poisk = 1
   END_IF
      while($o3 < 1)
      WAIT(rnd(1,2))
      GETSCREEN
      WAITMS(rnd(50,60))
      COLORMODE(6)
      WAITMS(rnd(50,60))
        IF_PICTURE_IN(56,49, 72,58, "o36+.bmp",-1,40)
                $xrss2 = rnd(94,155)
      $yrss2 = rnd(64,70)
      print("\x-"$xrss2,  "\y-"$yrss2, "  rss2++")
      postmessage($hwnd, 0x0201, 0x0001, $xrss2 + ($yrss2*65536))
      WAITMS(rnd(1000,2000))
      postmessage($hwnd, 0x0202, 0x0000, $xrss2 + ($yrss2*65536))
      WAITMS(rnd(900,1200))
      WAIT(rnd(2,3))
      print("o3+", $o3)
      $o1 = 0
      $o3 = 1
      $poisk = 0
      inc($o11,1)
      print("inc($o11,1)"$o11)
      ELSE
      print("o3-")
       $o1 = 1
      $o2 = 1
      $o3 = 1
      $poisk = 1
      END_IF
      END_CYC
   END_CYC
END_CYC
[/spoiler]
ну,заготовка у тебя есть, даже на 3 бота  ;D помог в слепую, масивы, иф и while правь под себя  ::)

10
Ты странный, вместо того чтобы осознать свои ошибки ты снова выкладываешь свою лепнину....

Вот твое условие, чтобы ты не написал в значениях переменных условие всегда будет верно.
Code: (clickermann) [Select]
$p = 0
$p2 = 0
$p3 = 0
$p4 = 0

IF($p | $p2 | $p3 & $p4 = 8388479 | 16777087)
   LOGWRITE ("Верно")
ELSE
   LOGWRITE ("Не верно")
END_IF

HALT

я не волшебник, я просто учусь и баран  ;D

За объяснение про циклы спасибо 0=)

раз продвинутый такой, то можешь подсказать как взять нужный HWND!? в окне их 2 =\
wndfind("VNC Viewer") в фоновом режиме захватывает а мне нужно по HGET чуть ниже!но HGET в фоне не работает и окно должно быть на переднем плане!!
теоретически я понимаю что это возможно, но как..наверное это как с поиском
[spoiler]
$var = wndfind("VNC Viewer")
//scanpxl($var, 53,21, 55,24, 8388479)
while (arrsize($var) > 0)
  $y = arrpop($var)
  $x = arrpop($var)
  print("-",$x,":", $y)
end_cyc
//$clr = PXL(55,23)
//logwrite("pixels: ", $clr)
$count = PXLCOUNT (53,21, 55,24, 8388479, 16777215)
logwrite(" pixels: ", $count)
[/spoiler]
или с помощью postmessage как то взять по хгет  :o
как такая задача? захват нужного 1 хвнд из 3, не выводя на передний план, как делает wndfind  ;D

11
ну что тут могу сказать  ;D раз ты прав, то кину скриптик, который с своей задачей справлялся  :P
может и грубая работа, но в фоне прекрасно всю энергию спускало и ждало пока будет на поход, + там помощь жмякало...переключился на другой уровень, учусь писать без гото 8) блочные циклы и условия с масивами  ;)
[spoiler]
$hwnd = HGET(60,95)
hset($hwnd, 1)
print($hwnd)
wndsize(wndfind("VNC Viewer"), 252, 252)
wndpos(wndfind("VNC Viewer"), -4, -4)
t:
$t = 0

pix:
WAIT(1)
GETSCREEN
WAITMS(100)
COLORMODE(7)
 WAITMS(rnd(100,200))
$p = pxl(55, 22)
$p2 = pxl(55, 23)
$p3 = pxl(56, 22)
$p4 = pxl(56, 23)
IF($p | $p2 | $p3 & $p4 = 8388479 | 16777087)
print($p,"-",$p2,"-",$p3,"-",$p4)
 GOTO(o1)
  ELSE
   print("\","$p:55,22-",$p,":","$p2:55,23-",$p2,"$p3:55,23-",$p3,"$p4:55,23-",$p4)
   WAIT(rnd(6,9))
   GOTO(pom)
o1:
WAIT(rnd(1,2))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(53,27, 66,41, "sl.bmp",-1,10)
WAIT(rnd(0,1))
GOTO(o2)
ELSE
print("o1")
GOTO(poisk)
o2:
WAIT(rnd(1,2))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(53,39, 66,54, "sl.bmp",-1,10)
WAIT(rnd(2,3))
GOTO(o3)
ELSE
print("o2")
GOTO(poisk)
o3:
WAIT(rnd(1,2))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(58,50, 73,58, "o36+.bmp",-1,25)
print("найден третий отряд GOTO(pom)")
WAIT(rnd(2,3))
GOTO(pom)
ELSE
print("o3")
GOTO(poisk)
poisk:
WAIT(rnd(4,4))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(169,115, 188,134, "poisk6.bmp",-1,60)
$xpo = $_return1+rnd(0,7)
$ypo = $_return2+rnd(0,8)
print("\x-"$xpo,  "\y-"$ypo, "  poisk+++++++++")
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0201, 0x0001, $xpo + ($ypo*65536));
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xpo + ($ypo*65536));
WAITMS(rnd(800,1200))
GOTO(pm)
ELSE
print("\x-"$xpo,  "\y-"$ypo, "no poisk-------")
inc($t,1)
while($t < 4)
WAIT(rnd(0,1))
GOTO(poisk)
ELSE
WAIT(rnd(0,1))
$t = 0
GOTO(t)
pm:
WAIT(rnd(4,4))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(97,92, 154,110, "poisk7-10.bmp",-1,65)
$xpm = $_return1+rnd(-20,9)
$ypm = $_return2+rnd(0,4)
print("\x-"$xpm,  "\y-"$ypm, "  poisk monstrov+++++++++")
postmessage($hwnd, 0x0201, 0x0001, $xpm + ($ypm*65536));
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xpm + ($ypm*65536));
WAITMS(rnd(800,1200))
WAIT(rnd(1,2))
GOTO(atm)
ELSE
print("\x-"$xpm,  "\y-"$ypm, "no poisk monstrov-------")
inc($t,1)
while($t < 4)
WAIT(rnd(0,1))
GOTO(pm)
ELSE
WAIT(rnd(0,1))
$t = 0
GOTO(t)
atm:
WAIT(rnd(4,4))
GETSCREEN
WAITMS(rnd(50,100))
COLORMODE(6)
WAITMS(rnd(50,100))
IF_PICTURE_IN(145,75, 173,141, "atakam.bmp",-1,60)
$xatm = $_return1+rnd(1,14)
$yatm = $_return2+rnd(1,4)
print("\x-"$xatm,  "\y-"$yatm, "  atakam+++++++++")
postmessage($hwnd, 0x0201, 0x0001, $xatm + ($yatm*65536));
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xatm + ($yatm*65536));
WAITMS(rnd(900,1200))
GOTO(at)
ELSE
print("\x-"$xatm,  "\y-"$yatm, "no atakam------")
inc($t,1)
while($t < 4)
WAIT(rnd(0,1))
GOTO(atm)
ELSE
WAIT(rnd(0,1))
$t = 0
GOTO(t)
at:
WAIT(rnd(3,3))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(95,121, 148,145, "ataka.bmp",-1,70)
$xat = $_return1+rnd(2,39)
$yat = $_return2+rnd(2,10)
print("\x-"$xat,  "\y-"$yat, "  ataka+++++++++")
postmessage($hwnd, 0x0201, 0x0001, $xat + ($yat*65536));
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xat + ($yat*65536));
WAITMS(rnd(800,1200))
GOTO(vpohod)
ELSE
WAIT(rnd(4,4))
inc($t,1)
logwrite("повторов: ", $t)
$xap = rnd(115,126)
$yap = rnd(86,95)
print("\x-"$xap,  "\y-"$yap, "  ataka+rep++++")
postmessage($hwnd, 0x0201, 0x0001, $xap + ($yap*65536));
WAITMS(rnd(1000,2000))
postmessage($hwnd, 0x0202, 0x0000, $xap + ($yap*65536));
WAITMS(rnd(800,1200))
WAIT(rnd(3,3))
while($t < 3)
GOTO(at)
ELSE
GOTO(t)
vpohod:
print("\x-"$xvp,  "\y-"$yvp, "  vpohod++")
WAIT(rnd(4,5))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(128,159, 179,179, "vpohod.bmp",-1,40)
$xvp = $_return1+rnd(3,40)
$yvp = $_return2+rnd(3,10)
print("\x-"$xvp,  "\y-"$yvp, "  vpohod++")
postmessage($hwnd, 0x0201, 0x0001, $xvp + ($yvp*65536));
WAITMS(rnd(800,1200))
postmessage($hwnd, 0x0202, 0x0000, $xvp + ($yvp*65536));
WAITMS(rnd(800,1200))
print("vpohod!!!")
WAIT(rnd(4,6))
GOTO(t)
ELSE
GOTO(vpohod)
pom:
WAIT(rnd(1,2))
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN(168,134, 188,151, "pr6.bmp",-1,50)
$xpom = $_return1+rnd(1,6)
$ypom = $_return2+rnd(1,5)
postmessage($hwnd, 0x0201, 0x0001, $xpom + ($ypom*65536));
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0202, 0x0000, $xpom + ($ypom*65536));
WAITMS(rnd(100,200))
print("\x-"$xpom,  "\y-"$ypom, "  pomosh+++")
GOTO(pvsem)
ELSE
GOTO(t)
pvsem:
WAIT(rnd(2,3))
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN(91,157, 149,177, "pvsem6.bmp",-1,70)
$xpv = $_return1+rnd(0,47)
$ypv = $_return2+rnd(0,8)
postmessage($hwnd, 0x0201, 0x0001, $xpv + ($ypv*65536));
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0202, 0x0000, $xpv + ($ypv*65536));
WAITMS(rnd(50,60))
print("\x-"$xpv,  "\y-"$ypv, " pomosh vsem+++++")
GOTO(x)
ELSE
print("\x-"$xpv,  "\y-"$ypv, " pomosh vsem----")
GOTO(x)
x:
WAIT(rnd(1,2))
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN(170,0, 188,18, "x6.bmp",-1,40)
$xx = $_return1+rnd(1,10)
$yx = $_return2+rnd(0,8)
postmessage($hwnd, 0x0201, 0x0001, $xx + ($yx*65536));
WAITMS(rnd(100,200))
postmessage($hwnd, 0x0202, 0x0000, $xx + ($yx*65536));
WAITMS(rnd(50,60))
print("\x-"$xx,  "\y-"$yx, "  krestik+++++")
WAIT(rnd(1,2))
GOTO(t)
ELSE
print("\x-"$xx,  "\y-"$yx, "  krestik---")
WAIT(rnd(0,1))
GOTO(t)
[/spoiler]
а вот пример как учусь писать блочными циклами 0=) может и много я задаю массивов, и понимаю что достаточно 1, что бы запустить следующий цикл.. но всё впереди  ::)
[spoiler]
$o1 = 0
$o11 = 0
while(($o1 < 1) & ($o11 < 3))
WAIT(rnd(1,2))
GETSCREEN
WAITMS(rnd(50,60))
COLORMODE(6)
WAITMS(rnd(50,60))
IF_PICTURE_IN(53,27, 66,41, "sl.bmp",-1,10)
WAIT(rnd(0,1))
print("o1+", $o1)
$o2 = 0
$o1 = 1
$poisk = 0
ELSE
$o1 = 1
$o2 = 1
$o3 = 1
$poisk = 1
print("o1-")
END_IF
   while($o2 < 1)
   WAIT(rnd(1,2))
   GETSCREEN
   WAITMS(rnd(50,60))
   COLORMODE(6)
   WAITMS(rnd(50,60))
   IF_PICTURE_IN(53,39, 66,54, "sl.bmp",-1,25)
   print("o2+", $o2)
   WAIT(rnd(2,3))
   $o3 = 0
   $o2 = 1
   $poisk = 0
   ELSE
   print("o2-")
   $o1 = 1
   $o3 = 1
   $o2 = 1
   $poisk = 1
   END_IF
      while($o3 < 1)
      WAIT(rnd(1,2))
      GETSCREEN
      WAITMS(rnd(50,60))
      COLORMODE(6)
      WAITMS(rnd(50,60))
      IF_PICTURE_IN(56,49, 72,58, "o36+.bmp",-1,40)
      WAIT(rnd(2,3))
      print("o3+", $o3)
      $o1 = 0
      $o3 = 1
      $poisk = 0
      inc($o11,1)
      print("inc($o11,1)"$o11)
      ELSE
      print("o3-")
      $o1 = 1
      $o2 = 1
      $o3 = 1
      $poisk = 1
      END_IF
      END_CYC
   END_CYC
END_CYC
[/spoiler]
вот только не понимаю смысл между while и фор

12
Общие вопросы / Re: LOGWRITE и перенос строки.
« on: October 26, 2017, 01:25:33 AM »
print($stroka = "1 строка")
print($stroka = "2 строка")
print($stroka = "3 строка")
не понял вопроса, но скопируй это  ;D

13
Общие вопросы / Re: ПОМОГИТЕ УПРОСТИТЬ
« on: October 26, 2017, 01:03:12 AM »
почему выпрыгивать из подпрограмм нельзя?   :-X
продублируй 1 скрипт и запусти эти скрипты в одном скрипте  ;) когда первый закончит цикл, то второй скрипт работать будет до первого гото и запустит первый  ::)
качай Notepad++ и настрой для себя синтаксисы, что бы видел где цикл закончится, так будет тебе проще  ;D

я вот умничаю, а сам же чайник  :P

14
Общие вопросы / Re: СOLORMOD
« on: October 26, 2017, 12:51:31 AM »
или не парить мозг и убрать точность =)
IF_PICTURE_IN(0,0, 666,666, "sl.bmp",-1,10)
если не найдёт картинку на 10 , ставь 5  ;D
а что бы не хватало по экрану всё, координаты вбей, где эта картинка

15
    IF($p & $p2 = 8388479 & 16777087)
а что тут не понятно ? иф в двух пикселях будет цвет 8388479 & 16777087 то пойдёт дальше =) не помню, но енд это "или" или "и" ну знаки можно самому проверить! "&" и "|" поставить и результат будет ясен, один знак будет требовать по двум координатам а второй знак будет требовать в одной точке, как то так =ь
  А про точки с запятой я знаю да и работе они не мешают, просто копипастил с старых скриптов 0=)
 А зачем в мёртвый пост написал? пусть и такой пример будет здесь !

Pages: [1] 2