#xecho -b Author: Neobite xecho -b ** Time stamping enabled. opennap-ng cloaking supported. assign stime %c[%g$strftime(%X)%c] assign AUTO_RESPONSE_STR khay blackmoor cygnus # Prefix with control C for numbers # # 1 black 2 dark blue %b 3 dark green %g # 4 dark red %r 5 dark yellow %y 6 dark purple %p # 7 red %R 8 yellow %Y 9 green %G #10 dark cyan %c 11 cyan %C 12 blue %B #13 purple %P 14 dark grey %K 15 dark white %w #16 white %W -1 default (white) # Prefix with % for numbers # # 1 dark red 2 dark green 3 brown # 4 dark blue 5 dark purple 6 dark cyan # 7 silver #[18:56:42] <..> cparse : 0 1 2 3 4 5 6 7 kbgrypRYGcCBPKwW #[18:56:43] <..> c code : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #[18:56:43] <..> bgc code : ,1 ,2 ,3 ,4 ,5 ,6 ,10 ,16 # Private messages on ^send_msg "*" { # xecho $cparse(%c[%c$strftime(%X)%c] %g[%g-->%c$0%g])10 $1- xecho $cparse(%c[%c$strftime(%X)%c] %g[%gmsg\(%c$0%g\)])10 $1- } on ^msg "*" { # xecho $cparse(%c[%C$strftime(%X)%c] %g[%C$0%g%G-->%g])10 $1- xecho $cparse(%c[%C$strftime(%X)%c] %g[%C$0%G(*@*)%g])10 $1- } # Public messages in your current channel. on ^public "*" { ^assign nick $tr(/#//$0) if (match(#* $0) > 0) { if ([$nick] == [$N]) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C#%C$nick%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %R<%W#$nick%R>)16 $2- } } if (match(#* $0) < 1) { if ([$nick] == [$N]) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C$0%R>)16 $2- }{ if (!match($0 Hal)) { xecho $cparse(%c[%g$strftime(%X)%c] %R<%W$0%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %R<%C$0%R>)16 $2- } } } } # Public messages including specified strings eval on ^public "% % *\\[${AUTO_RESPONSE_STR}\\]*" { ^assign nick $tr(/#//$0) if (match(#* $0) > 0) { if ([$tr(/#//$0)] == N) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C#$nick%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %R<%W#$nick%R>)11 $2- } } if (match(#* $0) < 1) { if ([$tr(/#//$0)] == N) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C$0%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %R<%W$0%R>)11 $2- } } } # Public messages in another joined channel, not the active one. on ^public_other "*" { ^assign nick $tr(/#//$0) if (match(#* $0) > 0) { if ([$tr(/#//$0)] == [$N]) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C#$nick%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %c$1 %R<%W#$nick%R>)16 $2- } } if (match(#* $0) < 1) { if ([$tr(/#//$0)] == [$N]) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C$0%R>)16 $2- }{ if (!match($0 Hal)) { xecho $cparse(%c[%g$strftime(%X)%c] %c$1 %R<%W$0%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %c$1 %R<%C$0%R>)16 $2- } } } } # Public message in another channel with given string eval on ^public_other "% % *\\[${AUTO_RESPONSE_STR}\\]*" { ^assign nick $tr(/#//$0) if (match(#* $0) > 0) { if ([$tr(/#//$0)] == N) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C#$nick%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %c$1 %R<%W#$nick%R>)11 $2- } } if (match(#* $0) < 1) { if ([$tr(/#//$0)] == N) { xecho $cparse(%c[%C$strftime(%X)%c] %R<%C$0%R>)16 $2- }{ xecho $cparse(%c[%g$strftime(%X)%c] %c$1 %R<%W$0%R>)11 $2- } } } # Emotes on ^824 "*" { @:chra=[$tr(/"//$2-)] # In current channel ^assign nick $tr(/#//$1) if (match(#* $1) > 0) { if ([$tr(/#//$1)] == [$N] && [$0] == C) { xecho $cparse(%c[%C$strftime(%X)%c] %C#$nick)15 $chra } if ([$tr(/#//$1)] != [$N] && [$0] == C) { xecho $cparse(%c[%g$strftime(%X)%c] %w#$nick) $chra } # In other channel if ([$tr(/#//$1)] == [$N] && [$0] != C) { xecho $cparse(%c[%C$strftime(%X)%c] $0 %C#$nick)15 $chra } if ([$tr(/#//$1)] != [$N] && [$0] != C) { xecho $cparse(%c[%g$strftime(%X)%c] $0 %w#$nick) $chra } } if (match(#* $1) < 1) { if ([$tr(/#//$1)] == [$N] && [$0] == C) { xecho $cparse(%c[%C$strftime(%X)%c] %C$1)15 $chra } if ([$tr(/#//$1)] != [$N] && [$0] == C) { xecho $cparse(%c[%g$strftime(%X)%c] %w$1) $chra } # In other channel if ([$tr(/#//$1)] == [$N] && [$0] != C) { xecho $cparse(%c[%C$strftime(%X)%c] $0 %C$1)15 $chra } if ([$tr(/#//$1)] != [$N] && [$0] != C) { xecho $cparse(%c[%g$strftime(%X)%c] $0 %w$1) $chra } } } # Announce on ^628 "*" { if ([$tr(/#//$0)] == [$N]) { @chrl=[$2-] @chra=[$tr(/"//$chrl)] xecho $cparse(%c[%C$strftime(%X)%c] %R*%C$0%R* )07$1- } { @chrl=[$2-] @chra=[$tr(/"//$chrl)] xecho $cparse(%c[%g$strftime(%X)%c] %R*%W$0%R* )07$1- } } # Wallop on ^627 "*" { if ([$tr(/#//$0)] == [$N]) { @chrl=[$2-] @chra=[$tr(/"//$chrl)] xecho $cparse(%c[%C$strftime(%X)%c] %G*%C$0%G* )10$1- } { @chrl=[$2-] @chra=[$tr(/"//$chrl)] xecho $cparse(%c[%g$strftime(%X)%c] %G*%W$0%G* )10$1- } } # Now, on to coloured system messages. :) on ^404 "% has muzzled *" {xecho $cparse(%c[%g$strftime(%X)%c] %c$0 %Whas muzzled )10$3-} on ^404 "% has unmuzzled *" {xecho $cparse(%c[%g$strftime(%X)%c] %c$0 %Whas unmuzzled )10$3-} on ^404 "kill failed: no such user" {eval xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "% killed *" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "* % killed *Password" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "Connection from *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} on ^404 "Notification from *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} on ^404 "% changed % user *" {xecho $cparse(%c[%g$strftime(%X)%c] )11$0-} on ^404 "% changed % data *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} on ^404 "* % changed % user *" {xecho $cparse(%c[%g$strftime(%X)%c] )11$0-} on ^404 "% has cloaked" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0 has cloaked!} on ^404 "% has decloaked" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0 has decloaked!} on ^404 "% kicked *" {xecho $cparse(%c[%g$strftime(%X)%c] %c$0 %Wkicked %c$2 %Wout of )10$6-} on ^404 "Pinging all *" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "Pong from server *" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "% added *" {xecho $cparse(%c[%g$strftime(%X)%c] )03$0-} on ^404 "% banned *" {xecho $cparse(%c[%g$strftime(%X)%c] )11$0-} on ^404 "% removed ban on *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} on ^404 "You are now cloaked." {xecho $cparse(%c[%g$strftime(%X)%c] )12 $0-} on ^404 "You are no longer cloaked." {xecho $cparse(%c[%g$strftime(%X)%c] )12$0-} on ^404 "user * is not a known user" {eval xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} #on ^404 "User is not currently online." {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "% removed *" {xecho $cparse(%c[%g$strftime(%X)%c] )03$0-} on ^404 "% reloaded configuration on *" {xecho $cparse(%c[%g$strftime(%X)%c] )10$0-} on ^404 "% set topic *" {xecho $cparse(%c[%g$strftime(%X)%c] %C$0 %cset %Ctopic %con %C$4 %cto )11$5-} on ^404 "* % modified *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} # Stuff that interfers with other scripts #on #^404 423 "Server * has quit: EOF" {xecho $cparse(%c[%g$strftime(%X)%c] %Y)$0-} #on ^404 "% has requested your info" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0 has requested your eeeenfo;ex -m $0 date} #on ^404 "* % killed *" {xecho $cparse(%c[%g$strftime(%X)%c] %K)$0-} #on ^404 "* % has joined" {xecho $cparse(%c[%g$strftime(%X)%c]%Y +++++ Server $1 has joined! +++++)} #on ^404 "* % set *" {xecho $cparse(%c[%g$strftime(%X)%c] %Y)$0-} #on ^404 "Clones detected from *" {xecho $cparse(%c[%g$strftime(%X)%c] )16$0-} # Turn off crap I don't want to see.. on ^404 "User is not currently online*" {} on ^404 "*: ghost*" {} on ^404 "*: server full*" {} on ^404 "*: invalid nick*" {} on ^404 "Clones*" {} on ^404 "*Exceeded maximum connections" {} on ^404 "Connection from pat*" {} on ^404 "Connection from guest_*" {} on ^404 "*nick collision*" {}