Code:
;1680x1050 SW by SkliF
;
;F1 - equip DPS-weap
;F2 - cast Flash, SW, equip LpH-weap
;ALT+ESC - to exit
;
;--------- DEFINE ;---------
HotKeySet("{F1}", "_dps_equip")
HotKeySet("{F2}", "_lph_equip")
HotKeySet("!{ESC}", "_stopscript"); ALT+ESC will break script
$go = True
$dps = False
$lph = False
$lph_equipped = True
;--------- GENERAL SCRIPT ;---------
While ($go)
;WinWaitActive("Diablo III")
;MsgBox(0, "Sweeping_Wind Macro", "Press F1 to equip DPS-weapon" & @CRLF & "Press F2 to cast Flash + SW + equip LpH-weapon")
if ($dps) then
;check lph-weapon equipped
if ($lph_equipped) then
_equip_2H();equip weapon
$lph_equipped = False
endif
$dps = False
endif
if ($lph) then
_buff_me()
;check lph-weapon NOT equipped
if ($lph_equipped = False) then
_equip_dual();equip weapons
$lph_equipped = True
endif
$lph = False
endif
WEnd
;--------- BASE ;---------
Func _stopscript()
$go = False
EndFunc
Func _dps_equip()
$dps = True
EndFunc
Func _lph_equip()
$lph = True
EndFunc
;--------- ACTION ;---------
Func _equip_dual()
_is_opened();check inventory opened
Sleep (Random(100,150))
MouseClick("Right", Random(1250, 1270), Random(585, 645), 1, 0)
Sleep(Random(100,150))
Send ("{ALT down}")
MouseClick("Right", Random(1290, 1310), Random(585, 645), 1, 0) ;;need to ALT-mod R-click
Send ("{ALT up}")
Sleep(Random(10,40))
Send("{ESC}")
EndFunc
Func _equip_2H()
_is_opened();check inventory opened
_is_clean();check free space
Sleep (Random(100,150))
MouseClick("Right", Random(1250, 1270), Random(585, 645), 1, 0)
Sleep(Random(10,40))
Send("{ESC}")
EndFunc
Func _buff_me()
;cast Flash
MouseClick("Right", Random(850, 1050),Random(435, 530), 1, 0)
Sleep(Random(10,40))
;cast Sweeping Wind
Send("3")
Sleep(Random(10,40))
EndFunc
;--------- SUPPORTING ;---------
Func _is_opened()
if (PixelGetColor(1447, 60)<>"0x16499F") then
Send("C")
Sleep(Random(10,40))
endif
EndFunc
Func _is_clean()
if (PixelGetColor(1302, 592, 20))<>"0x130C08" then
;drop item
MouseClickDrag("Left",Random(1290, 1320),Random(583, 605),Random(790, 880),Random(435, 530),0)
Sleep(50)
elseif PixelGetColor(1307, 638, 10)<>"0x130C08" then
;drop item
MouseClickDrag("Left",Random(1290, 1320),Random(625, 649),Random(790, 880),Random(435, 530),0)
Sleep(50)
endif
EndFunc
;---------
;Func _()
;EndFunc