PtokaX forum

Archive => Archived 4.0 boards => Request for Lua 4 scripts => Topic started by: enterence on 23 November, 2004, 03:37:41

Title: looking for a release bot
Post by: enterence on 23 November, 2004, 03:37:41
hello there...
can some one help me .. i have a release bot working on my hub.. but the release bot gives out all the files released at one go..
what i want is only the last 30 releases to be displayed..

this is what i have at the moment

sBot = "-Rls-Bot-"

timedate = date()
file = "releases.txt"

display1 = "Item"
display2 = "Description"
display3 = "Releases"

function Main()
   frmHub:RegBot(sBot)
end

function DataArrival(user, data)
   if (strsub(data, 1, 1) == "<" ) then
      data=strsub(data,1,strlen(data)-1)
         _,_,cmd=strfind(data, "%b<>%s+(%S+)")

      if (cmd=="+rls") then
         ReadRelease(user, data, cmd)
         return 1

      elseif (cmd=="+add") then
         if user.bOperator or user.iProfile == 2 then
            s,e,cmd,release,desc = strfind( data, "%b<>%s+(%S+)%s+(%S+)%s+(.+)" )

            if desc == nil then
               description = "No "..display2.." specified!"
               s,e,cmd,release = strfind( data, "%b<>%s+(%S+)%s+(%S+)" )
            else
               description = desc
            end
            if release == nil then
               user:SendData(sBot, "*** No "..display1.." specified!")
               return 1
            end

            News("By: "..user.sName.."\t Date: "..timedate.."\r\n"..display1..": "..release.."\r\n"..display2..": "..description.."\r\n")
            SendToAll(sBot, "New "..display3.." Added....By <"..user.sName.."> Type +rls in Main-Chat to show "..display1..".")
            return 1
         else
            user:SendData(sBot, "*** +add is only availible to [VIP] and above!")
            return 1
         end
      end
   end
end

function ReadRelease(user, data, cmd)
   local release = ""
   readfrom(file)
   while 1 do
   local line = read()
   if (line == nil) then
   break
   else
   release = release.."   "..line.."\r\n"
   end
   end
   user:SendPM(sBot, "\r\n\r\n".."       "..display3.."s posted by users: ".."\r\n\r\n"..release)
   readfrom()
end

function News(what)
   appendto(file)
      write(what.."\n")
   writeto()
end