added auto-looting of items from the chest toggle on by starting mac with /mac skmm loot - not much time spent testing this yet
changed some things so hopefully it no longer tries to zone you out if you happen to die close to the same time as farsoth
let me know of any issues and will get them fixed
changed some things so hopefully it no longer tries to zone you out if you happen to die close to the same time as farsoth
let me know of any issues and will get them fixed
Rich (BB code):
|--------------------------
| SKMM.Mac
| By Galuvwen
| Based on NekMM by Ccomp5950
|--------------------------
|
| Requires Spellcast.inc
| Requires MQ2Switch Plugin
|
|
| Last updated 12-02-2005 1:03 AM
#event WaitTimer "#*#task because you must wait 0d:0h:#1#m before you can#*#"
#event Death "#*#You have been Slain#*#"
#event Invite "#1# tells you, 'Invite me (PASSWORD)'#*#"
#event Looted "#*#You have looted#*#"
#turbo 10
#include spellcast.inc
Sub Main()
/echo =============================
/echo South Karana AFK Task v. 2 - WithAuto Loot
/echo =============================
/echo /mac skmm loot - for auto loot feature
/echo =============================
/call Setup
/if (${Param0.Upper.Equal[LOOT]}) {
/varset Loot 1
/lootnodrop never
}
:StartOver
/if (${Zone.ID}==18) /goto :Bigloop
/call Reset
/if (${Zone.ID}!=18) /endmac
:Bigloop
/echo delaying for A bit inside the mission
/call WaitTime
/call JailArea
/call PullLevers
/call SpawnFar
/call KillFar
/if (${Loot}) /call DoLootBitch
/call GTFO
/goto :StartOver
/return
Sub Setup
/declare x int outer 0
/declare y int outer 0
/declare g int outer 0
/declare g2 int outer 0
/declare Died int outer 0
/declare wait int outer 0
/declare Zoning int outer 0
/declare Loot int outer 0
/declare StartHP int outer 0
/declare Looted int outer 0
/return
Sub Reset
/for g 0 to ${Group.Members}
/varcalc g2 ${Group.Members}-${g}
/taskremove ${Group.Member[${g2}]}
/next g
/delay 5s
/cleanup
/target zealot
/delay 2s
/say brave
/delay 2s
/doevents
|================================================= ==================================================
| If you have time left in your lockout timer your character will wait until that timer has elapsed
|================================================= ==================================================
:OMGWAIT
/if (${Window[TaskTemplateSelectWnd].Open}) {
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/goto :Okyourgood
}
/goto :OMGWAIT
:Okyourgood
/cleanup
/delay 10s
/target zealot
/delay 2s
/say venture
/delay 45s
/if (!${Window[AAWindow].Open}) /keypress V
/notify AAWindow AAW_LoadButton Leftmouseup
/delay 15s
/cleanup
/varset Died 0
/return
Sub WaitTime
/warp loc 370.97 270.81 15.02
/varset wait 35
/for y 0 to ${wait}
/Echo ${Math.Calc[${wait}-${y}]} minutes till we start
/doevents
/delay 15s
/doevents
/delay 15s
/doevents
/delay 15s
/doevents
/delay 15s
/next y
/return
Sub JailArea
/warp loc 536 205 14
/delay 2s
/warp succor
/delay 2s
/return
Sub PullLevers
/switch 53
/delay 2s
/switch 52
/delay 2s
/switch 51
/delay 2s
/return
Sub SpawnFar
/warp loc 982 32 3
/delay 2s
/warp succor
/delay 2s
/return
Sub KillFar
/squelch /target clear
:killfarloop1
/varset Died 0
/delay 2s
/target farsoth
/if (${SpawnCount[Farsoth NPC]}==0) /return
/attack on
/warp target
/delay 2s
/stick 10 moveback
:killfarloop2
/doevents
/if (${Died}==1) /goto :killfarloop1
/call cast "feral rage" Activate
/call cast "savage onslaught" Activate
/call cast "cyclone blade" Activate
/if ( ${Me.PctHPs}<50 ) /call cast "Warlord's Tenacity" Activate
/if (${SpawnCount[Farsoth NPC]}==1) /goto :killfarloop2
/return
Sub DoLootBitch
:openchestloop
/varset StartHP ${Me.CurrentHPs}
/varset Looted 0
/target ornate
/warp target
/delay 1s
/open
/delay 5s
/if (${Me.CurrentHPs}<${StartHP}) /call Wait4Death
/if (${SpawnCount[Ornate Corpse]}==0) /goto :ornatechestloop
:lootchestloop
/doevents
/varset Died 0
/varset StartHP ${Me.CurrentHPs}
/target ornate
/warp target
/delay 1s
/if (${Me.CurrentHPs}<${StartHP}) /call Wait4Death
/if (${Died}) /goto :lootchestloop
/loot
/delay 1s
/if (${Window[LootWnd].Open}) {
/itemnotify loot1 rightmouseup
/notify LootWnd DoneButton leftmouseup
}
/doevents
/if (${Looted}) /return
/goto :lootchestloop
/return
Sub GTFO
:gtfoloop
/doevents
/target Gillamina
/delay 1s
/warp Target
/delay 1s
/say leave
/delay 45s
/if (${Zone.ID}==18) /goto :gtfoloop
/target zealot
/face fast
/delay 2s
/hail
/delay 15s
/return
Sub Wait4Death
/varset Died 0
/for x 1 to 500
/doevents
/delay 1s
/if (${Died}) /return
/next x
/return
Sub Event_WaitTimer(crap,int Waitupyo)
/varcalc Waitupyo ${Waitupyo}+1
/echo Delaying ${Waitupyo} minutes
/for y 0 to ${Waitupyo}
/echo ${Math.Calc[${Waitupyo}-${y}]} minutes left till get new expedition
/doevents
/delay 15s
/doevents
/delay 15s
/doevents
/delay 15s
/doevents
/delay 15s
/next y
/target zealot
/delay 2s
/say brave
/return
Sub Event_Invite(Junk,string Nameb)
/invite ${Nameb}
/taskadd ${Nameb}
/delay 1s
/return
Sub Event_Death
/varset Died 1
/delay 1m
/return
Sub Event_Looted
/varset Looted 1
/return
Last edited:



BTW I tried the fix you posted above, still a no go.