Initial import of the ircii-pana-1.1-final source tree.

git-svn-id: svn://svn.code.sf.net/p/bitchx/code/tags/ircii-pana-1.1-final@1 13b04d17-f746-0410-82c6-800466cd88b0
This commit is contained in:
Kevin Easton
2008-02-25 09:25:32 +00:00
commit 28febcfea9
1429 changed files with 250653 additions and 0 deletions

11
script/SCRIPTS Normal file
View File

@@ -0,0 +1,11 @@
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

121
script/actplug.gmz Normal file
View File

@@ -0,0 +1,121 @@
##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<31>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<31>
"Big_Hi" %act 11,1jumps up and down, throws <20><><EFBFBD>f<EFBFBD>tt<74> 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%<25>12,2,%2,12%<25>11,12,%12,11%<25>9,11,%11,9%<25>8,9,%9,8%<25>9,88,8,%8,0%<25>
"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<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8,1 %nk 11,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8,1 %nk 11,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8,1 %nk 11,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8,1 %nk 11,1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
"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* <20>.*11,1Says0,1* . + . * : 11,1 %nk 0,1+ * . : . : +. * .*11,1your 0,1<> * . + .0,1* : . * .+ *.<2E>..11,1eyes0,1 * . +. * .: +. .* +. <20>. + * . * . <20>. . <20> 11,1twinkle0,1*. +<2B> . <20> *0,1. * +. : . <20> * . * <20>. * .* +. * <20> . 11,1like0,1+.**. . * <20>.<2E>*.+ * .* <20> <20>*.* : <20> *.11,1stars0,1* * . + <20>. <20>*. .*<2A>.<2E> *+. *<2A>.<2E>*.11,1in the 0,1*.: *. .<2E>**. *+. <20> *.* + * <20>. * . *0,1+.*<2A>.11,1nightsky0,1* * + <20> . <20>* : +*.* . * +:. . *.<2E>*. .*. ..
"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

9
script/auto_resume Normal file
View File

@@ -0,0 +1,9 @@
^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
}

10
script/bxglobal Normal file
View File

@@ -0,0 +1,10 @@
# 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.

495
script/bxtcl.tcl Normal file
View File

