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