Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- menu nicklist {
- -
- .Mute
- ..$iif(!$hget(MuteEnforce,$+($network,$chan,$address($$1,2))),$style(2)) RemoveMute $$1: {
- var %mask $+($network,$chan,$address($$1,2))
- hdel MuteEnforce %mask
- if ($timer(%mask).com) {
- $v1
- .notice $$1 Your ban has been lifted early! You may now speak in $+($chan,.) Please try not to repeat the same activity that caused you to be muted.
- $+(.timer,%mask) off
- }
- else mode $chan -b $+(m:,$address($$1,2))
- }
- ..Mute $$1
- ...3 Minutes:mute $$1 180 $$?="Reason for Muting $$1"
- ...5 Minutes:mute $$1 300 $$?="Reason for Muting $$1"
- ...10 Minutes:mute $$1 600 $$?="Reason for Muting $$1"
- ...30 Minutes:mute $$1 1800 $$?="Reason for Muting $$1"
- ...60 Minutes:mute $$1 3600 $$?="Reason for Muting $$1"
- ...Set Time: {
- var %length $$?="Length of ban in minutes"
- mute $$1 $calc(%length * 60) $$?="Reason for Muting $$1"
- }
- }
- alias -l mute {
- var %nick $$1
- if (%nick ison $chan) && ($regex($nick(#,$me).pnick,/[~&!@%]/)) {
- ialcheck %nick
- var %usermodes $replace($remove($nick(#,%nick).pnick,%nick),~,q,&,a,!,a,@,o,%,h,+,v), %addy $iif($address(%nick,2),$v1,%nick)
- mode $chan $+(+b-,%usermodes) $+(m:,%addy) $str($+(%nick,$chr(32)),$len(%usermodes))
- hadd -m MuteEnforce $+($network,$chan,%addy) mute
- if ($$2 isnum) {
- $+(.timer,$network,$chan,%addy) 1 $$2 removeMute $+($network,$chan,%addy) $chan $+(-b+,%usermodes) $+(m:,%addy) $str($+(%nick,$chr(32)),$len(%usermodes))
- msg $chan $+(,%nick,) You have been Muted! Duration: $duration($2) Reason: $iif($3-,$3-,Intolerable Behavior!)
- }
- else msg $chan %nick You have been Muted! $+(Reason:,$iif($2-,$2-,Intolerable Behavior!))
- }
- else echo -a Error: Either %nick is not on $chan or you do not have the correct privileges to use the mute command.
- }
- alias -l ialcheck {
- if (!$ial($1)) .who $1
- }
- alias -l removeMute {
- if ($($+($,$0),2) !ison $2) mode $2 -b $4
- else mode $2-
- hdel MuteEnforce $1
- }
- alias -l parseMode {
- tokenize 32 $1
- var %start 1, %finish $len($1), %+-, %modes -1, %location $+(parseMode,$chr(3),$network,$chr(3),$chan)
- while (%start <= %finish) {
- if ($mid($1,%start,1) isin +-) { %+- = $replace($v1,+,1,-,-1) | inc %modes }
- elseif ($mid($1,%start,1) isin qaohvb) {
- var %mode $+($v1,$($+($,$calc(%start - %modes)),2))
- hadd -m %location %mode $calc($hget(%location,%mode) + %+-)
- }
- inc %start
- }
- var %hash $regsubex($regsubex($str(.,$hget(%location,0).item),/(.)/g,$+($hget(%location,\n).data,$hget(%location,\n).item,$chr(32))),/(\b0[^\s]*)/g,)
- if ($hget(%location)) hfree $v1
- var %count 1, %max $numtok(%hash,32), %return, %temp
- while (%count <= %max) {
- %temp = $gettok(%hash,%count,32)
- %return = $+(%return,$chr(32),$iif($left(%temp,1) == -,$+(-,$mid(%temp,3)),$+(+,$mid(%temp,2))))
- inc %count
- }
- return %return
- }
- On !*:rawmode:#: {
- checkMutes $network $chan $parsemode($1-)
- }
- alias -l checkMutes {
- var %network $1, %chan $2, %modes $3-
- tokenize 32 %modes
- checkMute %network %chan $*
- }
- alias -l checkMute {
- var %mode $left($3,2), %target $mid($3,3)
- if ((%mode isincs +v+h+o+a+q) && ($hget(MuteEnforce,$+($1,$2,$address(%target,2))))) mode $2 $replace(%mode,+,-) %target
- elseif ((%mode == -b) && ($hget(MuteEnforce,$+($1,$2,$gettok(%target,-1,58))))) mode $chan +b %target
- }
- ;Syntax /m Nick TimeinMinutes Reason
- alias m mute $$1 $iif($2 isnum,$calc($2 * 60),180 $2) $3-
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement