Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;inc-dec
- ;author : beefviper
- ;date : Aug 3, 2005
- ;version: 1.1
- ;!inc #chan user value
- ;!dec #chan user value
- ;(also accepts /cs, /msg ChanServ, /msg ChanServ@Services.GameSurge.net)
- ;inc - increases the user's access level on ChanServ by the given amount.
- ;dec - decreases the user's access level on ChanServ by the given amount.
- alias incdec.main {
- if ( !%incdec.inuse ) {
- set %incdec.inuse 1
- set %incdec.params $1-
- .timer 1 60 incdec.timeout
- %incdec.params = $reptok(%incdec.params,!inc,inc,1,32)
- %incdec.params = $reptok(%incdec.params,!dec,dec,1,32)
- %incdec.params = $remtok(%incdec.params,/msg,1,32)
- %incdec.params = $remtok(%incdec.params,/cs,1,32)
- %incdec.params = $remtok(%incdec.params,ChanServ@Services.GameSurge.net,1,32)
- %incdec.params = $remtok(%incdec.params,ChanServ,1,32)
- if ( $left(%incdec.params,1) == ! ) {
- %incdec.params = $right(%incdec.params,$calc($len(%incdec.params) - 1 ))
- }
- if ( $left(%incdec.params,1) == $chr(35) ) {
- if ( $istok(%incdec.params,inc,32) ) {
- %incdec.params = $remtok(%incdec.params,inc,1,32)
- %incdec.params = $instok(%incdec.params,inc,1,32)
- }
- elseif ( $istok(%incdec.params,dec,32) ) {
- %incdec.params = $remtok(%incdec.params,dec,1,32)
- %incdec.params = $instok(%incdec.params,dec,1,32)
- }
- }
- if ( $gettok(%incdec.params,1,32) == inc ) {
- set %incdec.inc 1
- }
- elseif ( $gettok(%incdec.params,1,32) == dec ) {
- set %incdec.dec 1
- }
- %incdec.params = $deltok(%incdec.params,1,32)
- %incdec.params = $sorttok(%incdec.params,32,c)
- if ( ( $1 == /msg || $1 == /cs) && $left($gettok(%incdec.params,1,32),1) != $chr(35) ) {
- echo -tac notice -ChanServ- No channel name provided.
- unset %incdec.*
- return
- }
- if ( $numtok(%incdec.params,32) == 3 && $chr(35) isin $gettok(%incdec.params,1,32) && $gettok(%incdec.params,2,32) isnum ) {
- set %incdec.chan $gettok(%incdec.params,1,32)
- set %incdec.value $gettok(%incdec.params,2,32)
- set %incdec.nick $gettok(%incdec.params,3,32)
- }
- elseif ( $numtok(%incdec.params,32) == 2 && $chr(35) isin $gettok(%incdec.params,1,32) && $gettok(%incdec.params,2,32) !isnum ) {
- set %incdec.chan $gettok(%incdec.params,1,32)
- set %incdec.value 1
- set %incdec.nick $gettok(%incdec.params,2,32)
- }
- elseif ( $numtok(%incdec.params,32) == 2 && $gettok(%incdec.params,1,32) isnum ) {
- set %incdec.chan $chan
- set %incdec.value $gettok(%incdec.params,1,32)
- set %incdec.nick $gettok(%incdec.params,2,32)
- }
- elseif ( $numtok(%incdec.params,32) == 1 && $chr(35) !isin $gettok(%incdec.params,1,32) && $gettok(%incdec.params,1,32) !isnum ) {
- set %incdec.chan $chan
- set %incdec.value 1
- set %incdec.nick $gettok(%incdec.params,1,32)
- }
- else {
- .timer 1 0 echo $color(notice) -t %incdec.chan -ChanServ- Error: Invalid params.
- unset %incdec.*
- return
- }
- if ( %incdec.nick == $me ) {
- .timer 1 0 echo $color(notice) -t %incdec.chan -ChanServ- Error: Cannot inc/dec yourself.
- unset %incdec.*
- return
- }
- elseif ( %incdec.value < 1 || %incdec.value > 498 ) {
- .timer 1 0 echo -tac notice -ChanServ- Error: Value out of range.
- unset %incdec.*
- return
- }
- .msg ChanServ access %incdec.chan $me
- .msg ChanServ access %incdec.chan %incdec.nick
- }
- else {
- .timer 1 0 echo -tac -ChanServ- Currently processing command to inc/dec %incdec.nick $+ , please hold.
- }
- }
- alias incdec.timeout {
- if ( %incdec.inuse ) {
- echo -s incdec error: command timedout
- unset %incdec.*
- }
- }
- on *:INPUT:#:{
- if ( !$ctrlenter && ( $&
- ( $1-2 == /msg ChanServ@Services.GameSurge.net && $left($3,1) == $chr(35) && $4 == inc ) || ( $1-2 == /msg ChanServ@Services.GameSurge.net && $left($3,1) == $chr(35) && $4 == dec ) || $&
- ( $1-2 == /msg ChanServ && $left($3,1) == $chr(35) && $4 == inc ) || ( $1-2 == /msg ChanServ && $left($3,1) == $chr(35) && $4 == dec ) || $&
- ( $1 == /cs && $left($2,1) == $chr(35) && $3 == inc ) || ( $1 == /cs && $left($2,1) == $chr(35) && $3 == dec ) || $&
- ( $left($1,2) == !# && $2 == inc ) || ( $left($1,2) == !# && $2 == dec ) || $&
- $1-3 == /msg ChanServ@Services.GameSurge.net inc || $1-3 == /msg ChanServ@Services.GameSurge.net dec || $&
- $1-3 == /msg ChanServ inc || $1-3 == /msg ChanServ dec || $&
- $1-2 == /cs inc || $1-2 == /cs dec || $&
- $1 == !inc || $1 == !dec ) ) {
- if ( $1 == /msg ) {
- echo -tac own -> * $+ $2 $+ * $3-
- }
- elseif ( $left($1,1) == ! ) {
- .msg $chan $1-
- echo -tac own < $+ $iif($me isop $chan,@,$iif($me isvoice $chan,+)) $+ $me $+ > $1-
- }
- incdec.main $1-
- haltdef
- }
- }
- ;Hide Helper/Oper title (if any)
- on ^*:NOTICE:$($+(%incdec.nick,$chr(32),is,*)):?:{
- if ( %incdec.inuse ) {
- haltdef
- }
- }
- ;catch $me access level
- on ^*:NOTICE:$($+(*,$me,$chr(32),$chr(40),*,$chr(41),$chr(32),has,$chr(32),access,*,in,$chr(32),%incdec.chan,$chr(46))):?:{
- if ( %incdec.inuse ) {
- set %incdec.level.me $strip($5)
- haltdef
- }
- }
- ;actual user level info
- on ^*:NOTICE:$($+(*,%incdec.nick,$chr(32),$chr(40),*,$chr(41),$chr(32),has,$chr(32),access,*,in,$chr(32),%incdec.chan,*)):?:{
- if ( %incdec.inuse ) {
- if ( !%incdec.level.me.no ) {
- set %incdec.nick $1
- set %incdec.handle $right($left($2,$calc($len($2)-1)),$calc($len($2)-2))
- set %incdec.level.old $strip($5)
- set %incdec.level.new %incdec.level.old
- if ( %incdec.inc ) {
- if ( %incdec.value > $calc(%incdec.level.me - %incdec.level.old - 1 ) ) {
- %incdec.value = $calc(%incdec.level.me - %incdec.level.old - 1 )
- set %incdec.trim $chr(40) $+ Inc trimmed to %incdec.value $+ $chr(41)
- }
- %incdec.level.new = $calc(%incdec.level.new + %incdec.value)
- }
- elseif ( %incdec.dec ) {
- if ( $calc(%incdec.level.old - %incdec.value) < 1 ) {
- %incdec.value = $calc(%incdec.level.old - 1 )
- set %incdec.trim $chr(40) $+ Dec trimmed to %incdec.value $+ $chr(41)
- }
- %incdec.level.new = $calc(%incdec.level.new - %incdec.value)
- }
- .msg ChanServ %incdec.chan clvl %incdec.nick %incdec.level.new
- haltdef
- }
- else {
- echo -tac notice -ChanServ- You lack access to %incdec.chan $+ .
- unset %incdec.*
- haltdef
- }
- }
- }
- ;hide any !setinfo (if any)
- on ^*:NOTICE:$($+($chr(91),%incdec.nick,$chr(93),*)):?:{
- if ( %incdec.inuse ) {
- haltdef
- }
- }
- ;hide !setinfo for $me
- on ^*:NOTICE:$($+($chr(91),$me,$chr(93),*)):?:{
- if ( %incdec.inuse ) {
- haltdef
- }
- }
- on *:NOTICE:$($+(User with nick,$chr(32),$chr(2),%incdec.nick,$chr(2),$chr(32),does not exist,$chr(46))):?:{
- if ( %incdec.inuse ) {
- unset %incdec.*
- }
- }
- on *:NOTICE:$($+($chr(2),%incdec.handle,$chr(2),$chr(32),outranks you,$chr(32),$chr(40),command has no effect,$chr(41),$chr(46))):?:{
- if ( %incdec.inuse ) {
- unset %incdec.*
- }
- }
- on *:NOTICE:$($+(*,$chr(32),is an invalid access level,$chr(46))):?:{
- if ( %incdec.inuse ) {
- unset %incdec.*
- }
- }
- ;add lacks access
- on ^*:NOTICE:$($+(*,lacks access to,*)):?:{
- if ( %incdec.inuse ) {
- if ( $1 == $me ) {
- set %incdec.level.me.no 1
- haltdef
- }
- elseif ( $1 == %incdec.nick && $left($2,1) == $chr(40) && $right($2,1) == $chr(41) ) {
- set %incdec.handle $right($left($2,$calc($len($2)-1)),$calc($len($2)-2))
- }
- if ( $1 == %incdec.nick && !%incdec.level.me.no ) {
- echo -tac notice -ChanServ- %incdec.handle lacks access to $chr(2) $+ %incdec.chan $+ $chr(2) $+ .
- unset %incdec.*
- haltdef
- }
- elseif ( $1 == %incdec.nick && %incdec.level.me.no ) {
- echo -tac notice -ChanServ- You lack access to %incdec.chan $+ .
- unset %incdec.*
- haltdef
- }
- }
- }
- ;hide 'channel that exists'
- on ^*:NOTICE:$($+(You must provide the name of a channel that exists.)):?:{
- if ( %incdec.inuse ) {
- if ( !%incdec.exists ) {
- set %incdec.exists 1
- haltdef
- }
- else {
- unset %incdec.*
- }
- }
- }
- ;hide !clvl info
- on ^*:NOTICE:$($+(%incdec.handle,$chr(32),now has access,*,in,$chr(32),%incdec.chan,$chr(46))):?:{
- if ( %incdec.inuse ) {
- echo -tac notice -ChanServ- %incdec.nick $chr(40) $+ %incdec.handle $+ $chr(41) had access $+ %incdec.level.old $+ $+ , but now has access $+ %incdec.level.new $+ in %incdec.chan $+ . %incdec.trim
- unset %incdec.*
- haltdef
- }
- }
- on *:CONNECT:{
- unset %incdec.*
- }
- on *:START:{
- unset %incdec.*
- }
- on *:QUIT:{
- if ( $nick == ChanServ ) {
- unset %incdec.*
- }
- }
- on *:DISCONNECT:{
- unset %incdec.*
- }
- on *:CONNECT:{
- unset %incdec.*
- }
Add Comment
Please, Sign In to add comment