@@ -0,0 +1,495 @@
set blink {}
set cl {}
set blk {}
set blu {}
set grn {}
set cyn {}
set red {}
set mag {}
set yel {}
set wht {}
set hblk {}
set hblu {}
set hgrn {}
set hcyn {}
set hred {}
set hmag {}
set hyel {}
set hwht {}
set blk_b {}
set red_b {}
set grn_b {}
set yel_b {}
set blu_b {}
set mag_b {}
set cyn_b {}
set wht_b {}
set bblk {[0;}
set bblu {[0;}
set bgrn {[0;}
set bcyn {[0;}
set bred {[0;}
set bmag {[0;}
set byel {[0;}
set bwht {[0;}
proc showver {} {
global cyb version botnick
putserv "PRIVMSG $cyb(cur) :\001ACTION is throwing snowballs wif robocod's cyb\002O\002rg$cyb(ver)/($version)\001"
putscr "* $botnick is throwing snowballs wif robocod's cyb\002O\002rg$cyb(ver)/($version)"
}
if ![info exists cyb(cur)] {
set cyb(cur) ""
set cyb(ver) "0.6a1"
set cyb(lst) ""
}
proc bleh {} {
global cyb cl hblk blu red
putscr "robocod's ..............."
putscr { .r -4eeee
}
putscr { z$P "$$ 
}
putscr { .$$% $ 
}
putscr { J$$F ^ 
}
putscr { 4$$$ 
}
putscr { $$$F =*$ 
}
putscr { $$$F $ 
}
putscr { $$$F $ 
}
putscr { *$$b 3$" ^$" $.@" ". .=" "$. .e d$$c .r""*ee 
}
putscr { $$$ $R 4" $ ^$ J $r $" .$ $F 
}
putscr { ^$$$ $ ^$ % $ $ $ 4$ $ ^$ $ 
}
putscr { *$b .$$ 3L / $r 4$ $F 4F $ )*"" 
}
putscr { "$c d$$$ $E $ ..e$" ^$. F 4$ $c..... 
}
putscr { 4" " "**" 4" .F""""*$ 
}
putscr { F $" rev $ 
}
putscr { @ 3L d" 
}
putscr { *" "**" 
}
putscr { 
}
putscr { 
}
putscr "\002C\002y\002B\002o\002R\002g v$cyb(ver) -=- Advanced BitchX TCL"
}
utimer 4 bleh
proc grabhost {arg} {
global cyb
foreach channel [channels] {
if [onchan [lindex $arg 0] $channel] {
return [getchanhost [lindex $arg 0] $channel]
}}
return 0}
ircii "^set CLIENT_INFORMATION robocod's CyBoRg(TCL)v$cyb(ver) "
if [string match $version "*68f*"] {
ircii "^set status_format3 CyBoRg loaded .. "
putscr "*** Special 68f Stuff being set"
ircii "^window split on"
}
proc cybjoin {arg} {
global cyb
set cyb(cur) "[lindex $arg 0]"
}
ircii "alias sv {tcl showver}"
ircii {alias addf {tcl addf "$0-"}}
proc addf {arg} {
global cyb
set nick [lindex $arg 0]
set flags [lindex $arg 1]
set channels [lrange $arg 2 end]
if {$nick=="" || $flags=="" || $channels==""} {
putscr "*** Usage /addf <nick> <flags> <channel (all for all channels)>"
putscr "*** Flags = O for ops; V for Voice; I for Invite A for autoop; B for auto ban"
putscr "*** N for names access i.e. /ctcp yournick NAME #warez will send a names list for #warez"
putscr "*** i.e. /addf robocod OVI #livid"
return}
set host [grabhost $nick]
if {$host==0} {putscr "FUCCCCCCCK! NICK NOT FOUND! ABORTING!"}
set nig [fixhost $host]
set flagz "$flags"
set flags "[weed $flagz]"
if {$flags==""} {
putscr "*** -\002C\002- None of your flags were valid"
return}
lappend cyb(lst) "$nig $flags $channels"
putscr "*** -\002C\002- Added $nig to friends list --------->"
putscr "*** -\002C\002- $nig $flags $channels"
putscr "*** -\002C\002- Messaging him about his new access ..."
putserv "NOTICE $nick :-\002C\002-You've been added to my friend's list."
putserv "NOTICE $nick :-\002C\002- Access of +$flags on $channels"
putserv "NOTICE $nick :-\002C\002- Enjoy!"
return}
proc fixhost {host} {
if [string match "*.*.*" $host] {
set hose [lindex [split $host @] 1]
set userhost [lrange [split $hose .] 1 end]
set username [lindex [split $host @] 0]
regsub -all " " $userhost "." userhost
return "*!*$username\@*.$userhost"
} else {
return "*!*$host"}}
proc weed {flags} {
if [string match "*o*" $flags] {append flag "O"}
if [string match "*O*" $flags] {append flag "O"}
if [string match "*v*" $flags] {append flag "V"}
if [string match "*V*" $flags] {append flag "V"}
if [string match "*i*" $flags] {append flag "I"}
if [string match "*I*" $flags] {append flag "I"}
if [string match "*a*" $flags] {append flag "A"}
if [string match "*A*" $flags] {append flag "A"}
if [string match "*b*" $flags] {append flag "B"}
if [string match "*B*" $flags] {append flag "B"}
if [string match "*N*" $flags] {append flag "N"}
if [string match "*n*" $flags] {append flag "N"}
return "$flag"
}
ircii "^set flood_protection off"
ircii "^set flood_kick off"
ircii "^set flood_rate 0"
ircii "^set display_ansi on"
ircii "^set script_help ~/.BitchX/NONE"
ircii "^set exec_protection off"
ircii "^set -continued_line"
ircii "^set novice off"
ircii "set hide_private_channels off"
ircii "set tran latin_1"
ircii "set hard_uh_notify on"
ircii "set send_away_msg on"
ircii "set suppress_server_motd on"
ircii "set clock_24hour off"
ircii "set dcc_autoget on"
ircii "set lastlog_level ALL"
ircii "set msglog off"
ircii "set mail 1"
ircii "set show_channel_names on"
ircii "set msglogfile Ctoolz.away"
ircii "eval set logfile .BitchX/cyborg.chanLog"
ircii "set reasonfile BitchX.reason"
ircii "set ctoolz_dir ~/.BitchX"
ircii "set savefile BitchX.sav"
ircii "set eight on"
ircii "set beep_on_msg msgs"
ircii "set beep on"
ircii "set deop_on_deopflood 100"
ircii "set kick_on_deopflood 8"
ircii "set dcc_send_limit 10"
ircii "set dcc_get_limit 0"
ircii "set llook off"
ircii "set input_protection off"
ircii "set llook_delay 60"
ircii "set lastlog 1000"
ircii "set dcc_dldir /home/robocod/"
ircii "set indent on"
#ircii "bind meta2-3 parse_command b"
#ircii "bind meta2-2 parse_command a"
#ircii "bind ^L parse_command bind_control_l"
ircii "bind ^@ AUTOREPLY"
ircii "bind meta3-A parse_command fkey 1"
ircii "bind meta3-B parse_command fkey 2"
ircii "bind meta3-C parse_command fkey 3"
ircii "bind meta3-D parse_command fkey 4"
ircii "bind meta3-E parse_command fkey 5"
ircii "bind meta3-7 parse_command fkey 6"
ircii "bind meta3-8 parse_command fkey 7"
ircii "bind meta3-9 parse_command fkey 8"
ircii "^set status_format <%R> %*%N%S%H%B %#%Q%A%C%+%I%O %F %^ %> %D %U "
ircii "^set status_format1 <%R> %*%N%S%H%B %#%Q%A%C%+%I%O %F %^ %> %D %U "
ircii "^set status_format2 %1 %L online %3 %>%M %T "
ircii "^set status_user1 \(CyBoRg\(robocod\)\)"
ircii "^eval ^set status_user2 ?"
ircii {^eval ^set status_user3 $uptime()}
ircii "^eval ^set status_mail Mail: %M"
#ircii "^eval ^set status_user \$\S\"
ircii "^eval ^set ^status_channel %C"
#ircii "^on ^001 * {^eval ^set status_user $S}"
ircii "^set status_away away"
ircii "^set status_chanop @"
ircii "^set status_clock %T"
ircii "^set status_notify (A: %F)"
#ircii "assign blink "
#ircii "assign cl "
#ircii "assign blk "
#ircii "assign blu "
#ircii "assign grn "
#ircii "assign cyn "
#ircii "assign red "
#ircii "assign mag "
#ircii "assign yel "
#ircii "assign wht "
#ircii "assign hblk "
#ircii "assign hblu "
#ircii "assign hgrn "
#ircii "assign hcyn "
#ircii "assign hred "
#ircii "assign hmag "
#ircii "assign hyel "
#ircii "assign hwht "
#ircii "assign blk_b "
#ircii "assign red_b "
#ircii "assign grn_b "
#ircii "assign yel_b "
#ircii "assign blu_b "
#ircii "assign mag_b "
#ircii "assign cyn_b "
#ircii "assign wht_b "
#ircii "assign bblk [0;"
#ircii "assign bblu [0;"
#ircii "assign bgrn [0;"
#ircii "assign bcyn [0;"
#ircii "assign bred [0;"
#ircii "assign bmag [0;"
#ircii "assign byel [0;"
#ircii "assign bwht [0;"
ircii "set kick_on_nickflood 6"
ircii "set kick_on_pubflood 30"
ircii "set deopflood_time 60"
ircii "set kick_on_deopflood 6"
ircii "set kick_on_nickflood 6"
ircii "set kick_on_pubflood 30"
ircii "set deopflood_time 60"
ircii "set kickflood_time 60"
ircii "set nickflood_time 60"
ircii "set pubflood_time 60"
ircii "set hacking 0"
ircii "set kick_on_kickflood 10"
ircii "set deop_on_kickfp 100"
ircii "set llook off"
ircii "set llook_delay 60"
ircii "set pubflood off"
ircii "set nickflood on"
ircii "set kickflood on"
ircii "set deopflood on"
ircii "set dcc_block_size 1024"
ircii "set dcc_limit 10"
ircii "set hacking 0"
ircii "set dcc_autoget 0"
set cyb(awaymsg) {
{Bored!}
{livid incorp rocks you}
{ircopz are uberlame}
{Automatically set away}
{getting sex}
{getting blown}
{brb}
{bbl}
{the truth is out there i just dont give a shit anymore.}
{eh?}
{bringing death}
{one can short .....}
{half empty or half full, i dont give a shit!}
{elsewhere}
{elsewhen}
{elsewhy}
{or else ..}
}
proc cybAway {arg} {
if {$arg==""} {
global cyb
set non 0
foreach msg $cyb(awaymsg) {
incr non
}
set awayMSG [lindex $cyb(awaymsg) [rand [expr $non - 1]]]
ircii "/away $awayMSG"
foreach channel [channels] {
putserv "PRIVMSG $channel :\001ACTION is outtie. ($awayMSG)\001"
}
putscr "-\002C\002- Marking you away with messsage: $awayMSG"
return}
ircii "away $arg"
foreach channel [channels] {
putserv "PRIVMSG $channel :\001ACTION is outtie. ($arg)\001"
}
putscr "-\002C\002- Marking you away with messsage: $arg"
return}
proc STATUS_SET {} {
ircii "^set status_format <%R> %*%N%S%H%B %#%Q%A%C%+%I%O %F %^ %> %D %U "
ircii "^set status_format1 <%R> %*%N%S%H%B %#%Q%A%C%+%I%O %F %^ %> %D %U "
ircii "^set status_format2 %1 %L online %3 %>%M %T "
ircii "^set status_user1 \(CyBoRg\(robocod\)\)"
ircii "^eval ^set status_user2 ?"
ircii {^eval ^set status_user3 $uptime()}
ircii "^eval ^set status_mail Mail: %M"
ircii "^eval ^set ^status_channel %C"
ircii "^set status_away away"
ircii "^set status_chanop @"
ircii "^set status_clock %T"
ircii "^set status_notify (A: %F)"
utimer 60 STATUS_SET
return}
if ![info exists cyb(timer)] {
STATUS_SET
set cyb(timer) ""
}
ircii "^assign G -\002C\002-"
#finally, friends list support
proc isattr {nick attri} {
global cyb
set h [fixhost [grabhost $nick]]
if {$h=="0"} {return "0"}
set find [lsearch "$cyb(lst)" "*$h*"]
if {$find==-1} {return 0}
set results [lindex $cyb(lst) $find]
set host [lindex $results 0]
set attr [lindex $results 1]
set channels [lrange $results 2 end]
if [string match "*$attri*" "*$attr*"] {return 1}
return}
#autoop?
bind join - *!*@* parse_join
proc parse_join {nick host hand chan} {
global cyb
set h [fixhost [grabhost $nick]]
set find [lsearch "$cyb(lst)" "*$h*"]
if {$find==-1} {return}
set chanaxs [lrange [lindex $cyb(lst) $find] 2 end]
set axs 0
if {$chanaxs=="all"} {
set axs 1}
if {$axs==0} {
foreach chanl $chanaxs {
if {$chanl==$chan} {
set axs 1}
}
}
if [isattr $nick A] {
if {$axs==1} {
putserv "MODE $chan +o $nick"
putscr "-\002C\002- Autoop'ng $nick on $chan (friendzlist)"
return}}
return}
proc zday {} {
global cyb
put}
proc leet {text} {
global cyb botnick
regsub -all "you" $text "yew" text
regsub -all "man" $text "man\002G\002" text
regsub -all "too" $text "tew" text
regsub -all "to" $text "tew" text
regsub -all "two" $text "tew" text
regsub -all "elite" $text "31337" text
regsub -all "e" $text "3" text
regsub -all "o" $text "0" text
regsub -all "l" $text "1" text
regsub -all "t" $text "7" text
regsub -all "s" $text "5" text
putserv "PRIVMSG $cyb(cur) :$text"
putscr "<$botnick> $text"
}
ircii {^alias leet tcl leet "$0-"}
bind ctcp - invite frinv
proc frinv {nick uhost hand dest key arg} {
putscr "$nick u $uhost h $hand d $dest k $key a $arg"
}
#welcome to the lamest script EVER. change LAME mirc colors to ANSI.
#Khaled sucks a HUGE ASS DICK for using FUCKING ircle color codes
proc mirc2ansi {txt} {
regsub -all "01,00" $txt {} txt
regsub -all "01,0" $txt {} txt
regsub -all "1,00" $txt {} txt
regsub -all "1,0" $txt {} txt
regsub -all "1" $txt {} txt
regsub -all "02,00" $txt {} txt
regsub -all "02,0" $txt {} txt
regsub -all "2,00" $txt {} txt
regsub -all "2,0" $txt {} txt
regsub -all "2" $txt {} txt
regsub -all "03,00" $txt {} txt
regsub -all "03,0" $txt {} txt
regsub -all "3,00" $txt {} txt
regsub -all "3,0" $txt {} txt
regsub -all "3" $txt {} txt
regsub -all "04,00" $txt {} txt
regsub -all "04,0" $txt {} txt
regsub -all "4,00" $txt {} txt
regsub -all "4,0" $txt {} txt
regsub -all "4" $txt {} txt
regsub -all "05,00" $txt {} txt
regsub -all "05,0" $txt {} txt
regsub -all "5,00" $txt {} txt
regsub -all "5,0" $txt {} txt
regsub -all "5" $txt {} txt
regsub -all "06,00" $txt {} txt
regsub -all "06,0" $txt {} txt
regsub -all "6,00" $txt {} txt
regsub -all "6,0" $txt {} txt
regsub -all "6" $txt {} txt
regsub -all "08,00" $txt {} txt
regsub -all "08,0" $txt {} txt
regsub -all "8,00" $txt {} txt
regsub -all "8,0" $txt {} txt
regsub -all "8" $txt {} txt
regsub -all "09,00" $txt {} txt
regsub -all "09,0" $txt {} txt
regsub -all "9,00" $txt {} txt
regsub -all "9,0" $txt {} txt
regsub -all "9" $txt {} txt
regsub -all "10,00" $txt {} txt
regsub -all "10,0" $txt {} txt
regsub -all "10" $txt {} txt
regsub -all "11,00" $txt {} txt
regsub -all "11,0" $txt {} txt
regsub -all "11" $txt {} txt
regsub -all "12,00" $txt {} txt
regsub -all "12,0" $txt {} txt
regsub -all "12" $txt {} txt
regsub -all "13,00" $txt {} txt
regsub -all "13,0" $txt {} txt
regsub -all "13" $txt {} txt
regsub -all "01,01" $txt {} txt
regsub -all "1,01" $txt {} txt
regsub -all "01,1" $txt {} txt
regsub -all "1,1" $txt {} txt
regsub -all "02,01" $txt {} txt
regsub -all "2,01" $txt {} txt
regsub -all "02,1" $txt {} txt
regsub -all "2,1" $txt {} txt
regsub -all "03,01" $txt {} txt
regsub -all "3,01" $txt {} txt
regsub -all "03,1" $txt {} txt
regsub -all "3,1" $txt {} txt
regsub -all "04,01" $txt {} txt
regsub -all "4,01" $txt {} txt
regsub -all "04,1" $txt {} txt
regsub -all "4,1" $txt {} txt
regsub -all "05,01" $txt {} txt
regsub -all "5,01" $txt {} txt
regsub -all "05,1" $txt {} txt
regsub -all "5,1" $txt {} txt
regsub -all "06,01" $txt {} txt
regsub -all "6,01" $txt {} txt
regsub -all "06,1" $txt {} txt
regsub -all "6,1" $txt {} txt
regsub -all "07,01" $txt {07} txt
regsub -all "7,01" $txt {07} txt
regsub -all "07,1" $txt {07} txt
regsub -all "7,1" $txt {07} txt
regsub -all "08,01" $txt {} txt
regsub -all "8,01" $txt {} txt
regsub -all "08,1" $txt {} txt
regsub -all "8,1" $txt {} txt
regsub -all "09,01" $txt {} txt
regsub -all "9,01" $txt {} txt
regsub -all "09,1" $txt {} txt
regsub -all "9,1" $txt {} txt
regsub -all "10,1" $txt {} txt
regsub -all "10,01" $txt {} txt
regsub -all "11,01" $txt {} txt

BIN
script/cyp1.0k.tar.gz Normal file

Binary file not shown.

BIN
script/dcc_fserve-0.50.tgz Normal file

Binary file not shown.

19
script/example-.bitchxrc Normal file
View File

@@ -0,0 +1,19 @@
# ~/.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

414
script/file.tcl Normal file
View File

@@ -0,0 +1,414 @@
;#to contact the author of this fserve for any reason
;#(comments, suggestions, beefs) 264mlang@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

BIN
script/fserve+vfs.tar.gz Normal file

Binary file not shown.

20
script/fserve.irc Normal file
View File

@@ -0,0 +1,20 @@
/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;}

147
script/logger.bx Normal file
View File

@@ -0,0 +1,147 @@
#####################################################################################
## 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

2613
script/menu.bx Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

16
script/query Normal file
View File

@@ -0,0 +1,16 @@
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)
}
}

23
script/query.bx Normal file
View File

@@ -0,0 +1,23 @@
#From: Joost Vunderink <jvunder@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
}
}
}