dslinux/user/bitchx/script SCRIPTS actplug.gmz auto_resume bxglobal bxtcl.tcl cyp1.0k.tar.gz dcc_fserve-0.50.tgz example-.bitchxrc file.tcl fserve+vfs.tar.gz fserve.irc logger.bx menu.bx operchallenge-1.3.tar query query.bx

stsp stsp at user.in-berlin.de
Sun Jul 2 15:18:39 CEST 2006


Update of /cvsroot/dslinux/dslinux/user/bitchx/script
In directory antilope:/tmp/cvs-serv9280/script

Added Files:
	SCRIPTS actplug.gmz auto_resume bxglobal bxtcl.tcl 
	cyp1.0k.tar.gz dcc_fserve-0.50.tgz example-.bitchxrc file.tcl 
	fserve+vfs.tar.gz fserve.irc logger.bx menu.bx 
	operchallenge-1.3.tar query query.bx 
Log Message:
Adding pristine copy of BitchX so I can branch from it.


--- NEW FILE: dcc_fserve-0.50.tgz ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: file.tcl ---
;#to contact the author of this fserve for any reason
;#(comments, suggestions, beefs) 264mlang at home.com
;#got a damn bug that makes a tcl.log file, read it and you;ll see
;#it writes that crap when you get a file, I don't know what could be wrong
;#just what youve been waiting for..a vfs for the fserve
;#implemented 1 dir level, some crappy color codes
;#configuration file saved as ~/fserve.config
bind nick - * nicktrick
bind ctcp - !trigger ahoy
bind pub - !trigger ahoy
bind hook - dcc_* flash
set dotimer off;
set maxusers 6;
set maxsends 5;
set dirnames [list 0];
set indexed [list 0];
set buffer [list 0];
set who [list 0];
set thechannel "#mychannel";
set channeldisplay "/ctcp $nickname !trigger to get on my fserve!"
set nicktrans [list 0];

proc settimer {args} {
global channeldisplay;
if {[string length $args]>0} {
set channeldisplay $args;
};#if
};#proc

proc readconfig {} {
global maxusers;
global maxsends;
global thechannel;
global dotimer;
global channeldisplay;
if {[catch {glob "~/fserve.config"}]!=1} {
set configfile [open "~/fserve.config" r]
set conf [read $configfile];
set maxusers [lindex $conf 0];
set maxsends [lindex $conf 1];
set dotimer [lindex $conf 2];
set channeldisplay [lindex $conf 3];
set thechannel [lindex $conf 4]; 
close $configfile;
};#if
};#proc

proc writeconfig {} {
global maxusers;
global maxsends;
global thechannel;
global dotimer;
global channeldisplay;
set configfile [open "~/fserve.config" w]
puts $configfile $maxusers;
puts $configfile $maxsends;
puts $configfile $dotimer;
puts $configfile "\{$channeldisplay\}";
puts $configfile $thechannel;
close $configfile;
putscr "wrote ~/fserve.config";
};#proc


proc toggletimer {} {
global dotimer;
if {[string match $dotimer on]} {
set dotimer off;
} else {set dotimer on;}
putscr "Timer turned $dotimer!";
};#proc

proc nicktrick {args} {
	global nicktrans;
	global who;
	set oldnick [lindex $args 0];
	set newnick [lindex $args 4];
	set oldmatch [lsearch $nicktrans $oldnick]
	if {$oldmatch<=0} {
		for {set counter 0} {$counter<=[expr [llength [channels]]-1]} {incr counter} {
		if {[onchan $newnick [lindex [channels] $counter]]} {
                set ip [getchanhost $newnick [lindex [channels] $counter]];
                };#if
		};#for
		set stuff [dccstats];
		foreach check $stuff {
		if {[string match [lindex $check 1] $oldnick] && [string match [lindex $check 7] "chat"] && $oldmatch<0} {
			lappend nicktrans $newnick [lindex $check 8];
		};#if
	};#foreach
	};#if
	if {$oldmatch>0} {
	set nicktrans [lreplace $nicktrans $oldmatch [expr $oldmatch+1] $newnick [lindex $nicktrans [expr $oldmatch+1]]];
	};#if
};#proc

proc thetimer {} {
	global channeldisplay;
	global dotimer;
	global thechannel;
	if {[llength [channels]]==0} {ircii /join $thechannel;}
	global nicktrans;
	global maxusers;
	global nickname;
	global who;
	set change $who;
	set hell [dccstats];
	set online 0;
	set users 0;
	if {[llength $change]>100} {set who [lreplace $who 0 end];}
foreach check $hell {
set ip no;
if {[string match [lindex $check 7] "chat"]} {
set newnick [lindex $check 1];
if {[lsearch $nicktrans [lindex $check 8]]>-1} {
        set newnick [lindex $nicktrans [expr [lsearch $nicktrans [lindex $check 8]]-1]];
        };#if
for {set counter 0} {$counter<=[expr [llength [channels]]-1]} {incr counter;} {
        if {[onchan $newnick [lindex [channels] $counter]]} {
                set ip [getchanhost $newnick [lindex [channels] $counter]];
                };#if
        };#for

if {[llength $change]>100 && ![string match $ip "no"]} {lappend who $ip [lindex $change [expr [lsearch $change $ip]+1]];}
if {[string match $ip "no"]} {
	ircii /msg =[lindex $check 1] "terminating off-channel dcc chat...";
	ircii /dcc close chat [lindex $check 1];
	set chatnumber [lsearch $nicktrans [lindex $check 8]];
	if {$chatnumber>-1} {
	set nicktrans [lreplace $nicktrans [expr $chatnumber-1] $chatnumber];
	};#if
	};#if
if {[string match [lindex $check 7] "chat"] && ![string match $ip "no"]} {incr users;}
};#if
};#foreach
	if {[string match $dotimer on]} {
	ircii /say "$channeldisplay Users $users/$maxusers";
	};#if
	ircii /timer 300 tcl thetimer;
};#proc

ircii timer 300 tcl thetimer

