Code:
#Region Include
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <SliderConstants.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#include <WindowsConstants.au3>
#include <DateTimeConstants.au3>
#RequireAdminaw
#EndRegion Include
; Declare the flags
$Interrupt = 0
$EventCheck = 0
Opt("GUIOnEventMode", 1)
$hGUI = GUICreate("ESB", 211, 202, 903, 468, -1, BitOR($WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))
GUISetOnEvent($GUI_EVENT_CLOSE, "ThatExit")
$RunBtn = GUICtrlCreateButton("Run", 10, 10, 80, 30)
GUICtrlSetOnEvent($RunBtn, "RunnerFunc")
$StopBtn = GUICtrlCreateButton("Stop", 10, 10, 80, 30)
GUICtrlSetOnEvent($StopBtn, "StopFunc")
GUICtrlSetState($StopBtn, $GUI_HIDE)
$Checkbox1 = GUICtrlCreateCheckbox("Auto Loot", 24, 56, 97, 17)
$Prog = GUICtrlCreateProgress(16, 168, 174, 17, $PBS_MARQUEE)
$Slider1 = GUICtrlCreateSlider(16, 96, 118, 21)
GUICtrlSetLimit($Slider1, 300, 10)
$hSlider_Handle1 = GUICtrlGetHandle(-1)
GUICtrlSetBkColor($Slider1, 0xDE3915)
$Slider2 = GUICtrlCreateSlider(16, 128, 118, 21)
GUICtrlSetLimit($Slider2, 300, 10)
$hSlider_Handle2 = GUICtrlGetHandle(-1)
GUICtrlSetBkColor($Slider2, 0x159BDB)
$Input1 = GUICtrlCreateInput("9", 152, 96, 41, 21)
$Input2 = GUICtrlCreateInput("8", 152, 128, 41, 21)
GUISetState()
GUIRegisterMsg($WM_COMMAND, "_WM_COMMAND")
Global $title = WinGetTitle("[CLASS:Black Desert]", "")
While 1
Sleep(10)
If $EventCheck = 1 Then
RunnerFunc()
EndIf
WEnd
Func RunnerFunc()
GUICtrlSendMsg($Prog, $PBM_SETMARQUEE, 1, 20)
If $EventCheck = 0 Then
GUICtrlSetState($RunBtn, $GUI_HIDE)
GUICtrlSetState($StopBtn, $GUI_SHOW)
EndIf
$Interrupt = 0
$EventCheck = 0
sleep(1000)
; Check for Interruption
If $Interrupt <> 0 Then
$EventCheck = 0
Return
EndIf
If _IsChecked($Checkbox1) Then
ControlSend($title, "", "", "{r down}")
Sleep(Random(110, 160, 1))
ControlSend($title, "", "", "{r up}")
Sleep(Random(110, 160, 1))
ControlSend($title, "", "", "{r down}")
Sleep(Random(110, 160, 1))
ControlSend($title, "", "", "{r up}")
EndIf
;===========================Health and Mana check=====================
$spota = GUICtrlRead($Slider1)
PixelSearch($spota, 193, $spota, 193, 0xCC0000, 10) ; check player health
If @error Then
Local $a = GUICtrlRead($Input1); health input
ControlSend($title, "", "", "{" & $a & " down}")
Sleep(Random(110, 140, 1))
ControlSend($title, "", "", "{" & $a & " up}")
EndIf
$spotb = GUICtrlRead($Slider2)
PixelSearch($spotb, 209, $spotb, 209, 0x007EC8, 10) ; check player mana
If @error Then
Local $b = GUICtrlRead($Input2); Mana input
ControlSend($title, "", "", "{" & $b & " down}")
Sleep(Random(110, 140, 1))
ControlSend($title, "", "", "{" & $b & " up}")
EndIf
;==========================================================================
; Return to allow checking for system events
$EventCheck = 1
Return
EndFunc
Func StopFunc()
GUICtrlSendMsg($Prog, $PBM_SETMARQUEE, 0, 20)
GUICtrlSetState($StopBtn, $GUI_HIDE)
GUICtrlSetState($RunBtn, $GUI_SHOW)
ConsoleWrite(">Stopped" & @CRLF)
EndFunc
Func _IsChecked($idControlID);===================== Look for Check box ======================
Return BitAND(GUICtrlRead($idControlID), $GUI_CHECKED) = $GUI_CHECKED
EndFunc ;==>_IsChecked
Func _WM_COMMAND($hWnd, $Msg, $wParam, $lParam)
If BitAND($wParam, 0x0000FFFF) = $StopBtn Then $Interrupt = 1
Return $GUI_RUNDEFMSG
EndFunc
Func ThatExit()
Exit
EndFunc