casting nature's fury on hotkey "E" to last uo-client target if it's in range or near pg. immediately recasting, if disturbed.
codice:
;---------Setup------------
set %HotKey e ; hotkey to cast nature's fury
set %HotkeyMod
set %MaxDelay 3000 ; maximum time of castimg in ms
;--------------------------
event SysMessage Lord of Nature 1.0
event SysMessage exceptionally crafted by Sledge Hammer
set #lpc 5000
while #true
{
sleep 1
onhotkey %HotKey %HotkeyMod
gosub SummonFury #ltargetid
}
sub SummonFury
if #followers = 5
return #false
if #targcurs = 1
key esc
set %FuryTarget %1
event macro 15 606
gosub waitforcurs %MaxDelay
if #targcurs = 1
{
finditem %FuryTarget G_12
if #findkind <> -1
gosub TargetGround #findx #findy #findz
else
gosub TargetGround #charposx #charposy #charposz
return #true
}
return #false
sub TargetGround
set #LTARGETKIND 2
set #LTARGETX %1
set #LTARGETY %2
set #LTARGETZ %3
event macro 22 0
return
sub waitforcurs
set %param 150
set %param2 %1
set %jindex2 #jindex + 1
set %waitforcursor #systime + %param
set %finishwaitforcursor #systime + %param2
set %paralread #false
while #systime < %finishwaitforcursor
{
set %nextjinedxend2 #jindex
if %jindex2 <= %nextjinedxend2
{
for %ji2 %jindex2 %nextjinedxend2
{
scanjournal %ji2
if ( casting in #journal || You_cannot_move in #journal || disturbed IN #journal || recovered IN #journal || reagents IN #journal || mana IN #journal ) && : notin #journal
{
set %paralread #true
break
}
}
set %jindex2 %nextjinedxend2 + 1
}
if #systime > %finishwaitforcursor || %paralread
break
if #targcurs = 1 && #systime >= %waitforcursor
break
sleep 10
}
if %paralread
return #false
if #targcurs = 1
return #true
return #false

Commenta