If this isn't supposed to be in the "snippet" section, I apologize... Im still pretty new to whats considered an addon and up.
Copy and Paste this Script to your remotes "alt R".
I have a bot, so I put this into the bots remotes.
Simply change the "#Crib" to whatever channel you want this script to cover, and change yournickhere to the nick/nick's you want this script ONLY to repsond 2.
Simply type !commands for your available options. When you see
"!lock <status|on|off>" , that means you have 3 options after "!lock"
If you type, "!lock status" then the current status of all locks will be displayed..etc. etc
This is my latest attempt to create an "babysitter" script for you channel while your afk. That way, newbs can't go crazy with banning, oping others, changing channel modes, and even prevent kicks.
Any feedback would be appreciate!
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ KBOM LOCK Script v1.0 ~~
; ~~ Copy And Paste Script in Remotes ~~
; ~~ "ALT R" Goto "Save As" ~~
; ~~ This Script Basically Babysits ~~
; ~~ Your Channel, And Helps From ~~
; ~~ N00B's Causing Chaos and Stupidity ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
on *:LOAD: {
/_alloff1
echo 9 -a KICKS*BANS*OPS*MODES LOCK Script v1.0 Successfully Loaded
echo 14 -a Currently ALL LOCK OPTIONS STATUS = Disabled; For Available Commands Type !commands
}
on *:UNLOAD: {
/_alloff1
echo 9 -a KICKS*BANS*OPS*MODES LOCK Script v1.0 Successfully UnLoaded
echo 9 -a Thank You For Using KBOM LOCK Script v1.0
}
on *:START: {
/_alloff1
}
on *:EXIT: {
/_alloff1
}
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ Text Commands Trigger Section ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
on *:TEXT:*!*:#: {
if ($nick == $me) || ($nick == yournickhere) {
if ($1 == !commands) { /_commands }
if ($1 == !lock) { goto locks }
if ($1 == !mode) { goto modes }
if ($1 == !ban) { goto bans }
if ($1 == !op) { goto ops }
if ($1 == !kick) { goto kicks }
:modes
if ($1 == !mode) {
if ($2 == lock) {
if ($3 == status) { msg $chan MODELOCK STATUS = $group(#MODELOCK) }
if ($3 == on) && ( $group(#MODELOCK).status == off ) { .set %modelock. [ [ $chan ] ] [ [ $chan ] ] | .enable #MODELOCK | msg $chan MODELOCK For $chan Has Been Enabled }
if ($3 == off) && ( $group(#MODELOCK).status == on ) { .unset %modelock. [ [ $chan ] ] [ [ $chan ] ] | .disable #MODELOCK | msg $chan MODELOCK For $chan Has Been Disabled }
}
}
:bans
if ($1 == !ban) {
if ($2 == lock) {
if ($3 == status) { msg $chan BANLOCK STATUS = $group(#BANLOCK) }
if ($3 == on) && ( $group(#BANLOCK).status == off ) { .set %banlock. [ [ $chan ] ] [ [ $chan ] ] | .enable #BANLOCK | msg $chan BANLOCK For $chan Has Been Enabled }
if ($3 == off) && ( $group(#BANLOCK).status == on ) { .unset %banlock. [ [ $chan ] ] [ [ $chan ] ] | .disable #BANLOCK | msg $chan BANLOCK For $chan Has Been Disabled }
}
}
:ops
if ($1 == !op) {
if ($2 == lock) {
if ($3 == status) { msg $chan OPSLOCK STATUS = $group(#OPSLOCK) }
if ($3 == on) && ( $group(#OPSLOCK).status == off ) { .set %opslock. [ [ $chan ] ] [ [ $chan ] ] | .enable #OPSLOCK | msg $chan OPSLOCK For $chan Has Been Enabled }
if ($3 == off) && ( $group(#OPSLOCK).status == on ) { .unset %opslock. [ [ $chan ] ] [ [ $chan ] ] | .disable #OPSLOCK | msg $chan OPSLOCK For $chan Has Been Disabled }
}
}
:kicks
if ($1 == !kick) {
if ($2 == lock) {
if ($3 == status) { msg $chan KICKLOCK STATUS = $group(#KICKLOCK) }
if ($3 == on) && ( $group(#KICKLOCK).status == off ) { .set %kicklock. [ [ $chan ] ] [ [ $chan ] ] | .enable #KICKLOCK | mode # +Q | msg $chan KICKLOCK For $chan Has Been Enabled }
if ($3 == off) && ( $group(#KICKLOCK).status == on ) { .unset %kicklock. [ [ $chan ] ] [ [ $chan ] ] | .disable #KICKLOCK | mode # -Q | msg $chan KICKLOCK For $chan Has Been Disabled }
}
}
:locks
if ($1 == !lock) {
if ($2 == status) { /_allstatus }
if ($2 == on) { /_allon }
if ($2 == off) { /_alloff }
}
}
}
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ Group Locks Code Section ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#BANLOCK off
on *:BAN:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#BANLOCK).status == ON ) { mode $chan -b $banmask | msg $chan BANLOCK is Currently ENABLED, Do Not Use BAN AGAIN }
halt
}
on *:UNBAN:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#BANLOCK).status == ON ) { mode $chan +b $banmask | msg $chan BANLOCK is Currently ENABLED, Do Not Use UNBAN AGAIN }
halt
}
#BANLOCK end
#OPSLOCK off
on *:OWNER:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:DEOWNER:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:PROTECT:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:UNPROTECT:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:OP:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:DEOP:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:HOP:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:DEHOP:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:VOICE:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
on *:DEVOICE:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#OPSLOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) $qnick | msg $chan OPSLOCK For $chan Currently ENABLED, Do Not Use OPS Commands $nick }
halt
}
#OPSLOCK end
#MODELOCK off
on *:MODE:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#MODELOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) | msg $chan MODELOCK for $chan Currently ENABLED, Do Not Change Channel Modes $nick }
halt
}
#MODELOCK end
#KICKLOCK off
on *:KICK:#Crib: {
if ($nick == $me) || ($nick == yournickhere) || $nick == yournickhere) || ($nick == yournickhere) { return }
if ( $group(#KICKLOCK).status == ON ) { msg $chan KICKLOCK for $chan Currently ENABLED, Do Not Attempt To Kick Anyone $nick }
if ( $group(#MODELOCK).status == ON ) { mode $chan $replacex($1-,+,-,-,+) }
halt
}
#KICKLOCK end
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ Menu Channel Nicklist Section ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
menu channel,nicklist {
KBOM Locks
.KICKLOCK ( $+ $group(#KICKLOCK).status $+ )
..$iif( $group(#KICKLOCK).status == on, off, on): {
echo $colour(info) -a KICKLOCK $iif( $group(#KICKLOCK).status == on, disabled, enabled)
.$iif( $group(#KICKLOCK).status == on, .disable, .enable) #KICKLOCK
}
.BANLOCK ( $+ $group(#BANLOCK).status $+ )
..$iif( $group(#BANLOCK).status == on, off, on): {
echo $colour(info) -a BANLOCK $iif( $group(#BANLOCK).status == on, disabled, enabled)
.$iif( $group(#BANLOCK).status == on, .disable, .enable) #BANLOCK
}
.OPSLOCK ( $+ $group(#OPSLOCK).status $+ )
..$iif( $group(#OPSLOCK).status == on, off, on): {
echo $colour(info) -a OPSLOCK $iif( $group(#OPSLOCK).status == on, disabled, enabled)
.$iif( $group(#OPSLOCK).status == on, .disable, .enable) #OPSLOCK
}
.MODELOCK ( $+ $group(#MODELOCK).status $+ )
..$iif( $group(#MODELOCK).status == on, off, on): {
echo $colour(info) -a MODELOCK $iif( $group(#MODELOCK).status == on, disabled, enabled)
.$iif( $group(#MODELOCK).status == on, .disable, .enable) #MODELOCK
}
.LOCKALL
..On: /_allon | echo -a ALL LOCKS ENABLED
..Off: /_alloff | echo -a ALL LOCKS DISABLED
}
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ Menu Channel Current Modes Section ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
menu channel,nicklist {
KBOM &Modes Status
.$style(2) $+(Currently, ,$gettok($chan($chan).mode,1,32)):x
.-
.$iif($chnm(t,$chan),$style(1)) Ops set &topic +t:mode $chan $gtchnm(t,$chan)
.$iif($chnm(n,$chan),$style(1)) &No ext. msg. +n:mode $chan $gtchnm(n,$chan)
.$iif($chnm(i,$chan),$style(1)) &Invite only +i:mode $chan $gtchnm(i,$chan)
.$iif($chnm(m,$chan),$style(1)) &Moderated +m:mode $chan $gtchnm(m,$chan)
.$iif($chnm(k,$chan),$style(1)) &Key +k:mode $chan $gtchnm(k,$chan) $iif($chnm(k,$chan),$chan($chan).key,$$eddialog(Enter a key for $chan))
.$iif($chnm(l,$chan),$style(1)) User &limit +l:mode $chan $gtchnm(l,$chan) $iif(!$chnm(l,$chan),$$eddialog(Enter a user limit for $chan))
.$iif($chnm(p,$chan),$style(1)) &Private +p:mode $chan $gtchnm(p,$chan)
.$iif($chnm(s,$chan),$style(1)) &Secret +s:mode $chan $gtchnm(s,$chan)
.$iif(c isincs $chanmodes,$iif($chnm(c,$chan),$style(1)) N&o colors +c):mode $chan $gtchnm(c,$chan)
.$iif(C isincs $chanmodes,$iif($chnm(C,$chan),$style(1)) No &CTCPs +C):mode $chan $gtchnm(C,$chan)
.$iif(N isincs $chanmodes,$iif($chnm(N,$chan),$style(1)) No ¬ices +N):mode $chan $gtchnm(N,$chan)
.$iif(r isincs $chanmodes,$iif($chnm(r,$chan),$style(1)) Authed only +&r):mode $chan $gtchnm(r,$chan)
.$iif(D isincs $chanmodes,$iif($chnm(D,$chan),$style(1)) &Delayed join +D):mode $chan $gtchnm(D,$chan)
.$iif(u isincs $chanmodes,$iif($chnm(u,$chan),$style(1)) Hide q&uit msgs +u):mode $chan $gtchnm(u,$chan)
}
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ~~ Alias Section ~~
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alias _allstatus {
msg $chan Current Locks STATUS are as Follows:
.timerstats1 1 2 msg $chan MODELOCK STATUS = $group(#MODELOCK)
.timerstats2 1 3 msg $chan BANLOCK STATUS = $group(#BANLOCK)
.timerstats3 1 4 msg $chan OPSLOCK STATUS = $group(#OPSLOCK)
.timerstats4 1 5 msg $chan KICKLOCK STATUS = $group(#KICKLOCK)
halt
}
alias _commands {
msg $chan Available Commands Are as Follows:
.timercmds1 1 2 msg $chan !mode lock <status|on|off>
.timercmds2 1 3 msg $chan !ban lock <status|on|off>
.timercmds3 1 4 msg $chan !op lock <status|on|off>
.timercmds4 1 5 msg $chan !kick lock <status|on|off>
.timercmds5 1 6 msg $chan !lock <status|on|off>
halt
}
alias _klon {
mode # +Q
}
alias _kloff {
mode # -Q
}
alias _allon {
.enable #KICKLOCK
.enable #BANLOCK
.enable #OPSLOCK
.enable #MODELOCK
mode $chan +Q
msg $chan All LOCKS ENABLED
}
alias _alloff {
.disable #KICKLOCK
.disable #BANLOCK
.disable #OPSLOCK
.disable #MODELOCK
mode # -Q
msg $chan All LOCKS DISABLED
}
alias _alloff1 {
.disable #KICKLOCK
.disable #BANLOCK
.disable #OPSLOCK
.disable #MODELOCK
}