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

Pages: [1] 2 3
1
https://yadi.sk/i/ilNSHi-3eh-5UQ
вот изображение самого браузера(не загружается изображение жыпег размером 312кб на сайт)
красным отмечены области у которых разный hwnd

2
Всем доброго времени с уток!
В наличии браузер k-meleon. Хочу использовать привязку на протяжении всей работы кликера(т е без отвязки).
Но проблема в том, что в данном браузере почти каждый элемент имеет свой hwnd.
Как реализовать привязку в таком случае?

3
Откуда взялись кода 0x300 и 0x301 ?
Да это я экспериментировал ввиду отсутствия понимания данных переменных))
По итогу получилось только так
Code: [Select]
POSTMESSAGE($_hwnd, 0x0100, #ESC, 0)
WAITMS (50)
POSTMESSAGE($_hwnd, 0x0101, #ESC, 0)
Спасибо что откликнулись!

4
Или это даже не ESC POSTMESSAGE(788086, 0x0300, 0x1B, 0)...

5
Имею ввиду что так и прописывать $_hwnd и  0x0101?

$_hwnd - текущий hwnd привязки. То есть если привязку не отключать, то так и писать (если hwnd поля ввода соответствует hwnd того к чему привязан). Если без привязки, либо если hwnd не совпадает, то ищем его соответствующими функциями - HGET (x, y), WNDFIND (title, [begin]).

В первую очередь пробуй POSTMESSAGE($_hwnd, 0x0302, 0, 0) // вставить
Хотя нет. Нажатие эск работает если я например прописываю такое
Code: [Select]
LCLICK(962,48)
KEYSTRING("1111111111111111111")         
WAITMS(500)
LCLICK(962,48)
WAITMS(500)
POSTMESSAGE(788086, 0x0300, 0x1B, 0)
WAITMS(50)
POSTMESSAGE(788086, 0x0301, 0x1B, 0)
Здесь просто клик в поле адресной строки браузера. То есть набор текста и удаление его нажатием эск. Но вот в игре такое не прокатывает.
Code: [Select]
SUB(сундук,$par1,$par2,$par3,$par4,$par5)
$var=0
$check = 0
WHILE($check = 0)
GETSCREEN ($par1,$par2,$par3,$par4)
COLORMODE(6)
IF_PICTURE_IN ($par1,$par2,$par3,$par4,$par5, -1, 100)
INC($var,1)
LOGWRITE ("найдено ",$par5," ",$var," раз")
LCLICK($_return1, $_return2)
WAITMS(1500)
LCLICK(977,249)
WAITMS(500)
POSTMESSAGE(788086, 0x0300, 0x1B, 0)
WAITMS(50)
POSTMESSAGE(788086, 0x0301, 0x1B, 0)
WAITMS(500)
LCLICK(977,249)
WAITMS(500)
POSTMESSAGE(788086, 0x0300, 0x1B, 0)
WAITMS(50)
POSTMESSAGE(788086, 0x0301, 0x1B, 0)
ELSE
$check = 1
LOGWRITE ("переход к другой картинке")
END_IF
END_CYC
END_SUB
ТО есть после клика не происходит нажатие эск. Почему так может быть?

6
Вроде бы разобрался)
POSTMESSAGE(329344, 0x0300, 0x1B, 0)
WAITMS(50)
POSTMESSAGE(329344, 0x0301, 0x1B, 0)
Вот так получилось

7
Имею ввиду что так и прописывать $_hwnd и  0x0101?

$_hwnd - текущий hwnd привязки. То есть если привязку не отключать, то так и писать (если hwnd поля ввода соответствует hwnd того к чему привязан). Если без привязки, либо если hwnd не совпадает, то ищем его соответствующими функциями - HGET (x, y), WNDFIND (title, [begin]).

В первую очередь пробуй POSTMESSAGE($_hwnd, 0x0302, 0, 0) // вставить
Спасибо, все работает! А вот как сделать нажатие клавиши эск в таком же режиме(без отвязки от окна)?Пошерстил форум и нашел вашу тему на этот счет. Но что то никак не получается...

8
http://crapware.aidf.org/forum/index.php?topic=2063

Там написано как вставить в неактивное окно.
То есть именно так и делать как в примере?
Code: [Select]
wait(1)
POSTMESSAGE($_hwnd, 0x0100, #CTRL, 0)
WAITMS (50)
KEYPRESS(#v)
WAITMS (50)
POSTMESSAGE($_hwnd, 0x0101, #CTRL, 0)
KEYPRESS(#BACKSPACE)
halt   
Имею ввиду что так и прописывать $_hwnd и  0x0101?

9
Или может можно сделать вообще без отключения привязки? Просто взяв строки из текстового файла для вставки путем набора текста через KEYSTRING? Но только так, чтобы этот текст(строки) вводлись каждый новый цикл поочередно(как это делается у меня сейчас
INC($i,1)
TOCLIP(TFREAD("тексты.txt", $i))

10
Подскажите пожалуйста, можно ли реализовать вставку текста из файла не отключая привязку? Сейчас проблема следующая. Есть браузер куда выполняется вставка текста. Но когда происходит отвязывание кликера для вставки, то клик выполняется по активному окну(естественно :)). Может можно сделать так чтобы не затрагивалось активное окно при отвязке кликера.
Code: [Select]
HSET(1376906,1) //привязка к браузеру
 $check = 0
WHILE($check = 0)
    GETSCREEN
    COLORMODE(6)
    IF_PICTURE_IN(100,200,150,240, "Pic1.bmp") //поиск строки ввода текста
        $check = 1
         WAITMS(200)
        LCLICK(539,49) //клик в поле ввода
        WAITMS(200)
KEYSTRING("текст") //ввод текста
HSET(1376906,0) //отвязка от окна чтобы нажать ентер
LCLICK(539,49) //клик в поле ввода после отвязки       И В ЭТОТ МОМЕНТ ПРОИСХОДИТ КЛИК ПО АКТИВНОМУ ОКНУ
KEYPRESS(#ENTER)//жмем ентер в отвязке
HSET(1376906,1) //повторная привязка к браузеру
    ELSE
        WAITMS(50)
    END_IF
END_CYC

11
Общие вопросы / Поиск "зависшей" картинки.
« on: November 07, 2020, 08:42:02 PM »
Уважаемые, помогите пожалуйста со следующей задачей. Есть скрипт формата
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (0,0,$_xmax,$_ymax, "1.bmp", -1, 100)
ELSE
Все картинки в нем появляются на экране в разное время и при нажатии на них либо пропадают с экрана сразу, либо спустя какое то время. Но бывает, что какая то из картинок "висит" на экране длительное время. По факту в этот момент игра зависает. Как сделать условие, чтобы когда эта картинка "зависла" на экране больше чем на 5 минут, а не пропала после нажатия на нее как это происходит в стандартном режиме работы без подвисания игры, кликер выполнял определенные действия?
Думал решить мою проблему методом из этой темы http://crapware.aidf.org/forum/index.php?topic=4464.msg30475#msg30475, но у меня когда картинка висит курсор продолжает двигаться пытаясь нажать на остальные картинки.

12
Общие вопросы / Рыбалка(опять?)
« on: May 14, 2020, 07:18:59 PM »
Всем доброго времени суток!Поздравляю всех нас с возобновлением работы форума!
Помогите пожалуйста со скриптом.Вот что имеем:
Code: [Select]
$check = 0
WHILE($check = 0)
GETSCREEN(400,850,450,882)
COLORMODE(6,400,850,450,882)
IF_PICTURE_IN (400,850,450,882, "рыбацкаябитва.bmp", -1, 100)  // выполняется один раз при запуске скрипта
WAITMS(50)
LCLICK($_return1 + 1, $_return2 + 1)
$check = 1
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
//закидываем удочку
my_label:
$check = 0
WHILE($check = 0)
GETSCREEN(1346,810,1450,882)
COLORMODE(6,1346,810,1450,882)
IF_PICTURE_IN (1346,810,1450,882, "битвазакинуть.bmp", -1, 100) // закинуть уду
WAITMS(50)
LCLICK($_return1 + 1, $_return2 + 1)
$check = 1
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
//подсекаем рыбу
WHILE($check =1)
GETSCREEN(1310,615,1409,673)
COLORMODE(6,1310,615,1409,673)
IF_PICTURE_IN (1310,615,1409,673, "битвазацепить.bmp", -1, 100) //подсекаем
WAITMS(50)
LCLICK($_return1 + 2, $_return2 + 16)
WAITMS(50)
LCLICK($_return1 + 2, $_return2 + 17)
WAITMS(50)
LCLICK($_return1 + 2, $_return2 + 18)
WAITMS(50)
LCLICK($_return1 + 2, $_return2 + 20)
WAITMS(50)
$check = 2
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
//забираем рыбу
WHILE($check = 2)
GETSCREEN (300,780,380,830)
COLORMODE(6,300,780,380,830)
IF_PICTURE_IN (300,780,380,830, "битваполучить.bmp", -1, 100)  //вылов
WAITMS(50)
LCLICK($_return1 +2 1, $_return2 + 2)
$check = 3
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
GOTO(my_label)
 
 //тут может появиться как картинка  забрать выигрыш1 так и забрать выигрыш2
WHILE($check = 3)
GETSCREEN (300,780,380,830)
COLORMODE(6,300,780,380,830)
IF_PICTURE_IN (300,780,380,830, "забрать выигрыш1.bmp", -1, 100)  //забираем награду за первое место
WAITMS(50)
LCLICK($_return1 +2 1, $_return2 + 2)
$check = 4
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
//или второе место
WHILE($check = 3)
GETSCREEN (300,780,380,830)
COLORMODE(6,300,780,380,830)
IF_PICTURE_IN (300,780,380,830, "забрать выигрыш2.bmp", -1, 100)  //забираем награду за второе место
WAITMS(50)
LCLICK($_return1 +2 1, $_return2 + 2)
$check = 4
END_IF
WAITMS(50)
END_CYC
WAITMS(500)

//эта картинка может как появиться во время выполнения скрипта, так и нет.если она появилась, то нажимаем на нее и запускаем скрипт сначала
WHILE($check = 3)
GETSCREEN (300,780,380,830)
COLORMODE(6,300,780,380,830)
IF_PICTURE_IN (300,780,380,830, "битвапроигрыш.bmp", -1, 100)
WAITMS(50)
LCLICK($_return1 +2 1, $_return2 + 2)
$check = 4
END_IF
WAITMS(50)
END_CYC
WAITMS(500)
GOTO(my_label)
По условиям должно быть следующее:
1,при запуске скрипта картинка рыбацкаябитва выполняется один раз
2.после этого должен идти цикл из картинок битвазакинуть-битвазацепить-битваполучить до тех пор, пока не появится картинка забрать выигрыш1 или забрать выигрыш2(может появиться как та так и другая)
3.как только появится картинка забрать выигрыш1 или забрать выигрыш2 нажимаем на нее и запускаем скрипт заново(опять таки одноразово на картинку  рыбацкаябитва и потом цикл из трех картинок)
4. и еще, самое непонятное.в любой момент после запуска скрипта(но не раньше, чем выполнится хотя бы один раз цикл из картинок битвазакинуть-битвазацепить-битваполучить) может появиться картинка битвапроигрыш.если она появилась нужно нажать на нее и запустить весь скрипт с самого начала
Не слишком ли я раскатал губёнки на столько запросов?))Если можно помогите пожалуйста!

13
Общие вопросы / Re: Привязка к NOX
« on: March 10, 2020, 07:29:10 PM »
Оказывается тут эта тема обмусолена 150 раз. Потому и молчат все...
Да нет, все намного проще. Просто местные "умники" считают себя слишком уж умными)) Пусть придут ко мне на работу я посмотрю как они(вы) будете стоять баранами и не понимать простейшего вопроса.
О гениальный kiril герой форума! Думаешь прежде чем побеспокоить твое гениальное эго я не прошерстил форум в поиске похожей на мою проблему? Я только за сегодня редактировал свои сообщения порядка десяти раз т.к. каждый раз натыкался на новое решение, которое в итоге привело меня к конечному результату(заметь без твоей неоценимой помощи). Относись попроще к людям которые просят помощи и не забывай что не все такие гении как ты(прошу прощения на фамильярность).
Сорри за оффтоп просто накипело.

14
Общие вопросы / Re: Привязка к NOX
« on: March 10, 2020, 02:44:03 PM »
Да, все верно. Поменял на postmessage клик работает))Спасибо!
А подскажите, куда в скрипте по привязке к окну вставить данный кусок чтобы происходил поиск и выполнение действий с зацикливанием всего скрипта? Этот скрипт работает без привязки.
Code: [Select]
// Рыбалка ПВП(слив кубков)
GETSCREEN
COLORMODE(6)
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "пвп.bmp", -1, 90)
   LCLICK($_return1 + 5, $_return2 + 5) // Клик по поединок
   WAITMS(1500)
