Author Topic: Хочу .... маленькие бонусы....  (Read 5022 times)

0 Members and 1 Guest are viewing this topic.

Kubus

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Хочу .... маленькие бонусы....
« on: June 09, 2016, 02:38:06 PM »

В процессе использования программы иногда проскакивают идеи чего бы хотелось добавить в функционале для облегчения процессов настройки и написания скриптов. Эти бонусы было бы не плохо прикрутить в виде дополнительных модулей к основной программе. Вот на вскидку:


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


- в момент работы в редакторе, при наведении на строку с ссылкой на фрагмент, в процедуре IF_PICTURE_IN,  искомого изображения - появлялся пред просмотр (плавающее окошко) с образцом или копия картинки в масштабе. Это новшество для написания и в процессе поисков багов стало бы самой особенной и любимой фишкой нашей любимой программы.


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


- и еще пару идей могу набросать, если конечно это было бы интересно автору программы...




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

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #1 on: June 09, 2016, 03:05:45 PM »
По третьему предложению я давно делал экзешник и выкладывал. Сейчас не смог найти. Продублирую во вложении.
Результат: координаты области в формате x1,y1,x2,y2 помещаются в буфер обмена. Их можно сразу вставить в скрипт.
И дублируются в файле coord.ini.

Вот ещё такую искалку выкладывал:
http://crapware.aidf.org/forum/index.php?topic=42.msg9427#msg9427
С ней удобно подбирать параметры поиска или увидеть что, где нашлось и что мы прозевали.

Естественно всё в отдельных exe, Но можно сторонней прогой повесить на горячие клавиши.
« Last Edit: June 09, 2016, 03:09:34 PM by Vint »


Kubus

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #2 on: June 10, 2016, 10:34:11 AM »
Вот спасибо добрый человек, попробую - отпишусь.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #3 on: June 15, 2016, 02:41:09 PM »
Может пока суть да дело, забабахать отдельную утилитку-сборник в которой реализовать недостающие ништяки редактирования? По возможности конечно.
Прикрутить туда панельку/меню/горячие клавиши...
Нужно толковое и продуманное описание чего хотим и как хотим. По опыту, львиная часть времени уходит на выдумывание каким именно способом сделать, чтобы приблудой можно было нормально пользоваться. Какие элементы управления должны быть, что отображать, в каком виде и т.д.


Kubus

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #4 on: June 16, 2016, 03:50:10 PM »
Может пока суть да дело, забабахать отдельную утилитку-сборник в которой реализовать недостающие ништяки редактирования? По возможности конечно.
Прикрутить туда панельку/меню/горячие клавиши...
Нужно толковое и продуманное описание чего хотим и как хотим. По опыту, львиная часть времени уходит на выдумывание каким именно способом сделать, чтобы приблудой можно было нормально пользоваться. Какие элементы управления должны быть, что отображать, в каком виде и т.д.
Вот и отлично, поддерживаю, это захватывающее приключение. Готов, даже принять участие в роли тестера. Сам, хоть и не программист, но генерировать идеи могу... и буду. Я вписываюсь в это занимательное дело.


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

Пока все не началось - вопрос:
- у тебя есть возможность связать новоиспеченный модуль-помощник с ядром самого кликера? Дабы иметь прямой доступ к редактору и тексту скрипта?
« Last Edit: June 16, 2016, 04:28:18 PM by Kubus »

quant13

  • Активный участник
  • ***
  • Posts: 174
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #5 on: June 16, 2016, 04:56:47 PM »
Теоретически (Справка-особенности-вызов DLL) есть возможность делать свои модули для кликера, но до дела ни одного не видел чтоб кто сделал и поделился на форуме.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #6 on: June 16, 2016, 05:46:31 PM »
Так то нужно уметь DLL делать  :D
Я однажды пробовал стороннюю использовать, но ничего не вышло, т.к. в dll-ке была не одна функция и все со своими именами (не "execute").
Так же непонятно что делать, если нужно передавать не целочисленные параметры.


Kubus

  • Зашел в гости
  • *
  • Posts: 10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #7 on: June 20, 2016, 03:23:17 PM »
Судя по вышеизложенному - писать своими силами  Dll мы не сможем :o  (любители, нету исходников) ...  Остается только самостоятельно писать сопутствующие модули программки, и донимать :'(  автора автокликера своими идеями (уже готовыми модулями) для включения их в поставку программы. :D

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #8 on: July 13, 2016, 09:30:25 AM »
Доступа нет...
Но можно хоть что-то и без этого сделать. Конкретных рекомендаций не вижу.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #9 on: November 25, 2016, 09:19:15 PM »
Не знаю зачем это прошу, но наверно как всегда, что было.. ))
А исходничек у этой проги имеется?

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #10 on: November 26, 2016, 10:14:28 AM »
Не знаю зачем это прошу, но наверно как всегда, что было.. ))
А исходничек у этой проги имеется?
У какой?
На мои все имеются.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #11 on: December 15, 2016, 01:14:49 AM »
У какой?
На мои все имеются.
Ну вот на сет_коордс славнозвистный, а то вроде в папке с прогой нет сорсов, да и в теме тож. В него б ещё фишку, чтоб он сам сохранял скрин в папку со скриптами)

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Хочу .... маленькие бонусы....
« Reply #12 on: December 15, 2016, 12:05:59 PM »
Ну вот на сет_коордс
[spoiler]
Code: (php) [Select]
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=centre.ico
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_Res_Fileversion=2.0.1.0
#AutoIt3Wrapper_Res_LegalCopyright=Vint
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

