Nice script, though elseif would remove some conditionals in the first alias.
montague's code there uses an interesting method of reversing the text with the inner-most $regsubex, uses $replacex to swap the letters with hex codes representing the upside-down letters (spaced to make later regex accurate easily) and the outside regsubex simply converts those values to the correct pairs of characters with $base.
$base would probably have made your script easier, FordLawnmower.
Specifically, for the warn action..
A spamfilter match snotice is sent, a message telling the user that a copy of what the said was sent to opers (with your given reason) is sent to the user but their message still goes through.
It's similar to block without actually blocking.
I can't really imagine that actually helping people who know the /spamfilter command as it is, but you could make it helpful by allowing straight text for the reason and then using something like:
$replace($did(27),_,__,$chr(32),_)
It would also be more helpful if those checkboxes were words, rather than the actual character used in /spamfilter, e.g. 'Private Messages' instead of 'p'.
Good job with the script, though. :)
By the way, Unreal supports the 'warn' action now.
Thanks guys. :)
@FordLawnmower, I like to see the /whois info as well. Saves me having to do it twice. ;)
EDIT: Also lets me know that it's working, lol.
You can make ping checking scripts which test the time difference between your /ctcp and the reply, rather than comparing the $ctime.. This gets around the text ping replies and is what I did.
The background colour should have two digits to prevent colour failure if your text starts with a number.
Background should also have the 99 colour option to have no background. :P
Apart from the fact that you aren't always in a channel when you send a message to someone (You can use $target instead of $chan), this script will message the channel any /commands you use.
I see the $chr($2) doesn't work there..
So you know, you don't actually need to have text stored to do that, though you would need to use /(?<!^)(?!$)/g for complete accuracy. However, token identifiers ignore null tokens, so it's not especially important here.