Code: Select all
## ad.tcl v1.0 by strikelight ([sL]@EfNet)
#
# -----------------------------------------
# web : http://www.TCLScript.com
# EFNet: #Scripting
# -----------------------------------------
# Description:
#
# Small script used to advertise urls in a channel
# such as shell companies at a defined time interval.
#
# Default usage:
#
# Add:
# /msg <bot> !ad <url> <description>
#
# Remove:
# /msg <bot> !delad <url>
#
##
## --- START EDITTING HERE --- ##
# time in seconds to display an ad to channels #
set adtime 120
# channels to advertise in #
set adchans "#gilgit"
# flag of user required to add an advertisement via msg #
set adflag m
# message trigger used to add an advertisement #
# (format /msg bot <command> <url> <ad description>)
set admsgcmd "!ad"
# message trigger used to delete an advertisement #
# (format /msg bot <command> <url>)
set deladmsgcmd "!delad"
## --- STOP EDITTING HERE --- ##
set adidx 0
proc loadads {} {
global adlist
set adlist ""
if {![file exists "ad.txt"]} {return 0}
set infile [open "ad.txt" r]
while {![eof $infile]} {
gets $infile dataline
if {$dataline != ""} {lappend adlist $dataline}
}
close $infile
return 1
}
proc saveads {} {
global adlist
set outfile [open "ad.txt" w]
foreach ad $adlist {if {$ad != ""} {puts $outfile "$ad"}}
close $outfile
return 1
}
proc addisplay {} {
global adchans adlist adidx adtime
utimer $adtime "addisplay"
if {$adlist == ""} {return 0}
foreach chan $adchans {
puthelp "PRIVMSG $chan :\002\037[split [lindex [lindex $adlist $adidx] 0]]\037\002"
puthelp "PRIVMSG $chan :10[split [lrange [lindex $adlist $adidx] 1 end]]"
}
set adidx [expr $adidx + 1]
if {$adidx >= [llength $adlist]} {set adidx 0}
return 1
}
proc utimerexists {timer_proc} {
foreach j [utimers] {if {[string compare [lindex $j 1] $timer_proc] == 0} {return [lindex $j 2]}}
return
}
bind msg $adflag $admsgcmd addad
proc addad {unick user handle argz} {
global adlist botnick admsgcmd
set url [split [lindex $argz 0]]
set addesc [split [lrange $argz 1 end]]
if {($url == "") || ($addesc == "")} {
puthelp "PRIVMSG $unick :Invalid. Format: /msg $botnick $admsgcmd <url> <ad description>"
return 0
}
foreach turl $adlist {
set aurl [string tolower [lindex $turl 0]]
if {$aurl == [string tolower $url]} {
puthelp "PRIVMSG $unick :Error. Site is already added."
return 0
}
}
lappend adlist "$url $addesc"
saveads
puthelp "PRIVMSG $unick :Added: $url - $addesc"
return 1
}
bind msg $adflag $deladmsgcmd delad
proc delad {unick user handle argz} {
global adlist botnick admsgcmd
set url [split [lindex $argz 0]]
if {$url == ""} {
puthelp "PRIVMSG $unick :Invalid. Format: /msg $botnick $deladmsgcmd <url>"
return 0
}
set newadlist ""
foreach turl $adlist {
set aurl [string tolower [lindex $turl 0]]
if {$aurl != [string tolower $url]} {
lappend newadlist $turl
}
}
set adlist $newadlist
saveads
puthelp "PRIVMSG $unick :Deleted: $url"
return 1
}
loadads
if {[utimerexists "addisplay"] == ""} {utimer $adtime "addisplay"}
putlog "ad.tcl v1.0 by strikelight now loaded"
this tcl show msgs which in in added into ad.txt line by line after some minute the problem is this if some txt length is more then then its cut off the txt sentence and show shortly
i want its when it show msg if some txt lenght is big then its convert into two msgs automaticly and show completely lenght.
like i show you here example:
right now tcl show like this short msg:
Code: Select all
(23:07:25) <Deen> 255. Allah - there is no deity except Him, the Ever-Living, the Sustainer of [all] existence. Neither drowsiness overtakes Him nor sleep. To Him belongs whatever is in the heavens and whatever is on the earth. Who is it that can intercede with Him except by His permission? He knows what is [presently] before them and what will be after them, and they encompass not a thing of
Code: Select all
(23:07:25) <Deen> 255. Allah - there is no deity except Him, the Ever-Living, the Sustainer of [all] existence. Neither drowsiness overtakes Him nor sleep. To Him belongs whatever is in the heavens and whatever is on the earth. Who is it that can intercede with Him except by His permission? He knows what is [presently] before them and what will be after them, and they encompass not a thing of
(23:07:25) <Deen> His knowledge except for what He wills. His Kursi extends over the heavens and the earth, and their preservation tires Him not. And He is the Most High, the Most Great.