- <?xml version="1.0" encoding="iso-8859-1"?>
- <!DOCTYPE muclient>
- <!-- Saved on Sunday, April 17, 2011, 10:00 AM -->
- <!-- MuClient version 4.72 -->
- <!-- Plugin "CompactDmg" generated by Plugin Wizard -->
- <muclient>
- <plugin
- name="CompactDmg"
- author="Red"
- id="0be2c68e848819f3aa46dde8"
- language="Lua"
- purpose="Compacts damage lines"
- date_written="2011-04-17 10:00:00"
- requires="4.72"
- version="1.0"
- >
- </plugin>
- <triggers>
- <trigger
- enabled="y"
- match="^(.+) (spiralling force|hammering blow|frenzied attack|whipping|faith|heavenly balance|wrath of Gaia|eruption) (?:misses|tickles|bruises|scratches|grazes|nicks|scars|hits|injures|wounds|mauls|maims|mangles|mars|LACERATES|DECIMATES|DEVASTATES|ERADICATES|OBLITERATES|EXTIRPATES|INCINERATES|MUTILATES|DISEMBOWELS|MASSACRES|DISMEMBERS|RENDS|- BLASTS -|-= DEMOLISHES =-|\*\* SHREDS \*\*|\*\*\*\* DESTROYS \*\*\*\*|\*\*\*\*\* PULVERIZES \*\*\*\*\*|-=- VAPORIZES -=-|<-==-> ATOMIZES <-==->|<\-\:\-> ASPHYXIATES <\-\:\->|<-\*-> RAVAGES <-\*->|<\*><\*> LIQUIDATES <\*><\*>|<\*><\*><\*> EVAPORATES <\*><\*><\*>|<-=-> SUNDERS <-=->|<=-=><=-=> TEARS INTO <=-=><=-=>|<->\*<=> WASTES <=>\*<->|<-\+-><-\*-> CREMATES <-\*-><-\+->|<\*><\*><\*><\*> ANNIHILATES <\*><\*><\*><\*>|<--\*--><--\*--> IMPLODES <--\*--><--\*-->|<-><-=-><-> EXTERMINATES <-><-=-><->|<-==-><-==-> SHATTERS <-==-><-==->|<\*><-:-><\*> SLAUGHTERS <\*><-:-><\*>|<-\*-><-><-\*-> RUPTURES <-\*-><-><-\*->|<-\*-><\*><-\*-> NUKES <-\*-><\*><-\*->|-<\[=-\+-=\]<:::<>:::> GLACIATES <:::<>:::>\[=-\+-=\]>-|<-=-><-:-\*-:-><\*--\*> METEORITES <\*--\*><-:-\*-:-><-=->|<-:-><-:-\*-:-><-\*-> SUPERNOVAS <-\*-><-:-\*-:-><-:->|does UNSPEAKABLE things to|does UNTHINKABLE things to|does UNIMAGINABLE things to|does UNBELIEVABLE things to|pimpslaps|<>\*<> FISSURES <>\*<>) (.+) \[(\d+)\]$"
- regexp="y"
- name="CombatRoundtrig"
- script="CombatRound"
- keep_evaluating="n"
- omit_from_output="y"
- sequence="110"
- > </trigger>
- <trigger
- enabled="n"
- match="*"
- name="NotCombatRound"
- script="CombatRoundEnd"
- omit_from_output="y"
- keep_evaluating="y"
- sequence="120"
- > </trigger>
- </triggers>
- <aliases>
- <alias
- match="^testverb (.*)$"
- regexp="y"
- enabled="y"
- script="testverb"
- sequence="100"
- >
- </alias>
- </aliases>
- <!-- Get our standard constants -->
- <include name="constants.lua"/>
- <script>
- <![CDATA[
- --match="^(.*)$"
- --match="^((?!.+ (?:hammering blow|frenzied attack|whipping|faith|heavenly balance|wrath of Gaia|eruption) (?:misses|tickles|bruises|scratches|grazes|nicks|scars|hits|injures|wounds|mauls|maims|mangles|mars|LACERATES|DECIMATES|DEVASTATES|ERADICATES|OBLITERATES|EXTIRPATES|INCINERATES|MUTILATES|DISEMBOWELS|MASSACRES|DISMEMBERS|RENDS|- BLASTS -|-= DEMOLISHES =-|\*\* SHREDS \*\*|\*\*\*\* DESTROYS \*\*\*\*|\*\*\*\*\* PULVERIZES \*\*\*\*\*|-=- VAPORIZES -=-|<-==-> ATOMIZES <-==->|<\-\:\-> ASPHYXIATES <\-\:\->|<-\*-> RAVAGES <-\*->|<\*><\*> LIQUIDATES <\*><\*>|<\*><\*><\*> EVAPORATES <\*><\*><\*>|<-=-> SUNDERS <-=->|<=-=><=-=> TEARS INTO <=-=><=-=>|<->\*<=> WASTES <=>\*<->|<-\+-><-\*-> CREMATES <-\*-><-\+->|<\*><\*><\*><\*> ANNIHILATES <\*><\*><\*><\*>|<--\*--><--\*--> IMPLODES <--\*--><--\*-->|<-><-=-><-> EXTERMINATES <-><-=-><->|<-==-><-==-> SHATTERS <-==-><-==->|<\*><-:-><\*> SLAUGHTERS <\*><-:-><\*>|<-\*-><-><-\*-> RUPTURES <-\*-><-><-\*->|<-\*-><\*><-\*-> NUKES <-\*-><\*><-\*->|-<\[=-\+-=\]<:::<>:::> GLACIATES <:::<>:::>\[=-\+-=\]>-|<-=-><-:-\*-:-><\*--\*> METEORITES <\*--\*><-:-\*-:-><-=->|<-:-><-:-\*-:-><-\*-> SUPERNOVAS <-\*-><-:-\*-:-><-:->|does UNSPEAKABLE things to|does UNTHINKABLE things to|does UNIMAGINABLE things to|does UNBELIEVABLE things to|pimpslaps|<>\*<> FISSURES <>\*<>) (?:.+) \[(?:\d+)\]).)*$"
- require "damverbs"
- function testverb(name,line,wildcards)
- ColourTell("silver","black",wildcards[1].." ")
- OutputDamverb(tonumber(wildcards[1]))
- Note("")
- end
- Rounds = 0
- Target = ""
- User = ""
- Skilltype = ""
- DamageDone = 0
- function CombatRound (name,line,wildcards)
- EnableTrigger("NotCombatRound",true)
- if wildcards[1]~=User and User~="" then
- CombatRoundEnd()
- else
- User = wildcards[1]
- end
- if wildcards[2]~=Skilltype and Skilltype~="" then
- CombatRoundEnd()
- else
- Skilltype=wildcards[2]
- end
- if Target=="" then
- Target = wildcards[3]
- elseif not string.find(Target,string.sub(string.clean(wildcards[3]),1,-2)) then
- Target = string.sub(Target,1,-2)..","..wildcards[3]
- end
- DamageDone = DamageDone+wildcards[4]
- Rounds = Rounds+1
- end
- function CombatRoundEnd(name,line,wildcards,styles)
- if wildcards then
- if string.find(wildcards[1],"is not in the direct line of your charge.") then
- misscharge=1
- if styles then
- for _, v in ipairs (styles) do
- ColourTell (RGBColourToName (v.textcolour),RGBColourToName (v.backcolour),v.text)
- end
- Note ("")
- end
- return
- end
- if string.find(wildcards[1],"fades into existence.") then
- if styles then
- for _, v in ipairs (styles) do
- ColourTell (RGBColourToName (v.textcolour),RGBColourToName (v.backcolour),v.text)
- end
- Note ("")
- end
- return
- end
- end
- if User=="Your" then
- linecolour="lime"
- elseif Target=="you!" or Target=="you." then
- linecolour="red"
- else
- linecolour="silver"
- end
- ColourTell(linecolour,"black","["..Rounds.."] "..User.." "..Skilltype.." ")
- OutputDamverb(DamageDone)
- ColourTell(linecolour,"black"," "..Target.." ","red","black","["..DamageDone.."] ["..string.format( "%.0f",DamageDone/Rounds).."]")
- Note("")
- if styles then
- for _, v in ipairs (styles) do
- ColourTell (RGBColourToName (v.textcolour),RGBColourToName (v.backcolour),v.text)
- end
- Note ("")
- end
- if misscharge==1 then
- Send("c 84")
- misscharge=0
- end
- EnableTrigger("NotCombatRound",false)
- Rounds = 0
- Target = ""
- User = ""
- Skilltype = ""
- DamageDone = 0
- end
- function string.clean(s)
- s = string.gsub(s,'%-','%%-')
- return s
- end
- ]]>
- </script>
- </muclient>