Back to "b" tags

Mage Bot w/ Tamer by daklue

Description: # Modified Mage Bot By DaKlue V1.0.0

1# Modified Mage Bot By DaKlue V1.0.0
2#Dorrian requested more herding and vet for pets.
3# One hotkey mage cycle, nox, poison by Jaseowns
4# UO Outlands - https://outlands.uorazorscripts.com/mage-bot
5#
6# Version: v10.1.0
7#
8#    
9// 8/18/2023
10//  - add new target system - nearest/ next
11#
12##################
13## Always room for improvment, thanks for watching!
14############
15
16
17# continue to fight the same target even after summons
18# target not seen - (warmode maybe?)
19@setvar! minimumWaitForPing 200
20
21# make sure you add a friends list called: IgnoreMobs
22@setvar! didYouSetupIgnoreMobs 0
23
24
25// 0 you choose (all kill)
26// 1 will target nearest
27// 2 will be find type
28// 3 will be target next (newest one 8/14/2023)
29@setvar! useTargetSystem 3
30
31# Do you want to use the new FindType code? Use 1 here
32# Do you want to use the Target Nearest / Next? Use 2 here
33# Else it will use the Target Closest Mon functionality 
34@setvar! useFindTypeToTargetMonster 2
35
36# after a kill you must have this amount of mana to continue to next target
37@setvar! minimumManaToCast 55 
38
39# Set this to one, if you want to cast poison once no matter what
40# If you have 100 poisoning and want Lethal, set this to 0
41@setvar! castPoisonAnyway 0
42
43# This will auto replay this script if you want it too
44@setvar! autoBotEnabled 1
45
46# Tracking for reds 0 = Do Nothing
47# Tracking for reds Recall away with magery and runebook = 1 
48@setvar! redsnearby 0
49
50# Update this variable to 1 for ALL KILL
51# Update this variable to 0 for target nearest
52@setvar! setThisAsOneIfYouWantToTargetYourOwnKillOrItWillTargetClosestMonster 0
53
54################################
55###### Random abilities
56################
57@setvar! automaticallySkinCorpses 1
58@setvar! manaReserve 50
59@setvar! cdRetryBasedOnTargetNotSeen 2000
60
61# Ultimate Summoner Hotkey Choose your summons by Jaseowns
62# UO Outlands
63# This is part of the mage bot, but you can have it
64# as its own hotkey
65
66###############
67###  Choose your summons
68######
69@setvar! breakSpellCastAndResummonIfLessThanXFollowers 4
70@setvar! renamePets 0
71
72# Earth: 0, 1, 2
73@setvar! castSummonEarthElementalCount 0
74@setvar! castSummonMummyCount 1
75
76# Fire: 0, 1, 2
77@setvar! castSummonFireElementalCount 0
78@setvar! castSummonLichCount 1
79
80# Demon: 0, 1, 2
81@setvar! castSummonDemonCount 0
82@setvar! castSummonThrallCount 0
83
84# Air: 0, 1, 2
85@setvar! castSummonAirCount 0
86@setvar! castSummonFiendCount 0
87
88# Water: 0, 1, 2
89@setvar! castSummonWaterCount 0
90@setvar! castSummonRagWitchCount 0
91
92# Creature: 0, 1, 2, 3, 4, 5
93@setvar! castSummonCreatureCount 0
94
95# Energy Vortex: 0, 1
96@setvar! castEnergyVortexCount 0
97@setvar! castJackalSpiritCount 0
98
99# Blade Spirit: 0, 1
100@setvar! castBladeSpiritCount 0
101@setvar! castSkeletalHuskCount 0
102
103###############
104###  Choose your spells
105######
106@setvar! castCurse 1
107@setvar! castManadrain 0
108@setvar! castManaVampire 0
109@setvar! castLightning 1
110@setvar! castChainLightning 0
111@setvar! castFireball 1
112@setvar! castHarm 1
113@setvar! castMagicArrow 1
114# When other spells are on cooldown, do you want to cast Ebolt, MindBlast, Flamestrike or all three
115@setvar! castEbolt 1
116@setvar! castMindBlast 1
117@setvar! castFlamestrike 0
118
119
120################################
121###### Heal Controllers
122################
123@setvar! hpCheckToTriggerGreaterHealSpell 30
124@setvar! hpCheckToTriggerMiniEmergencyHealSpell 60
125@setvar! hpCheckToTriggerHealPotion 45
126        
127################################
128###### Potion Controllers
129################
130@setvar! automaticallyDrinkStrPotIfOverWeight 1
131# Drink Magic resist potion (only if magic shield buff not found)
132@setvar! automaticallyDrinkMagicPot 1
133@setvar! automaticallyDrinkHealPot 1
134@setvar! automaticallyDrinkCurePot 1
135#@setvar! automaticallyDrinkRefreshPot 1
136
137@setvar! hpCheckToTriggerCurePotion 45
138#@setvar! stamDiffCheckToTriggerRedPotion 10
139
140
141### Buffs
142@setvar! castBless 0
143@setvar! castArchProtection 0
144@setvar! castMagicShield 1
145@setvar! castReactiveArmor 1
146
147if skill "Inscription" >= 50
148    @setvar! castBless 1
149    @setvar! castArchProtection 1
150endif
151
152
153###############
154###  Choose your necro spells (ignored if less then required necro skill)
155######
156@setvar! castEvilOmen 1
157@setvar! castCorpseSkin 1
158@setvar! castVampiricEmbrace 1
159@setvar! castMindRot 1
160@setvar! castPoisonStrike 1
161@setvar! castBloodOath 1
162@setvar! castPainSpike 1
163@setvar! requireWitherBeforeSummons 0
164
165###############
166### Edit these cooldowns to match your wizard grimoire
167######
168@setvar! canYouMakeAMushroom 1
169@setvar! cdLightning 20000
170@setvar! cdChainLightning 60000
171@setvar! cdMagicArrow 20000
172@setvar! cdHarm 20000
173@setvar! cdFireball 20000
174
175@setvar! cdAutoHealTamerPet 15000
176
177###############
178### Necro Cooldowns
179######
180@setvar! cdEvilOmen 30500
181@setvar! cdVampiricEmbrace 30500
182@setvar! cdCorpseSkin 30500
183@setvar! cdMindRot 30500
184@setvar! cdWither 30500
185@setvar! cdVengefulSpirit 30500
186@setvar! cdBloodOath 30500
187@setvar! cdPainSpike 30500
188@setvar! cdPoisonStrike 30500
189
190#### Buff Cooldowns
191@setvar! cdMushroom 61000
192@setvar! cdMagicShield 61000
193@setvar! cdReactiveArmor 61000
194@setvar! cdMeditation 10000
195@setvar! cdMeditationMini 3000
196@setvar! cdKillTarget 60000
197
198#### Random cooldowns
199@setvar! cdPreventOverheadSpam 2000
200@setvar! cdSkinningCheck 3000
201@setvar! cdCleansingBrew 125000
202@setvar! cdHerdingTimer 4000 
203
204#### Mushroom count (I like a lot of shroomies)
205@setvar! makeThisManyMushroomsCount 15
206@setvar! butOnlyIHaveLessThenThisCount 5
207
208#### This will send in pet for out of range targets
209@setvar! patrolPetEvenIfLastTargetIsBeyondEightTiles 1
210
211if counttype "gold coin" backpack as total
212    if diffweight < 10 and 10000 < total
213        overhead "Warning: {{total}} gold and no weight!" 34
214    endif
215endif
216    
217#### Pet Names, unique to you
218if not listexists petNameList
219    createlist petNameList
220endif
221if list petNameList = 0
222    pushlist petNameList "jaseneccy"
223    pushlist petNameList "jaseyoutube"
224    pushlist petNameList "jaseytfollow"
225    pushlist petNameList "jaseytfollower"
226    pushlist petNameList "jasesubscribed"
227    pushlist petNameList "jaseoutlands"
228    pushlist petNameList "jaseuorazorscripts"
229    pushlist petNameList "jaseyoutuber"
230    pushlist petNameList "jasefunez"
231    pushlist petNameList "jasetwitch"
232    pushlist petNameList "jasesubscribe"
233    pushlist petNameList "jasefueoz"
234endif
235
236@setvar! jaseDebugMode 0
237
238##################################################################
239# 
240#   Hopefully you do not have to edit after this :)
241#
242##################################################################
243
244if dead 
245    overhead "Rip" 34
246    for 10
247        if gumpexists 2957810225
248            gumpresponse 1 2957810225
249            break
250        endif        
251        wait 500
252    endfor
253    replay
254endif
255
256##################################################################
257# 
258#   TAMER MODE
259#
260##################################################################
261@setvar! tamerModeEngaged 0
262@setvar! vetTimerCd 8000
263// 0 = bandaid
264// 1 = vet supplies
265// 2 = both
266@setvar! Veterinaryhealtype 2
267
268if skill "Animal Taming" > 50
269    @setvar! tamerModeEngaged 1
270    if not varexist jaseTankPet or not find jaseTankPet ground -1 -1 12
271        overhead "Select your tank pet" 88
272        @setvar! jaseTankPet    
273    endif
274endif
275
276// Vet Bandage timer 
277if not timerexists 'vetTimer'
278    settimer vetTimer vetTimerCd
279endif
280
281// Bandage tankpet every 8 seconds
282if skill 'veterinary' > 50 and timer 'vetTimer' > 8000
283    if Veterinaryhealtype = 0 and not bandaging and findtype "clean bandage%s%" backpack as item
284        dclick item
285        wft 500
286        target jaseTankPet
287        wait 200
288        hotkey 'Cancel current target'
289    elseif Veterinaryhealtype = 1 and not bandaging and findtype "veterinary supplies" backpack as item
290        dclick item
291        wft 500
292        target jaseTankPet
293        wait 200
294        hotkey 'Cancel current target'
295    elseif Veterinaryhealtype = 2 and not bandaging and findtype "veterinary supplies|clean bandage%s%" backpack as item
296        dclick item
297        wft 500
298        target jaseTankPet
299        wait 200
300        hotkey 'Cancel current target'
301    endif
302
303    if insysmsg 'not damaged'
304        settimer 'vetTimer' 4000
305    else
306        settimer 'vetTimer' 0
307    endif
308endif
309 
310if weight >= maxweight and not findbuff "strength" and automaticallyDrinkStrPotIfOverWeight = 1 and findtype "white potion" backpack as pot
311    dclick pot
312    wait 200
313endif
314
315if not gumpexists 622436516 and skill "Necromancy" >= 50
316    say '[NecromancyHotbar'
317    wait 500
318endif
319
320if skill "Tracking" >= 0
321    if not findbuff "tracking"
322        clearsysmsg
323        while not gumpexists 4267467659
324            useskill 'tracking'
325            wait minimumWaitForPing
326        endwhile
327        if gumpexists 4267467659
328            while not insysmsg "You will now hunt all hostile players."
329                gumpresponse 8 4267467659
330                waitforgump 4267467659 5000
331            endwhile
332            gumpresponse 6 4267467659
333            wait minimumWaitForPing
334        endif
335        gumpclose 4267467659
336    endif
337endif
338
339if not varexist red_recall_runebook
340    overhead "Select your escape runebook" 88
341    setvar red_recall_runebook
342endif
343
344if not listexists "red_recall_actions"
345    createlist "red_recall_actions"
346endif
347
348if inlist "red_recall_actions" "red_alert"
349    overhead "Red Alert!" 34
350    if redsnearby = 0 
351        //Do Nothing.
352    elseif redsnearby = 1 and skill "Magery" >= 40 
353        overhead 'Recalling...'
354        while not targetexists
355            cast "Recall"
356            wft 500
357        endwhile
358        target red_recall_runebook
359    endif
360    poplist "red_recall_actions" "red_alert"
361endif
362
363if not timerexists skinningCheckTimer
364    settimer skinningCheckTimer cdSkinningCheck
365endif
366
367if not timerexists retryBasedOnTargetNotSeenTimer
368    settimer retryBasedOnTargetNotSeenTimer cdRetryBasedOnTargetNotSeen
369endif
370
371
372if automaticallySkinCorpses = 1 and findtype "corpse" ground -1 -1 3 as jorpse
373    if findtype "Elven Spellblade" backpack and timer skinningCheckTimer >= cdSkinningCheck 
374        while not targetexists 
375            useskill 'forensicevaluation'
376        endwhile
377        if targetexists beneficial or targetexists neutral
378            hotkey "Target Self"
379            wait minimumWaitForPing
380            settimer skinningCheckTimer 0
381            @ignore jorpse
382        endif
383        if insysmsg "You must wait"
384            // Wait message
385            overhead 'You must wait..' 34
386            wait 500
387            replay
388        endif
389    endif    
390endif
391
392// Make sure we have a spell book attached
393if findlayer self righthand as item
394    // do nothing
395elseif findtype "3834" backpack as item
396    getlabel item spellBookDesc
397    if "blessed" in spellBookDesc
398        @ignore item
399    else
400        dclick item    
401    endif
402else 
403    overhead "No book bro!" 34
404endif
405
406// Setting current necro symbols - checks again it the attack loop
407@setvar! necroSymbols 12
408if gumpexists 622436516 and skill "Necromancy" >= 50
409    if ingump "12/" 622436516
410        @setvar! necroSymbols 12
411    elseif ingump "13/" 622436516
412        @setvar! necroSymbols 13
413    elseif ingump "14/" 622436516
414        @setvar! necroSymbols 14
415    elseif ingump "15/" 622436516
416        @setvar! necroSymbols 15
417    elseif ingump "16/" 622436516
418        @setvar! necroSymbols 16
419    elseif ingump "17/" 622436516
420        @setvar! necroSymbols 17
421    elseif ingump "18/" 622436516
422        @setvar! necroSymbols 18
423    elseif ingump "19/" 622436516
424        @setvar! necroSymbols 19
425    elseif ingump "20/" 622436516
426        @setvar! necroSymbols 20
427    elseif ingump "21/" 622436516
428        @setvar! necroSymbols 21
429    elseif ingump "11/" 622436516
430        @setvar! necroSymbols 11
431    elseif ingump "10/" 622436516
432        @setvar! necroSymbols 10
433    elseif ingump "9/" 622436516
434        @setvar! necroSymbols 9
435    elseif ingump "8/" 622436516
436        @setvar! necroSymbols 8
437    elseif ingump "7/" 622436516
438        @setvar! necroSymbols 7
439    elseif ingump "6/" 622436516
440        @setvar! necroSymbols 6
441    elseif ingump "5/" 622436516
442        @setvar! necroSymbols 5
443    elseif ingump "4/" 622436516
444        @setvar! necroSymbols 4
445    elseif ingump "3/" 622436516
446        @setvar! necroSymbols 3
447    elseif ingump "2/" 622436516
448        @setvar! necroSymbols 2
449    elseif ingump "1/" 622436516
450        @setvar! necroSymbols 1
451    elseif ingump "0/" 622436516
452        @setvar! necroSymbols 0
453    endif
454endif
455
456if not timerexists reactiveArmorTimer
457    createtimer reactiveArmorTimer
458    settimer reactiveArmorTimer cdMagicShield
459endif
460
461if not timerexists cleansingBrewTimer
462    settimer cleansingBrewTimer cdCleansingBrew
463endif
464
465if not timerexists magicShieldTimer
466    createtimer magicShieldTimer
467    settimer magicShieldTimer cdMagicShield
468endif
469
470if not timerexists magicMushroomTimer
471    createtimer magicMushroomTimer
472    settimer magicMushroomTimer cdMushroom
473endif
474
475if not timerexists magicArrowTimer
476    createtimer magicArrowTimer
477    settimer magicArrowTimer cdMagicArrow
478endif
479
480if not timerexists lightningTimer
481    createtimer lightningTimer
482    settimer lightningTimer cdLightning
483endif
484
485if not timerexists chainLightningTimer
486    settimer chainLightningTimer cdChainLightning
487endif
488
489if not timerexists harmTimer
490    createtimer harmTimer
491    settimer harmTimer cdHarm
492endif
493
494if not timerexists autoHealTamerPet
495    createtimer autoHealTamerPet
496    settimer autoHealTamerPet cdAutoHealTamerPet
497endif
498
499if not timerexists fireballTimer
500    createtimer fireballTimer
501    settimer fireballTimer cdFireball
502endif
503
504if not timerexists evilOmenTimer
505    createtimer evilOmenTimer
506    settimer evilOmenTimer cdEvilOmen
507endif
508
509if not timerexists vampiricEmbraceTimer
510    createtimer vampiricEmbraceTimer
511    settimer vampiricEmbraceTimer cdVampiricEmbrace
512endif
513
514if not timerexists corpseSkinTimer
515    createtimer corpseSkinTimer
516    settimer corpseSkinTimer cdCorpseSkin
517endif
518
519if not timerexists mindRotTimer
520    createtimer mindRotTimer
521    settimer mindRotTimer cdMindRot
522endif
523
524if not timerexists meditiationTimer
525    createtimer meditiationTimer
526    settimer meditiationTimer cdMeditation
527endif
528
529if not timerexists killTargetTimer
530    createtimer killTargetTimer
531    settimer killTargetTimer cdKillTarget
532endif
533
534if not timerexists witherTimer
535    createtimer witherTimer
536    settimer witherTimer cdWither
537endif
538
539if not timerexists vengefulSpiritTimer
540    createtimer vengefulSpiritTimer
541    settimer vengefulSpiritTimer cdVengefulSpirit
542endif
543
544if not timerexists bloodOathTimer
545    createtimer bloodOathTimer
546    settimer bloodOathTimer cdBloodOath
547endif
548
549if not timerexists painSpikeTimer
550    createtimer painSpikeTimer
551    settimer painSpikeTimer cdPainSpike
552endif
553
554if not timerexists poisonStrikeTimer
555    createtimer poisonStrikeTimer
556    settimer poisonStrikeTimer cdPoisonStrike
557endif
558
559if not timerexists preventOverheadSpamTimer
560    createtimer preventOverheadSpamTimer
561    settimer preventOverheadSpamTimer cdPreventOverheadSpam
562endif
563
564if not timerexists HerdTimer
565    createtimer HerdTimer
566    settimer HerdTimer cdHerdingTimer
567endif
568
569@setvar! cdPreventSpamNecroAbilities 750
570if not timerexists preventSpamNecroAbilitiesTimer
571    createtimer preventSpamNecroAbilitiesTimer
572    settimer preventSpamNecroAbilitiesTimer cdPreventSpamNecroAbilities
573endif
574
575if not varexist myEarthPet
576    @setvar! myEarthPet 0
577endif
578
579// make sure we have enough symbols to summon (6 for wither + vengful spirit)
580if skill "Necromancy" >= 90 and requireWitherBeforeSummons = 1
581    while followers < 4 and 6 > necroSymbols
582        // we already have vengeful spirit active, skip the check
583        if timer vengefulSpiritTimer < cdVengefulSpirit
584           break
585        endif
586        if diffhits >= hpCheckToTriggerGreaterHealSpell
587            if targetexists 
588                hotkey 'Cancel Current Target'
589            endif
590            while not targetexists 'beneficial'
591                if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
592                    cast 'Heal'
593                else
594                    cast 'Greater Heal'                
595                endif
596                wait 50
597                if hp = maxhp
598                    hotkey '> Interrupt'
599                    break
600                endif
601            endwhile
602            if targetexists 'beneficial'
603                hotkey 'Target Self'
604            endif
605        endif
606        if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
607            overhead "waiting for symbols" 88
608            settimer preventOverheadSpamTimer 0
609        endif
610        if gumpexists 622436516 and skill "Necromancy" >= 50
611            if ingump "12/" 622436516
612                @setvar! necroSymbols 12
613            elseif ingump "13/" 622436516
614                @setvar! necroSymbols 13
615            elseif ingump "14/" 622436516
616                @setvar! necroSymbols 14
617            elseif ingump "15/" 622436516
618                @setvar! necroSymbols 15
619            elseif ingump "16/" 622436516
620                @setvar! necroSymbols 16
621            elseif ingump "17/" 622436516
622                @setvar! necroSymbols 17
623            elseif ingump "18/" 622436516
624                @setvar! necroSymbols 18
625            elseif ingump "19/" 622436516
626                @setvar! necroSymbols 19
627            elseif ingump "20/" 622436516
628                @setvar! necroSymbols 20
629            elseif ingump "21/" 622436516
630                @setvar! necroSymbols 21
631            elseif ingump "11/" 622436516
632                @setvar! necroSymbols 11
633            elseif ingump "10/" 622436516
634                @setvar! necroSymbols 10
635            elseif ingump "9/" 622436516
636                @setvar! necroSymbols 9
637            elseif ingump "8/" 622436516
638                @setvar! necroSymbols 8
639            elseif ingump "7/" 622436516
640                @setvar! necroSymbols 7
641            elseif ingump "6/" 622436516
642                @setvar! necroSymbols 6
643            elseif ingump "5/" 622436516
644                @setvar! necroSymbols 5
645            elseif ingump "4/" 622436516
646                @setvar! necroSymbols 4
647            elseif ingump "3/" 622436516
648                @setvar! necroSymbols 3
649            elseif ingump "2/" 622436516
650                @setvar! necroSymbols 2
651            elseif ingump "1/" 622436516
652                @setvar! necroSymbols 1
653            elseif ingump "0/" 622436516
654                @setvar! necroSymbols 0
655            endif
656        endif
657    endwhile
658endif
659
660
661if diffhits >= hpCheckToTriggerGreaterHealSpell
662    if targetexists 
663        hotkey 'Cancel Current Target'
664    endif
665    hotkey 'all guard me'
666    while not targetexists 'beneficial'
667        if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
668            cast 'Heal'
669        else
670            cast 'Greater Heal'                
671        endif
672        wait 50
673        if hp = maxhp
674            hotkey '> Interrupt'
675            break
676        endif
677    endwhile
678    if targetexists 'beneficial'
679        hotkey "Target Self"
680    endif
681    replay
682endif
683
684if renamePets = 0
685    clearlist petNameList
686endif
687 
688if castSummonFireElementalCount > 0 and castSummonLichCount > 0
689    overhead "I am not going to do that. Update lich/fire to one or the other." 34
690    sysmsg "I am not going to do that. Update lich/fire to one or the other." 34
691    wait 2000
692    replay
693elseif castSummonEarthElementalCount > 0 and castSummonMummyCount > 0
694    overhead "I am not going to do that. Update earth/mummy to one or the other." 34
695    sysmsg "I am not going to do that. Update earth/mummy to one or the other." 34
696    wait 2000
697    replay
698elseif castSummonDemonCount > 0 and castSummonThrallCount > 0
699    overhead "I am not going to do that. Update demon/thrall to one or the other." 34
700    sysmsg "I am not going to do that. Update demon/thrall to one or the other." 34
701    wait 2000
702    replay
703elseif castSummonAirCount > 0 and castSummonFiendCount > 0
704    overhead "I am not going to do that. Update air/fiend to one or the other." 34
705    sysmsg "I am not going to do that. Update air/fiend to one or the other." 34
706    wait 2000
707    replay
708elseif castSummonWaterCount > 0 and castSummonRagWitchCount > 0
709    overhead "I am not going to do that. Update water/witch to one or the other." 34
710    sysmsg "I am not going to do that. Update water/witch to one or the other." 34
711    wait 2000
712    replay
713endif
714
715if not gumpexists 622436516 and skill "Necromancy" >= 50
716    say '[NecromancyHotbar'
717    wait 500
718endif
719
720if not varexist myMainTankPet
721    @setvar! myMainTankPet 0
722endif
723
724if not varexist fireOne
725    @setvar! fireOne 0
726endif
727
728if not varexist fireTwo
729    @setvar! fireTwo 0
730endif
731
732if not varexist earthOne
733    @setvar! earthOne 0
734endif
735
736if not varexist earthTwo
737    @setvar! earthTwo 0
738endif
739
740if not varexist demonOne
741    @setvar! demonOne 0
742endif
743
744if not varexist demonTwo
745    @setvar! demonTwo 0
746endif
747
748if not varexist airOne
749    @setvar! airOne 0
750endif
751
752if not varexist airTwo
753    @setvar! airTwo 0
754endif
755
756if not varexist waterOne
757    @setvar! waterOne 0
758endif
759
760if not varexist waterTwo
761    @setvar! waterTwo 0
762endif
763
764if not varexist evOne
765    @setvar! evOne 0
766endif
767
768if not varexist bsOne
769    @setvar! bsOne 0
770endif
771
772removelist summonList
773createlist summonList
774    
775if followers = 0
776    @setvar! followCount 0
777elseif followers = 1
778    @setvar! followCount 1
779elseif followers = 2
780    @setvar! followCount 2
781elseif followers = 3
782    @setvar! followCount 3
783elseif followers = 4
784    @setvar! followCount 4
785elseif followers = 5
786    @setvar! followCount 5
787endif
788
789if castSummonEarthElementalCount > 0 or castSummonMummyCount > 0
790    if dead earthOne or not find earthOne ground -1 -1 18
791        if followers < 4
792            pushlist summonList "Earth Elemental"
793            @setvar! earthOne 1
794        endif
795    endif
796    if castSummonEarthElementalCount > 1 or castSummonMummyCount > 1
797        if dead earthTwo or not find earthTwo ground -1 -1 18
798            if followers < 4
799                pushlist summonList "Earth Elemental"
800                @setvar! earthTwo 1
801            endif
802        endif
803    endif
804endif
805
806if castSummonFireElementalCount > 0 or castSummonLichCount > 0
807    if dead fireOne or not find fireOne ground -1 -1 18
808        if followers < 4
809            pushlist summonList "Fire Elemental"
810            @setvar! fireOne 1
811        endif
812    endif
813    if castSummonFireElementalCount > 1 or castSummonLichCount > 1
814        if dead fireTwo or not find fireTwo ground -1 -1 18
815            if followers < 4
816                pushlist summonList "Fire Elemental"
817                @setvar! fireTwo 1
818            endif
819        endif
820    endif
821endif
822
823if castSummonDemonCount > 0 or castSummonThrallCount > 0
824    if dead demonOne or not find demonOne ground -1 -1 18
825        if followers < 4
826            pushlist summonList "Summon Daemon"
827            @setvar! demonOne 1
828        endif
829    endif
830    if castSummonDemonCount > 1 or castSummonThrallCount > 1
831        if dead demonTwo or not find demonTwo ground -1 -1 18
832            if followers < 4
833                pushlist summonList "Summon Daemon"
834                @setvar! demonTwo 1
835            endif
836        endif
837    endif
838endif
839
840if castSummonAirCount > 0 or castSummonFiendCount > 0
841    if dead airOne or not find airOne ground -1 -1 18
842        if followers < 4
843            pushlist summonList "Air Elemental"
844            @setvar! airOne 1
845        endif
846    endif
847    if castSummonAirCount > 1 or castSummonFiendCount > 1
848        if dead airTwo or not find airTwo ground -1 -1 18
849            if followers < 4
850                pushlist summonList "Air Elemental"
851                @setvar! airTwo 1
852            endif
853        endif
854    endif
855endif
856
857if castSummonWaterCount > 0 or castSummonRagWitchCount > 0
858    if dead waterOne or not find waterOne ground -1 -1 18
859        if followers < 4
860            pushlist summonList "Water Elemental"
861            @setvar! waterOne 1
862        endif
863    endif
864    if castSummonWaterCount > 1 or castSummonRagWitchCount > 1
865        if dead waterTwo or not find waterTwo ground -1 -1 18
866            if followers < 4
867                pushlist summonList "Water Elemental"
868                @setvar! waterTwo 1
869            endif
870        endif
871    endif
872endif
873
874if castEnergyVortexCount > 0 or castJackalSpiritCount > 0
875    if dead evOne or not find evOne ground -1 -1 18
876        if followers < 5
877            pushlist summonList "Energy Vortex"
878            @setvar! evOne 1
879        endif
880    endif
881endif
882
883if castBladeSpiritCount > 0 or castSkeletalHuskCount > 0
884    if dead bsOne or not find bsOne ground -1 -1 18
885        if followers < 5
886            pushlist summonList "Blade Spirits"
887            @setvar! bsOne 1
888        endif
889    endif
890endif
891
892if followers < 5
893    if castSummonCreatureCount = 1
894        pushlist summonList "Summ. Creature"
895    elseif castSummonCreatureCount = 2
896        pushlist summonList "Summ. Creature"
897        pushlist summonList "Summ. Creature"
898    elseif castSummonCreatureCount = 3
899        pushlist summonList "Summ. Creature"
900        pushlist summonList "Summ. Creature"
901        pushlist summonList "Summ. Creature"
902    elseif castSummonCreatureCount = 4
903        pushlist summonList "Summ. Creature"
904        pushlist summonList "Summ. Creature"
905        pushlist summonList "Summ. Creature"
906        pushlist summonList "Summ. Creature"
907    elseif castSummonCreatureCount = 5
908        pushlist summonList "Summ. Creature"
909        pushlist summonList "Summ. Creature"
910        pushlist summonList "Summ. Creature"
911        pushlist summonList "Summ. Creature"
912        pushlist summonList "Summ. Creature"
913    endif
914    while targetexists 
915        hotkey 'Cancel Current Target'
916        wait 200
917    endwhile
918endif
919
920foreach summon in summonList
921    if followers < 5
922        overhead "Casting Summon: {{summon}}" 88
923        while mana < 50
924            if timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
925                overhead "Eating shrooms" 66
926                dclick mushy
927                @setvar! jase_shrooms mushy
928                wait 200
929                if insysmsg "You consume a magic mushroom and restore some mana."
930                    settimer magicMushroomTimer 0    
931                elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
932                    settimer magicMushroomTimer 30000
933                endif
934            endif
935            if diffhits >= hpCheckToTriggerGreaterHealSpell
936                replay
937            endif
938            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
939                overhead "waiting for mana" 88
940                settimer preventOverheadSpamTimer 0
941            endif
942            if not findbuff "Actively Meditating"
943                useskill "meditation"
944            endif
945            wait 200
946        endwhile
947        
948        @setvar! needVengefulSpirit 0
949        
950        if summon = "Earth Elemental" and castSummonMummyCount > 0
951            @setvar! needVengefulSpirit 1
952        elseif summon = "Fire Elemental" and castSummonLichCount > 0
953            @setvar! needVengefulSpirit 1
954        elseif summon = "Summon Daemon" and castSummonThrallCount > 0
955            @setvar! needVengefulSpirit 1
956        elseif summon = "Air Elemental" and castSummonFiendCount > 0
957            @setvar! needVengefulSpirit 1
958        elseif summon = "Water Elemental" and castSummonRagWitchCount > 0
959            @setvar! needVengefulSpirit 1
960        elseif summon = "Summ. Creature" and skill "Necromancy" >= 50
961            @setvar! needVengefulSpirit 1
962        elseif summon = "Energy Vortex" and castJackalSpiritCount > 0
963            @setvar! needVengefulSpirit 1
964        elseif summon = "Blade Spirits" and castSkeletalHuskCount > 0
965            @setvar! needVengefulSpirit 1
966        elseif timer vengefulSpiritTimer <= cdVengefulSpirit and skill "Necromancy" >= 50
967            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
968                overhead  "Waiting for spirit to go away" 88
969                settimer preventOverheadSpamTimer 0
970            endif
971            replay
972        endif
973        
974        if needVengefulSpirit = 1
975            if timer vengefulSpiritTimer >= cdVengefulSpirit and skill "Necromancy" >= 50
976                yell "[VengefulSpirit"
977                settimer vengefulSpiritTimer 0
978                wait 500
979            endif
980        elseif timer vengefulSpiritTimer <= cdVengefulSpirit and skill "Necromancy" >= 50
981            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
982                overhead  "Waiting for spirit to go away" 88
983                settimer preventOverheadSpamTimer 0
984            endif
985            replay
986        endif
987
988        if followers = 0
989            @setvar! followCount 0
990        elseif followers = 1
991            @setvar! followCount 1
992        elseif followers = 2
993            @setvar! followCount 2
994        elseif followers = 3
995            @setvar! followCount 3
996        elseif followers = 4
997            @setvar! followCount 4
998        elseif followers = 5
999            @setvar! followCount 5
1000        endif
1001        
1002        if summon = "Summ. Creature" or summon = "Blade Spirits"
1003            // these only take 1 - so keep trying to cast
1004        elseif followers >= 4
1005            // if we already at 4, skip to next summon
1006            break
1007        endif
1008        
1009        
1010        while followers = followCount
1011            if followers = 5
1012                break
1013            endif
1014            cast summon
1015            wft 500
1016            if targetexists 
1017                hotkey "Target Self"
1018                wait 200
1019            endif
1020            if timer witherTimer >= cdWither and skill "Necromancy" >= 95
1021                yell "[Wither"
1022                settimer witherTimer 0
1023            endif
1024            if diffhits >= hpCheckToTriggerGreaterHealSpell
1025                if targetexists 
1026                    hotkey "Cancel Current target"
1027                endif
1028                overhead "Need a heal!"
1029                hotkey '> Interrupt'
1030                while diffhits >= hpCheckToTriggerGreaterHealSpell and mana > 12
1031                    while not targetexists beneficial
1032                        if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
1033                            cast 'Heal'
1034                        else
1035                            cast 'Greater Heal'                
1036                        endif
1037                        wait 50
1038                    endwhile
1039                    while targetexists beneficial
1040                        hotkey "Target Self"
1041                        wait 50
1042                    endwhile
1043                endwhile
1044            endif
1045        endwhile
1046        wait 200
1047        
1048        @setvar! myFreshlySummonedPet 0
1049
1050        // 158 - an ancient mummy
1051        // 14 - an earth elemental
1052        if summon = "Earth Elemental" and findtype 158|14 ground -1 -1 2 as myPet
1053            @setvar! myFreshlySummonedPet myPet
1054            if earthOne = 1
1055                @setvar! earthOne myPet
1056            elseif earthTwo = 1
1057                @setvar! earthTwo myPet
1058            endif
1059        // 24 - a lich
1060        // 15 - a fire elemental
1061        elseif summon = "Fire Elemental" and findtype 24|15 ground -1 -1 2 as myPet
1062            @setvar! myFreshlySummonedPet myPet
1063            if fireOne = 1
1064                @setvar! fireOne myPet
1065            elseif fireTwo = 1
1066                @setvar! fireTwo myPet
1067            endif
1068        // 9 - a deamon
1069        // 722 - a vampire thrall
1070        elseif summon = "Summon Daemon" and findtype 9|722 ground -1 -1 2 as myPet
1071            @setvar! myFreshlySummonedPet myPet
1072            if demonOne = 1
1073                @setvar! demonOne myPet
1074            elseif demonTwo = 1
1075                @setvar! demonTwo myPet
1076            endif
1077        // 16 - water elemental
1078        // 740 - a rage witch
1079        elseif summon = "Water Elemental" and findtype 16|740 ground -1 -1 2 as myPet
1080            @setvar! myFreshlySummonedPet myPet
1081            if waterOne = 1
1082                @setvar! waterOne myPet
1083            elseif waterTwo = 1
1084                @setvar! waterTwo myPet
1085            endif
1086        // 13 - air elemental
1087        // 306 - a skeletal fiend
1088        elseif summon = "Air Elemental" and findtype 13|306 ground -1 -1 2 as myPet
1089            @setvar! myFreshlySummonedPet myPet
1090            if airOne = 1
1091                @setvar! airOne myPet
1092            elseif airTwo = 1
1093                @setvar! airTwo myPet
1094            endif
1095        elseif summon = "Summ. Creature"
1096            // TODO: gather all summon creature types
1097            
1098        // 13 - an energy vortex
1099        // 391 - a jackal spirit
1100        elseif summon = "Energy Vortex" and findtype 13|391 ground -1 -1 2 as myPet
1101            @setvar! myFreshlySummonedPet myPet
1102            if evOne = 1
1103                @setvar! evOne myPet
1104            endif
1105        // 574 - a blade spirit
1106        // 309 - a skeletal husk
1107        elseif summon = "Blade Spirits" and findtype 574|309 ground -1 -1 2 as myPet
1108            @setvar! myFreshlySummonedPet myPet
1109            if bsOne = 1
1110                @setvar! bsOne myPet
1111            endif
1112        endif
1113        
1114        if summon = "Summ. Creature"
1115           overhead "Creature summoned!" 88
1116        elseif myFreshlySummonedPet = 0
1117           overhead "Not found" 88
1118        else
1119            if noto myFreshlySummonedPet = "friend" and list petNameList > 0
1120                overhead "Renaming..." 77
1121                foreach petName in petNameList
1122                    overhead "Rename to {{petName}}..." 66 myFreshlySummonedPet
1123                    rename myFreshlySummonedPet petName
1124                    wait 200
1125                    if insysmsg "That name is unacceptable."
1126                        overhead "Unable to name pet: {{petName}}" 34
1127                        sysmsg "Unable to name pet: {{petName}}" 34
1128                    endif
1129                    break
1130                endfor
1131                poplist petNameList "front"
1132            endif
1133            overhead "New Pet: {{summon}}" 88 myFreshlySummonedPet
1134            if summon = "Energy Vortex" or summon = "Blade Spirits"
1135                // do nothing
1136            elseif skill "herding" > 0
1137                // guard
1138                menu myFreshlySummonedPet 4
1139            else
1140                // guard
1141                menu myFreshlySummonedPet 3
1142            endif
1143            @ignore myFreshlySummonedPet
1144        endif
1145        wait 500
1146    else
1147        break
1148    endif
1149endfor
1150
1151if dead myMainTankPet
1152    if not dead earthOne
1153        @setvar! myMainTankPet earthOne
1154    elseif not dead earthTwo
1155        @setvar! myMainTankPet earthTwo
1156    elseif not dead waterOne
1157        @setvar! myMainTankPet waterOne
1158    elseif not dead waterTwo
1159        @setvar! myMainTankPet waterTwo
1160    elseif not dead demonOne
1161        @setvar! myMainTankPet demonOne
1162    elseif not dead demonTwo
1163        @setvar! myMainTankPet demonTwo
1164    elseif not dead fireOne
1165        @setvar! myMainTankPet fireOne
1166    elseif not dead fireTwo
1167        @setvar! myMainTankPet fireTwo
1168    elseif not dead airOne
1169        @setvar! myMainTankPet airOne
1170    elseif not dead airTwo
1171        @setvar! myMainTankPet airTwo
1172    endif
1173endif
1174
1175if not varexist lastCannotBeSeen
1176    @setvar! lastCannotBeSeen 0
1177endif
1178
1179if lastCannotBeSeen != 0 and dead lastCannotBeSeen
1180    @setvar! lastCannotBeSeen 0
1181    @setvar! lastCannotBeSeenLoopIndex 0
1182endif
1183
1184# Eat food if we got it
1185if not findbuff "food" and findtype "tray" backpack as jood
1186    dclick jood
1187    wait 200
1188endif
1189
1190if targetexists harmful
1191    hotkey "Cancel current target"
1192endif
1193
1194if useTargetSystem = 0
1195    say "all kill"
1196    wait 200
1197    while targetexists 
1198        // wait
1199        wait 50
1200    endwhile
1201    
1202    @setvar myKillTarget lasttarget 
1203elseif useTargetSystem = 1
1204    hotkey 'Target Closest Non-Friendly Monster'
1205    wait 200
1206    if insysmsg "No one matching that was found"
1207        if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1208            overhead "found no one" 34
1209            settimer preventOverheadSpamTimer 0
1210        endif
1211        if autoBotEnabled = 1
1212            wait 500
1213            replay
1214        endif
1215        stop
1216    elseif not find lasttarget ground -1 -1 10
1217    
1218        @setvar checkForSummons lasttarget 
1219        getlabel checkForSummons checkForSummonsDesc
1220    
1221        if "(summoned" in checkForSummonsDesc or "(bonded" in checkForSummonsDesc or "the battle trainer" in checkForSummonsDesc
1222            overhead "▼ Player pet - IGNORE ▼" 77 lasttarget
1223            while not targetexists 
1224                hotkey 'Add Target To: IgnoreMobs'
1225                wait 200
1226            endwhile
1227            target myKillTarget 
1228            replay
1229        endif    
1230    
1231        overhead "● ▼ OUT OF RANGE ▼ ●" 88 lasttarget
1232        if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1233            overhead "Move closer, more then 8 tiles away" 34
1234            settimer preventOverheadSpamTimer 0
1235        endif
1236        if autoBotEnabled = 1
1237            wait 500
1238            replay
1239        endif
1240        stop
1241    else
1242        
1243        @setvar checkForSummons lasttarget 
1244        getlabel checkForSummons checkForSummonsDesc
1245    
1246        if "(summoned" in checkForSummonsDesc or "(bonded" in checkForSummonsDesc or "the battle trainer" in checkForSummonsDesc
1247            overhead "▼ Player pet - IGNORE ▼" 77 lasttarget
1248            while not targetexists 
1249                hotkey 'Add Target To: IgnoreMobs'
1250                wait 200
1251            endwhile
1252            target myKillTarget 
1253            replay
1254        endif    
1255        
1256        overhead "● ▼▼ HERE ▼▼ ●" 88 lasttarget
1257    endif    
1258    
1259    @setvar myKillTarget lasttarget 
1260    
1261elseif useTargetSystem = 2
1262
1263    // do find type     
1264    if jaseDebugMode = 1
1265        overhead "do find type"
1266    endif
1267    
1268    //@setvar! mobDiff 0
1269    
1270    // should we cast spells
1271    // should our pets kill it only?
1272    // do we need to debuff the mob?
1273        // boss - do we want to do manadrain vs mana vampire
1274        
1275        // targeting 
1276        
1277    @setvar! myFindTypeMob 0
1278    
1279    if findtype 54|1|141|34|843|1081|44|42|68|88|28|159|11|631|612|281|280|313|385|21|727|689|735|74|400|732|24|776|39|400|215|717|51|716|14|12|60|37|37|21|155|14|138|787|787|395|79|259|783|782|781|58|715|738|727|1419|1504|310|99|113|214|736|204|158|29|75|9|59|61|16|303|306|30|241|730|393|17|314|48|21|721|53|42|1069|287|59|58|401|16|778|715|47|725|169|317|213|384|373|734|23|27|25|705|728|37|779|775|173|92|98|80|388|98|287|302|73|720|252|8|392|9|14|319|4|386|22|9|16|400|400|401|401|401|401|49|96|8|315|303|309|386|169|37|777|59|718|61|718|9|104|266|12|60|12|60|393|721|31|400|401|12|60|778|393|251|12|60|37|826|154|264|39|9|128|176|374|738|169|315|393|776|734|317|13|720|225|305|401|131|94|93|244|16|318|392|393|310|372|309|49|130|83|130|753|59|114|116|830|26|778|400|401|26|81|48|732|779|723|4|387|150|334|385|261|1069|390|304|379|307|729|384|160|74|400|400|400|9|4|784|400|400|400|400|401|4|391|214|13|724|206|16|293|40|43|24|24|285|705|199|199|829|256|160|573|259|400|776|263|375|9|241|39|39|206|202|380|13|30|8|51|4|154|16|312|79|148|401|204|1069|73|748|86|85|87|86|782|781|400|401|401|400|401|400|400|401|401|401|401|401|400|789|316|401|120|832|108|396|393|401|401|757|401|400|401|756|401|763|730|716|16|16|787|740|3|401|75|9|59|400|401|401|401|401|400|400|401|401|400|400|401|21|970|92|16|270|970|400|401|401|401|37|270|37|1419|1504|251|315|51|741|37|169|717|740|715|14|74|206|242|778|739|776|16|51|304|3|300|29|382|104|306|309|57|50|56|302|59|61|1503|24|14|13|51|252|31|400|390|23|27|400|400|704|689|383|25|293|371|21|705|30|36|8|1419|1504|721|12|60|736|788|69|71|738|72|70|780|242|400|37|737|199|401|400|401|722|317|258|229|300|380|22|59|61|15|42|45|394|1419|1504|47|97|47|285|65|225|73|30|382|739|743|62|733|17|80|18|55|41|317|81|215|31|24|35|400|225|30|3|390|72|9|384|41|58|400|400|119 ground -1 -1 2 as daklue
1280        @setvar! myFindTypeMob daklue
1281        getlabel myFindTypeMob helperDesc
1282        overhead "● ▼▼ HERE ▼▼ ●" 88 myFindTypeMob    
1283
1284        if jaseDebugMode = 1
1285            overhead "● block 1 {{helperDesc}}" 88   
1286            hotkey "Get InfoGump"
1287            wft 500
1288            target myFindTypeMob
1289        endif
1290        
1291        elseif findtype 54|1|141|34|843|1081|44|42|68|88|28|159|11|631|612|281|280|313|385|21|727|689|735|74|400|732|24|776|39|400|215|717|51|716|14|12|60|37|37|21|155|14|138|787|787|395|79|259|783|782|781|58|715|738|727|1419|1504|310|99|113|214|736|204|158|29|75|9|59|61|16|303|306|30|241|730|393|17|314|48|21|721|53|42|1069|287|59|58|401|16|778|715|47|725|169|317|213|384|373|734|23|27|25|705|728|37|779|775|173|92|98|80|388|98|287|302|73|720|252|8|392|9|14|319|4|386|22|9|16|400|400|401|401|401|401|49|96|8|315|303|309|386|169|37|777|59|718|61|718|9|104|266|12|60|12|60|393|721|31|400|401|12|60|778|393|251|12|60|37|826|154|264|39|9|128|176|374|738|169|315|393|776|734|317|13|720|225|305|401|131|94|93|244|16|318|392|393|310|372|309|49|130|83|130|753|59|114|116|830|26|778|400|401|26|81|48|732|779|723|4|387|150|334|385|261|1069|390|304|379|307|729|384|160|74|400|400|400|9|4|784|400|400|400|400|401|4|391|214|13|724|206|16|293|40|43|24|24|285|705|199|199|829|256|160|573|259|400|776|263|375|9|241|39|39|206|202|380|13|30|8|51|4|154|16|312|79|148|401|204|1069|73|748|86|85|87|86|782|781|400|401|401|400|401|400|400|401|401|401|401|401|400|789|316|401|120|832|108|396|393|401|401|757|401|400|401|756|401|763|730|716|16|16|787|740|3|401|75|9|59|400|401|401|401|401|400|400|401|401|400|400|401|21|970|92|16|270|970|400|401|401|401|37|270|37|1419|1504|251|315|51|741|37|169|717|740|715|14|74|206|242|778|739|776|16|51|304|3|300|29|382|104|306|309|57|50|56|302|59|61|1503|24|14|13|51|252|31|400|390|23|27|400|400|704|689|383|25|293|371|21|705|30|36|8|1419|1504|721|12|60|736|788|69|71|738|72|70|780|242|400|37|737|199|401|400|401|722|317|258|229|300|380|22|59|61|15|42|45|394|1419|1504|47|97|47|285|65|225|73|30|382|739|743|62|733|17|80|18|55|41|317|81|215|31|24|35|400|225|30|3|390|72|9|384|41|58|400|400|119 ground -1 -1 4 as daklue
1292        @setvar! myFindTypeMob daklue
1293        getlabel myFindTypeMob helperDesc
1294        overhead "● ▼▼ HERE ▼▼ ●" 88 myFindTypeMob
1295        if jaseDebugMode = 1
1296            overhead "● block 2 {{helperDesc}}" 88   
1297            hotkey "Get InfoGump"
1298            wft 500
1299            target myFindTypeMob
1300        endif
1301        elseif findtype 54|1|141|34|843|1081|44|42|68|88|28|159|11|631|612|281|280|313|385|21|727|689|735|74|400|732|24|776|39|400|215|717|51|716|14|12|60|37|37|21|155|14|138|787|787|395|79|259|783|782|781|58|715|738|727|1419|1504|310|99|113|214|736|204|158|29|75|9|59|61|16|303|306|30|241|730|393|17|314|48|21|721|53|42|1069|287|59|58|401|16|778|715|47|725|169|317|213|384|373|734|23|27|25|705|728|37|779|775|173|92|98|80|388|98|287|302|73|720|252|8|392|9|14|319|4|386|22|9|16|400|400|401|401|401|401|49|96|8|315|303|309|386|169|37|777|59|718|61|718|9|104|266|12|60|12|60|393|721|31|400|401|12|60|778|393|251|12|60|37|826|154|264|39|9|128|176|374|738|169|315|393|776|734|317|13|720|225|305|401|131|94|93|244|16|318|392|393|310|372|309|49|130|83|130|753|59|114|116|830|26|778|400|401|26|81|48|732|779|723|4|387|150|334|385|261|1069|390|304|379|307|729|384|160|74|400|400|400|9|4|784|400|400|400|400|401|4|391|214|13|724|206|16|293|40|43|24|24|285|705|199|199|829|256|160|573|259|400|776|263|375|9|241|39|39|206|202|380|13|30|8|51|4|154|16|312|79|148|401|204|1069|73|748|86|85|87|86|782|781|400|401|401|400|401|400|400|401|401|401|401|401|400|789|316|401|120|832|108|396|393|401|401|757|401|400|401|756|401|763|730|716|16|16|787|740|3|401|75|9|59|400|401|401|401|401|400|400|401|401|400|400|401|21|970|92|16|270|970|400|401|401|401|37|270|37|1419|1504|251|315|51|741|37|169|717|740|715|14|74|206|242|778|739|776|16|51|304|3|300|29|382|104|306|309|57|50|56|302|59|61|1503|24|14|13|51|252|31|400|390|23|27|400|400|704|689|383|25|293|371|21|705|30|36|8|1419|1504|721|12|60|736|788|69|71|738|72|70|780|242|400|37|737|199|401|400|401|722|317|258|229|300|380|22|59|61|15|42|45|394|1419|1504|47|97|47|285|65|225|73|30|382|739|743|62|733|17|80|18|55|41|317|81|215|31|24|35|400|225|30|3|390|72|9|384|41|58|400|400|119 ground -1 -1 10 as daklue
1302        @setvar! myFindTypeMob daklue
1303        getlabel myFindTypeMob helperDesc
1304        overhead "● ▼▼ HERE ▼▼ ●" 88 myFindTypeMob
1305        if jaseDebugMode = 1
1306            overhead "● block 3 {{helperDesc}}" 88   
1307            hotkey "Get InfoGump"
1308            wft 500
1309            target myFindTypeMob
1310        endif
1311        elseif findtype 54|1|141|34|843|1081|44|42|68|88|28|159|11|631|612|281|280|313|385|21|727|689|735|74|400|732|24|776|39|400|215|717|51|716|14|12|60|37|37|21|155|14|138|787|787|395|79|259|783|782|781|58|715|738|727|1419|1504|310|99|113|214|736|204|158|29|75|9|59|61|16|303|306|30|241|730|393|17|314|48|21|721|53|42|1069|287|59|58|401|16|778|715|47|725|169|317|213|384|373|734|23|27|25|705|728|37|779|775|173|92|98|80|388|98|287|302|73|720|252|8|392|9|14|319|4|386|22|9|16|400|400|401|401|401|401|49|96|8|315|303|309|386|169|37|777|59|718|61|718|9|104|266|12|60|12|60|393|721|31|400|401|12|60|778|393|251|12|60|37|826|154|264|39|9|128|176|374|738|169|315|393|776|734|317|13|720|225|305|401|131|94|93|244|16|318|392|393|310|372|309|49|130|83|130|753|59|114|116|830|26|778|400|401|26|81|48|732|779|723|4|387|150|334|385|261|1069|390|304|379|307|729|384|160|74|400|400|400|9|4|784|400|400|400|400|401|4|391|214|13|724|206|16|293|40|43|24|24|285|705|199|199|829|256|160|573|259|400|776|263|375|9|241|39|39|206|202|380|13|30|8|51|4|154|16|312|79|148|401|204|1069|73|748|86|85|87|86|782|781|400|401|401|400|401|400|400|401|401|401|401|401|400|789|316|401|120|832|108|396|393|401|401|757|401|400|401|756|401|763|730|716|16|16|787|740|3|401|75|9|59|400|401|401|401|401|400|400|401|401|400|400|401|21|970|92|16|270|970|400|401|401|401|37|270|37|1419|1504|251|315|51|741|37|169|717|740|715|14|74|206|242|778|739|776|16|51|304|3|300|29|382|104|306|309|57|50|56|302|59|61|1503|24|14|13|51|252|31|400|390|23|27|400|400|704|689|383|25|293|371|21|705|30|36|8|1419|1504|721|12|60|736|788|69|71|738|72|70|780|242|400|37|737|199|401|400|401|722|317|258|229|300|380|22|59|61|15|42|45|394|1419|1504|47|97|47|285|65|225|73|30|382|739|743|62|733|17|80|18|55|41|317|81|215|31|24|35|400|225|30|3|390|72|9|384|41|58|400|400|119 ground -1 -1 12 as daklue
1312        @setvar! myFindTypeMob daklue
1313        overhead "● ▼ OUT OF RANGE ▼ ●" 88 daklue
1314        getlabel daklue helperDesc
1315        if jaseDebugMode = 1
1316            overhead "● block 4 {{helperDesc}}" 88   
1317            hotkey "Get InfoGump"
1318            wft 500
1319            target myFindTypeMob
1320        endif
1321        if "(summoned" in helperDesc or "(bonded" in helperDesc or "(tamed" in helperDesc or "the battle trainer" in helperDesc
1322            overhead "▼ Player pet - IGNORE ▼" 77 daklue
1323            ignore daklue
1324            replay
1325        endif  
1326        wait 200
1327        
1328        if patrolPetEvenIfLastTargetIsBeyondEightTiles = 1
1329            
1330            if not timerexists myPatrolPetTimer
1331                settimer myPatrolPetTimer 5000
1332            endif
1333        
1334            if not varexist myPatrolPet
1335                @setvar! myPatrolPet 0
1336            endif
1337
1338            if find myPatrolPet ground -1 -1 10
1339                // do nothing
1340            elseif find earthOne ground -1 -1 10
1341                @setvar! myPatrolPet earthOne
1342            elseif find earthTwo ground -1 -1 10
1343                @setvar! myPatrolPet earthTwo
1344            elseif find fireOne ground -1 -1 10
1345                @setvar! myPatrolPet fireOne
1346            elseif find fireTwo ground -1 -1 10
1347                @setvar! myPatrolPet fireTwo
1348            elseif find demonOne ground -1 -1 10
1349                @setvar! myPatrolPet demonOne
1350            elseif find demonTwo ground -1 -1 10
1351                @setvar! myPatrolPet demonTwo
1352            elseif find airOne ground -1 -1 10
1353                @setvar! myPatrolPet airOne
1354            elseif find airTwo ground -1 -1 10
1355                @setvar! myPatrolPet airTwo
1356            elseif find waterOne ground -1 -1 10
1357                @setvar! myPatrolPet waterOne
1358            elseif find waterTwo ground -1 -1 10
1359                @setvar! myPatrolPet waterTwo
1360            else
1361                 @setvar! myPatrolPet 0
1362            endif
1363
1364            if myPatrolPet = 0
1365                // do nothing
1366            elseif timer myPatrolPetTimer >= 5000
1367                overhead "● SEND IN PATROL PET ●" 77 myFindTypeMob    
1368                if skill "Herding" > 0
1369                    menu myPatrolPet 3
1370                else
1371                    menu myPatrolPet 2
1372                endif
1373                wft 500
1374                target myFindTypeMob
1375                settimer myPatrolPetTimer 0
1376            endif
1377        
1378        endif 
1379        
1380        replay
1381    else
1382        if jaseDebugMode = 1
1383            overhead "● block 5" 88   
1384        endif
1385        if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1386            overhead "Found type found no one" 34
1387            settimer preventOverheadSpamTimer 0
1388        endif
1389        wait 200
1390        replay
1391    endif
1392    
1393    if myFindTypeMob = 0
1394        wait 200 
1395        replay
1396    elseif dead myFindTypeMob
1397        wait 200 
1398        replay
1399    else
1400        getlabel myFindTypeMob checkForSummonsDesc
1401        overhead "Found: {{checkForSummonsDesc}}" 88 myFindTypeMob
1402
1403        if "(summoned" in checkForSummonsDesc or "(bonded" in checkForSummonsDesc or "(tamed" in checkForSummonsDesc or "the battle trainer" in checkForSummonsDesc
1404            overhead "▼ Player pet - IGNORE ▼" 77 myFindTypeMob
1405            @ignore myFindTypeMob
1406            replay
1407        endif    
1408
1409        if noto myFindTypeMob = "friend"
1410            @ignore myFindTypeMob
1411            replay
1412        elseif noto myFindTypeMob = "innocent"
1413            @ignore myFindTypeMob
1414            replay
1415        elseif noto myFindTypeMob = "hostile" or noto myFindTypeMob = "criminal"
1416            //overhead "Gray" 88
1417        elseif noto myFindTypeMob = "murderer"
1418            //overhead "Red" 34
1419        elseif noto myFindTypeMob = "enemy"
1420            //overhead "Orange" 34
1421        elseif noto daklue = "invulnerable"
1422            @ignore myFindTypeMob
1423            replay
1424        else
1425            overhead "Unknown" 34
1426            wait 500
1427            @ignore myFindTypeMob
1428            replay
1429        endif
1430                
1431        @setvar! myKillTarget myFindTypeMob
1432    endif
1433elseif useTargetSystem = 3
1434    
1435    hotkey 'Next Non-Friendly Monster Target'
1436    wait 200
1437    if insysmsg "No one matching that was found"
1438        if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1439            overhead "found no one" 34
1440            settimer preventOverheadSpamTimer 0
1441        endif
1442        if autoBotEnabled = 1
1443            wait 500
1444            replay
1445        endif
1446        stop
1447    else
1448        
1449        @setvar checkForSummons lasttarget 
1450        getlabel checkForSummons checkForSummonsDesc
1451        
1452        if "(summoned" in checkForSummonsDesc or "(bonded" in checkForSummonsDesc or "the battle trainer" in checkForSummonsDesc
1453            overhead "▼ Player pet - IGNORE ▼" 77 lasttarget
1454            replay
1455        endif    
1456    
1457        if find lasttarget ground -1 -1 8
1458            // we ready
1459            overhead "● ▼▼ HERE ▼▼ ●" 88 lasttarget 
1460        elseif find lasttarget ground -1 -1 12
1461            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1462                overhead "Move closer, more then 8 tiles away" 34
1463                settimer preventOverheadSpamTimer 0
1464            endif
1465            overhead "● ▼ OUT OF RANGE ▼ ●" 88 lasttarget
1466            
1467            if patrolPetEvenIfLastTargetIsBeyondEightTiles = 1
1468                
1469                if not timerexists myPatrolPetTimer
1470                    settimer myPatrolPetTimer 5000
1471                endif
1472            
1473                if not varexist myPatrolPet
1474                    @setvar! myPatrolPet 0
1475                endif
1476
1477                if find myPatrolPet ground -1 -1 10
1478                    // do nothing
1479                elseif find earthOne ground -1 -1 10
1480                    @setvar! myPatrolPet earthOne
1481                elseif find earthTwo ground -1 -1 10
1482                    @setvar! myPatrolPet earthTwo
1483                elseif find fireOne ground -1 -1 10
1484                    @setvar! myPatrolPet fireOne
1485                elseif find fireTwo ground -1 -1 10
1486                    @setvar! myPatrolPet fireTwo
1487                elseif find demonOne ground -1 -1 10
1488                    @setvar! myPatrolPet demonOne
1489                elseif find demonTwo ground -1 -1 10
1490                    @setvar! myPatrolPet demonTwo
1491                elseif find airOne ground -1 -1 10
1492                    @setvar! myPatrolPet airOne
1493                elseif find airTwo ground -1 -1 10
1494                    @setvar! myPatrolPet airTwo
1495                elseif find waterOne ground -1 -1 10
1496                    @setvar! myPatrolPet waterOne
1497                elseif find waterTwo ground -1 -1 10
1498                    @setvar! myPatrolPet waterTwo
1499                else
1500                     @setvar! myPatrolPet 0
1501                endif
1502
1503                if myPatrolPet = 0
1504                    // do nothing
1505                elseif timer myPatrolPetTimer >= 5000
1506                    overhead "● SEND IN PATROL PET ●" 77 myFindTypeMob    
1507                    if skill "Herding" > 0
1508                        menu myPatrolPet 3
1509                    else
1510                        menu myPatrolPet 2
1511                    endif
1512                    wft 500
1513                    target lasttarget
1514                    settimer myPatrolPetTimer 0
1515                endif
1516            
1517            endif 
1518            
1519            if autoBotEnabled = 1
1520                wait 500
1521                replay
1522            endif
1523            stop
1524        else
1525            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1526                overhead "Next mob too far" 34
1527                settimer preventOverheadSpamTimer 0
1528            endif
1529            wait 200
1530            replay
1531        endif
1532    endif    
1533    
1534    @setvar myKillTarget lasttarget 
1535endif
1536
1537
1538if not varexist myPreviousKillTarget
1539    @setvar myPreviousKillTarget 0     
1540endif
1541
1542getlabel myKillTarget desc
1543overhead desc
1544
1545if "(summoned" in desc or "(bonded" in desc or "(tame" in desc or "the battle trainer" in desc
1546    overhead "▼ Player pet - IGNORE ▼" 77 lasttarget
1547    while not targetexists 
1548        hotkey 'Add Target To: IgnoreMobs'
1549        wait 200
1550    endwhile
1551    target myKillTarget 
1552    replay
1553endif    
1554
1555if not varexist myEarthPet or dead myEarthPet
1556    if not dead earthOne
1557        @setvar! myEarthPet earthOne
1558    elseif not dead earthTwo
1559        @setvar! myEarthPet earthTwo
1560    endif
1561endif
1562
1563if tamerModeEngaged = 1
1564    // jaseTankPet patrol maybe
1565    // overhead "We are a tamer"
1566elseif find myEarthPet ground -1 -1 12
1567    menu myEarthPet 2
1568    wft 500
1569    target myKillTarget
1570    wait 200
1571    if insysmsg "Target cannot be seen." 
1572        if lastCannotBeSeen = 0
1573            @setvar! lastCannotBeSeen myKillTarget
1574        endif
1575    else
1576        @setvar! lastCannotBeSeen 0
1577    endif
1578endif
1579
1580if diffhits >= hpCheckToTriggerGreaterHealSpell and mana > 12
1581    while not targetexists beneficial
1582        if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
1583            cast 'Heal'
1584        else
1585            cast 'Greater Heal'                
1586        endif
1587        wait 50
1588        if hp = maxhp
1589            hotkey '> Interrupt'
1590            break
1591        endif
1592    endwhile
1593    if targetexists beneficial
1594        hotkey "Target Self"
1595    endif
1596elseif castArchProtection = 1 and not findbuff "protection" and followers >= 4 
1597    while not targetexists
1598        cast 'Arch Protection'
1599        wait 50
1600        if diffhits >= hpCheckToTriggerGreaterHealSpell
1601            hotkey '> Interrupt'
1602            break
1603        endif
1604    endwhile
1605    if targetexists
1606        target self
1607    endif
1608elseif castBless = 1 and str <= 100 and followers >= 4 
1609    while not targetexists beneficial
1610        cast 'Bless'
1611        wait 50
1612        if diffhits >= hpCheckToTriggerGreaterHealSpell
1613            hotkey '> Interrupt'
1614            break
1615        endif
1616    endwhile
1617    if targetexists beneficial
1618        target self
1619    endif
1620endif
1621
1622if not listexists myCursedTargets
1623    createlist myCursedTargets
1624endif
1625
1626if not listexists myManaDrainTargets
1627    createlist myManaDrainTargets
1628endif
1629
1630if not listexists myManaVampireTargets
1631    createlist myManaVampireTargets
1632endif
1633
1634
1635if not varexist lastCannotBeSeenLoopIndex
1636    @setvar! lastCannotBeSeenLoopIndex 0
1637endif
1638
1639
1640if lastCannotBeSeen = myKillTarget
1641    if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
1642        overhead "Target not seen, waiting.."  34
1643        settimer preventOverheadSpamTimer 0
1644    endif
1645    wait 200
1646    //overhead "{{lastCannotBeSeenLoopIndex}} : {{retryBasedOnTargetNotSeenTimer}}"
1647    if lastCannotBeSeenLoopIndex = 0
1648        @setvar! lastCannotBeSeenLoopIndex 1
1649    endif
1650    if timer retryBasedOnTargetNotSeenTimer >= cdRetryBasedOnTargetNotSeen
1651        settimer retryBasedOnTargetNotSeenTimer 0    
1652        @setvar! lastCannotBeSeen 0
1653    else
1654        replay
1655    endif
1656    
1657elseif find myKillTarget -1 -1 12 as killy
1658    if myKillTarget = myPreviousKillTarget
1659        // do nothing
1660    else
1661        
1662        // Herding using crook
1663        if skill "Herding" > 0 and findtype 3713 backpack as jrook
1664            dclick jrook
1665            wft 500
1666            target killy
1667        endif
1668
1669        if inlist myManaVampireTargets myKillTarget
1670            overhead "We already mana vampired this guy" 88
1671            // do nothing
1672        elseif castManaVampire = 0
1673            // do nothing 
1674        elseif followers >= 4 and mana >= manaReserve
1675            while not targetexists harmful
1676                if dead myKillTarget
1677                    hotkey '> Interrupt'
1678                    break
1679                elseif diffhits < 30
1680                    if skill "Herding" > 0 and isHerded = 0 and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
1681                        dclick jrook
1682                        wft 500
1683                        target myKillTarget
1684                        settimer meditiationTimer 8000
1685                        @setvar! isHerded 1
1686                    endif
1687                    cast 'mana vampire'
1688                    wait 50
1689                elseif diffhits >= hpCheckToTriggerGreaterHealSpell or dead myKillTarget
1690                    hotkey '> Interrupt'
1691                    break
1692                endif
1693            endwhile
1694            if targetexists harmful
1695                target myKillTarget
1696                pushlist myManaVampireTargets myKillTarget
1697                settimer killTargetTimer 0
1698                wait 500
1699                if insysmsg "Target cannot be seen." 
1700                    @setvar! lastCannotBeSeen myKillTarget
1701                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
1702                    replay
1703                endif
1704            endif
1705            if targetexists harmful
1706                hotkey "Cancel current target"
1707            endif
1708        endif
1709        
1710        if inlist myManaDrainTargets myKillTarget
1711            overhead "We already mana drained this guy" 88
1712            // do nothing
1713        elseif castManadrain = 0
1714            // do nothing 
1715        elseif followers >= 4 and mana >= manaReserve
1716            while not targetexists harmful
1717                if dead myKillTarget
1718                    hotkey '> Interrupt'
1719                    break
1720                elseif diffhits < 30
1721                     if skill "Herding" > 0 and isHerded = 0 and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
1722                        dclick jrook
1723                        wft 500
1724                        target myKillTarget
1725                        settimer meditiationTimer 8000
1726                        @setvar! isHerded 1
1727                    endif
1728                    cast 'mana drain'
1729                    wait 50
1730                elseif diffhits >= hpCheckToTriggerGreaterHealSpell or dead myKillTarget
1731                    hotkey '> Interrupt'
1732                    break
1733                endif
1734            endwhile
1735            if targetexists harmful
1736                target myKillTarget
1737                pushlist myManaDrainTargets myKillTarget
1738                settimer killTargetTimer 0
1739                wait 500
1740                if insysmsg "Target cannot be seen." 
1741                    @setvar! lastCannotBeSeen myKillTarget
1742                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
1743                    replay
1744                endif
1745            endif
1746            if targetexists harmful
1747                hotkey "Cancel current target"
1748            endif
1749        endif
1750        
1751        if inlist myCursedTargets myKillTarget
1752            overhead "We already cursed this guy" 88
1753            // do nothing
1754        elseif castCurse = 0
1755            // do nothing
1756        elseif followers >= 4 and mana >= manaReserve
1757            while not targetexists harmful and not dead myKillTarget
1758                if diffhits < 30
1759                     if skill "Herding" > 0 and isHerded = 0 and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
1760                        dclick jrook
1761                        wft 500
1762                        target myKillTarget
1763                        settimer meditiationTimer 8000
1764                        @setvar! isHerded 1
1765                    endif
1766                    cast 'Curse'
1767                    wait 50
1768                elseif diffhits >= hpCheckToTriggerGreaterHealSpell
1769                    hotkey '> Interrupt'
1770                    break
1771                endif
1772            endwhile
1773            if targetexists harmful
1774                target myKillTarget
1775                pushlist myCursedTargets myKillTarget
1776                settimer killTargetTimer 0
1777                wait 500
1778                if insysmsg "Target cannot be seen." 
1779                    @setvar! lastCannotBeSeen myKillTarget
1780                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
1781                    replay
1782                endif
1783            else
1784                hotkey '> Interrupt'
1785            endif
1786            if targetexists harmful
1787                hotkey "Cancel current target"
1788            endif
1789        endif
1790        @setvar myPreviousKillTarget myKillTarget
1791    endif
1792else
1793    overhead "Out of range" 34
1794endif
1795
1796
1797clearsysmsg 
1798
1799say "all guard"
1800
1801@setvar! isLethalPoison 0
1802@setvar! isHerded 0
1803
1804if skill "Peacemaking" >= 50 
1805    @setvar! isPeaced 0
1806else
1807    @setvar! isPeaced 1    
1808endif
1809
1810if skill "Discordance" >= 50 
1811  @setvar! isDiscorded 0
1812else
1813  @setvar! isDiscorded 1  
1814endif
1815
1816while not dead myKillTarget and find myKillTarget -1 -1 12 as killy
1817
1818    for 5
1819
1820        if findbuff "bleed" or findbuff "disease"
1821            if timer cleansingBrewTimer >= cdCleansingBrew and findtype 50675 backpack 2935 as jrew
1822                dclick jrew
1823                wait minimumWaitForPing 
1824                settimer cleansingBrewTimer 0
1825            endif
1826        endif
1827
1828        // lost a follower
1829        if followers < breakSpellCastAndResummonIfLessThanXFollowers
1830            replay
1831        endif
1832        
1833        if weight >= maxweight and not findbuff "strength" and automaticallyDrinkStrPotIfOverWeight = 1 and findtype "white potion" backpack as pot
1834            dclick pot
1835            wait 200
1836        endif
1837    
1838        if dead myKillTarget
1839            break
1840        elseif insysmsg "Target cannot be seen." 
1841            @setvar! lastCannotBeSeen myKillTarget
1842            overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
1843            replay
1844        elseif find myKillTarget -1 -1 12 as killy
1845            // do nothing - in range to kill
1846        else
1847            break
1848        endif
1849    
1850        if skill "Herding" > 0 and isHerded = 0 and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
1851            dclick jrook
1852            wft 500
1853            target myKillTarget
1854            settimer meditiationTimer 8000
1855            @setvar! isHerded 1
1856        endif
1857        
1858        if gumpexists 622436516 and skill "Necromancy" >= 50
1859            if ingump "12/" 622436516
1860                @setvar! necroSymbols 12
1861            elseif ingump "13/" 622436516
1862                @setvar! necroSymbols 13
1863            elseif ingump "14/" 622436516
1864                @setvar! necroSymbols 14
1865            elseif ingump "15/" 622436516
1866                @setvar! necroSymbols 15
1867            elseif ingump "16/" 622436516
1868                @setvar! necroSymbols 16
1869            elseif ingump "17/" 622436516
1870                @setvar! necroSymbols 17
1871            elseif ingump "18/" 622436516
1872                @setvar! necroSymbols 18
1873            elseif ingump "19/" 622436516
1874                @setvar! necroSymbols 19
1875            elseif ingump "20/" 622436516
1876                @setvar! necroSymbols 20
1877            elseif ingump "21/" 622436516
1878                @setvar! necroSymbols 21
1879            elseif ingump "11/" 622436516
1880                @setvar! necroSymbols 11
1881            elseif ingump "10/" 622436516
1882                @setvar! necroSymbols 10
1883            elseif ingump "9/" 622436516
1884                @setvar! necroSymbols 9
1885            elseif ingump "8/" 622436516
1886                @setvar! necroSymbols 8
1887            elseif ingump "7/" 622436516
1888                @setvar! necroSymbols 7
1889            elseif ingump "6/" 622436516
1890                @setvar! necroSymbols 6
1891            elseif ingump "5/" 622436516
1892                @setvar! necroSymbols 5
1893            elseif ingump "4/" 622436516
1894                @setvar! necroSymbols 4
1895            elseif ingump "3/" 622436516
1896                @setvar! necroSymbols 3
1897            elseif ingump "2/" 622436516
1898                @setvar! necroSymbols 2
1899            elseif ingump "1/" 622436516
1900                @setvar! necroSymbols 1
1901            elseif ingump "0/" 622436516
1902                @setvar! necroSymbols 0
1903            endif
1904        endif
1905        
1906        if skill "Discordance" >= 50 
1907            if isDiscorded = 0
1908                getlabel myKillTarget discordDesc
1909                if "discord" in discordDesc
1910                    @setvar! isDiscorded 1
1911                elseif timer meditiationTimer >= 11000 
1912                    useskill 'Discordance'
1913                    wft 500
1914                    if insysmsg "What instrument"
1915                        if findtype "bamboo flute" backpack as inny
1916                            target inny
1917                        elseif findtype "tambourine" backpack as inny
1918                            target inny
1919                        elseif findtype "drum" backpack as inny
1920                            target inny
1921                        elseif findtype "lute" backpack as inny
1922                            target inny
1923                        elseif findtype "harp" backpack as inny
1924                            target inny
1925                        elseif findtype "lap harp" backpack as inny
1926                            target inny
1927                        else
1928                            overhead "I do not have an inny" 34
1929                            @setvar! isDiscorded 1
1930                        endif
1931                        wft 500
1932                    endif
1933                    if targetexists 
1934                        target myKillTarget
1935                        overhead "Discorded" 88 myKillTarget
1936                    endif
1937                    settimer meditiationTimer 5000
1938                endif
1939            endif
1940            
1941            if not findbuff "song of discordance" and timer meditiationTimer >= 11000
1942                useskill 'Discordance'
1943                wft 500
1944                if insysmsg "What instrument"
1945                    if findtype "bamboo flute" backpack as inny
1946                        target inny
1947                    elseif findtype "tambourine" backpack as inny
1948                        target inny
1949                    elseif findtype "drum" backpack as inny
1950                        target inny
1951                    elseif findtype "lute" backpack as inny
1952                        target inny
1953                    elseif findtype "harp" backpack as inny
1954                        target inny
1955                    elseif findtype "lap harp" backpack as inny
1956                        target inny
1957                    else
1958                        overhead "I do not have an inny" 34
1959                        @setvar! isDiscorded 1
1960                    endif
1961                    wft 500
1962                endif
1963                target backpack
1964                settimer meditiationTimer 0
1965            endif    
1966        endif
1967        
1968        if skill "Peacemaking" >= 50 
1969            if isPeaced = 0
1970                getlabel myKillTarget peaceDesc
1971                if "pacified" in peaceDesc
1972                    @setvar! isPeaced 1
1973                elseif timer meditiationTimer >= 11000 
1974                    useskill 'Peacemaking'
1975                    wft 500
1976                    if insysmsg "What instrument"
1977                        if findtype "bamboo flute" backpack as inny
1978                            target inny
1979                        elseif findtype "tambourine" backpack as inny
1980                            target inny
1981                        elseif findtype "drum" backpack as inny
1982                            target inny
1983                        elseif findtype "lute" backpack as inny
1984                            target inny
1985                        elseif findtype "harp" backpack as inny
1986                            target inny
1987                        elseif findtype "lap harp" backpack as inny
1988                            target inny
1989                        else
1990                            overhead "I do not have an inny" 34
1991                            @setvar! isPeaced 1
1992                        endif
1993                        wft 500
1994                    endif
1995                    if targetexists 
1996                        target myKillTarget
1997                        overhead "Peacemaed" 88 myKillTarget
1998                    endif
1999                    settimer meditiationTimer 5000
2000                endif
2001            endif
2002            
2003            if not findbuff "song of peacemaking" and timer meditiationTimer >= 11000
2004                useskill 'Peacemaking'
2005                wft 500
2006                if insysmsg "What instrument"
2007                    if findtype "bamboo flute" backpack as inny
2008                        target inny
2009                    elseif findtype "tambourine" backpack as inny
2010                        target inny
2011                    elseif findtype "drum" backpack as inny
2012                        target inny
2013                    elseif findtype "lute" backpack as inny
2014                        target inny
2015                    elseif findtype "harp" backpack as inny
2016                        target inny
2017                    elseif findtype "lap harp" backpack as inny
2018                        target inny
2019                    else
2020                        overhead "I do not have an inny" 34
2021                        @setvar! isPeaced 1
2022                    endif
2023                    wft 500
2024                endif
2025                target backpack
2026                settimer meditiationTimer 0
2027            endif    
2028        endif
2029
2030        if castMagicShield = 1 and timer magicShieldTimer >= cdMagicShield and not findbuff "Magic Reflection"
2031            if mana >= manaReserve
2032                cast "Magic Reflection"
2033                wait 1000
2034            endif
2035        elseif automaticallyDrinkMagicPot = 1 and not findbuff "Magic Reflection" and not findbuff "Magic Resist Potion" and findtype "Black Potion" backpack as pot
2036            dclick pot
2037            wait 200
2038        endif
2039
2040        if findbuff "Magic Reflection"
2041            settimer magicShieldTimer 0
2042        endif
2043        
2044        if castReactiveArmor = 1 and timer reactiveArmorTimer >= cdReactiveArmor and not findbuff "Reactive Armor"
2045            if mana >= manaReserve
2046                cast "Reactive Armor"
2047                wait 200
2048            endif
2049        endif
2050
2051        if findbuff "Reactive Armor"
2052            settimer reactiveArmorTimer 0
2053        endif
2054        
2055        if skill "poisoning" >= 100 or castPoisonAnyway = 1
2056            if timer meditiationTimer >= cdMeditationMini and mana >= manaReserve
2057                if castMindRot = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer mindRotTimer >= cdMindRot and skill "Necromancy" >= 75 and 3 < necroSymbols 
2058                    yell "[MindRot"
2059                    settimer preventSpamNecroAbilitiesTimer 0
2060                    settimer mindRotTimer 0
2061                    wait 500
2062                    if gumpexists 622436516
2063                        if ingump "12/" 622436516
2064                            @setvar! necroSymbols 12
2065                        elseif ingump "13/" 622436516
2066                            @setvar! necroSymbols 13
2067                        elseif ingump "14/" 622436516
2068                            @setvar! necroSymbols 14
2069                        elseif ingump "15/" 622436516
2070                            @setvar! necroSymbols 15
2071                        elseif ingump "16/" 622436516
2072                            @setvar! necroSymbols 16
2073                        elseif ingump "17/" 622436516
2074                            @setvar! necroSymbols 17
2075                        elseif ingump "18/" 622436516
2076                            @setvar! necroSymbols 18
2077                        elseif ingump "19/" 622436516
2078                            @setvar! necroSymbols 19
2079                        elseif ingump "20/" 622436516
2080                            @setvar! necroSymbols 20
2081                        elseif ingump "21/" 622436516
2082                            @setvar! necroSymbols 21
2083                        elseif ingump "11/" 622436516
2084                            @setvar! necroSymbols 11
2085                        elseif ingump "10/" 622436516
2086                            @setvar! necroSymbols 10
2087                        elseif ingump "9/" 622436516
2088                            @setvar! necroSymbols 9
2089                        elseif ingump "8/" 622436516
2090                            @setvar! necroSymbols 8
2091                        elseif ingump "7/" 622436516
2092                            @setvar! necroSymbols 7
2093                        elseif ingump "6/" 622436516
2094                            @setvar! necroSymbols 6
2095                        elseif ingump "5/" 622436516
2096                            @setvar! necroSymbols 5
2097                        elseif ingump "4/" 622436516
2098                            @setvar! necroSymbols 4
2099                        elseif ingump "3/" 622436516
2100                            @setvar! necroSymbols 3
2101                        elseif ingump "2/" 622436516
2102                            @setvar! necroSymbols 2
2103                        elseif ingump "1/" 622436516
2104                            @setvar! necroSymbols 1
2105                        elseif ingump "0/" 622436516
2106                            @setvar! necroSymbols 0
2107                        endif
2108                    endif
2109                endif
2110                
2111                                
2112                getlabel myKillTarget desc2
2113                overhead desc2
2114                
2115                if castPoisonStrike = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer poisonStrikeTimer >= cdPoisonStrike and skill "Necromancy" >= 55 and 1 < necroSymbols 
2116                    if "Ticks" in desc2
2117                        if "[8" in desc2 or "[7" in desc2 or "[6" in desc2  or "[5" in desc2  or "[4" in desc2  or "[3" in desc2  or "[2" in desc2  or "[1 " in desc2 
2118                            yell "[PoisonStrike"
2119                            wft 500
2120                            target myKillTarget
2121                            wait 200
2122                            settimer preventSpamNecroAbilitiesTimer 0
2123                            settimer poisonStrikeTimer 0
2124                            wait 500
2125                            if gumpexists 622436516
2126                                if ingump "12/" 622436516
2127                                    @setvar! necroSymbols 12
2128                                elseif ingump "13/" 622436516
2129                                    @setvar! necroSymbols 13
2130                                elseif ingump "14/" 622436516
2131                                    @setvar! necroSymbols 14
2132                                elseif ingump "15/" 622436516
2133                                    @setvar! necroSymbols 15
2134                                elseif ingump "16/" 622436516
2135                                    @setvar! necroSymbols 16
2136                                elseif ingump "17/" 622436516
2137                                    @setvar! necroSymbols 17
2138                                elseif ingump "18/" 622436516
2139                                    @setvar! necroSymbols 18
2140                                elseif ingump "19/" 622436516
2141                                    @setvar! necroSymbols 19
2142                                elseif ingump "20/" 622436516
2143                                    @setvar! necroSymbols 20
2144                                elseif ingump "21/" 622436516
2145                                    @setvar! necroSymbols 21
2146                                elseif ingump "11/" 622436516
2147                                    @setvar! necroSymbols 11
2148                                elseif ingump "10/" 622436516
2149                                    @setvar! necroSymbols 10
2150                                elseif ingump "9/" 622436516
2151                                    @setvar! necroSymbols 9
2152                                elseif ingump "8/" 622436516
2153                                    @setvar! necroSymbols 8
2154                                elseif ingump "7/" 622436516
2155                                    @setvar! necroSymbols 7
2156                                elseif ingump "6/" 622436516
2157                                    @setvar! necroSymbols 6
2158                                elseif ingump "5/" 622436516
2159                                    @setvar! necroSymbols 5
2160                                elseif ingump "4/" 622436516
2161                                    @setvar! necroSymbols 4
2162                                elseif ingump "3/" 622436516
2163                                    @setvar! necroSymbols 3
2164                                elseif ingump "2/" 622436516
2165                                    @setvar! necroSymbols 2
2166                                elseif ingump "1/" 622436516
2167                                    @setvar! necroSymbols 1
2168                                elseif ingump "0/" 622436516
2169                                    @setvar! necroSymbols 0
2170                                endif
2171                            endif
2172                        endif
2173                    endif
2174                endif
2175                
2176                if isLethalPoison = 0
2177                    
2178                    if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2179                        overhead "Eating shrooms" 66
2180                        dclick mushy
2181                        @setvar! jase_shrooms mushy
2182                        wait 200
2183                        if insysmsg "You consume a magic mushroom and restore some mana."
2184                            settimer magicMushroomTimer 0  
2185                        elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2186                            settimer magicMushroomTimer 30000
2187                        endif
2188                    endif
2189                
2190                    if insysmsg "Target cannot be seen." 
2191                        @setvar! lastCannotBeSeen myKillTarget
2192                        overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2193                        replay
2194                    endif 
2195
2196                    // poison lethal
2197                    if "Lethal" in desc2
2198                        @setvar! isLethalPoison 1
2199                        break
2200                    elseif castPoisonAnyway = 1 and "Ticks" in desc2
2201                        @setvar! isLethalPoison 1
2202                        break
2203                    elseif castPoisonAnyway = 1 and "Poison" in desc2
2204                        @setvar! isLethalPoison 1
2205                        break
2206                    elseif diffhits >= hpCheckToTriggerGreaterHealSpell 
2207                        // need a heal
2208                        break
2209                    elseif mana >= 9
2210                        while not targetexists harmful
2211                            cast 'poison'
2212                            wait 50
2213                            if dead myKillTarget
2214                                hotkey '> Interrupt'
2215                                replay
2216                            endif
2217                        endwhile
2218                        target myKillTarget
2219                        wait 200
2220                        if insysmsg "Target cannot be seen." 
2221                            @setvar! lastCannotBeSeen myKillTarget
2222                             overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2223                             @setvar! isLethalPoison 1
2224                        endif 
2225                    else
2226                        wait 200
2227                    endif
2228                endif
2229            endif
2230        endif
2231        
2232        if castCorpseSkin = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer corpseSkinTimer >= cdCorpseSkin and skill "Necromancy" >= 65 and timer meditiationTimer >= cdMeditationMini and 2 < necroSymbols and mana >= manaReserve
2233            yell "[CorpseSkin"
2234            settimer preventSpamNecroAbilitiesTimer 0
2235            settimer corpseSkinTimer 0
2236            cooldown CorpseSkin cdCorpseSkin
2237            wait 500
2238            if gumpexists 622436516
2239                if ingump "12/" 622436516
2240                    @setvar! necroSymbols 12
2241                elseif ingump "13/" 622436516
2242                    @setvar! necroSymbols 13
2243                elseif ingump "14/" 622436516
2244                    @setvar! necroSymbols 14
2245                elseif ingump "15/" 622436516
2246                    @setvar! necroSymbols 15
2247                elseif ingump "16/" 622436516
2248                    @setvar! necroSymbols 16
2249                elseif ingump "17/" 622436516
2250                    @setvar! necroSymbols 17
2251                elseif ingump "18/" 622436516
2252                    @setvar! necroSymbols 18
2253                elseif ingump "19/" 622436516
2254                    @setvar! necroSymbols 19
2255                elseif ingump "20/" 622436516
2256                    @setvar! necroSymbols 20
2257                elseif ingump "21/" 622436516
2258                    @setvar! necroSymbols 21
2259                elseif ingump "11/" 622436516
2260                    @setvar! necroSymbols 11
2261                elseif ingump "10/" 622436516
2262                    @setvar! necroSymbols 10
2263                elseif ingump "9/" 622436516
2264                    @setvar! necroSymbols 9
2265                elseif ingump "8/" 622436516
2266                    @setvar! necroSymbols 8
2267                elseif ingump "7/" 622436516
2268                    @setvar! necroSymbols 7
2269                elseif ingump "6/" 622436516
2270                    @setvar! necroSymbols 6
2271                elseif ingump "5/" 622436516
2272                    @setvar! necroSymbols 5
2273                elseif ingump "4/" 622436516
2274                    @setvar! necroSymbols 4
2275                elseif ingump "3/" 622436516
2276                    @setvar! necroSymbols 3
2277                elseif ingump "2/" 622436516
2278                    @setvar! necroSymbols 2
2279                elseif ingump "1/" 622436516
2280                    @setvar! necroSymbols 1
2281                elseif ingump "0/" 622436516
2282                    @setvar! necroSymbols 0
2283                endif
2284            endif
2285        endif
2286            
2287        if castBloodOath = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and skill "Necromancy" >= 80 and timer bloodOathTimer >= cdBloodOath and 5 < necroSymbols and mana >= manaReserve
2288            yell "[BloodOath"
2289            settimer preventSpamNecroAbilitiesTimer 0
2290            settimer bloodOathTimer 0
2291            if gumpexists 622436516
2292                if ingump "12/" 622436516
2293                    @setvar! necroSymbols 12
2294                elseif ingump "13/" 622436516
2295                    @setvar! necroSymbols 13
2296                elseif ingump "14/" 622436516
2297                    @setvar! necroSymbols 14
2298                elseif ingump "15/" 622436516
2299                    @setvar! necroSymbols 15
2300                elseif ingump "16/" 622436516
2301                    @setvar! necroSymbols 16
2302                elseif ingump "17/" 622436516
2303                    @setvar! necroSymbols 17
2304                elseif ingump "18/" 622436516
2305                    @setvar! necroSymbols 18
2306                elseif ingump "19/" 622436516
2307                    @setvar! necroSymbols 19
2308                elseif ingump "20/" 622436516
2309                    @setvar! necroSymbols 20
2310                elseif ingump "21/" 622436516
2311                    @setvar! necroSymbols 21
2312                elseif ingump "11/" 622436516
2313                    @setvar! necroSymbols 11
2314                elseif ingump "10/" 622436516
2315                    @setvar! necroSymbols 10
2316                elseif ingump "9/" 622436516
2317                    @setvar! necroSymbols 9
2318                elseif ingump "8/" 622436516
2319                    @setvar! necroSymbols 8
2320                elseif ingump "7/" 622436516
2321                    @setvar! necroSymbols 7
2322                elseif ingump "6/" 622436516
2323                    @setvar! necroSymbols 6
2324                elseif ingump "5/" 622436516
2325                    @setvar! necroSymbols 5
2326                elseif ingump "4/" 622436516
2327                    @setvar! necroSymbols 4
2328                elseif ingump "3/" 622436516
2329                    @setvar! necroSymbols 3
2330                elseif ingump "2/" 622436516
2331                    @setvar! necroSymbols 2
2332                elseif ingump "1/" 622436516
2333                    @setvar! necroSymbols 1
2334                elseif ingump "0/" 622436516
2335                    @setvar! necroSymbols 0
2336                endif
2337            endif
2338        endif
2339        
2340        if castEvilOmen = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer evilOmenTimer >= cdEvilOmen and skill "Necromancy" >= 60 and timer meditiationTimer >= cdMeditationMini and 2 < necroSymbols and mana >= manaReserve
2341            yell "[EvilOmen"
2342            settimer evilOmenTimer 0
2343            settimer preventSpamNecroAbilitiesTimer 0
2344            cooldown EvilOmen cdEvilOmen
2345            wait 500
2346            if gumpexists 622436516
2347                if ingump "12/" 622436516
2348                    @setvar! necroSymbols 12
2349                elseif ingump "13/" 622436516
2350                    @setvar! necroSymbols 13
2351                elseif ingump "14/" 622436516
2352                    @setvar! necroSymbols 14
2353                elseif ingump "15/" 622436516
2354                    @setvar! necroSymbols 15
2355                elseif ingump "16/" 622436516
2356                    @setvar! necroSymbols 16
2357                elseif ingump "17/" 622436516
2358                    @setvar! necroSymbols 17
2359                elseif ingump "18/" 622436516
2360                    @setvar! necroSymbols 18
2361                elseif ingump "19/" 622436516
2362                    @setvar! necroSymbols 19
2363                elseif ingump "20/" 622436516
2364                    @setvar! necroSymbols 20
2365                elseif ingump "21/" 622436516
2366                    @setvar! necroSymbols 21
2367                elseif ingump "11/" 622436516
2368                    @setvar! necroSymbols 11
2369                elseif ingump "10/" 622436516
2370                    @setvar! necroSymbols 10
2371                elseif ingump "9/" 622436516
2372                    @setvar! necroSymbols 9
2373                elseif ingump "8/" 622436516
2374                    @setvar! necroSymbols 8
2375                elseif ingump "7/" 622436516
2376                    @setvar! necroSymbols 7
2377                elseif ingump "6/" 622436516
2378                    @setvar! necroSymbols 6
2379                elseif ingump "5/" 622436516
2380                    @setvar! necroSymbols 5
2381                elseif ingump "4/" 622436516
2382                    @setvar! necroSymbols 4
2383                elseif ingump "3/" 622436516
2384                    @setvar! necroSymbols 3
2385                elseif ingump "2/" 622436516
2386                    @setvar! necroSymbols 2
2387                elseif ingump "1/" 622436516
2388                    @setvar! necroSymbols 1
2389                elseif ingump "0/" 622436516
2390                    @setvar! necroSymbols 0
2391                endif
2392            endif
2393        endif
2394        
2395        if castVampiricEmbrace = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer vampiricEmbraceTimer >= cdVampiricEmbrace and skill "Necromancy" >= 75 and timer meditiationTimer >= cdMeditationMini and 3 < necroSymbols and findtype 8198 ground -1 -1 4 as jorpse
2396            yell "[VampiricEmbrace"
2397            wft 500
2398            target jorpse
2399            settimer preventSpamNecroAbilitiesTimer 0
2400            settimer vampiricEmbraceTimer 0
2401            cooldown VampiricEmbrace cdVampiricEmbrace
2402            wait 500
2403            if gumpexists 622436516
2404                if ingump "12/" 622436516
2405                    @setvar! necroSymbols 12
2406                elseif ingump "13/" 622436516
2407                    @setvar! necroSymbols 13
2408                elseif ingump "14/" 622436516
2409                    @setvar! necroSymbols 14
2410                elseif ingump "15/" 622436516
2411                    @setvar! necroSymbols 15
2412                elseif ingump "16/" 622436516
2413                    @setvar! necroSymbols 16
2414                elseif ingump "17/" 622436516
2415                    @setvar! necroSymbols 17
2416                elseif ingump "18/" 622436516
2417                    @setvar! necroSymbols 18
2418                elseif ingump "19/" 622436516
2419                    @setvar! necroSymbols 19
2420                elseif ingump "20/" 622436516
2421                    @setvar! necroSymbols 20
2422                elseif ingump "21/" 622436516
2423                    @setvar! necroSymbols 21
2424                elseif ingump "11/" 622436516
2425                    @setvar! necroSymbols 11
2426                elseif ingump "10/" 622436516
2427                    @setvar! necroSymbols 10
2428                elseif ingump "9/" 622436516
2429                    @setvar! necroSymbols 9
2430                elseif ingump "8/" 622436516
2431                    @setvar! necroSymbols 8
2432                elseif ingump "7/" 622436516
2433                    @setvar! necroSymbols 7
2434                elseif ingump "6/" 622436516
2435                    @setvar! necroSymbols 6
2436                elseif ingump "5/" 622436516
2437                    @setvar! necroSymbols 5
2438                elseif ingump "4/" 622436516
2439                    @setvar! necroSymbols 4
2440                elseif ingump "3/" 622436516
2441                    @setvar! necroSymbols 3
2442                elseif ingump "2/" 622436516
2443                    @setvar! necroSymbols 2
2444                elseif ingump "1/" 622436516
2445                    @setvar! necroSymbols 1
2446                elseif ingump "0/" 622436516
2447                    @setvar! necroSymbols 0
2448                endif
2449            endif
2450        endif
2451        
2452        if castPainSpike = 1 and timer preventSpamNecroAbilitiesTimer >= cdPreventSpamNecroAbilities and timer painSpikeTimer >= cdPainSpike and skill "Necromancy" >= 95 and timer meditiationTimer >= cdMeditationMini and 5 < necroSymbols and findtype 8198 ground -1 -1 6 as jorpse
2453            yell "[PainSpike"
2454            wft 500
2455            target myKillTarget
2456            wait 200
2457            settimer preventSpamNecroAbilitiesTimer 0
2458            if insysmsg "You do not see any corpses"
2459                // do nothing
2460            else
2461                settimer painSpikeTimer 0
2462                cooldown PainSpike cdPainSpike            
2463            endif
2464            if gumpexists 622436516
2465                if ingump "12/" 622436516
2466                    @setvar! necroSymbols 12
2467                elseif ingump "13/" 622436516
2468                    @setvar! necroSymbols 13
2469                elseif ingump "14/" 622436516
2470                    @setvar! necroSymbols 14
2471                elseif ingump "15/" 622436516
2472                    @setvar! necroSymbols 15
2473                elseif ingump "16/" 622436516
2474                    @setvar! necroSymbols 16
2475                elseif ingump "17/" 622436516
2476                    @setvar! necroSymbols 17
2477                elseif ingump "18/" 622436516
2478                    @setvar! necroSymbols 18
2479                elseif ingump "19/" 622436516
2480                    @setvar! necroSymbols 19
2481                elseif ingump "20/" 622436516
2482                    @setvar! necroSymbols 20
2483                elseif ingump "21/" 622436516
2484                    @setvar! necroSymbols 21
2485                elseif ingump "11/" 622436516
2486                    @setvar! necroSymbols 11
2487                elseif ingump "10/" 622436516
2488                    @setvar! necroSymbols 10
2489                elseif ingump "9/" 622436516
2490                    @setvar! necroSymbols 9
2491                elseif ingump "8/" 622436516
2492                    @setvar! necroSymbols 8
2493                elseif ingump "7/" 622436516
2494                    @setvar! necroSymbols 7
2495                elseif ingump "6/" 622436516
2496                    @setvar! necroSymbols 6
2497                elseif ingump "5/" 622436516
2498                    @setvar! necroSymbols 5
2499                elseif ingump "4/" 622436516
2500                    @setvar! necroSymbols 4
2501                elseif ingump "3/" 622436516
2502                    @setvar! necroSymbols 3
2503                elseif ingump "2/" 622436516
2504                    @setvar! necroSymbols 2
2505                elseif ingump "1/" 622436516
2506                    @setvar! necroSymbols 1
2507                elseif ingump "0/" 622436516
2508                    @setvar! necroSymbols 0
2509                endif
2510            endif
2511        endif
2512        
2513        if diffhits >= hpCheckToTriggerHealPotion 
2514            if findtype "Yellow Potion" backpack as pot 
2515                getlabel pot desc
2516                if "next usable" in desc
2517                    // do nothing
2518                else
2519                    dclick pot
2520                    wait 500
2521                endif
2522            endif
2523        endif
2524        
2525        if diffhits >= hpCheckToTriggerGreaterHealSpell and mana >= 12
2526            while not targetexists beneficial
2527                if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
2528                    cast 'Heal'
2529                else
2530                    cast 'Greater Heal'                
2531                endif
2532                wait 50
2533                if hp = maxhp
2534                    hotkey '> Interrupt'
2535                    break
2536                endif
2537            endwhile
2538            if targetexists beneficial
2539                hotkey "Target Self"
2540                wait 50
2541            endif
2542        endif
2543        
2544        if poisoned
2545            if automaticallyDrinkCurePot = 1 and diffhits >= hpCheckToTriggerCurePotion and findtype "Orange Potion" backpack as pot 
2546                dclick pot
2547                wait 200
2548            endif
2549            
2550            while not targetexists beneficial
2551                if not poisoned
2552                    hotkey '> Interrupt'
2553                    break
2554                else
2555                    cast 'Cure'
2556                    wait 50
2557                endif 
2558            endwhile
2559            if targetexists beneficial
2560                hotkey "Target Self"
2561                wait 500
2562            endif
2563        endif
2564
2565        if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2566            overhead "Eating shrooms" 66
2567            dclick mushy
2568            @setvar! jase_shrooms mushy
2569            wait 200
2570            if insysmsg "You consume a magic mushroom and restore some mana."
2571                settimer magicMushroomTimer 0    
2572            elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2573                settimer magicMushroomTimer 30000
2574            endif
2575        endif
2576        
2577        
2578        
2579        if index = 0
2580                    
2581            if castLightning = 1 and diffhits < 30 and mana >= 12 and timer lightningTimer >= cdLightning and timer meditiationTimer >= cdMeditationMini and mana >= manaReserve
2582                while not targetexists harmful
2583                    if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2584                        hotkey '> Interrupt'
2585                        break
2586                    else
2587                        if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2588                            dclick jrook
2589                            wft 500
2590                            target myKillTarget
2591                            settimer meditiationTimer 8000
2592                            settimer HerdTimer 0
2593                            cooldown Herding cdHerdingTimer
2594                        endif
2595                        cast 'Lightning'
2596                        wait 50
2597                    endif 
2598                endwhile
2599                if targetexists harmful
2600                    target myKillTarget
2601                    settimer lightningTimer 0
2602                    cooldown Lightning cdLightning
2603                    wait 500
2604                endif
2605            endif
2606        
2607        elseif index = 1
2608        
2609            if castMagicArrow = 1 and diffhits < 30 and mana >= 5 and timer magicArrowTimer >= cdMagicArrow and timer meditiationTimer >= cdMeditationMini and mana >= manaReserve
2610                while not targetexists harmful
2611                    if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2612                        hotkey '> Interrupt'
2613                        break
2614                    else
2615                         if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2616                            dclick jrook
2617                            wft 500
2618                            target myKillTarget
2619                            settimer meditiationTimer 8000
2620                            settimer HerdTimer 0
2621                            cooldown Herding cdHerdingTimer
2622                        endif
2623                        cast 'magic arrow'
2624                        wait 50
2625                    endif 
2626                endwhile
2627                if targetexists harmful
2628                    target myKillTarget
2629                    settimer magicArrowTimer 0
2630                    cooldown MagicArrow cdMagicArrow
2631                    wait 500
2632                endif
2633            endif
2634            
2635        elseif index = 2
2636                
2637            if castHarm = 1 and diffhits < 30 and mana >= 9 and timer harmTimer >= cdHarm and timer meditiationTimer >= cdMeditationMini and mana >= manaReserve
2638                while not targetexists harmful
2639                    if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2640                        hotkey '> Interrupt'
2641                        break
2642                    else
2643                        if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2644                            dclick jrook
2645                            wft 500
2646                            target myKillTarget
2647                            settimer meditiationTimer 8000
2648                            settimer HerdTimer 0
2649                            cooldown Herding cdHerdingTimer
2650                        endif
2651                        cast 'harm'
2652                        wait 50
2653                    endif 
2654                endwhile
2655                if targetexists harmful
2656                    target myKillTarget
2657                    settimer harmTimer 0
2658                    cooldown Harm cdHarm
2659                    wait 500
2660                endif
2661            endif
2662            
2663        elseif index = 3
2664                
2665            if castFireball = 1 and diffhits < 30 and mana >= 12 and timer fireballTimer >= cdFireball and timer meditiationTimer >= cdMeditationMini and mana >= manaReserve
2666                while not targetexists harmful
2667                    if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2668                        hotkey '> Interrupt'
2669                        break
2670                    else
2671                        if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2672                            dclick jrook
2673                            wft 500
2674                            target myKillTarget
2675                            settimer meditiationTimer 8000
2676                            settimer HerdTimer 0
2677                            cooldown Herding cdHerdingTimer
2678                        endif
2679                        cast 'fireball'
2680                        wait 50
2681                    endif 
2682                endwhile
2683                if targetexists harmful
2684                    target myKillTarget
2685                    settimer fireballTimer 0
2686                    cooldown Fireball cdFireball
2687                    wait 500
2688                endif
2689            endif
2690
2691        endif
2692        
2693        if tamerModeEngaged = 1
2694                
2695            if timer autoHealTamerPet >= cdAutoHealTamerPet
2696                if not dead jaseTankPet
2697                    while not targetexists beneficial
2698                        hotkey 'Greater Heal'
2699                        wft 200
2700                    endwhile
2701                else
2702                   while not targetexists beneficial
2703                        hotkey 'Resurrection'
2704                        wft 200
2705                        if diffhits >= hpCheckToTriggerGreaterHealSpell
2706                            break
2707                        endif
2708                    endwhile
2709                    if targetexists beneficial
2710                        target jaseTankPet
2711                    endif
2712                    while not targetexists beneficial
2713                        hotkey 'Greater Heal'
2714                        wft 200
2715                    endwhile
2716                endif
2717                if targetexists beneficial
2718                    target jaseTankPet
2719                    settimer autoHealTamerPet 0
2720                    cooldown AutoPetHeal cdAutoHealTamerPet
2721                endif
2722            endif
2723            
2724        endif
2725    
2726    endfor
2727   
2728    if find myKillTarget -1 -1 12 as killy
2729       // do nothing
2730    else
2731        overhead "Out of range" 34
2732        break
2733    endif
2734    
2735    
2736    if diffhits >= hpCheckToTriggerGreaterHealSpell
2737            
2738        if diffhits >= hpCheckToTriggerHealPotion and findtype "Yellow Potion" backpack as pot 
2739            getlabel pot desc
2740            if "next usable" in desc
2741                // do nothing
2742            else
2743                dclick pot
2744                wait 500
2745            endif
2746        endif
2747
2748        if diffhits >= hpCheckToTriggerGreaterHealSpell and mana >= 12
2749            while not targetexists beneficial
2750                if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
2751                    cast 'Heal'
2752                else
2753                    cast 'Greater Heal'                
2754                endif
2755                wait 50
2756                if hp = maxhp
2757                    hotkey '> Interrupt'
2758                    break
2759                endif
2760            endwhile
2761            if targetexists beneficial
2762                hotkey "Target Self"
2763                wait 50
2764            endif
2765        endif
2766    elseif mana < 55 and findbuff "actively meditating" 
2767        // wait for mana
2768    elseif timer meditiationTimer < cdMeditationMini and findbuff "actively meditating" 
2769        // wait for mana
2770    elseif castChainLightning = 1 and timer chainLightningTimer >= cdChainLightning
2771        while not targetexists and mana > 40 and mana >= manaReserve
2772            if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2773                overhead "Eating shrooms" 66
2774                dclick mushy
2775                @setvar! jase_shrooms mushy
2776                wait 200
2777                if insysmsg "You consume a magic mushroom and restore some mana."
2778                    settimer magicMushroomTimer 0    
2779                elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2780                    settimer magicMushroomTimer 30000
2781                endif
2782            endif
2783            if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2784                hotkey '> Interrupt'
2785                break
2786            else
2787                if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2788                            dclick jrook
2789                            wft 500
2790                            target myKillTarget
2791                            settimer meditiationTimer 8000
2792                            settimer HerdTimer 0
2793                            cooldown Herding cdHerdingTimer
2794                        endif
2795                cast 'Chain Lightning'
2796                wait 50
2797            endif 
2798        endwhile
2799        if targetexists
2800            target myKillTarget
2801            wait 500
2802            if insysmsg "Target cannot be seen." 
2803                @setvar! lastCannotBeSeen myKillTarget
2804                overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2805                replay
2806            endif
2807            settimer chainLightningTimer 0
2808            cooldown ChainLightning cdChainLightning
2809        endif
2810    elseif castEbolt = 1 and mana >= 32 and mana >= manaReserve
2811        while not targetexists harmful and mana > 30 and mana >= manaReserve
2812            if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2813                overhead "Eating shrooms" 66
2814                dclick mushy
2815                @setvar! jase_shrooms mushy
2816                wait 200
2817                if insysmsg "You consume a magic mushroom and restore some mana."
2818                    settimer magicMushroomTimer 0    
2819                elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2820                    settimer magicMushroomTimer 30000
2821                endif
2822            endif
2823            if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2824                hotkey '> Interrupt'
2825                break
2826            else
2827                if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2828                            dclick jrook
2829                            wft 500
2830                            target myKillTarget
2831                            settimer meditiationTimer 8000
2832                            settimer HerdTimer 0
2833                            cooldown Herding cdHerdingTimer
2834                        endif
2835                cast 'Energy Bolt'
2836                wait 50
2837            endif 
2838        endwhile
2839        if targetexists harmful
2840            target myKillTarget
2841            wait 500
2842            if insysmsg "Target cannot be seen." 
2843                @setvar! lastCannotBeSeen myKillTarget
2844                overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2845                replay
2846            endif
2847        endif
2848    
2849        if castMindBlast = 1 and mana >= 32 and mana >= manaReserve
2850            while not targetexists harmful and mana > 30
2851                if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2852                    overhead "Eating shrooms" 66
2853                    dclick mushy
2854                    @setvar! jase_shrooms mushy
2855                    wait 200
2856                    if insysmsg "You consume a magic mushroom and restore some mana."
2857                        settimer magicMushroomTimer 0    
2858                    elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2859                        settimer magicMushroomTimer 30000
2860                    endif
2861                endif
2862                if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2863                    hotkey '> Interrupt'
2864                    break
2865                else
2866                    if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2867                        dclick jrook
2868                        wft 500
2869                        target myKillTarget
2870                        settimer meditiationTimer 8000
2871                        settimer HerdTimer 0
2872                        cooldown Herding cdHerdingTimer
2873                    endif
2874                    cast 'Mind Blast'
2875                    wait 50
2876                endif 
2877            endwhile
2878            if targetexists harmful
2879                target myKillTarget
2880                wait 500
2881                if insysmsg "Target cannot be seen." 
2882                    @setvar! lastCannotBeSeen myKillTarget
2883                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2884                    replay
2885                endif
2886            endif
2887        endif
2888        if castFlamestrike = 1 and mana > 42 and mana >= manaReserve
2889            while not targetexists harmful and mana > 40
2890            
2891                if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2892                    overhead "Eating shrooms" 66
2893                    dclick mushy
2894                    @setvar! jase_shrooms mushy
2895                    wait 200
2896                    if insysmsg "You consume a magic mushroom and restore some mana."
2897                        settimer magicMushroomTimer 0
2898                    elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2899                        settimer magicMushroomTimer 30000    
2900                    endif
2901                endif
2902        
2903                if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2904                    hotkey '> Interrupt'
2905                    break
2906                else
2907                    if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2908                        dclick jrook
2909                        wft 500
2910                        target myKillTarget
2911                        settimer meditiationTimer 8000
2912                        settimer HerdTimer 0
2913                        cooldown Herding cdHerdingTimer
2914                    endif
2915                    cast 'Flamestrike'
2916                    wait 50
2917                endif 
2918            endwhile
2919            if targetexists harmful
2920                target myKillTarget
2921                wait 500
2922                if insysmsg "Target cannot be seen." 
2923                    @setvar! lastCannotBeSeen myKillTarget
2924                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2925                    replay
2926                endif
2927            endif
2928        endif
2929    elseif castMindBlast = 1 and mana >= 32 and mana >= manaReserve
2930        while not targetexists harmful and mana > 30
2931            if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2932                overhead "Eating shrooms" 66
2933                dclick mushy
2934                @setvar! jase_shrooms mushy
2935                wait 200
2936                if insysmsg "You consume a magic mushroom and restore some mana."
2937                    settimer magicMushroomTimer 0    
2938                elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2939                    settimer magicMushroomTimer 30000
2940                endif
2941            endif
2942            if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2943                hotkey '> Interrupt'
2944                break
2945            else
2946                if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2947                    dclick jrook
2948                    wft 500
2949                    target myKillTarget
2950                    settimer meditiationTimer 8000
2951                    settimer HerdTimer 0
2952                    cooldown Herding cdHerdingTimer
2953                endif
2954                cast 'Mind Blast'
2955                wait 50
2956            endif 
2957        endwhile
2958        if targetexists harmful
2959            target myKillTarget
2960            wait 500
2961            if insysmsg "Target cannot be seen." 
2962                @setvar! lastCannotBeSeen myKillTarget
2963                overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
2964                replay
2965            endif
2966        endif
2967        if castFlamestrike = 1 and mana > 42 and mana >= manaReserve
2968            while not targetexists harmful and mana > 40
2969            
2970                if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
2971                    overhead "Eating shrooms" 66
2972                    dclick mushy
2973                    @setvar! jase_shrooms mushy
2974                    wait 200
2975                    if insysmsg "You consume a magic mushroom and restore some mana."
2976                        settimer magicMushroomTimer 0    
2977                    elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
2978                        settimer magicMushroomTimer 30000
2979                    endif
2980                endif
2981        
2982                if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
2983                    hotkey '> Interrupt'
2984                    break
2985                else
2986                    if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
2987                        dclick jrook
2988                        wft 500
2989                        target myKillTarget
2990                        settimer meditiationTimer 8000
2991                        settimer HerdTimer 0
2992                        cooldown Herding cdHerdingTimer
2993                    endif
2994                    cast 'Flamestrike'
2995                    wait 50
2996                endif 
2997            endwhile
2998            if targetexists harmful
2999                target myKillTarget
3000                wait 500
3001                if insysmsg "Target cannot be seen." 
3002                    @setvar! lastCannotBeSeen myKillTarget
3003                    overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
3004                    replay
3005                endif
3006            endif
3007        endif
3008    elseif castFlamestrike = 1 and mana > 42 and mana >= manaReserve
3009        while not targetexists harmful and mana > 40
3010        
3011            if diffmana >= 30 and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
3012                overhead "Eating shrooms" 66
3013                dclick mushy
3014                @setvar! jase_shrooms mushy
3015                wait 200
3016                if insysmsg "You consume a magic mushroom and restore some mana."
3017                    settimer magicMushroomTimer 0    
3018                elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
3019                    settimer magicMushroomTimer 30000
3020                endif
3021            endif
3022    
3023            if followers < breakSpellCastAndResummonIfLessThanXFollowers or dead myKillTarget or diffhits >= hpCheckToTriggerGreaterHealSpell
3024                hotkey '> Interrupt'
3025                break
3026            else
3027                 if skill "Herding" > 0 and timer HerdTimer >= cdHerdingTimer and timer meditiationTimer >= 11000 and findtype 3713 backpack as jrook
3028                        dclick jrook
3029                        wft 500
3030                        target myKillTarget
3031                        settimer meditiationTimer 8000
3032                        settimer HerdTimer 0
3033                        cooldown Herding cdHerdingTimer
3034                    endif
3035                cast 'Flamestrike'
3036                wait 50
3037            endif 
3038        endwhile
3039        if targetexists harmful
3040            target myKillTarget
3041            wait 500
3042            if insysmsg "Target cannot be seen." 
3043                @setvar! lastCannotBeSeen myKillTarget
3044                overhead "CANNOT BE SEEN MOVE TO NEXT TARGET" 34
3045                replay
3046            endif
3047        endif
3048    elseif not findbuff "actively meditating" and timer magicMushroomTimer >= cdMushroom and findtype "mushroom" backpack as mushy
3049        overhead "Eating shrooms" 66
3050        dclick mushy
3051        @setvar! jase_shrooms mushy
3052        wait 200
3053        if insysmsg "You consume a magic mushroom and restore some mana."
3054            settimer magicMushroomTimer 0    
3055        elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
3056            settimer magicMushroomTimer 30000
3057        endif
3058        elseif not findbuff "actively meditating" and timer meditiationTimer >= cdMeditation and isDiscorded = 1 and isPeaced = 1
3059        if followers > 0
3060            say "all guard me"
3061        endif
3062        useskill 'meditation'
3063        settimer meditiationTimer 0
3064        wait 500
3065    endif
3066    wait 50
3067endwhile
3068wait 500
3069if targetexists 
3070    hotkey 'Cancel Current Target'
3071endif
3072if not findbuff "actively meditating" 
3073    if automaticallySkinCorpses = 1 and findtype "corpse" ground -1 -1 3 as jorpse
3074        if findtype "Elven Spellblade" backpack
3075            while not targetexists neutral
3076                useskill 'forensicevaluation'
3077            endwhile
3078            if targetexists neutral
3079                hotkey "Target Self"
3080                wait minimumWaitForPing
3081                @ignore jorpse
3082            endif
3083        endif
3084    endif
3085    if followers > 0
3086        say "all guard me"
3087    endif
3088endif
3089while mana < minimumManaToCast
3090    if setThisAsOneIfYouWantToTargetYourOwnKillOrItWillTargetClosestMonster = 0
3091        hotkey 'Target Closest Non-Friendly Monster'
3092        wait 200
3093        if insysmsg "No one matching that was found"
3094            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
3095                overhead "no next target" 34
3096                settimer preventOverheadSpamTimer 0
3097            endif
3098        elseif not find lasttarget ground -1 -1 8
3099            overhead "▼ NEXT TARGET HERE ▼" 88 lasttarget
3100            if timer preventOverheadSpamTimer >= cdPreventOverheadSpam
3101                overhead "Move closer, more then 8 tiles away" 34
3102                settimer preventOverheadSpamTimer 0
3103            endif
3104        else
3105            overhead "▼ NEXT TARGET HERE ▼" 88 lasttarget
3106            attack lasttarget
3107        endif    
3108    endif
3109    if diffhits >= hpCheckToTriggerGreaterHealSpell
3110        if diffhits >= hpCheckToTriggerHealPotion and findtype "Yellow Potion" backpack as pot 
3111            getlabel pot desc
3112            if "next usable" in desc
3113                // do nothing
3114            else
3115                dclick pot
3116                wait 650
3117            endif
3118        endif
3119        if diffhits >= hpCheckToTriggerGreaterHealSpell and mana >= 12
3120            while not targetexists beneficial
3121                if diffhits >= hpCheckToTriggerMiniEmergencyHealSpell
3122                    cast 'Heal'
3123                else
3124                    cast 'Greater Heal'                
3125                endif
3126                wait 50
3127                if hp = maxhp
3128                    hotkey '> Interrupt'
3129                    break
3130                endif
3131            endwhile
3132            if targetexists beneficial
3133                hotkey "Target Self"
3134                wait 50
3135            endif
3136        endif
3137    endif
3138    if not findbuff "actively meditating" 
3139        useskill 'meditation'
3140    endif
3141    wait 500
3142endwhile
3143if canYouMakeAMushroom = 1 and counttype "mushroom" backpack < butOnlyIHaveLessThenThisCount
3144    if mana >= manaReserve
3145        while counttype "mushroom" backpack < makeThisManyMushroomsCount
3146            cast "Create Food"
3147            wait 200
3148            if diffhits >= 20 or counttype "mushroom" backpack = 0
3149                break
3150            endif
3151        endwhile
3152    endif
3153endif
3154if castVampiricEmbrace = 1 and timer vampiricEmbraceTimer >= cdVampiricEmbrace and skill "Necromancy" >= 70 and findtype 8198 ground -1 -1 4 as jorpse
3155    say "[VampiricEmbrace"
3156    wft 500
3157    target jorpse
3158    settimer vampiricEmbraceTimer 0
3159    cooldown VampiricEmbrace cdVampiricEmbrace
3160endif
3161if castSummonEarthElementalCount = 1 or castSummonFireElementalCount = 1 or castSummonDemonCount = 1 or castSummonAirCount = 1 or castSummonWaterCount = 1
3162    useskill "spiritspeak"
3163    settimer meditiationTimer 8000
3164endif
3165if timer killTargetTimer >= cdKillTarget
3166    overhead "We cleared curse and mana drain targets" 34
3167    removelist myCursedTargets      
3168    removelist myManaDrainTargets
3169    removelist myManaVampireTargets
3170endif
3171   
3172if autoBotEnabled = 1
3173    replay
3174endif
3175
3176// other ways to handle line of sight:
3177    
3178// animal lore
3179// You cannot see that from here.
3180
3181// we can herding maybe question mark?
3182// That target is out of your line of sight.
3183
3184// casting a spell
3185// Target cannot be seen.
3186
3187
3188// thanks for using a Jaseowns script!
3189// https://www.youtube.com/jaseowns
3190    
3191// We did it