initial release
This commit is contained in:
250
cosmic rage/worlds/plugins/gag.xml
Normal file
250
cosmic rage/worlds/plugins/gag.xml
Normal file
@@ -0,0 +1,250 @@
|
||||
<?xml version="1.0" encoding="US-ASCII"?>
|
||||
<!DOCTYPE muclient>
|
||||
<!-- Saved on Friday, March 19, 2004, 12:02 PM -->
|
||||
<!-- MuClient version 3.46 -->
|
||||
|
||||
<!-- Plugin "Gag" generated by Plugin Wizard -->
|
||||
|
||||
<muclient>
|
||||
<plugin
|
||||
name="Gag"
|
||||
author="Nick Gammon"
|
||||
id="36e75e5c438fcd6f6c9f994d"
|
||||
language="VBscript"
|
||||
purpose="Gags annoying players"
|
||||
save_state="y"
|
||||
date_written="2004-03-19 11:58:21"
|
||||
requires="3.46"
|
||||
version="1.0"
|
||||
>
|
||||
<description trim="y">
|
||||
<![CDATA[
|
||||
This plugin will automatically customise a trigger to gag players who are annoying you.
|
||||
|
||||
You need to specify the regular expression that matches the text to be gagged, where "!!" represents the list of players whose names are to be gagged.
|
||||
|
||||
Usage
|
||||
-----
|
||||
|
||||
gagsetmatch (regular expression)
|
||||
|
||||
eg. gagsetmatch (!!) (says|whispers|tells you).*$
|
||||
|
||||
gag (player) <-- gags a player
|
||||
|
||||
eg. gag turkey
|
||||
|
||||
ungag (player) <-- ungags a player
|
||||
|
||||
eg. ungag turkey
|
||||
|
||||
gagshow <-- shows list of gagged players
|
||||
|
||||
gaginfo <-- shows information about the gag plugin
|
||||
|
||||
gaghelp <-- show this information
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
]]>
|
||||
</description>
|
||||
|
||||
</plugin>
|
||||
|
||||
<!-- Get our standard constants -->
|
||||
|
||||
<include name="constants.vbs"/>
|
||||
|
||||
<!-- Triggers -->
|
||||
|
||||
<triggers>
|
||||
<trigger
|
||||
custom_colour="1"
|
||||
enabled="n"
|
||||
match="will be replaced when you gag someone"
|
||||
name="gags"
|
||||
omit_from_output="y"
|
||||
regexp="y"
|
||||
sequence="100"
|
||||
>
|
||||
</trigger>
|
||||
</triggers>
|
||||
|
||||
<!-- Aliases -->
|
||||
|
||||
<aliases>
|
||||
<alias
|
||||
script="OnUnGag"
|
||||
match="ungag *"
|
||||
enabled="y"
|
||||
echo_alias="y"
|
||||
sequence="100"
|
||||
>
|
||||
</alias>
|
||||
<alias
|
||||
script="OnGag"
|
||||
match="gag *"
|
||||
enabled="y"
|
||||
echo_alias="y"
|
||||
sequence="100"
|
||||
>
|
||||
</alias>
|
||||
<alias
|
||||
script="OnShowGags"
|
||||
match="gagshow"
|
||||
enabled="y"
|
||||
sequence="100"
|
||||
>
|
||||
</alias>
|
||||
<alias
|
||||
script="OnGagInfo"
|
||||
match="gaginfo"
|
||||
enabled="y"
|
||||
sequence="100"
|
||||
>
|
||||
</alias>
|
||||
<alias
|
||||
script="OnGagSetMatch"
|
||||
match="gagsetmatch *"
|
||||
enabled="y"
|
||||
sequence="100"
|
||||
>
|
||||
</alias>
|
||||
</aliases>
|
||||
|
||||
<!-- Variables -->
|
||||
|
||||
<variables>
|
||||
<variable name="regexp">(!!) (says|tells you).*$</variable>
|
||||
</variables>
|
||||
|
||||
<!-- Script -->
|
||||
|
||||
|
||||
<script>
|
||||
<![CDATA[
|
||||
Sub OnPluginInstall
|
||||
|
||||
ArrayCreate "gags"
|
||||
ArrayImport "gags", GetVariable ("gags"), "|"
|
||||
'
|
||||
' Set up trigger after install
|
||||
'
|
||||
Call MakeTrigger
|
||||
|
||||
ColourNote "white", "maroon", "Gag plugin installed."
|
||||
OnShowGags "","",""
|
||||
|
||||
End Sub
|
||||
|
||||
Sub OnGag (name, line, wildcards)
|
||||
dim who
|
||||
|
||||
who = Trim (Lcase (wildcards (1)))
|
||||
|
||||
If ArrayKeyExists ("gags", who) Then
|
||||
ColourNote "white", "red", who & " is already gagged."
|
||||
Else
|
||||
ArraySet "gags", who, "" ' add to array of gagged players
|
||||
ColourNote "white", "blue", who & " added to list of gagged players."
|
||||
Call MakeTrigger
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub OnUnGag (name, line, wildcards)
|
||||
|
||||
dim who
|
||||
|
||||
who = Trim (Lcase (wildcards (1)))
|
||||
|
||||
If Not ArrayKeyExists ("gags", who) Then
|
||||
ColourNote "white", "red", who & " is not gagged."
|
||||
Else
|
||||
ArrayDeleteKey "gags", who ' remove from array of gagged players
|
||||
ColourNote "white", "blue", who & " removed from list of gagged players."
|
||||
Call MakeTrigger
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub MakeTrigger
|
||||
|
||||
'
|
||||
' remember gag list in variable for plugin state save
|
||||
'
|
||||
SetVariable "gags", ArrayExport ("gags", "|")
|
||||
'
|
||||
' enable/disable trigger depending on whether we have gagged players
|
||||
'
|
||||
EnableTrigger "gags", ArraySize ("gags") <> 0
|
||||
'
|
||||
' change the trigger match text - replace !! by the gag list
|
||||
'
|
||||
If SetTriggerOption ("gags", "match", _
|
||||
Replace (GetVariable ("regexp"), "!!", _
|
||||
ArrayExportKeys ("gags", "|"))) = eBadRegularExpression Then
|
||||
ColourNote "white", "red", _
|
||||
"Could not set trigger - check regular expression syntax"
|
||||
ColourNote "white", "red", "Regular expression is currently: " _
|
||||
& GetVariable ("regexp")
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub OnShowGags (name, line, wildcards)
|
||||
dim gaglist
|
||||
|
||||
If ArraySize ("gags") = 0 Then
|
||||
ColourNote "white", "blue", "No gagged players."
|
||||
Else
|
||||
gaglist = Replace (ArrayExportKeys ("gags", ","), ",", ", ")
|
||||
ColourNote "white", "maroon", "You have gagged: " & gaglist
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Sub OnGagSetMatch (name, line, wildcards)
|
||||
|
||||
SetVariable "regexp", wildcards (1)
|
||||
Call MakeTrigger
|
||||
|
||||
End Sub
|
||||
|
||||
Sub OnGagInfo (name, line, wildcards)
|
||||
|
||||
ColourNote "white", "blue", "Number of gagged players = " & _
|
||||
ArraySize ("gags")
|
||||
ColourNote "white", "blue", "Gagging regular expression = " & _
|
||||
GetVariable ("regexp")
|
||||
ColourNote "white", "blue", "(""!!"" will be replaced by gagged player names)"
|
||||
ColourNote "white", "blue", "Number of times gag trigger matched = " & _
|
||||
GetTriggerInfo ("gags", 21)
|
||||
|
||||
End Sub
|
||||
]]>
|
||||
</script>
|
||||
|
||||
|
||||
<!-- Plugin help -->
|
||||
|
||||
<aliases>
|
||||
<alias
|
||||
script="OnHelp"
|
||||
match="gaghelp"
|
||||
enabled="y"
|
||||
>
|
||||
</alias>
|
||||
</aliases>
|
||||
|
||||
<script>
|
||||
<![CDATA[
|
||||
Sub OnHelp (sName, sLine, wildcards)
|
||||
world.Note world.GetPluginInfo (world.GetPluginID, 3)
|
||||
End Sub
|
||||
]]>
|
||||
</script>
|
||||
|
||||
</muclient>
|
||||
Reference in New Issue
Block a user