All pastes #526250 Raw Edit

Stuff

public text v1 · immutable
#526250 ·published 2007-05-31 18:49 UTC
rendered paste body
#################################################
# Script: BotAdmin              Version: 0.2    #
# Author: FriedCPU                              #
#-----------------------------------------------#
#              What Does It Do?                 #
# Provides commands that usually need to be     #
# executed on the partyline, saving time having #
# tobe in dcc-chat / telnet with bot.           #
#-----------------------------------------------#
#              What Commands?                   #
# rehash - rehashes bot                         #
# restart - restarts bot                        #
# hop - makes bot hop (part then join) the chan #
# die - kills the bot                           #
# Note: if a command is not specified, then it  #
# responds with a random come back              #
#-----------------------------------------------#
#              How?                             #
# Usage: <botname> <command>                    #
# if the bots name was charlie...               #
# charlie rehash                                #
# charlie restart                               #
# charlie hop                                   #
# etc...etc...                                  #
#################################################

bind pub - $botnick admin:sort

proc formatize { text } { return "\002\00314\[\002$text\002\]\003\002" }
proc admincheck { handle } {
    if {![matchattr $handle m|m]} {
        return "no"
    } else {
        return "yes"
    }
}
proc axxdenied { n } {
    return "[formatize "$n"] Access Denied"
}

set randresponce {
    "What?"
    "Huh?"
    "What do you want?"
    "Arrrrghh"
    "Stop calling my name!"
    "What you talkin' about Willis?"
    "I am Reptar hear me rawrr!"
    "Rawwrrr"
    "Again Again!"
    "I'l Be Back"
    "Astalavista, Baby"
    "When it all gets to much, fukitol"
}
proc admin:sort { n u h c t } { 
global randresponce 
set arg [lindex $t 1] 
set t [lindex $t 0] 
if {$t == "rehash"} { 
if {[admincheck $h] == "yes"} { 
rehash 
putserv "PRIVMSG $c :[formatize "$n"] Rehash Complete" 
} else { 
putserv "PRIVMSG $c :[axxdenied]" 
} 
} elseif {$t == "restart"} { 
if {[admincheck $h] == "yes"} { 
putserv "PRIVMSG $c :[formatize "$n"] Restarting..." 
utimer 2 "restart" 
} else { 
putserv "PRIVMSG $c :[axxdenied]" 
} 
} elseif {$t == "hop"} { 
if {[admincheck $h] == "yes"} { 
putserv "PRIVMSG $c :[formatize "$n"] Hopping Channel" 
putserv "PART $c :Hop Hop Hop" 
} else { 
putserv "PRIVMSG $c :[axxdenied $n]" 
} 
} elseif {$t == "die"} { 
if {[admincheck $h] == "yes"} { 
die "Connection Rest by $n" 
} else { "
putserv "PRIVMSG $c :[axxdenied]" 
} 
} elseif {$t == "join"} { 
if {[admincheck $h] == "yes"} { 
channel add $arg
putserv "PRIVMSG $c :[formatize "$n"] Joining channel $arg"
putserv "JOIN $c :Joining channel"
} else { 
putserv "PRIVMSG $c :[axxdenied]" 
}
} else {
putserv "PRIVMSG $c :[lindex $randresponce [rand [llength $randresponce]]]" 
} 
} elseif {$t == "part"} {
if {[admincheck $h] == "yes"} {
channel remove $arg
putserv "PRIVMSG $c :[formatize "$n"] Parting channel $arg"
} else {
putserv "PRIVMSG $c :[axxdenied $n]"
}
}

putlog "\002BotAdmin\002 v\0020.2\002 by \002FriedCPU\002 Loaded"