;===============================================================================
;
; Description:      Визуальное получение координат области
; Name              Set coord
; Version:          2.0.1.0
; Data              24.12.14
; Requirement(s):   Autoit 3.3.8.1
; Author(s):        Vint
;
;===============================================================================

#Region    ************ Includes ************
#include <WindowsConstants.au3>
#include <WinAPIEx.au3>
#EndRegion ************ Includes ************

HotKeySet("{F1}", "Pause")
HotKeySet("{F2}", "Quit")

Global $draw = True, $stage = 0, $Select, $Lab, $x1, $y1, $x2, $y2
Global $trans = 150        ; прозрачность 192
Global $color1 = 0x0000FF   ; перекрестие
Global $color2 = 0xFF0000   ; выделение
$sPath_ini = @ScriptDir & "\coord.ini"

$pos = MouseGetPos() ; получить текущие координыты указателя мыши

$Horz = GUICreate("", @DesktopWidth, 1, 0, $pos[1], $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
GUISetBkColor($color1)
WinSetTrans($Horz, '', $trans)
GUISetState(@SW_SHOWNOACTIVATE)

$Vert = GUICreate("", 1, @DesktopHeight, $pos[0], 0, $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
GUISetBkColor($color1)
WinSetTrans($Vert, '', $trans)
GUISetState(@SW_SHOWNOACTIVATE)

$Select = GUICreate("", 1, 1, $x1, $y1, $WS_POPUP, BitOR($WS_EX_TOPMOST, $WS_EX_TOOLWINDOW))
GUISetBkColor($color2)
WinSetTrans($Select, '', 50)
;~ $Lab = GUICtrlCreateLabel('', $x1+1, $y1+1, 0, 0) ; фон
;~ GUICtrlSetBkColor(-1, 0xFF0000)
;~ WinSetTrans($Lab, '', 50)
GUISetState(@SW_HIDE, $Select)

; пауза
Do
$pos = MouseGetPos() ; получить текущие координыты указателя мыши
WinMove($Horz, '', 0, $pos[1])  ;Default
WinMove($Vert, '', $pos[0], 0)

;~ If $draw Then
;~ WinSetOnTop($Horz, "", 1)
;~ WinSetOnTop($Vert, "", 1)
;~ EndIf

If $stage = 1 Then
WinMove($Select, '', $x1, $y1, $pos[0]-$x1, $pos[1]-$y1)
;~ GUICtrlSetPos($Lab, $x1+1, $y1+1, $pos[0]-1, $pos[1]-1)
EndIf

; проверяем нажатие
If _WinAPI_GetAsyncKeyState(0x01) = True And $stage = 0 Then        ; Нажата левая кнопка мыши первый раз
$x1 = $pos[0]
$y1 = $pos[1]
$stage = 1
WinMove($Select, '', $x1, $y1, $pos[0]-$x1, $pos[1]-$y1)
GUISetState(@SW_SHOWNOACTIVATE, $Select)
EndIf
If _WinAPI_GetAsyncKeyState(0x01) = False And $stage = 1 Then        ; Отпущена левая кнопка мыши
$x2 = $pos[0]
$y2 = $pos[1]
IniWrite($sPath_ini, "coord", "x1", $x1)
IniWrite($sPath_ini, "coord", "y1", $y1)
IniWrite($sPath_ini, "coord", "x2", $x2)
IniWrite($sPath_ini, "coord", "y2", $y2)
IniWrite($sPath_ini, "coord", "state", '1')
ClipPut ($x1 & ',' & $y1 & ',' & $x2 & ',' & $y2)
Quit()
EndIf
If _WinAPI_GetAsyncKeyState(0x02) = True Then Quit() ; Нажата правая кнопка мыши - выход
Until Not Sleep(10)

Func Pause()
$draw = Not $draw
If $draw Then
GUISetState(@SW_SHOW, $Horz)
GUISetState(@SW_SHOW, $Vert)
        GUISetState(@SW_SHOW, $Select)
Else
GUISetState(@SW_HIDE, $Horz)
GUISetState(@SW_HIDE, $Vert)
        GUISetState(@SW_HIDE, $Select)
EndIf
EndFunc

Func Quit()
Exit
EndFunc


;~ #include <Misc.au3>
;~ If _IsPressed('01') Then ToolTip('ЛКМ' & @LF & MouseGetPos(0) & 'x' & MouseGetPos(1), 0, 0)
;~ If _IsPressed('02') Then ToolTip('ПКМ' & @LF & MouseGetPos(0) & 'x' & MouseGetPos(1), 0, 0)
[/spoiler]