Where is the thread NEW YEAR SCRIPT i can't find it??
?(
------------------------------------------------------------------------------
------- countdown bot by plop -------
------- original julian day made by tezlo -------
------- modifyd by chilla 2 also handle hours, mins, seconds -------
------------------------------------------------------------------------------
------------------------------------------------------------------------------
------- THE TEXT FILE LOADS ON BOT START -------
------------------------------------------------------------------------------
------- this may sound weird but this 2 make sure it shows on time, -------
------- as i allready seen some big ascii's come by -------
------------------------------------------------------------------------------
------------------------------------------------------------------------------
Bot = "newyear"
--This the date the timer has 2 stop @ midnight
-- year (2 numbers), month, day
SylYear,SylMonth,SylDay = 03,12,31
-- this is the file 2 be shown
file = "happynewyear.txt"
------------------------------------------------------------------------------
------------------------------------------------------------------------------
function OnTimer()
if last == 0 then
SendToAll(Bot, TimeLeft())
Sync()
elseif last == 1 then
SendAscii() -- send the msg
StopTimer() -- kill the timer
end
end
------------------------------------------------------------------------------
function jdatehms(d, m, y,ho,mi,se)
local a, b, c = 0, 0, 0
if m <= 2 then
y = y - 1
m = m + 12
end
if (y*10000 + m*100 + d) >= 15821015 then
a = floor(y/100)
b = 2 - a + floor(a/4)
end
if y <= 0 then c = 0.75 end
return floor(365.25*y - c) + floor(30.6001*(m+1) + d + 1720994 + b),ho*3600+mi*60+se
end
------------------------------------------------------------------------------
function TimeLeft()
local curday,cursec = jdatehms(tonumber(date("%d")),tonumber(date("%m")),tonumber(date("%y")),tonumber(date("%H")),tonumber(date("%M")),tonumber(date("%S")))
local sylday,sylsec = jdatehms(SylDay,SylMonth,SylYear,24,0,0)
local tmp = sylsec-cursec
local hours, minutes,seconds = floor(mod(tmp/3600, 60)), floor(mod(tmp/60, 60)), floor(mod(tmp/1, 60))
return ("Time left till new year: "..sylday-curday.." Day's, "..hours.." Hours, "..minutes.." Minutes, "..seconds.." Seconds")
end
------------------------------------------------------------------------------
function ShowAscii()
text ="\r\n\r\n"
readfrom(file)
while 1 do
local line = read()
if line == nil then
readfrom()
break
end
text = text..line.."\r\n"
end
end
------------------------------------------------------------------------------
function SendAscii()
SendToAll(Bot, text.." |")
SendToAll(Bot, "happy new year 2 everybody from all the guy's/girls/bot's from the lua forum|")
end
------------------------------------------------------------------------------
function DataArrival(user, data)
if( strsub(data, 1, 1) == "<" ) then
data=strsub(data,1,strlen(data)-1)
s,e,cmd = strfind(data,"%b<>%s+(%S+)")
if cmd == "!daysleft" then
user:SendData(Bot, TimeLeft().."|")
return 1
end
end
end
------------------------------------------------------------------------------
function NewUserConnected(user)
user:SendData(Bot, TimeLeft().."|")
end
------------------------------------------------------------------------------
function OpConnected(user)
user:SendData(Bot, TimeLeft().."|")
end
------------------------------------------------------------------------------
function Main()
SetTimer(100 * 1000)
StartTimer()
SendToAll(Bot, TimeLeft().."|")
Sync()
ShowAscii()
last = 0
end
------------------------------------------------------------------------------
function Sync()
local curday,cursec = jdatehms(tonumber(date("%d")),tonumber(date("%m")),tonumber(date("%y")),tonumber(date("%H")),tonumber(date("%M")),tonumber(date("%S")))
local sylday,sylsec = jdatehms(SylDay,SylMonth,SylYear,24,0,0)
local tmp = sylsec-cursec
local hours, minutes,seconds = floor(mod(tmp/3600, 60)), floor(mod(tmp/60, 60)), floor(mod(tmp/1, 60))
local day = sylday-curday
if day ~= 0 then
adjust = (floor(mod(minutes, 60))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(3600 * 1000)
end
else
if tmp > 3600 then --- every hours a msg
adjust = (floor(mod(minutes, 60))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(3600 * 1000)
end
elseif tmp > 900 then -- every 15 mins a msg
adjust = (floor(mod(minutes, 15))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(900 * 1000)
end
elseif tmp > 300 then -- every 5 mins a msg
adjust = (floor(mod(minutes, 5))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(300 * 1000)
end
elseif tmp > 60 then -- every min a msg
adjust = (floor(mod(minutes, 1))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(60 * 1000)
end
elseif tmp > 15 then -- every 15 secs a msg
adjust = floor(mod(seconds, 15))
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(15 * 1000)
end
elseif tmp > 10 then -- every 10 secs a msg
adjust = floor(mod(seconds, 10))
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(5 * 1000)
end
elseif tmp > 1 then
SetTimer(1 * 1000)
else
last = 1
SetTimer(1 * 1000)
end
end
end
----------------------------
hehe here you go
In fact don't worry now, fix it.. bloody note pad word wrapped the file!! DOH!
-----------------------------------------------------------------------------
Does it show up in the hub and does it matter on the date format? Eg in NZ we use DD/MM/YY etc..
Also does it have any commands?
Thanx
Mushroom
QuoteOriginally posted by IceCoder
------------------------------------------------------------------------------
------- countdown bot by plop -------
------- original julian day made by tezlo -------
------- modifyd by chilla 2 also handle hours, mins, seconds -------
------------------------------------------------------------------------------
------------------------------------------------------------------------------
------- THE TEXT FILE LOADS ON BOT START -------
------------------------------------------------------------------------------
------- this may sound weird but this 2 make sure it shows on time, -------
------- as i allready seen some big ascii's come by -------
------------------------------------------------------------------------------
------------------------------------------------------------------------------
Bot = "newyear"
--This the date the timer has 2 stop @ midnight
-- year (2 numbers), month, day
SylYear,SylMonth,SylDay = 03,12,31
-- this is the file 2 be shown
file = "happynewyear.txt"
------------------------------------------------------------------------------
------------------------------------------------------------------------------
function OnTimer()
if last == 0 then
SendToAll(Bot, TimeLeft())
Sync()
elseif last == 1 then
SendAscii() -- send the msg
StopTimer() -- kill the timer
end
end
------------------------------------------------------------------------------
function jdatehms(d, m, y,ho,mi,se)
local a, b, c = 0, 0, 0
if m <= 2 then
y = y - 1
m = m + 12
end
if (y*10000 + m*100 + d) >= 15821015 then
a = floor(y/100)
b = 2 - a + floor(a/4)
end
if y <= 0 then c = 0.75 end
return floor(365.25*y - c) + floor(30.6001*(m+1) + d + 1720994 + b),ho*3600+mi*60+se
end
------------------------------------------------------------------------------
function TimeLeft()
local curday,cursec = jdatehms(tonumber(date("%d")),tonumber(date("%m")),tonumber(date("%y")),tonumber(date("%H")),tonumber(date("%M")),tonumber(date("%S")))
local sylday,sylsec = jdatehms(SylDay,SylMonth,SylYear,24,0,0)
local tmp = sylsec-cursec
local hours, minutes,seconds = floor(mod(tmp/3600, 60)), floor(mod(tmp/60, 60)), floor(mod(tmp/1, 60))
return ("Time left till new year: "..sylday-curday.." Day's, "..hours.." Hours, "..minutes.." Minutes, "..seconds.." Seconds")
end
------------------------------------------------------------------------------
function ShowAscii()
text ="\r\n\r\n"
readfrom(file)
while 1 do
local line = read()
if line == nil then
readfrom()
break
end
text = text..line.."\r\n"
end
end
------------------------------------------------------------------------------
function SendAscii()
SendToAll(Bot, text.." |")
SendToAll(Bot, "happy new year 2 everybody from all the guy's/girls/bot's from the lua forum|")
end
------------------------------------------------------------------------------
function DataArrival(user, data)
if( strsub(data, 1, 1) == "<" ) then
data=strsub(data,1,strlen(data)-1)
s,e,cmd = strfind(data,"%b<>%s+(%S+)")
if cmd == "!daysleft" then
user:SendData(Bot, TimeLeft().."|")
return 1
end
end
end
------------------------------------------------------------------------------
function NewUserConnected(user)
user:SendData(Bot, TimeLeft().."|")
end
------------------------------------------------------------------------------
function OpConnected(user)
user:SendData(Bot, TimeLeft().."|")
end
------------------------------------------------------------------------------
function Main()
SetTimer(100 * 1000)
StartTimer()
SendToAll(Bot, TimeLeft().."|")
Sync()
ShowAscii()
last = 0
end
------------------------------------------------------------------------------
function Sync()
local curday,cursec = jdatehms(tonumber(date("%d")),tonumber(date("%m")),tonumber(date("%y")),tonumber(date("%H")),tonumber(date("%M")),tonumber(date("%S")))
local sylday,sylsec = jdatehms(SylDay,SylMonth,SylYear,24,0,0)
local tmp = sylsec-cursec
local hours, minutes,seconds = floor(mod(tmp/3600, 60)), floor(mod(tmp/60, 60)), floor(mod(tmp/1, 60))
local day = sylday-curday
if day ~= 0 then
adjust = (floor(mod(minutes, 60))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(3600 * 1000)
end
else
if tmp > 3600 then --- every hours a msg
adjust = (floor(mod(minutes, 60))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(3600 * 1000)
end
elseif tmp > 900 then -- every 15 mins a msg
adjust = (floor(mod(minutes, 15))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(900 * 1000)
end
elseif tmp > 300 then -- every 5 mins a msg
adjust = (floor(mod(minutes, 5))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(300 * 1000)
end
elseif tmp > 60 then -- every min a msg
adjust = (floor(mod(minutes, 1))*60)+seconds
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(60 * 1000)
end
elseif tmp > 15 then -- every 15 secs a msg
adjust = floor(mod(seconds, 15))
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(15 * 1000)
end
elseif tmp > 10 then -- every 10 secs a msg
adjust = floor(mod(seconds, 10))
if adjust ~= 0 then
SetTimer(adjust * 1000)
else
SetTimer(5 * 1000)
end
elseif tmp > 1 then
SetTimer(1 * 1000)
else
last = 1
SetTimer(1 * 1000)
end
end
end
----------------------------
hehe here you go
THX
:D
np :]
good work icecoder 8) .thank you.
BTW is there a way that we can set the countdown message period.as i could understand it's period is automatically decreases when the time is nearer to new year. but can we set it manually as we want.
QuoteOriginally posted by civil
good work icecoder 8) .thank you.
BTW is there a way that we can set the countdown message period.as i could understand it's period is automatically decreases when the time is nearer to new year. but can we set it manually as we want.
check here (http://board.univ-angers.fr/thread.php?threadid=501&boardid=5&styleid=1&sid=36c94f1b75fd6efbde4e6c2f8f76c63a)
pls explain what and why you want 2 have changed on the counter in that thread.
thx
plop