Показать сообщение отдельно
Старый 14.11.2010, 16:37   #6
trowas
Читер со стажем
Аватар для trowas
OFFLINE
Регистрация: 07.05.2010
Сообщений: 535
Благодарностей:
150 всего
Мнения: + 2007
Репутация: 408
Отправить сообщение для trowas с помощью Skype™
Автовыстрел 3

Код:
#include <Misc.au3>
;гор клавиши
HotKeySet("{f5}", "startAutoshoot")
HotKeySet("{f6}", "offAutoshoot")
HotKeySet("{f7}", "crosscreate")
HotKeySet("{f8}", "razzmerr")
;переменные
global $pict, $hBit, $hGraph, $side = 65, $zoom = 2, $Autoshoot = 0
global $gamename=('Point Blank'), $winpos = WinGetPos($gamename)
Global $cWidth = 23, $cHeight=30
;тело программы
$program = GUICreate("Zoom-ZoomPB", $side*$zoom + 2, $side*$zoom + 2, -1, -1, $WS_POPUP, $WS_EX_TOPMOST) ;создаем "око"
GUISetState()
_GDIPlus_Startup()
WinMove('Zoom-ZoomPB', '', 0 , -1) ;перетаскиваем "око" в левый верхний угол
While 1
    If $Autoshoot = 1 then  ;если зажато ф5 тогда
    if WinActive('Point Blank','') then ;если существует окно игры тогда
    $pixelSearch = pixelsearch ($winpos[0]+$side,$winpos[1]+$side, $winpos[2]-$side, $winpos[3]-$side,0xff0000) ;ищем красный цвет
    If Not @error then ;если находит тогда
                Call('clicks') ;вызываем функцию "жмакания кнопок"
                ;скриним\передаем скрин в "око"
        _GDIPlus_GraphicsDispose($hGraph)
        _GDIPlus_ImageDispose($hBit)
        _WinAPI_DeleteObject($pict)
        $pict = _ScreenCapture_Capture("", $pixelSearch[0], $pixelSearch[1])
        $hBit = _GDIPlus_BitmapCreateFromHBITMAP($pict)
        $hGraph = _GDIPlus_GraphicsCreateFromHWND($program)
        _GDIPlus_GraphicsDrawImageRectRect($hGraph, $hBit, 0, 0, $side, $side, 1, 1, $side*$zoom, $side*$zoom)
EndIf
EndIf
EndIf
WEnd
_GDIPlus_Shutdown()


Func startAutoshoot() ;включение
    $Autoshoot = 1
EndFunc

Func offAutoshoot() ;выключение
    $Autoshoot = 0
EndFunc

Func clicks() ;функция "жмакания кнопок"
    AutoItSetOption('MouseClickDelay',100) ;задержка нажатия мыши
        MouseClick('right')
        MouseClick('left')
EndFunc

Func crosscreate() ;функция рисования точки
        $Cross = _Cross_Create(0, 0)
EndFunc

Func razzmerr() ;функция изменения размера окна
        WinMove($gamename,"" ,20,20, @DesktopWidth-40,@DeskTopHeight-40) ;параметры окна игры
EndFunc
;---------------------------------рисовалка прицела--------------------------
Func _Cross_Create($iXCord, $iYCord, $iColor = 0x0000ff, $iFlag = 0)
$hGUI = GUICreate('MouseCross', $cWidth, $cHeight, -1, -1, $WS_POPUP, $WS_EX_TOOLWINDOW + $WS_EX_LAYERED + $WS_EX_TRANSPARENT + $WS_EX_TOPMOST)
Local $iTransCol = 0xABCDEF
If $iColor = $iTransCol Then $iTransCol = 0xFBCDEF
;-------параметры прицела
GUISetBkColor($iTransCol)
GUICtrlCreateLabel("", 11, 15, 2, 10)
GUICtrlSetBkColor(-1, $iColor)
GUICtrlCreateLabel("", 0, 11, 10, 2)
GUICtrlSetBkColor(-1, $iColor)
GUICtrlCreateLabel("", 15, 11, 10, 2)
GUICtrlSetBkColor(-1, $iColor)
;--------------------------
GUISetState()
_API_SetLayeredWindowAttributes($hGUI, $iTransCol)
EndFunc

Func _API_SetLayeredWindowAttributes($hwnd, $i_transcolor, $Transparency = 255, $isColorRef = False)
Local Const $AC_SRC_ALPHA = 1
Local Const $ULW_ALPHA = 2
Local Const $LWA_ALPHA = 0x2
Local Const $LWA_COLORKEY = 0x1
If Not $isColorRef Then
$i_transcolor = Hex(String($i_transcolor), 6)
$i_transcolor = Execute('0x00' & StringMid($i_transcolor, 5, 2) & StringMid($i_transcolor, 3, 2) & StringMid($i_transcolor, 1, 2))
EndIf
    Local $Ret = DllCall("user32.dll", "int", "SetLayeredWindowAttributes", "hwnd", $hwnd, "long", $i_transcolor, "byte", $Transparency, "long", $LWA_COLORKEY + $LWA_ALPHA)
Select
Case @error
Return SetError(@error, 0, 0)
Case $Ret[0] = 0
Return SetError(4, 0, 0)
Case Else
Return 1
EndSelect
EndFunc
;--------------------end----crosshair-----------------
гор клавиши:
Код:
ф5 - включить автовыстрел
ф6 - отключить
ф7 - рисовать точку
ф8 - изменить размер окна игры(на весь моник только в окне)
[/HIDE]

 
Сказали спасибо:
shangun (08.12.2010)