Code: Select all
bind time - ?10* savelist
bind join - * addtolist
bind part - * remfromlist
bind sign - * remfromlist
if {![file exists online.txt]} { close [open online.txt w] }
set nicklist [split [read [set oltxt [open online.txt]]] \n][close $oltxt]
proc savelist args {
set file [open online.txt w]
foreach n $::nicklist {
if {$n != ""} { puts $file $n }
}
close $file
}
proc addtolist {nick uhost hand chan} {
global nicklist
set nick [string tolower $nick]
if {[lsearch -exact $nicklist $nick] == -1} {
lappend nicklist $nick
}
}
proc remfromlist {nick uhost hand chan rsn} {
global nicklist
set nick [string tolower $nick]
if {[set i [lsearch -exact $nicklist $nick]] != -1} {
set nicklist [lreplace $nicklist $i $i]
}
}Code: Select all
bind join - * addtolist
bind part - * remfromlist
bind sign - * remfromlist
if {![file exists online.txt]} { close [open online.txt w] }
set nicklist [split [read [set oltxt [open online.txt]]] \n][close $oltxt]
set recentnicks 0
if {[utimerexists savelist]==""} {
utimer 10 savelist
}
proc savelist {} {
global recentnicks
if {$recentnicks} {
set file [open online.txt w]
foreach n $::nicklist {
if {$n != ""} { puts $file $n }
}
close $file
set recentnicks 0
}
utimer 10 savelist
}
proc addtolist {nick uhost hand chan} {
global nicklist recentnicks
set nick [string tolower $nick]
if {[lsearch -exact $nicklist $nick] == -1} {
lappend nicklist $nick
set recentnicks 1
}
}
proc remfromlist {nick uhost hand chan rsn} {
global nicklist recentnicks
set nick [string tolower $nick]
if {[set i [lsearch -exact $nicklist $nick]] != -1} {
set nicklist [lreplace $nicklist $i $i]
set recentnicks 1
}
}