Hi
I've made an AutoIt script that loot after entering in combat if mob is in range.
I'll only post the script for the moment to hear your feedbacks and then i'll post the exe later.
Code:
$wowWindowTitle = "World of Warcraft"
$sGatherWindowTitle = "Nodes :"
$SGatherLogControl = "[NAME:Logs; INSTANCE:1]"
$sGatherGatherSuccess = "\[BOT\] Gathering success !\s*$"
$sGatherCombat = "(?:\[BOT\] Adds detected)(.*)\s*$"
$sGatherLootMessage = "[INJECT] Trying to loot !" & @CRLF;
$Cbdetect = "0"
AutoItSetOption("SendKeyDownDelay", 300)
While 1
If WinExists($sGatherWindowTitle) Then
$sGatherLogText = ControlGetText($sGatherWindowTitle,"",$SGatherLogControl)
If StringRegExp ($sGatherLogText, $sGatherCombat) Then
If WinExists($wowWindowTitle) Then
$Cbdetect = "1" ; You're in combat
EndIf
EndIf
if ($Cbdetect == 1) then
If StringRegExp ($sGatherLogText, $sGatherGatherSuccess) Then
If WinExists($wowWindowTitle) Then
ControlSend ($wowWindowTitle, "", "", "{9}", 0) ; Bind to macro last traget
ControlSend ($wowWindowTitle, "", "", "{=}", 0) ; Bind to Interact with target
Sleep(1 * 200)
ControlSend ($wowWindowTitle, "", "", "{8}", 0) ; Bind to your mount (same as SGather)
ControlSetText($sGatherWindowTitle, "", $SGatherLogControl, $sGatherLogText & $sGatherLootMessage)
$Cbdetect = "0"
Sleep(10 * 1000)
EndIf
EndIf
EndIf
EndIf
Sleep(1 * 300)
WEnd
There is 3 things to setup :
1- Bind your intercat with target ("=" in the script)
2- Bind a simple macro ("9" in the script) 3- Bind your mount ("8" in the script)
The bot will scan if he detect an Add and loot it
It will not loot if the Add is at range
It will loot only your last target mob. If you were fighting 2 mob only one (your last target).
Enjoy