END_IF

 
// Ожидаем появления выбора рыбы
$check = 0
WHILE($check = 0)
   GETSCREEN
   COLORMODE(6)
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "выбор рыбы.bmp", -1, 90)
      LCLICK($_return1 - 249, $_return2 + 305) // Клик по первой рыбе
      WAITMS(500)
      LCLICK($_return1 + 68, $_return2 + 305) // Клик по второй
      WAITMS(500)
       LCLICK($_return1 + 447, $_return2 + 305) // Клик по третей   
     
     
      $check = 1
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC

// Ожидаем появления сдаться
$check = 0
WHILE($check = 0)
   GETSCREEN
   COLORMODE(6)
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "сдаться.bmp", -1, 90)
      LCLICK($_return1 + 5, $_return2 + 5) // Клик по сдаться
      WAITMS(1500)
  LCLICK($_return1 + 156, $_return2 + 495) // Клик по пропустить     
     
      $check = 1
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC

// Ожидаем появления награды
$check = 0
WHILE($check = 0)
   GETSCREEN
   COLORMODE(6)
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "получить пвп.bmp", -1, 90)
WAIT(1)
   
      LCLICK($_return1 + 5, $_return2 + 5) // Клик по получить
      WAITMS(500)   
     
      $check = 1
      WAITMS(100)
   ELSE
      WAITMS(50)
   END_IF
END_CYC
WAIT(2)

15
Общие вопросы / Re: Привязка к NOX
« on: March 10, 2020, 01:57:42 PM »
Вроде бы немного разобрался. По крайней мере при запуске скрипта ничто никуда не вылетает и остается привязка к ноксу а точнее к игре. Но вот теперь вопрос как начать работу скрипта по нахождению картинок в игре?А то у меня при запуске скрипта просто происходит однократное нажатие координат. То есть нажимаются только координаты 95-81, а вот LCLICK(1164,29) уже не происходит...
Code: [Select]
#name "NOX Player"
$hwnd = HGET(544,55)
hset($hwnd, 1)
$x = 95
$y = 81
WAIT(1)
skip:
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))
GOTO(skip)
LCLICK(1164,29)

Pages: [1] 2 3