########## MISCSERV ########## set cmd_cmdchar "!" bind pub m|m [string trim $cmd_cmdchar]reload pub_do_reload bind pub m|m [string trim $cmd_cmdchar]restart pub:restart bind pub m|m [string trim $cmd_cmdchar]rehash pub:rehash bind pub m|m [string trim $cmd_cmdchar]die pub_do_die bind pub m|m [string trim $cmd_cmdchar]die pub_do_die bind pub o|o [string trim $cmd_cmdchar]join add_chan bind pub o|o [string trim $cmd_cmdchar]part del_chan bind pub o|o [string trim $cmd_cmdchar]hop pub_do_hop bind pub o|o [string trim $cmd_cmdchar]invite invite_pub bind pub o|o [string trim $cmd_cmdchar]mode pub_mode bind pub o|o [string trim $cmd_cmdchar]amsg amsg_pub ##### JOIN ##### proc add_chan {nick uhost hand channel arg} { if {$arg == ""} { putserv "NOTICE $nick :Please Supply A Channel" return 0 } putserv "NOTICE $nick :.:OK:. Joine $arg" channel add $arg } ##### PART ##### proc del_chan {nick uhost hand channel arg} { if {$arg == ""} { putserv "NOTICE $nick :Please Supply A Channel" return 0 } putserv "NOTICE $nick :.:OK:. Parte $arg " channel remove $arg } ##### REJOIN ##### proc pub_do_hop { nick uhost hand chan text } { putserv "PART :$chan" putserv "JOIN :$chan" putserv "NOTICE $nick :.:OK:. Rejoine" } ##### REHASH ##### proc pub:rehash {nick host hand chan args} { putserv "NOTICE $nick :.:OK:. Rehashe" rehash } ##### RESTART ##### proc pub:restart {nick host hand chan args} { putserv "NOTICE $nick :.:OK:. Starte neu " restart } #### INVITE ##### proc invite_pub {nick uhost hand chan arg} { set name [lindex [split $arg] 0] set channel [lindex [split $arg] 1] if {[lindex [split $arg] 1 ] == ""} { putserv "NOTICE $nick :Error: [string trim $cmd_cmdchar]invite <#Channel>" return 0 } else { if {[onchan $name $channel]} { putserv "NOTICE $nick :$name ist schon in $channel." return 0 } else { putserv "INVITE $name $channel" putserv "NOTICE $nick :.:OK:. Invitet" } } } #### MODES CHANGE ##### proc pub_mode {nick host handle chan arg} { putserv "MODE $chan $arg" putserv "NOTICE $nick :.:OK:. Mode gechanged" } #### DIE ##### proc pub_do_die {nick host handle channel testes} { set why [lrange $testes 0 end] if {[matchattr $nick +n]} { putserv "NOTICE $nick :.:OK:. Die Reason: $why" die $why } } #### RELOAD USERFILE ##### proc pub_do_reload {nick host handle channel testes} { if {[matchattr $nick +n]} { reload putserv "NOTICE $nick :.:OK:. Reloade Userfile" } } ##### AMSG ##### proc amsg_pub {nick uhost hand channel arg} { foreach chan [channels] { set amsg [lrange [split $arg] 0 end] if {[lindex [split $arg] 0] == ""} { putserv "NOTICE $nick :Error: [string trim $cmd_cmdchar]amsg " return 0 } else { putserv "PRIVMSG $chan :\[Broadcast by $nick\] $amsg" } } }