-
Posts
6030 -
Joined
-
Last visited
-
Days Won
17
Content Type
Profiles
Forums
Downloads
Gallery
Events
Articles
Everything posted by chain
-
New Linux kernel releases seem to pop out quicker than they used to, but since they’re always chock full of welcome improvements I’m not complaining! Linux 5.9 is the latest mainline kernel release to be issued. Linus Torvalds, father of the kernel, announced the new release using his trademark modesty , saying that “…nothing in [this update] gives me any particular reason to delay another week, here we are.” As for Linux 5.9 features there are plenty but if you’re not much of a tech tinkerer, code connoisseur, or a detailed device denizien they won’t seem that interesting. There’s better management of anonymous memory and a new slab memory controller that leads to lower overall kernel memory usage; while support for ZSTD-compressed kernel, ramdisk, and initramfs in the kernel boot process provides opportunities for faster boot times. On the hardware side there’s early-bird support for the upcoming Radeon RX 6000 RDNA 2, Intel Xe and Intel Rocket Lake graphics; overdue inclusion of Intel FSGSBASE support (offering possible performance improvements on Ivy Bridge style chips); and there’s been more effort expended to support USB 4.0. On the ARM front Schedutil is now the default CPU frequency scaling governor for ARM/ARM64; NVIDIA’s Tegra X1 and X2 SoCs now have working audio; a raft of single-boards (old and new) pick up support, including Lenovo’s IdeaPad Duet (an upcoming Chromebook based on the MT8183 (Helio P60t) SoC) and Allwinner sunxi revision v1.2 used in the recent versions of Pine64’s PinePhone. File-system tweaks also feature in Linux 5.9. The BTRFS, XFS, ext4, and F2FS file systems are among those gaining patches, tweaks, and tuning (with the former of these getting a new rescue mount option to group all existing mount options for better recovery). Gamers with the 8bitdo SN30 Pro+ controller can enjoy rumble support with Linux 5.9 courtesy of Microsoft, no less. Finally, if you happen to have one of Lenovo’s ThinkPad 10 Ultrabook keyboard (the detachable one) you will be pleased to hear that it finally works with Linux — support that only took six years to achieve! Head over to Kernel Newbies for a super detailed breakdown of everything mentioned above plus lots more or go direct to the LKML to download the source code for this latest release (or the code for any other release you fancy). Ubuntu 20.10 is due for release on October 22 but will come with Linux 5.8 as this version arrived after kernel freeze.
-
;---------< Robo-X - Topic Command: >----------- on 1:text:@topic *:#robots: { if ( $nick isop $chan || $nick ishop $chan ) { set %topic $2- topic $chan Topic: 4 %topic / 7 %status / 3 %static-a / 9 %static-b } } on 1:text:@status *:#robots: { if ( $nick isop $chan || $nick ishop $chan ) { set %status $2- topic $chan Topic: 4 %topic / 7 %status / 3 %static-a / 9 %static-b } } on 1:text:@static-a *:#robots: { if ( $nick isop $chan || $nick ishop $chan ) { set %static-a $2- topic $chan Topic: 4 %topic / 7 %status / 3 %static-a / 9 %static-b } } on 1:text:@static-b *:#robots: { if ( $nick isop $chan || $nick ishop $chan ) { set %static-b $2- topic $chan Topic: 4 %topic / 7 %status / 3 %static-a / 9 %static-b } }
-
alias sil { if ($me isop $chan) || ($me ishop $chan) { if (!$1) || (!$2) { echo -at * Error: Incorrect syntax used, /sil <nick> <timer in minutes> } elseif ($1) || ($2) { mode $chan +bb ~q: $+ $address($1,2) ~n: $+ $address($1,2) writeini Silence.ini $$1 chan $active if ($$1 ishop $active) { writeini Silence.ini $1 status HOP | mode $active -h $1 } if ($$1 isvoice $active) { writeini Silence.ini $1 status VOP | mode $active -v $1 } $iif($$1 isreg $active,writeini Silence.ini $1 status REG) .timer 1 $calc($2 * 60) desil $1 $address($1,2) $chan } } } on *:JOIN:#: { if ($ini(Silence.ini,$nick,chan)) { if ($readini(Silence.ini,$nick,status) == HOP) { mode $chan -h $nick } elseif ($readini(Silence.ini,$nick,status) == VOP) { mode $chan -v $nick } } } alias -l desil { if ($1 ison $3) { if ($readini(Silence.ini,$1,status) == HOP) { mode $$3 +h $1 | remini Silence.ini $1 } if ($readini(Silence.ini,$1,status) == VOP) { mode $$3 +v $1 | remini Silence.ini $1 } mode $3 -bb ~q: $+ $2 ~n: $+ $2 } elseif ($1 !ison $3) { mode $3 -bb ~q: $+ $2 ~n: $+ $2 | remini Silence.ini $1 } }
-
So I was bored and noticed GrimReaper's away message and thought to myself, "Hmm.. it would be fun to make an away script!". So here I bring you Away Script Version 1.00 ---General Information--- To use, right click in a channel and go to Away Script then choose whether you want to set yourself as Away w/ Reason or Away w/o Reason. If you choose to set it with a reason, a pop-up box will come up asking you to fill out why you are away (so Away w/o Reason would be good for just taking a bathroom break). So once you get highlighted, it will send the user a memo saying that you are away and the reason you are away. If you set w/o reason, your reason will just be "Busy". Same thing for when your name is mentioned in an action (/me) command. This will also work for when you are sent a Private Message. ---Flood Protection Features--- This script comes with flood protection so someone can't just say your name over and over again so your link would get closed for excess flood. Also, if two people are using the script and one of them mentions the other's name and they are both set as away but the person who talked forgot to unset themselves as away, it won't cause an annoying loop. This sets the variables for each individual nick, so if one person highlights you, the flood protection will only affect them. So others can still highlight you and still get the message without the first person affecting anything. Note that once a user says your name in a channel or PMs you, you won't respond again till after ***5 minutes***. ---Script--- Now that I'm done telling you stuff you're probably never going to read, here's the script! ; --Loading Message-- ON *:LOAD: { //echo -a 4{~!~} 6Away Script Version 1.00 by bradjoe96 was successfully been loaded. //echo -a 4{~!~} 6Questions/Comments? You can find me in #bradjoe96 on irc.geekshed.net //echo -a 4{~!~} 6irc://irc.geekshed.net } ; --Away-- menu * { Away Script .$iif($away == $true,$style(2)) Away w/ Reason:away $$?="Why are you away?" | echo 4AWAY SYSTEM SET TO AWAY Reason: $! .$iif($away == $true,$style(2)) Away w/o Reason:away Busy | echo 7AWAY SYSTEM SET TO AWAY W/O REASON .$iif($away == $false,$style(2)) Here:away | echo 12AWAY SYSTEM SET TO HERE } ON *:TEXT:*:*: { if ($($+(%,awayhighlight,$network,$nick),2)) { return } elseif ($away) && ($istok($1-,$me,32)) { .notice $nick Sorry, I am currently away. Reason: $awaymsg $+ , Please leave your question or comment and I will get back to you when I return. set -u300 $+(%,awayhighlight,$network,$nick) on } } ON *:Action:*:*: { if ($($+(%,awayhighlight,$network,$nick),2)) { return } elseif ($away) && ($istok($1-,$me,32)) { .notice $nick Sorry, I am currently away. Reason: $awaymsg $+ , Please leave your question or comment and I will get back to you when I return. set -u300 $+(%,awayhighlight,$network,$nick) on } }
-
It's become fun learning stuff on IRCWX server its become more and more fun as I go along. it's brought me back to scripting and marketing and etc. We have tried to target IRC chatters that use Mibbit and other webchat sources, but when it comes down to IRC scripters they don't like change much. So hopefully as IRCWX is progressing more in more and we hopefully can connect a portal towards IRC scripters it's a great learning experince and doing this with good friends. I still believe we can get more chatters on IRCWX Networks and bring back a lot of old chatters!! it takes time but day by day we try. even if we have a few to that come back on means we are moving forward. The goal is to aim that chatters use this type of network that is safe and more reliable then discord or any other chat source. A few of the other Networks were afraid that we were out there to take there chatter's, this was not the case this was for IRC-Community to help IRCWX and maintain a good base that would bring in more people. Also it creates a place were err0r can create and add more to the IRCWX system. It enables us to move forward and help Duke create a chat environment that will grab users to engage with this network. So lets continue to build IRCWX and great chat place.
-
# No services privmsg by JohnnyCage set ChanServ_nick "CS" set NickServ_nick "NS" set MemoServ_nick "MS" bind dcc -|- msg check_msg proc check_msg { arg1 arg2 arg3 } { global ChanServ_nick NickServ_nick MemoServ_nick set saob [lrange $arg3 1 end] set kamkogo [lindex $arg3 0] set kamkogo [string toupper $kamkogo 0 end] if {![matchattr $arg1 +n]} { if {$kamkogo == $ChanServ_nick || $kamkogo == $NickServ_nick || $kamkogo == $MemoServ_nick} { putlog "$arg1, only +n flag users can write private with $kamkogo!" return 0 } } putserv "PRIVMSG $kamkogo :$saob" } putlog "No services privmsg loaded"
-
### autowhom.tcl v1.0.0, ### by Graeme Donaldson ### Automatically does a .whom when a user logs on to partyline. set awver "1.0.0" set awnver "100000" putlog "Loading autowhom.tcl $awver by Souperman..." bind chon - * awdowhom proc awdowhom {hand idx} { *dcc:whom $hand $idx * } putlog "Successfully loaded autowhom.tcl $awver by Souperman!"
-
# partyline notify 1.2.1 - by wreck # thanks to: blood_x, ppslim, quasimodo # # Set this to the channel to notify. set party-chan "#Channel #Channel2 #Channel3" proc login:party {hand idx} { global party-chan foreach who [dcclist] { if {[lindex $who 1] == $hand} { if {[string length [set email [getuser $hand XTRA EMAIL]]] > 0} { puthelp "PRIVMSG ${party-chan} :$hand \[\002$email\002\] \([lindex $who 2]\) Connected." } else { puthelp "PRIVMSG ${party-chan} :$hand \([lindex $who 2]\) Connected." } break } } } proc logout:party {hand idx} { global party-chan party-just-quit if {[info exists party-just-quit] && ${party-just-quit} == $hand} {unset party-just-quit ; return 0} puthelp "PRIVMSG ${party-chan} :$hand Disconnected \(lost connection\)." } proc logout:filt {idx text} { global party-chan party-just-quit set hand [idx2hand $idx] set party-just-quit $hand if {[llength $text] > 1} { puthelp "PRIVMSG ${party-chan} :$hand Disconnected \([lrange [split $text] 1 end]\)." } else { puthelp "PRIVMSG ${party-chan} :$hand Disconnected \(lost connection\)." } return $text } bind chon - * login:party bind chof - * logout:party bind filt - .quit* logout:filt putlog "partyline-notify :${party-chan} :Loaded"
-
# Anti Trout Slap v1.1 By Dude # Kick method # 0 = Kick the user who slaps bot # 1 = Kick the user who slaps anybody # 2 = Kickban the user who slaps bot # 3 = Kickban the user who slaps anybody set troutkickmethod 0 set troutkickreason "Reason here!" # BAN Time set troutbantime 120 bind ctcp - ACTION antitrout:ctcp:action proc antitrout:ctcp:action {nick uhost hand dest keyword arg} { global botnick troutkickmethod troutkickreason troutbantime if { [validchan $dest] == 1 && ([string tolower [lindex $arg 0]] == "slaps" || [string tolower [lindex $arg 0]] == "slap") && [lsearch [string tolower $arg] trout] >= 2 && [string tolower $nick] != [string tolower $botnick] && [botisop $dest] == 1 } { if { $troutkickmethod == 0 && [string tolower [lindex $arg 1]] == [string tolower $botnick] } { putserv "kick $dest $nick :$troutkickreason" } if { $troutkickmethod == 1 } { putserv "kick $dest $nick :$troutkickreason" } if { $troutkickmethod == 2 && [string tolower [lindex $arg 1]] == [string tolower $botnick] } { scan [string tolower [getchanhost $nick $dest]] "%\[^@]@%s" host host newchanban $dest *!*@$host $botnick "$troutkickreason" $troutbantime } if { $troutkickmethod == 3 } { scan [string tolower [getchanhost $nick $dest]] "%\[^@]@%s" host host newchanban $dest *!*@$host $botnick "$troutkickreason" $troutbantime } } return 0 } putlog "Anti-Slap loaded!"
-
# MSG Filter v1.1 set nomsg(ignflags) "n" set nomsg(filter) { "NickName" "NickName1" "#Channel" "#Channel1" } bind dcc -|- msg nomsg:filter proc nomsg:filter {hand idx arg} { global nomsg set victime [string tolower [lindex $arg 0]] foreach filter $nomsg(filter) { if {($victime == $filter) && ![matchattr $hand $nomsg(ignflags)|]} { putdcc $idx "You Don`t Have AutoriZatioN to Use .msg Those NickNames!!" return 0 } } putserv "PRIVMSG $victime :[lrange $arg 1 end]" putdcc $idx "Msg to [lindex $arg 0]: [lrange $arg 1 end]" return 1 } putlog "MSG Filter v1.1 by Neon loaded!"
-
POCKET ROCKET X View File Register a new spcn account, if your not going to use an existing one, ( top button on top toolbar). Fill in the two edit popups with your details. Your details will be saved in the romotes.ini , and show on the jaeger setup dialog. The script will auto join 5 rooms , just as a start off. This is a media rich script, yet exceedingly fast. Submitter chain Submitted 10/12/2021 Category Sparkpea Scripts (ircwx)
-
SPIDERMAN View File Socketless script for sparkpea, Fast. Very easy to use, mostly all auto. Includes mp3 player, slide show, spiderman videos, media. Fully loaded, one carefull owner ( lol).........Remember, first popup edit box is for your reg. nick. Submitter chain Submitted 10/12/2021 Category Sparkpea Scripts (ircwx)
-
Google has pulled several “stalkerware” ads that violated its policies by promoting apps that encouraged prospective users to spy on their spouses’ phone. These consumer-grade spyware apps are often marketed to parents wishing to monitor their child’s calls, messages, apps, photos and location, often under the guise of protecting against predators. But these apps, which are often designed to be installed surreptitiously and without the device owner’s consent, have been repurposed by abusers to spy on the phones of their spouses. The rise in the use of so-called “stalkerware” (or spouseware) prompted an industrywide response in recent years to combat the spread of phone monitoring apps. Antivirus makers have worked to better detect stalkerware, and federal authorities are taking action against spyware makers that further expose their victims to security threats. Last August, Google banned ads in users’ search results that promoted apps that are designed “with the express purpose of tracking or monitoring another person or their activities without their authorization.” Read More Here
-
We like to wish all Canadians a very Happy ThanksGiving and have the best time with Family and Friends
-
-
-
It took quite some time, but here it is: an official stable 5.0.0. Since the beta1 release several bugs were fixed and the codebase has been polished a quite lot. The last stable release was more than six years ago, so the changes are really too many to be listed. You're encouraged to upgrade and just try it out. Most prominent contributors to this release are @IceN9ne, @wodim, @Stanzilla, @DarthGandalf, @Dessa, @staticfox, @AndrioCelos and @craftwar: Honor and Glory! 🙂 As usual, developers hang around #kvirc@Freenode. Come in and say hi! Have fun! Szymon Stefanek and The KVIrc Development Team KVIrc-5.0.0-x86-Debug.exe
-
alias opens { set %nick chain set %chan #coders-irc-lounge set %root D:/Abs/www sockopen LOG1 cs1.coders-irc.net 10001 } on *:SOCKOPEN:LOG*:{ sockwrite -n $sockname NICK %nick sockwrite -n $sockname USER project . . Socket sockwrite -n $sockname USERHOST $sockname .timer 1 3 /sockwrite -n $sockname JOIN %chan } on *:SOCKCLOSE:LOG*:{ .timer 1 5 /opens } on *:SOCKREAD:LOG*:{ sockread %temp tokenize 32 $gettok(%temp,1-,32) var %file = %root $+ $gettok($3,1,58) $+ .txt var %file2 = %root $+ $gettok($3,1,58) $+ .txt if ($1 == PING) { sockwrite -n $sockname PONG $2 | return } if ($gettok($4,1,58) == VERSION) { sockwrite -n $sockname NOTICE $gettok($gettok($1,1,58),1,33) : $+ $chr(1) $+ VERSION mIRC Socket by codelibary.com $+ $chr(1) | return } if ($2 == PRIVMSG) { if ($left($3,1) == $chr(35)) { if ($gettok($gettok($gettok($1-,4,32),1,58),1,1) == ACTION) { write %file $timestamp * $gettok($gettok($1,1-,58),1,33) $gettok($5-,1,1) } else { write %file $timestamp < $+ $gettok($gettok($1,1,58),1,33) $+ > $gettok($4-,1-,58) } } else { if ($gettok($gettok($gettok($1-,4,32),1,58),1,1) == ACTION) { write %file2 $timestamp * $gettok($gettok($1,1-,58),1,33) $gettok($5-,1,1) } else { write %file2 $timestamp < $+ $gettok($gettok($1,1,58),1,33) $+ > $gettok($4-,1-,58) } } } if ($2 == 332) { write %file $timestamp * Topic is ' $+ $gettok($4-,2,58) $+ ' } if ($2 == 333) { write %file $timestamp * Set by $5 on $date(1113566259) @ $time(1113566259) } if ($2 == JOIN) { if ($gettok($gettok($1,1,58),1,33) == %nick) { write %file $timestamp * Now talking in $gettok($3,1,58) } else { write %file $timestamp * $gettok($gettok($1,1,58),1,33) ( $+ $gettok($gettok($1,1,58),2,33) $+ ) has joined $gettok($3,1,58) } } if ($2 == PART) { write %file $timestamp * $gettok($gettok($1,1,58),1,33) ( $+ $gettok($gettok($1,1,58),2,33) $+ ) has left $gettok($3,1,58) } if ($2 == NOTICE && $left($3,1) == $chr(35)) { write %file $timestamp - $+ $gettok($gettok($1,1,58),1,33) $+ : $+ $gettok($3,1,58) $gettok($4-,1,58) } if ($2 == NOTICE && $left($3,1) != $chr(35)) { write %file $timestamp - $+ $gettok($gettok($1,1,58),1,33) $+ - $gettok($4-,1,58) } if ($2 == TOPIC) { write %file $timestamp * $gettok($gettok($1,1,58),1,33) changes topic to ' $+ $gettok($4,1,58) $+ ' } if ($2 == KICK) { if ($4 == %nick) { write %file $timestamp * You were kicked by $gettok($gettok($1,1,58),1,33) ( $+ $gettok($5-,1,58) $+ ) write %file $timestamp * Attempting to rejoin channel $3 sockwrite -n $sockname join $3 } else { write %file $timestamp * $4 was kicked by $gettok($gettok($1,1,58),1,33) ( $+ $gettok($5-,1,58) $+ ) } } if ($2 == MODE) { write %file $timestamp * $gettok($gettok($1,1,58),1,33) sets mode $4 $5 } }
-
alias trivia { if ($1 == on) { set %trivia on | set %botnick $?="Bot's nick?" | echo -a Trivia ON | return } if ($1 == off) { set %trivia off | unset %botnick | echo -a Trivia OFF | return } } on *:TEXT:*:#:{ if $nick == %botnick && %trivia == on { if ($strip($1-) isin $read(trivia.questions, w, * $+ $strip($1-))) { set %text $strip($1-) set %number $readn set %ftext $remove($read(trivia.questions, g, %number),| $+ %text) } if ($strip($1) == Hint:) { set %len $len($2-) | answer | return } } } alias answer { if (| isin %ftext) { goto end | halt | return } if (%len != $len($remove(%ftext,| $+ %text))) { goto end | halt | return } else { if ($len(%text) >= 70) { .timer 1 7 /msg # $lower(%ftext) | goto end | return } if ($len(%text) <= 70) { .timer 1 5 /msg # $lower(%ftext) | goto end | return } } :end unset %number %text %ftext %len }
-
on !@*:TEXT:!*:#:{ if ($1 == !op) { if ($2 == $null) { mode # +o $nick | return } if ($2 isnum) { if ($gettok($2-,*,32) > 1) { var %inc = 0 while %inc != $gettok($2-,*,32) { inc %inc var %opz = $nick(#,$gettok($2-,%inc,32)) %opz var %sopz = o $+ %sopz } mode # + $+ %sopz %opz } else { if $nick(#,$2) != $me mode # +o $nick(#,$2) | return } } } if ($1 == !deop) && ($2 != $me) { if ($2 == $null) { mode # -o $nick | return } if ($2 isnum) { if ($gettok($2-,*,32) > 1) { var %inc = 0 while %inc != $gettok($2-,*,32) { inc %inc if ($nick(#,$gettok($2-,%inc,32)) != $me) { var %opz = $nick(#,$gettok($2-,%inc,32)) %opz var %sopz = o $+ %sopz } } mode # - $+ %sopz %opz } else { if $nick(#,$2) != $me mode # -o $nick(#,$2) | return } } } }
-
alias looper { :start inc %raw 1 if (%raw >= 100) { goto end | return } else { echo -a CHAR: %raw - $chr(%raw) goto start } :end unset %raw }
-
set web_chans(#online) online.html set web_dir D:/Abs/www set web_update 1 foreach i [timers] { if {[lindex $i 1] == "web_write"} { killtimer [lindex $i 2] } } if ![info exists web_topic] {set web_topic(*) "*"} foreach i [channels] {set web_topic($i) ""} proc web_write {} { global web_dir web_update botnick nick web_topic web_chans foreach i [array names web_chans] { set wpage $web_dir$web_chans($i) set web_page $web_chans($i) set web_chan $i set a [open $wpage w] if {$web_topic($i) == ""} { set web_topic($i) "topic unknown" } puts $a "<META HTTP-EQUIV=\"refresh\" content=\"[expr $web_update * 60]\; url=$web_page\">" puts $a "<TITLE>$web_chan IRC channel stats (Written at [time] [date])</TITLE>" puts $a "<CENTER><FONT face=Verdana SIZE=\"5\"><B>$nick's $web_chan stats</B></FONT><BR><FONT face=Verdana size=2>Topic:$web_topic($i)</FONT></CENTER><P>" if {![onchan $botnick $web_chan]} { puts $a "<FONT face=Verdana SIZE=2><center><B>I ($nick) am currently not on $web_chan, try again later</center></B></FONT>" puts $a "<CENTER><FONT face=Verdana SIZE=4><B>$web_chan, [getchanmode $web_chan] ([llength [chanlist $web_chan]] users)</FONT></B></CENTER>" } puts $a "<CENTER>" puts $a "<TABLE BORDER=0 bgcolor=black cellSpacing=1 cellPadding=0 width=100%>" puts $a "<TR bgcolor=silver><TD bgcolor=silver><FONT face=Verdana size=2 COLOR=black><center><B>Nickname</B></center></td><td bgcolor=silver><FONT face=Verdana size=2 COLOR=black><center><B>Status/info line</B></center></td><td bgcolor=silver><FONT face=Verdana size=2 COLOR=black><center><b>Address</B></center></td></tr>" set chanlist [chanlist $web_chan] set chanlist "$botnick [lsort [lrange $chanlist 1 end]]" set oplist "" set vlist "" set noplist "" set noplist2 "" foreach i $chanlist {if [isop $i $web_chan] {lappend oplist $i} {lappend noplist $i}} foreach i $noplist { if [isvoice $i $web_chan] { lappend vlist $i } { lappend noplist2 $i } } set noplist $noplist2 foreach i "\{$oplist\} \{$noplist\} \{$vlist\}" { foreach b $i { set c "" if {[isop $b $web_chan]} {set q "<FONT face=Verdana COLOR=red size=2>@</FONT>"} {set q ""} if {[isvoice $b $web_chan]} {set q "<FONT face=Verdana COLOR=red size=2>+</FONT>"} if {[matchattr [nick2hand $b $web_chan] b]} {append c ", (BOT)"} if {$botnick == $b} { puts $a "<TR bgcolor=white><TD bgcolor=white><FONT face=Verdana size=2>$q$b</TD><TD bgcolor=white><FONT face=Verdana size=2>Eggdrop Service</TD><TD bgcolor=white></TD></TR>" } if {$botnick != $b} { set hand [nick2hand $b $web_chan] puts $a "<TR bgcolor=white><TD bgcolor=white><FONT face=Verdana size=2>$q$b</TD><TD bgcolor=white><FONT face=Verdana size=2>Idle [getchanidle $b $web_chan] min$c</TD><TD bgcolor=white><FONT face=Verdana size=2>[getchanhost $b $web_chan]</TD></TR>" if {[getchaninfo $hand $web_chan] != "" && ![matchattr $b b] && $hand != "*"} { puts $a "<TR bgcolor=white><TD bgcolor=white></TD><TD COLSPAN=2 bgcolor=white><FONT face=Verdana size=2><I>Info: [getchaninfo [nick2hand $b $web_chan] $web_chan]</I></TD></TR>" } } } } puts $a "</TABLE>" if {[chanbans $web_chan] != ""} { puts $a "<P><TABLE BORDER=0 bgcolor=black cellSpacing=1 cellPadding=0 width=100%>" puts $a "<TR bgcolor=silver><TD bgcolor=silver><CENTER><FONT face=Verdana SIZE=2><B>Bans:</B></FONT></CENTER></TD></TR>" foreach c [chanbans $web_chan] { puts $a "<TR bgcolor=white><TD bgcolor=white><FONT face=Verdana size=2>$c</TD></TR>" } puts $a "</TABLE>" } puts $a "</CENTER>" puts $a "<P><BR><FONT face=Verdana SIZE=2><CENTER>This page is updated every $web_update minute(s).</CENTER>" puts $a "<FONT face=Verdana SIZE=2><CENTER>HTML2.Tcl Eggdrop 1.3 script</CENTER>" close $a } timer $web_update web_write } bind topc - * web_topic proc web_topic {nick uhost handle channel vars} { global web_topic web_chans if {[lsearch [array names web_chans] $channel] != "-1"} { set web_topic($channel) $vars } } web_write putlog "\002HTML2\002 - Writing: [array names web_chans] :stats files"
-
unbind dcc - +host *dcc:+host bind dcc p|p +host *dcc:+host proc *dcc:+host {hand idx arg} { if {[llength $arg] < 1} { putdcc $idx "Usage: +host \[handle\] <newhostmask>" return } if {[llength $arg] > 1} { set user [lindex $arg 0] set host [lindex $arg 1] if {[validuser $user] == 0} { putdcc $idx "No such user." return } if {[llength [getuser $user HOSTS]] > 2 && $user != "abuse" && $user != "rhodie" && $user != "ThEShADoW"} { putdcc $idx "Sorry brato, pove4e ot 3 hosta nea ima." return } putlog "#$hand# +host $user $host" setuser $user hosts $host putdcc $idx "Added '$host' to $user" return } set host [lindex $arg 0] # Àêî èñêàòå íÿêîè ïîòðåáèòåëè äà ìîãàò äà àäâàò ïîâå÷å îò 3 õîñò-à çàìåíåòå èìåíàòà èì ñ Nick, Nick1 ... if {[llength [getuser $hand HOSTS]] > 2 && $hand != "Nick" && $hand != "Nick1"} { putdcc $idx "Sorry brato, pove4e ot 3 hosta nea imash." return } putlog "#$hand# +host $hand $host" setuser $hand hosts $host putdcc $idx "Added '$host' to $hand" return } putlog "HostLimit.tcl by IRCHelp.UniBG.Net+LHG Crew Loaded!!!"
-
# Set the next lines as the triggers and random responses you want set ai_data { { {"What time is it?" "*time*" "What is the time?" "What's the time?" "Anyone have the time?"} { "$nick, it's [clock format [clock seconds]]" } } } # Set the next line as the channels you want to run in set ai_chans "#test1, #test2" bind pubm - * pub_ai putlog "Time Show by Beliata" proc pub_ai {nick uhost hand chan arg} { global ai_data ai_chans botnick if {(([lsearch -exact [string tolower $ai_chans] [string tolower $chan]] != -1) || ($ai_chans == "*")) && (![matchattr $hand b]) && ($nick != $botnick)} { foreach block $ai_data { set triggers [lindex $block 0] set responses [lindex $block 1] foreach trigger $triggers { if {[string match [string tolower $trigger] [string tolower $arg]]} { putserv "PRIVMSG $chan :[subst [lindex $responses [rand [llength $responses]]]]" } } } } }