Back to "discordance" skill

Auto-DISCO by dennozz

#Auto-DISCO 1.22 #********** INFORMATION **********# #Made by @dennozz on discord. #Inspired/learned by other scrips in https://outlands.uorazorscripts.com/ #This script will auto discordance the closest gray creature, if the creature is already discorded it will start looking for other nearby creatures. #Optional: Set overhead messages on Razor > Display/Counters > Overhead messages #Add overhead messages when success discordance, fail discordance or skill needs to wait for use. #********** SET YOUR SETTINGS **********# @setvar! attackClosestMonster 1 #********** DO NOT EDIT FROM HERE UNLESS YOU KNOW HOW TO SCRIPT **********# @setvar! currentTarget 0 @setvar! foundTarget 0 removelist discordedCreatures createlist discordedCreatures #********** SET INSTRUMENT **********# if not varexist myInstruz @setvar! myInstruz 0 endif while findtype 3740|3742|3762|3763|10245|20006|20008|20010|20012|20014|20016 backpack as inst getlabel inst myLabel if "supremely" in myLabel or "exceedingly" in myLabel @setvar! myInstruz inst break endif @ignore inst endwhile @clearignore if not find myInstruz backpack clearsysmsg overhead "Select instrument:" 55 @setvar! myInstruz wait 100 while not targetexists and not insysmsg "Select" @setvar! myInstruz endwhile wait 200 getlabel backpack xxx if find myInstruz backpack as inst getlabel inst iLabel if "flute" in iLabel or "drums" in iLabel or "harp" in iLabel or "lute" in iLabel or "tambourine" in iLabel or "gemshorn" in iLabel or "hurdy" in iLabel or "psaltery" in iLabel or "sackbut" in iLabel or "shawm" in iLabel or "Vielle" in iLabel dclick inst wait 200 else @setvar! myInstruz 0 overhead "Not an instrument!" 33 stop endif else @setvar! myInstruz 0 overhead "Not in backpack" 33 stop endif endif if not timerexists discoTimer settimer discoTimer 0 endif clearsysmsg if targetexists hotkey 'cancel current target' endif #********* AUTO-SELECT NEW TARGET ********* sysmsg "Discord Start.." 65 settimer testTimer 0 hotkey 'target closest grey monster' wait 25 if not find lasttarget ground -1 -1 12 overhead 'No target found' 33 else if 1 = attackClosestMonster attack lasttarget endif while index != 20 @setvar! tempTarget lasttarget if index != 0 hotkey "next non-friendly monster target" @setvar! tempTarget lasttarget #overhead "*{{index}}*" 34 tempTarget if index = 1 @setvar! firstTarget lasttarget elseif firstTarget = tempTarget @setvar! foundTarget 2 break endif endif if find tempTarget ground -1 -1 12 getlabel tempTarget targetLabel if "discord" in targetLabel #next pushlist discordedCreatures tempTarget elseif "-" in targetLabel sysmsg "Label error, replaying search.." 34 replay else clearsysmsg skill 'begging' waitfortarget 325 target tempTarget wait 100 getlabel backpack xxx if insysmsg "Target cannot be seen" sysmsg "*Not visible* [{{index}}]" 44 overhead "*Not visible* [{{index}}]" 44 tempTarget elseif insysmsg "That is too far away" overhead "*Too far* [{{index}}]" 44 tempTarget elseif insysmsg "You must wait" overhead "*Skill cooldown*" 11 sysmsg "*Skill cooldown*" 11 break else @setvar! foundTarget 1 @setvar! currentTarget tempTarget getlabel currentTarget myLabel sysmsg "Target: {{myLabel}}" 55 break endif endif endif wait 50 endwhile endif #********* DISCO IF TARGET FOUND ********* if 1 = foundTarget skill 'discordance' waitfortarget 650 getlabel backpack xxx if insysmsg "What instrument" target myInstruz replay else target currentTarget endif wait 100 getlabel backpack xxx if insysmsg 'You fail to discord' overhead "Discord FAILED" 44 currentTarget elseif insysmsg "You play successfully, disrupting" getlabel currentTarget myLabel overhead "{{myLabel}}" 88 currentTarget endif getlabel myInstruz instLabel if "(10/" in instLabel overhead "Instrument : 10 uses left" 33 sysmsg "Instrument : 10 uses left" 33 elseif "(8/" in instLabel overhead "Instrument : 8 uses left" 33 sysmsg "Instrument : 8 uses left" 33 elseif "(6/" in instLabel overhead "Instrument : 6 uses left" 33 sysmsg "Instrument : 6 uses left" 33 elseif "(4/" in instLabel overhead "Instrument : 4 uses left" 33 sysmsg "Instrument : 4 uses left" 33 elseif "(2/" in instLabel overhead "Instrument : 2 uses left" 33 sysmsg "Instrument : 2 uses left" 33 elseif "(1/" in instLabel overhead "Instrument : 1 use left" 33 sysmsg "Instrument : 1 use left" 33 endif if 1 = attackClosestMonster attack currentTarget endif if followers > 0 say 'all guard me' 32 endif elseif 2 = foundTarget if followers > 0 say 'all guard me' 32 endif #look here for closest discordedCreatures target on a list #foreach creature in discordedCreatures #endfor ### endif #********* SONG BUFF ********* if not findbuff "Song Of Discordance" wait 650 skill 'discordance' wait 100 getlabel backpack xxx if insysmsg "You must wait" overhead "Disco Buff Cooldown" 11 else waitfortarget 650 target backpack endif endif sysmsg "Disco Finish! Time passed: {{testTimer}}" 44