proc update {} {
set dircount 0;
global dirnames;
global buffer;
set dirnames [lreplace $dirnames 0 end];
global indexed;
set b .;
set a [glob *];
set vfs [open "outfile" w];
foreach filenames [concat $a] {
        file stat $filenames arr
        if {[string match [file type $filenames] "directory"]} {
        set dircount 1;
	if {[catch {glob $b/[file tail $filenames]/*}]!=1} {
	lappend dirnames [file tail $filenames];
	set filenum [glob $b/[file tail $filenames]/*];
        puts $vfs "[file tail $filenames]";
        set filecount [llength $filenum];
	foreach subfiles [concat $filenum] {
		if {[string match [file type $subfiles] "directory"]} {
		set filecount [expr $filecount-1];
		};#if
	};#foreach
	puts $vfs ",$filecount";
	foreach subfiles [concat $filenum] {
                if {[string match [file type $subfiles] "file"]} {
		puts $vfs "$subfiles"
                puts $vfs ",[file size $subfiles]";
                };#if
		};#foreach
		};#if
        };#if
};#foreach
close $vfs;
set indexed [lreplace $indexed 0 end];
set buffer [lreplace $buffer 0 end];
set vfsin [open "outfile" r];
set buffer [read $vfsin];
if {$dircount>0} {
foreach satan $dirnames {
	lappend indexed [lsearch $buffer $satan];
};#foreach
}
close $vfs;
if {$dircount==0} {putscr "ERROR: no sub dirs in ./"};
putscr "VFS has been updated with the new directory structure";
};#proc

proc ahoy {name args} {
global maxusers;
set hell [dccstats];
set no 0
set users 0;
foreach check $hell {
if {[string match [lindex $check 7] "chat"]} {incr users;}
if {[string match [lindex $check 1] $name] && [string match [lindex $check 7] "chat"]} {
	ircii /msg =$name "restarting dcc...";
	ircii /dcc close chat $name;
	ircii /timer 10 dcc chat $name;
	set no 1
};#if 
};#foreach 
if {$no==0 && $users<$maxusers} {ircii /dcc chat $name;
};#if
if {$users>=$maxusers && $no==0} {ircii /msg $name "Sorry there's over $maxusers users, try later!";}
};#proc

update;
readconfig;
proc echohelp {} {
	global dotimer;
	global thechannel;
	global maxusers;
	global maxsends;
	global nickname
	global channeldisplay;
	putscr "FSERVE SCRIPT HELP:";
	putscr "type /update to refresh the filesystem"
	putscr "type /usermax newlimit to set a new user limit"
	putscr "       Max Users: $maxusers";
	putscr "type /sendmax newlimit to set the max user gets";
	putscr "       Max Sends: $maxsends";
	putscr "type /persist #channel to set a new persistant channel";
	putscr "       Persistant channel: $thechannel";
	putscr "type /fsoff to turn the fserve off";
	putscr "And /fson to turn the fserve on!";
	putscr "Toggle timer /fstimer currently turned $dotimer!";
	putscr "type /fssay new channel advertisement to change the timer"; 
	putscr "currently: $channeldisplay";
	putscr "type /fssave to save the current fserve setup";
};#proc

proc fserveon {} {
	bind ctcp - !trigger ahoy;
	bind pub - !trigger ahoy;
	bind hook - dcc_* flash;
	putscr "Fserve turned back on....";
}
proc fserveoff {} {
	ircii nochat *;
	unbind ctcp - !trigger ahoy;
	unbind pub - !trigger ahoy;
	unbind hook - dcc_* flash;
	putscr "Fserve turned off!";
}

proc flash {request args} { 
	global who;
	regsub -nocase -all \[{}] $args "" args;
	switch $request {
        DCC_CONNECT {
			scan $args "%s%s%s%s" name type ip p;
		if {[string match CHAT $type]} {ircii /msg =$name "Please type help to learn how to use my fserve";}
		return;
		}
             DCC_CHAT {
	if {[string first " " $args]!=[string last " " $args]} {
		scan $args "%s%s%s" name args filematch;
	} else { 
	scan $args "%s%s" name args;
	set filematch *;
	}
	global nicktrans;
	global maxsends;
	global indexed;
	global dirnames;
	global buffer;
	set ip no;
	set newnick $name;
        set dccstuff [dccstats];
	foreach check $dccstuff {
        if {[lsearch $nicktrans [lindex $check 8]]>-1 && [string match [lindex $check 7] "chat"] && [string match [lindex $check 1] $name]} {
        set chatnumber [lsearch $nicktrans [lindex $check 8]];
	set newnick [lindex $nicktrans [expr $chatnumber-1]];
	};#if
        };#foreach

	for {set counter 0} {$counter<=[expr [llength [channels]]-1]} {incr counter} {
	if {[onchan $newnick [lindex [channels] $counter]]} {
		set ip [getchanhost $newnick [lindex [channels] $counter]];
		};#if
	};#for
	set exist 0;
	set bunk *;
	set bunk2 ?;
	if {$bunk==$args} {set args help;}
	if {$bunk2==$args} {set args help;}
	set fileopen 1;
	set listem 1;
	set d 0;
	set infoseek [lsearch $who $ip];
	if {$infoseek>-1} {
	set activedir [lindex $who [expr $infoseek+1]];
	};#if
	if {$infoseek<=-1} {
		set activedir ".";
	};#if
	set homedir "back";
	set command 0;
	set get get;
	set ls ls;
	set help help;
	set b [exec pwd];
	set currentdir ".";
if {[lsearch $ls $args]>=$d && ![string match $ip "no"]} {set listem 0;}
if {$listem!=1 && $activedir!=$currentdir} {ircii /msg =$name "ParentDir:  back";}
foreach fileindex [concat $buffer] {  
	if {[string index $fileindex 0]!="." && [string index $fileindex 0]!=","} {
		if {$listem!=1 && $activedir=="."} {
			ircii /msg =$name "Dir: $fileindex      files:[lindex $buffer [expr [lsearch $buffer $fileindex]+1]]";
			set command 1;
		};#if
};#foreach
};#if
if {$listem!=1 && $activedir!="." && ![string match $ip "no"]} {
	set dirstart [lindex $indexed [lsearch $dirnames $activedir]];
	set dirlength [string trim [lindex $buffer [expr $dirstart+1]] ","];
	set nameone [expr $dirstart+2];
	for {set i $nameone} {$i<[expr [expr $dirlength*2]+$dirstart+2]} {set i [expr $i+2]} {
		set size [string trim [lindex $buffer [expr $i+1]] ","];
		set testthis [string range [lindex $buffer $i] [string length ./$activedir/] [string length [lindex $buffer $i]]];
		set color 3;
		if {$size>1000000} {set color 8;}
		if {$size>5000000} {set color 4;}
		if {[string match $filematch $testthis]} {ircii /msg =$name "file:$color,1 $testthis size:$size";}
	};#for
set command 1;
};#if
if {[lsearch $help $args]>=$d} {
	ircii /msg =$name "command examples:";
        ircii /msg =$name "ls or ls *.avi      :directory listing";
 	ircii /msg =$name "[string trim [lindex $buffer 2] ./[lindex $dirnames 0]/]     :type a file name to get it";
	if {$activedir=="."} {
	ircii /msg =$name "[lindex $dirnames 0]   :type the dir name to change to it"
	} else { 
	ircii /msg =$name "back     :to go back a directory level."; }
	if {$activedir=="."} { ircii /msg =$name "*back command currently inactive.*";}
	ircii /msg =$name "All commands are one word only, have fun!"
set command 1;
};#if
set infodir [lsearch $dirnames $args];
if {$infodir>=$d && ![string match $ip "no"]} {
	if {$infoseek>0} {
		set who [lreplace $who $infoseek [expr $infoseek+1] $ip [lindex $dirnames $infodir]];
	};#if
	if {$infoseek<=0} {
		lappend who $ip [lindex $dirnames $infodir];
	};#if
	ircii /msg =$name "Database updated: [lindex $dirnames $infodir]";
set command 1;
};#if

if {[string match $args $homedir] && $activedir!=$currentdir && ![string match $ip "no"]} {
	if {$infoseek>0} {
		set who [lreplace $who $infoseek [expr $infoseek+1] $ip $currentdir];
	};#if
        if {$infoseek<=0} {
                lappend who $ip $currentdir;
	};#if
ircii /msg =$name "Database updated: $args";
set command 1;
};#if
	set dirstart [lindex $indexed [lsearch $dirnames $activedir]];
        set dirlength [string trim [lindex $buffer [expr $dirstart+1]] ","];
        set nameone [expr $dirstart+1];
set subdir [lrange $buffer $nameone [expr $dirstart+[expr $dirlength*2]]];
set info [lsearch $subdir "./$activedir/$args"];
if {$info>$d} {
if {[string match [string range [lindex $subdir $info] [string length "./$activedir/"] [string length [lindex $subdir $info]]] $args] && [lsearch $dirnames $args]<$d} {
	set sendtotal 0;
	foreach check $dccstuff {
	if {[string match [lindex $check 0] "SEND"] && [string match [lindex $check 1] $name]} {incr sendtotal}
	if {[string match [lindex $check 0] "SEND"] && [string match [lindex $check 1] $newnick]} {incr sendtotal}
	};#foreach
	set sent 0;
	if {![string match $ip "no"] && $sendtotal<$maxsends} {
		ircii /dcc send $newnick [lindex $subdir $info];
		set sent 1;
		};#if
	set command 1;
	if {$sent==0 && $sendtotal<$maxsends} {ircii /msg =$name "I can only send file $args to [channels]";} 
	if {$sendtotal>=$maxsends} {ircii /msg =$name "max active sends reached: $sendtotal";}
	set command 1;
	};#if
};#if
if {[string match $ip "no"]} { 
ircii /msg =$name please join [channels] to use fserve!";
set command 1;
};#if
if {$command!=1} { ircii /msg =$name "Bad command: type help"; };#if
return;
}
DCC_LOST {
	global nicktrans;
	set name [lindex $args 0];
	if {[string match [lindex $args 1] "CHAT"]} {
		set check [dccstats];
		foreach stuff $check {
		if {[string match [lindex $stuff 7] "chat"] && [string match [lindex $stuff 1] $name]} {
		set chatnumber [lsearch $nicktrans [lindex $stuff 8]];
		if {$chatnumber>-1} {
		set nicktrans [lreplace $nicktrans [expr $chatnumber-1] $chatnumber];
		};#if
		};#if
		};#foreach
	};#if
return;
}
default {return;}
}
};#proc

--- NEW FILE: auto_resume ---
^on ^dcc_connect "? ? ? ? ? ?"
{
	@:old_autoget = [$DCC_AUTOGET]
	^set dcc_autoget off
	if (fexist($DCC_DLDIR/$4) && $5 > 0)
		//dcc resume $0
	^set dcc_autoget $old_autoget
}


--- NEW FILE: fserve.irc ---
/set dcc_autoget on
/set auto_away off
/set flood_protection off
/set dcc_dldir ~/fserve
/set dcc_uldir ~/fserve
/loadtcl ~/file.tcl
/echo fserve script loaded, type /fhelp for the help crap
/alias fhelp {
{/tcl echohelp;}
}

/alias update {/tcl update;}
/alias usermax {/tcl set maxusers $0;}
/alias sendmax {/tcl set maxsends $0;}
/alias persist {/tcl set thechannel $0;}
/alias fsoff {/tcl fserveoff;}
/alias fson {/tcl fserveon;}
/alias fstimer {/tcl toggletimer;}
/alias fssay {/tcl settimer $0-;}
/alias fssave {/tcl writeconfig;}
--- NEW FILE: menu.bx ---
# This code is based on GemZ by gemini however it is not his responsibily
#
# If there are any errors contact [NuKe]! !!!!NOT!!!! gemini!
#
# All credits are stated (if not...they are most likely gemini)

^fset FORMAT_XTERM_TITLE [$0][$2] $5-

^set COMMENT_BREAKAGE on
^set JOIN_NEW_WINDOW on
^set JOIN_NEW_WINDOW_TYPE create double on
^set QUERY_NEW_WINDOW on
^set QUERY_NEW_WINDOW_TYPE create
^set WINDOW_DESTROY_PART on
^set SERVER_GROUPS on

@ actionsfile = [$IRCLIB()/script/actplug.gmz]
@ loadacts = [NO]
@ ctcpsound = [OFF]
[...2574 lines suppressed...]
 ^assign -_s
}

alias .send quote PRIVMSG $0 :$cntl2mirc(f0 $1-)

# Finish up

if (fexist($EXEDIR/menu.sav) != -1)
{
  //load $EXEDIR/menu.sav
}

^bind rclick parse_command rccheck
^bind nicklistrclick parse_command rccheck
^bind ldblclick parse_command ldccheck
^bind nicklistldblclick parse_command ldccheck
^bind statusrclick parse_command if (C) {chanmenu $C} else {if (T) {targetmenu $strip(= $T)}}

^makemenu


--- NEW FILE: fserve+vfs.tar.gz ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: example-.bitchxrc ---
# ~/.bitchxrc file
#
# This file is automatically loaded by BitchX before you connect
# to a server.  You can use any commands you want.  Most often,
# this file is used to automatically load scripts. -power
##############################################################################

# loads the script 'venoma.irc' located in your ~/.BitchX/ directory.
^load venoma.irc

# loads cypress script located in /your_home_dir/cyp/
^load ~/cyp/cyp.bx

# sets up an alias for an easy way to change channel modes
^alias cm {mode $C $*}

# load the blowfish module
^loaddll blowfish.so


--- NEW FILE: cyp1.0k.tar.gz ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: actplug.gmz ---
##action plugin module support for GemZ 2.5
##Format for the plugin file must be one line per menuitem using
## the following keyword format
##"TITLE" TYPE TEXT GOES HERE
##   Type Keywords are: %ACT, %PUB, %KICK or %CMD
##   Other Keywords are %nk (nick) %pnk (possesive nick)
##     and %ch (current channel)
##   Comment lines must begin with a pound (#)
##To create a new column in the submenu, put %new as the second word
##followed by a Command keyword
##%kick must have %nk following it immediately.
##%cmd must be followed by a valid command... like /gimpkick


#Greets 

"A-Hi" %pub 0,12®15,111,12>>15,14,7>>15,114,6>>15,112,3>>15,18,4>>15,19,2>>15,113,10>>15,17,1>>15,11,13>>15,18,7 %nk 15,11,13<<15,17,1<<15,113,10<<15,19,2<<15,18,4<<15,112,3<<15,114,6<<15,14,7<<15,111,12<<15,10,12®
"Big_Hi" %act 11,1jumps up and down, throws ©ðñfêttï in the air,and hollers Yippeee! Hi It's so good to see you8,1 %nk 2,1 ~`;.~`;.*3,1`*`;.`~;`~`8,1*;.`~;`~`12,1* `;.8,1 %nk 5,1 ~`;.~`;.9,1*`;.`~;`~`* `;.8,1 %nk 13,1 ~`;.~`;6,1*`;.`~;`~`*14,1.*`;.`~;`~`* `;.8,1 %nk 10,1 ~`;.~`;.*4,1` ~`;.~`;.*11,1`;.`~;`~`7,1* `;.8,1 %nk 9,1 ~`;.~`;.*12,1`;.`~;`~`* `;.8,1 %nk 2,1~`;.~`;.*13,1`;.`~;`~`*8,1*`;.`~;
"Smile_Hi" %pub 1,8:)1,12:)1,7:)1,13:)1,11:)1,9:)1,0 %nk 1,9(:1,11(:1,13(:1,7(:1,12(:1,8(:
"Face_Hi" %pub 7,1{12,1=9,1^13,1*9,1^12,1=7,1}{12,1=9,1^13,1:9,1^12,1=7,1}9,1 %nk 7,1{12,1=9,1^13,1:9,1^12,1=7,1}{12,1=9,1^13,1*9,1^12,1=7,1}
"Ice" %pub 11,0%0,11% 12,11%11,12% 2,12%12,2% 1,2%2,1%11,1 %nk 2,1%1,2% 12,2%2,12% 11,12%12,11% 0,11%11,0%
"Fire" %pub 8,0`%0,8%,7,8`%8,7%,4,7`%7,4%,1,4`%4,1%,8,1 %nk 4,1`%1,4%,7,4`%4,7%,8,7`%7,8%,0,8`%8,0%,
"Pine_lime" %pub 8,0`%8,8%,9,8`%8,9%,11,9`%9,11%,12,11`%11,12%,1,12 2,12`%12,2%,1,2`%2,1%,0,1 %nk 2,1,%1,2%´12,2,%2,12%´11,12,%12,11%´9,11,%11,9%´8,9,%9,8%´9,88,8,%8,0%´
"C-Bar" %pub 1,2 1,3 1,7 1,4 1,6 1,5 1,8 1,9 1,10 1,11 1,12 1,13 1,14 1,15 1,1 1,2 8,1 %nk 1,1 1,2 1,3 1,7 1,4 1,6 1,5 1,8 1,9 1,10 1,11 1,12 1,13 1,14 1,15 1,1 1,2 1,3
"Talkin" %act 8,12Welcome %nk 6,11 just like the yellow pages, let ya fingers do the talkin'
"Hello" %pub 12,1:::7,1H12,1:::7,1E12,1:::7,1L12,1:::7,1L12,1:::7,1O12,1::11,12 %nk !
"Hello_All" %pub 6,6-0,6H6,6-7,7-0,7E7,7-8,8-1,8L8,8-9,9-1,9L9,9-3,3-0,3O3,3-12,12---6,6-0,6A6,6-7,7-0,7L7,7-8,8-1,8L8,8-9,9-1,9!9,9-3,3-0,3!3,3-12,12-0,12!12,12-6,6-0,6!6,6-
"Hello_Every1" %pub 7,10*0,10H8,10*0,10e9,10*0,10l11,10*0,10l13,10*0,10o7,10*0,108,10*0,10e9,10*0,10v11,10*0,10e13,10*0,10r7,10*0,10y8,10*0,10b9,10*0,10o11,10*0,10d13,10*0,10y7,10*0,10!8,10*0,10!9,10*0,1011,10*0,1013,10*
"Welcome_Back" %pub 13,13-14,14-0,14W14,14-6,6-0,6E6,6-7,7-0,7L7,7-13,13-6,13C13,13-14,14-0,14O14,14-6,6-0,6M6,6-7,7-0,7E7,7-13,13-14,14-0,14B14,14-6,6-0,6A6,6-7,7-0,7C7,7-13,13-6,13K13,13-14,14-6,6-0,6 %nk 6,6-7,7-0,7!7,7-13,13-6,13!13,13-

#Nice Stuff

"Walk_Room" %new %act 11,1 walks around the channel 12,1{{trip}}11,1 sorry 12,1{{squelch}} 11,1who's that on the floor? 12,1{{crunch}} 11,1oops, nice shoes tho..12,1{{Bump}} 11,1excuse me.. 12,1{{shove}} 11,1sorry, my fault.. 12,1{{fondle}} 13,1 WOW nice ass %nk ...8,1 ahem, hi everyone.....:)
"FireWorks" %act 8,1shoots fireworks for11,1 %nk 7,1*8,1~~~~~12,1|#####> 9,1*7,1.9,1*10,1°9,1*7,1.11,1*... 11,1 %nk 7,1*8,1~~~~~12,1|#####> 9,1*7,1.9,1*10,1°9,1*7,1.11,1*... 11,1 %nk 7,1*8,1~~~~~12,1|#####> 9,1*7,1.9,1*10,1°9,1*7,1.11,1*... 11,1 %nk 7,1*8,1~~~~~12,1|#####> 9,1*7,1.9,1*10,1°9,1*7,1.11,1*... 11,1 %nk 7,1*8,1~~~~~12,1|#####>
"Fire_Fly" %act runs around the channel like a mad cat......Stops In front of %nk ..... Holds out his hand and Shows %nk the Colorful 11,1 >*< 12,1>*< 9,1>*< 7,1>*< 1,8FireFlys he Caught for %nk 11,1 >*< 12,1>*< 9,1>*< 7,1>*<
"Rainbow" %act 6,6 12,12 9,9 8,8 7,7 2,2 3,3 0,7stole 6,6 12,12 9,9 8,8 7,7 2,2 3,3 0,12a little6,6 12,12 9,9 8,8 7,7 2,2 3,3 0,13bit of a6,6 12,12 9,9 8,8 7,7 2,2 3,3 0,7rainbow6,6  12,12 9,9 8,8 7,7 2,2 3,3 0,12just for6,6 12,12 9,9 8,8 7,7 2,2 3,3 0,2you8,1 %nk
"Angel_Dust" %act 13,1Sprinkles Angel Dust All Over11,1 %nk 9,1**11,1.:15,17,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å8,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1~8,1Å7,1~11,1.:8,1 %nk 9,1**11,1.:`7,1~8,1Å7,1~11,1.:9,1`**11,1.:`7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1`~8,1Å7,1~11,1.:`9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1`**11,1.:,17,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1 %nk 7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å~11,1.:9,1`**11,1.:7,1~8,1Å
"confetti" %act Celebrates by Tossing Confetti all over11,1 %nk 7,1" '~`*+,.7,1 3,1`*`'" ~ :, 9,1 ~ ' " -;. 11,1 : ' ` ` * 12,1- _ + ^ : 13,1, .+ * ^ * - ,14,1.:" '~`*+,. 15,1`*`'" ~ :, 6,16,1 ~ ' " -;. 5,1 : ' ` ` * 8,1- _ + ^ : 9,1, . + * ^ * - , 10,1.:" '~`*+,. 11,1`*`'" ~ :,12,1_ + ^ : 13,1, .+13,1 * ^ * - , 14,1.:" '~`*+,. 15,1`*`'" ~ :, 7,1 ~ ' " -;. 3,1 : '" '~`*+,. 2,1`*`'" ~ :, 9,1 ~ ' " -;. 6,16,1 : ' ` ` * 4,1- _ + ^ : 7,1 ,, .+ * ^ * - , 10,1.:" '~`*+,. " '~`*+,. 13,1
"Petals" %act 8,1gently tosses rose petals all over12,1 %nk 7,1`;-`;,*-`;",`*-,'``;-;`;*;,"-`*,`-;`,`;`-;`,`-`;,*``;-,``-";*,;```-;`,`-`;,''`-``,-`*`;``,'-*.-`;.`;*;-'.'-`*.`.-`*.`*-`.-,*-`,*-`-,`-,`-,
"Roses" %act 15,1gives %nk a dozen 8,1Yellow15,1 roses. 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1 8,1@3,1-}-,-'--15,1
"Hot_Choc" %act passes %nk a cup of hot chocolate. 8,4__4,1P 15,1~~~~
"Wriggle_bum" %act watches 13,1 %nk 12,1wiggle her cute little butt12,1  13,1"(_/_)"(_!_)"(_\_)"(_!_)"(_/_)" 12,1and 7,1WOW! What a butt12,1!!!7,1 Ya gotta love those7,1 cheeks12,1!!!
"Rain" %act does a 11,1rain 15,1dance then watches as it 11,1rain 15,1all over8,1 %nk 11,1­­­­­­­­­­­­­­­­­­­­­8,1 %nk 11,1­­­­­­­­­­­­­­­­­­­­­8,1 %nk 11,1­­­­­­­­­­­­­­­­­­­­­8,1 %nk 11,1­­­­­­­­­­­­­­­­­­­­­8,1 %nk 11,1­­­­­­­­­­­­­­­­­­­­­
"Pat" %act gives %nk a pat on da wittle head and says, 10,1"Awww, poor wittle %nk ."

#Not so Nice Stuff

"Postal" %new %act goes postal, whips out an AK-47, and Unloads on %ch
"Ugly-stick" %act beats %nk with a custom built Ugly stick
"Wit" %pub %nk I would really love to engauge you in a Battle of Wits but I can see your Unarmed !!!!
"OutSider" %pub %nk As an outsider what is your opinion of the Human Race ???
"Clue" %pub %nk If you can scrounge up another brain cell, you might captivate us further... but I doubt it. You couldn't get a clue during clue-mating season in a field full of horny clues if you smeared your body with clue musk and did the clue mating dance.
"NewsPaper" %act smacks %nk on the head with a rolled up newspaper...now 7,1BEHAVE!!!
"Blowup_Doll" %act gives %nk a blow up doll to make their life dream come true....to find someone as smart as them !
"kitty" %act 13,1Sprinkles Kitty Litter All Over 9,1**11,1.:15,17,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1`~8,1Å8,1~11,1.:9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1**11,1.:7,1~8,1Å7,1~11,1.:8,1 %nk 9,1**11,1.:`7,1~8,1Å7,1~11,1.:9,1`**11,1.:`7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1`~8,1Å7,1~11,1.:`9,1**11,1.:7,1`~8,1Å7,1~11,1.:9,1`**11,1.:,17,1~8,1Å7,1~11,1.:9,1`**11,1.:~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å7,1~11,1.:9,1`**11,1.:7,1~8,1Å~11,1.:9,1`**11,1.:7,1~8,1Å
"Caution" %pub 1,88,1C1,8a8,1U1,8t8,1I1,8o8,1N1,80,7 %nk 3,1is 7,1HERE 1,88,1C1,8a8,1U1,8t8,1I1,8o8,1N1,8
"Scream" %pub AIEEEEEEEEEEEEEEEE!!!!!!!
"Dynamite" %act throws a stick of 1,7 D Y N A M I T E 4,0]4,1-------7,1.`,'.12,1 Here 7,1 %nk 12,1!!! 12,1CATCH !!!
"BandAid" %pub 8,1Does poor widdle %nk need a bandaid ? 5,5.15,10,13(:::::[]::::::)15,15,5.8,1 Awwwwww poor baby!!

#Misc

"Spank_Me" %new %act runs thru the Channel Naked yelling Spank Me SPANK ME !!!!!
"Chip`n_Dip" %act passes around the CornChips `n 7,1EXTRA HOT15,1 Chilli Dip ....
"Weeeee" %act Says Weeeeeeeeeeeeeeeeeeeeeee !!!!!!!
"Skittles" %act gives %nk a pack of 1,9S0,3K0,7I1,8T0,10T0,7L0,3E1,9S15,1
"Gnite" %pub 7,1*14,1*8,1*9,1*12,1*13,1*12,1*9,1*8,1*14,1*7,1*7,1 Goodnight %nk 7,1*14,1*8,1*8,1*9,1*12,1*13,1*12,1*9,1*8,1*14,1*7,1*
"Gnite2" %pub 11,2G10,1*11,1O10,1*11,1O10,1*11,1D10,1*11,1N10,1*11,1I10,1*11,1G10,1*11,1H10,1*11,1T10,1*11,1 -(7,1 %nk 11,1)-
"Kiss_G`Nite" %act says after kissing %nk ..2,1.I climbed up the door, and shut 2,1the stairs.....3,1I said my clothes, and pulled on my prayers.....14,1I shut off my 14,1bed, and climbed in to the light....12,1.All because %nk kissed me 12,1!!!4,1**Smoooooches** 7,1 WOW 15,1 7,1 What a kiss!!
"Sleepy_Dust" %act 11,1opens a magic book to the sandman page and showers7,1 %nk 11,1with magic sleepy dust13,1...13,1Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1*10,1...13,1 Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1*...13,1Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1*...13,1 13,1  Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1*...13,1Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1*...13,1Z9,1z12,1z13,1z...9,1*7,1.9,1*10,1°9,1*7,1.11,1* 8,1... Sweet dreams7,1 %nk
"Sparkle" %act 0,1* ·.*11,1Says0,1* . + . * : 11,1 %nk 0,1+ * . : . : +. * .*11,1your 0,1· * . + .0,1* : . * .+ *.·..11,1eyes0,1 * . +. * .: +. .* +. ·. + * . * . ·. . · 11,1twinkle0,1*. +· . · *0,1. * +. : . · * . * ·. * .* +. * · . 11,1like0,1+.**. . * ·.·*.+ * .* · ·*.* : · *.11,1stars0,1* * . + ·. ·*. .*·.· *+. *·.·*.11,1in the 0,1*.: *. .·**. *+. · *.* + * ·. * . *0,1+.*·.11,1nightsky0,1* * + · . ·* : +*.* . * +:. . *.·*. .*. ..
"Prayer" %act Prays 7,8 LORD, GRANT ME; SERENITY TO ACCEPT THE THINGS I CANNOT 7,8  CHANGE; COURAGE TO CHANGE THE THINGS I CAN; 15,12 AND THE WISDOM TO HIDE THE BODIES 15,12  OF THOSE PEOPLE I HAD TO KICK 15,17,1 BECAUSE THEY PISSED ME OFF!


#Kicks

"WinKick" %kick %nk Hiroshima '45 - Chernobyl '86 - Windows '95 - %nk '98
"EjecuKick" %kick %nk EjecuKick Dont CUM back !!!
"Ponder" %kick %nk Take a little time to ponder the error of your ways !!!!
"Wombat-Kick" %kick %nk LOOK OUT !!!!! There was a Wombat Behind you !!!
"RunKick" %kick %nk If you run you will just die tired !!!!
"HideKick" %kick %nk You can run but you CANT Hide !!!
"stepline" %kick %nk Did you see the line you just steped over ya Momo ???
"CosinKick" %kick %nk If your parents got divorced, would they still be Brothers ?
"superkali.." %kick %nk SuperKaliFragilisticKick

#Handy.irc Stuff

"500mile" %cmd /500mile %ch %nk
"Bunny" %cmd /bunny %ch %nk
"Teddy" %cmd /teddy %ch %nk
"Teddy_Heart" %cmd /teddyheart %ch %nk
"Teddy_Rose" %cmd /bearrose %ch %nk
"Tweetie" %cmd /tweetie %ch %nk
"Sexy_Meter" %cmd /hunk %ch %nk
"sail" %cmd /sail %ch %nk
"Island" %cmd /island %ch %nk
"Peek" %cmd /peek %ch %nk
"Rotate" %cmd /asshole %ch
"Hello" %new %cmd /hello %ch %nk
"3D Hello" %cmd /hello3d %ch
"This_Much" %cmd /much %ch %nk
"Deep" %cmd /deep %ch %nk
"Flower" %cmd /flower %ch %nk
"Sweetie_Pie" %cmd /sweetie_pie %ch %nk
"Hug You" %cmd /hugyou %ch %nk
"Hi_All" %cmd /hi_all %ch
"Big_Rose" %cmd /big_rose %ch %nk
"Special_Angel" %cmd /angel %ch %nk
"Dozen_Roses" %cmd /doz_roses %ch %nk
"Mega Hug" %cmd /megahug %ch %nk
"Pig" %new %cmd /pig %ch %nk
"Dragon" %cmd /dragon %ch %nk
"Snake" %cmd /snake %ch %nk
"Toys" %cmd /toys %ch %nk
"Octopus" %cmd /octopus %ch %nk
"Elephant" %cmd /elephant %ch
"Bull Shiter" %cmd /bulls %ch
"Nyah Nyah" %cmd /nyah %ch %nk
"Nyah Nyah 2" %cmd /nyah2 %ch %nk


--- NEW FILE: bxtcl.tcl ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: operchallenge-1.3.tar ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: query.bx ---
#From: Joost Vunderink <jvunder at wins.uva.nl>
#Subject: Auto-query update on nickchange

#Hello panasync!

#I am Garion, and I have asked you some questions on #bitchx to be able to
#automatically follow any nickchanges observed in channels in your queries.
#After a lot of puzzling I finally got something to work and I thought that
#you might be interested in it.
#Here is the script:

# If someone changes their nick and you have a query with that person in
# a hidden window, the query changes as well with the following script.
      on -nickname "*" {
        if ( querywin($0) > 0 ) {
	  @ winnum = querywin($0)
	  xeval -win $winnum {
	    query $1
	  }
	}  
      }



--- NEW FILE: logger.bx ---
#####################################################################################
## logger.bx by powuh, Wed Dec  4 20:54:36 EST 2002
##
## This is a logger script for BitchX and Epic.  It is fully customizable, so you
## can log what you want to, where you want to!  I wrote this after finding many
## flaws in bxlog.bx by dARTh in both log handling, and code syntax.  Hopefully
## my logger.bx will be a better replacement.
##
## Any comments, suggestions, etc can be directed to powuh on EFNet's #BitchX
#####################################################################################

@ log.version = [1.0]
@ log.config.file = [~/.bxlogger.cfg]

if (fexist($log.config.file) == -1) {
   xecho -b Config file, $log.config.file, not found... Using default values.  Type /logconf to configure!
   @ logdir = [~/.BitchX/logs];@ logdate = [%m-%d-%y/%H:%M];@ logdir.channels = [$logdir/channels]
   @ logdir.messages = [$logdir/messages];@ logdir.notices = [$logdir/notices];@ logdir.ctcp = [$logdir/ctcp]
   @ logdir.dcc = [$logdir/dcc];@ logpublic = 1;@ logprivate = 1;@ lognotices = 1;@ logdccs = 1;@ logctcps = 1
   }{load $log.config.file}

alias _logger {
   if (logenable) {
      if (log.debug) echo _logger $0 > $1-
      if (fexist($logdir) == -1) {${mkdir($logdir)?[eval xecho -b mkdir failed $logdir]:[]}}
      if (logsepdirs && fexist($logdir.channels) == -1) {${mkdir($logdir.channels)?[eval xecho -b mkdir failed $logdir.channels]:[]}}
      if (logsepdirs && fexist($logdir.messages) == -1) {${mkdir($logdir.messages)?[eval xecho -b mkdir failed $logdir.messages]:[]}}
      if (logsepdirs && fexist($logdir.notices) == -1) {${mkdir($logdir.notices)?[eval xecho -b mkdir failed $logdir.notices]:[]}}
      if (logsepdirs && fexist($logdir.ctcp) == -1) {${mkdir($logdir.ctcp)?[eval xecho -b mkdir failed $logdir.ctcp]:[]}}
      if (logsepdirs && fexist($logdir.dcc) == -1) {${mkdir($logdir.dcc)?[eval xecho -b mkdir failed $logdir.ctcp]:[]}}
      @ :logfh = open($0 W)
      @ write($logfh [$strftime($logdate)] $stripc($stripansicodes($strip( $1-))))
      @ close($logfh)
   }
}

alias logconf {
   if ([$0]) switch ($0) {
      (a)  {@ logenable = ([$1]==[yes])?1:0}
      (b)  {@ logpublic = ([$1]==[yes])?1:0}
      (c)  {@ logmessages = ([$1]==[yes])?1:0}
      (d)  {@ lognotices = ([$1]==[yes])?1:0}
      (e)  {@ logdccs = ([$1]==[yes])?1:0}
      (f)  {@ logctcps = ([$1]==[yes])?1:0}
      (g)  {@ logdir = ([$1])?[$1]:[$logdir]}
      (h)  {@ logsepdirs = ([$1]==[yes])?1:0}
      (h1) {@ logdir.channels = ([$1])?[$1]:[$logdir.channels]}
      (h2) {@ logdir.messages = ([$1])?[$1]:[$logdir.messages]}
      (h3) {@ logdir.notices = ([$1])?[$1]:[$logdir.notices]}
      (h4) {@ logdir.dcc = ([$1])?[$1]:[$logdir.dcc]}
      (h5) {@ logdir.ctcp = ([$1])?[$1]:[$logdir.ctcp]}
      (i)  {@ logdate = ([$1])?[$1]:[$logdate]}
      (*)  {xecho -b Invalid switch to /logconf: $0;return}
   }

   xecho -b
   xecho -b Logger Configuration:
   xecho -b   [a] Enable Logging ..................... ${logenable?[yes]:[no]}
   if (logenable)  xecho -b   [b] Log channel activity ............... ${logpublic?[yes]:[no]}
   if (logenable)  xecho -b   [c] Log private messages ............... ${logmessages?[yes]:[no]}
   if (logenable)  xecho -b   [d] Log notices ........................ ${lognotices?[yes]:[no]}
   if (logenable)  xecho -b   [e] Log DCCs ........................... ${logdccs?[yes]:[no]}
   if (logenable)  xecho -b   [f] Log CTCPs .......................... ${logctcps?[yes]:[no]}
   if (logenable)  xecho -b   [g] Log Directory ...................... ${logdir?[$logdir/]:[Not Set]}
   if (logenable)  xecho -b   [h] Subdirectories by type ............. ${logsepdirs?[yes]:[no]}
   if (logsepdirs) xecho -b      [h1] Channel log directory .......... ${logdir.channels?[$logdir.channels/]:[Not Set]}
   if (logsepdirs) xecho -b      [h2] Message log directory .......... ${logdir.messages?[$logdir.messages/]:[Not Set]}
   if (logsepdirs) xecho -b      [h3] Notice log directory ........... ${logdir.notices?[$logdir.notices/]:[Not Set]}
   if (logsepdirs) xecho -b      [h4] DCC log directory .............. ${logdir.dcc?[$logdir.dcc/]:[Not Set]}
   if (logsepdirs) xecho -b      [h5] CTCP log directory ............. ${logdir.ctcp?[$logdir.ctcp/]:[Not Set]}
   if (logenable)  xecho -b   [i] Log Timestamp Format ............... $logdate \($strftime($logdate)\)
   xecho -b
   xecho -b Type /logconf <letter> <value> to configure. Then /logsave to save settings.
   xecho -b
}
 
alias logsave {
   @rename($log.config.file $log.config.file~)
   @ :savefile = open($log.config.file W T)
   @ write($savefile @ logenable = $logenable)
   @ write($savefile @ logpublic = $logpublic)
   @ write($savefile @ logmessages = $logmessages)
   @ write($savefile @ lognotices = $lognotices)
   @ write($savefile @ logdccs = $logdccs)
   @ write($savefile @ logctcps = $logctcps)
   @ write($savefile @ logdir = [$logdir])
   @ write($savefile @ logsepdirs = $logsepdirs)
   @ write($savefile @ logdir.channels = [$logdir.channels])
   @ write($savefile @ logdir.messages = [$logdir.messages])
   @ write($savefile @ logdir.notices = [$logdir.notices])
   @ write($savefile @ logdir.dcc = [$logdir.dcc])
   @ write($savefile @ logdir.ctcp = [$logdir.ctcp])
   @ write($savefile @ logdate = [$logdate])
   @ close($savefile)
   xecho -b Saved logger configuration to $log.config.file
}

alias loghelp {
   xecho -b
   xecho -b Logger version $log.version by powuh
   xecho -b Commands:
   xecho -b   /loghelp ............ What you are reading now
   xecho -b   /logconf ............ Logger Configuration
   xecho -b   /logsave ............ Save current configuration
   xecho -b
}

## Private message hooks
on #-msg 6192 * {if (logmessages) {_logger ${logsepdirs?logdir.messages:logdir}/$tolower($0.log) <$0> $1-}}
on #-send_msg 6192 * {if (logmessages) {_logger ${logsepdirs?logdir.messages:logdir}/$tolower($0.log) <$N> $1-}}

## Notice hooks
on #-notice 6192 * {if (lognotices) {_logger ${logsepdirs?logdir.notices:logdir}/$tolower($0.log) -$0\- $1-}}
on #-send_notice 6192 * {if (lognotices) {_logger ${logsepdirs?logdir.notices:logdir}/$tolower($0.log) =$0= $1-}}

## DCC hooks
on #-dcc_chat 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) <$0> $1-}}
on #-send_dcc_chat 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) <$N> $1-}}
on #-dcc_connect 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Connect from $0 $1-}}
on #-dcc_error 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Error from $0 $1-}}
on #-dcc_lost 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Lost from $0 $1-}}
on #-dcc_request 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Request from $0 $1-}}

## Public channel hooks
on #-public 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_other 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_ar 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_other_ar 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_notice 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) $0\- $2-}}
on #-action 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) * $0 $2-}}
on #-send_public 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) <$N> $1-}}
on #-send_action 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) * $N $1-}}
on #-leave 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** Parted $0 \($2\)}}
on #-join 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** Joined $0 \($2\)}}
on #-kick 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($2.log) *** $0 was kicked by $1 \($3-\)}}
on #-topic 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** $0 changed topic to $2-}}
on #-channel_nick 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) *** $1 is now known as $2}}
on #-channel_signoff 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) *** $1 signoff\: $2-}}
on #-mode 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** $0 sets mode $2-}}

## CTCP hooks
on #-ctcp 6192 * {if (logctcps) {_logger ${logsepdirs?logdir.ctcp:logdir}/ctcp.log CTCP from $0\: $2-}}
on #-ctcp_reply 6192 * {if (logctcps) {_logger ${logsepdirs?logdir.ctcp:logdir}/ctcp.log CTCP $1 reply from $0\: $2-}}

eval xecho -b logger.bx version $log.version by powuh loaded. Type /loghelp for help.

# EOF

--- NEW FILE: SCRIPTS ---

There are several scripts which have been packaged in the scripts/ directory
for opers, fserve, and logging for BitchX.

Also included is the popular script Cypress by void.  Please remember if you
use/install this script that it must be installed from the top level of your
home directory or it will NOT work.

Enjoy and thanks from all of us!

-sin

--- NEW FILE: query ---
alias query
{
	if (!$0)
		return;

	if (!querywin($0))
	{
		^window new name $0 hide_others query $0
		^window logfile $CTOOLZ_DIR/$0.log
		^window log on
	}
	else
	{
		^window show querywin($0)
	}
}

--- NEW FILE: bxglobal ---
# global bitchx script

if (gtkbitchx())
{
	^load menu.bx
	^set nicklist on
}

# We should probably do some other things here like set flood protection to
# some reasonable defaults so no one will complain.




More information about the dslinux-commit mailing list