Hi i'm using the 3.3 Plop-modded version of chilla's Fresh Stuff script and wanna know if it's possible & if so how I go about allowing VIPs to add releases to the lists?
Thanx in advance,
Quik.
exchange function DataArrival for this 1.
function DataArrival(user,data)
if (strsub(data, 1, 1) == "<") then
data = strsub(data,1,strlen(data)-1)
s,e,cmd,type,tune = strfind(data, "%b<>%s+(%S+)%s*(%S*)%s*(.*)")
if cmd == cmd2 then
if type == "" then
user:SendPM(Bot, MsgAll.."|")
elseif type == "new" then
user:SendPM(Bot, MsgNew.."|")
elseif Types[type] then
ShowRelType(type)
user:SendPM(Bot, MsgType.."|")
end
return 1
elseif cmd == cmd4 then
user:SendPM(Bot, MsgNew.."|")
return 1
elseif user.bOperator then
if cmd == cmd3 then
if type ~= "" then
DelRel(user, type)
else
user:SendData(Bot, "yea right, like i know what i got 2 delete when you don't tell me!|")
end
return 1
elseif cmd == cmd1 then
if tune ~= "" and Types[type] then
AddRel(user, tune, type)
elseif Types[type] == nil then
user:SendData(Bot, "I need to know the catagory to add it to!|")
else
user:SendData(Bot, "yea right, like i know what you got 2 add when you don't tell me!|")
end
return 1
elseif cmd == cmd5 then
Reload()
user:SendData(Bot, "Albums reloaded!|")
return 1
end
elseif user.iProfile == 2 then
if tune ~= "" and Types[type] then
AddRel(user, tune, type)
elseif Types[type] == nil then
user:SendData(Bot, "I need to know the catagory to add it to!|")
else
user:SendData(Bot, "yea right, like i know what you got 2 add when you don't tell me!|")
end
return 1
end
end
end
plop
PERFECT!
Ur help's appreciated.
Quik.
QuoteOriginally posted by QuikThinker
PERFECT!
Ur help's appreciated.
Quik.
yw
plop
Actually man it don't work. It's cool 4 VIPs now 2 add stuff, but it let's them do nuttin else. Every time a VIP types suttin all it says is I need to know the catagory to add it to!
It won't lemme type help or anythin. Please help! :s
Quik.
Can anyone help please? ;(
-- you can add catagory's yourself ["trigger_name"]="catagory_name"
Types = {["movie"] = "Movies", ["music"]="Music", ["warez"]="Warez", ["game"]="Games"}
-- This command adds stuff, syntax : +addalbum TYPE/CATAGORY THESTUFF2ADD
cmd1 = "+addalbum"
mix that 2gether and you get.
+addalbum movie nemo's lost again
plop
Nah that aint the prob man. All that is sorted, i've been running that script 4 about a week now & its VERY good. But I wanted 2 know if it could be modded so VIPs could add 2 the lists aswell. U gave me a mod a couple of days ago which I tried.
It was half successfull coz it DID allow the VIPs 2 add but thats all it would do! It wouldnt let em speak, use commands, even !help! lol So i've still got a prob :s
-- FreshStuff v.3.3
-- original idea/script by chilla
-- completely rewriten by plop
-- if you were running 3.0 then you gotta delete the old file
-- it's incompatible with this version
-- deleting now goes by id number
-- Name the commands to what U like
-- This command adds stuff, syntax : +addphh TYPE/CATEGORY THESTUFF2ADD
cmd1 = "+addphh"
-- This command shows the stuff, syntax : +phh with options hiphop/rnb/dancehall
cmd2 = "+phh"
-- This command deletes an entry, syntax : +delphh THESTUFF2DELETE
cmd3 = "+delphh"
-- This command shows the latest stuff, syntax : +newphh
cmd4 = "+newphh"
-- This command reloads the txt file. syntax : +reloadphh
-- (this command is needed if you manualy edit the text file)
cmd5 = "+reloadphh"
-- Show latest stuff on entry 1=yes, 0=no
ShowOnEntry = 1
-- Max stuff shown on newphh/entry
MaxNew = 10
-- The file storing the stuff
file = "txt/phh.txt"
-- Name of the bot
Bot = "?PHH?"
-- you can add categories yourself ["trigger_name"]="category_name"
Types = {["hiphop"]="Hip-Hop", ["rnb"]="R&B", ["dancehall"]="Dancehall"}
--------------------- don't change anything below here
AllStuff = {}
NewestStuff = {}
function Main()
frmHub:RegBot(Bot)
ReloadRel()
end
function NewUserConnected(user)
if ShowOnEntry == 1 then
user:SendPM(Bot, MsgNew.."|")
end
end
function OpConnected(user)
if ShowOnEntry == 1 then
user:SendPM(Bot, MsgNew.."|")
end
end
function DataArrival(user,data)
if (strsub(data, 1, 1) == "<") then
data = strsub(data,1,strlen(data)-1)
s,e,cmd,type,tune = strfind(data, "%b<>%s+(%S+)%s*(%S*)%s*(.*)")
if cmd == cmd2 then
if type == "" then
user:SendPM(Bot, MsgAll.."|")
elseif type == "new" then
user:SendPM(Bot, MsgNew.."|")
elseif Types[type] then
ShowRelType(type)
user:SendPM(Bot, MsgType.."|")
end
return 1
elseif cmd == cmd4 then
user:SendPM(Bot, MsgNew.."|")
return 1
elseif user.bOperator then
if cmd == cmd3 then
if type ~= "" then
DelRel(user, type)
else
user:SendData(Bot, "yea right, like i know what i got 2 delete when you don't tell me!|")
end
return 1
elseif cmd == cmd1 then
if tune ~= "" and Types[type] then
AddRel(user, tune, type)
elseif Types[type] == nil then
user:SendData(Bot, "I need to know the category to add it to!|")
else
user:SendData(Bot, "yea right, like i know what you got 2 add when you don't tell me!|")
end
return 1
elseif cmd == cmd5 then
ReloadRel()
user:SendData(Bot, "Albums reloaded!|")
return 1
end
end
end
end
function OpenRel()
AllStuff = nil
NewestStuff = nil
AllStuff = {}
NewestStuff = {}
Count = 0
Count2 = 0
readfrom(file)
while 1 do
local line = read()
if ( line == nil ) then
break
else
Count = Count +1
AllStuff[Count]=line
end
end
readfrom()
if Count > MaxNew then
local temp = Count - MaxNew + 1
for i=temp, Count do
Count2 = Count2 + 1
NewestStuff[Count2]=AllStuff[i]
end
else
for i=1, Count do
Count2 = Count2 + 1
NewestStuff[Count2]=AllStuff[i]
end
end
end
function ShowRel(table)
Msg = "\r\n"
if table == NewestStuff then
if Count2 == 0 then
MsgNew = "\r\n\r\n".." --------- The Latest Releases -------- \r\n\r\n No releases on the list yet\r\n\r\n --------- The Latest Releases -------- \r\n\r\n"
else
for i=1, Count2 do
s,e,type,who,when,title=strfind(NewestStuff[i], "(.+)$(.+)$(.+)$(.+)")
if title then
Msg = Msg.." "..when.." -- "..who.." -- "..type.." -- "..title.."\r\n"
else
Msg = Msg..NewestStuff[i].."\r\n"
end
end
MsgNew = "\r\n\r\n".." --------- The Latest "..MaxNew.." Releases -------- "..Msg.."\r\n --------- The Latest "..MaxNew.." Releases -------- \r\n\r\n"
end
else
if Count == 0 then
MsgAll = "\r\n\r\r\n".." --------- All The Releases -------- \r\n\r\n No releases on the list yet\r\n\r\n --------- All The Releases -------- \r\n\r\n"
else
MsgHelp = " use "..cmd2.." for a,b in Types do
MsgHelp = MsgHelp.."/"..a
end
MsgHelp = MsgHelp.."> to see only the selected types"
for i=1, Count do
s,e,type,who,when,title=strfind(AllStuff[i], "(.+)$(.+)$(.+)$(.+)")
if title then
Msg = Msg.." ID: "..i.." -- "..when.." -- "..who.." -- "..type.." -- "..title.."\r\n"
else
Msg = Msg..AllStuff[i].."\r\n"
end
end
MsgAll = "\r\n\r\r\n".." --------- All The Releases -------- "..Msg.."\r\n --------- All The Releases -------- \r\n"..MsgHelp.."\r\n"
end
end
end
function ShowRelType(what)
Msg = "\r\n"
tmp = 0
if Count == 0 then
MsgType = "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n\r\n No "..strlower(Types[what]).." yet\r\n\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
else
for i=1, Count do
s,e,type,who,when,title=strfind(AllStuff[i], "(.+)$(.+)$(.+)$(.+)")
if type == what then
tmp = tmp + 1
Msg = Msg.." "..when.." -- "..who.." -- "..title.."\r\n"
end
end
if tmp == 0 then
MsgType = "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n\r\n No "..strlower(Types[what]).." yet\r\n\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
else
MsgType= "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n"..Msg.."\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
end
end
end
function AddRel(user, what, type)
Count = Count + 1
AllStuff[Count]=(type.."$"..user.sName.."$"..date("%x").."$"..what)
user:SendData(Bot, what.." is added to the releases as "..type.."|")
SaveRel()
ReloadRel()
end
function DelRel(user, what)
if tonumber(what) then
what = tonumber(what)
if AllStuff[what] then
local s,e,which=strfind(AllStuff[what], "([^%$]+)$")
user:SendData(Bot, which.." is deleted from the releases|")
AllStuff[what]=nil
SaveRel()
ReloadRel()
else
user:SendData(Bot, what.." wasn't found in the releases|")
end
else
user:SendData(Bot, "I need the ID number to delete a release|")
end
end
function SaveRel()
writeto(file)
for i=1,Count do
if AllStuff[i] then
write(AllStuff[i].."\n")
end
end
writeto()
end
function ReloadRel()
OpenRel()
ShowRel(NewestStuff)
ShowRel(AllStuff)
end
--------------------------------------------------------------------------------
That's the script i'm using & it's works fine. All I want is 4 VIPs 2 be able 2 add 2 these lists aswell please.
QuoteOriginally posted by QuikThinker
Nah that aint the prob man. All that is sorted, i've been running that script 4 about a week now & its VERY good. But I wanted 2 know if it could be modded so VIPs could add 2 the lists aswell. U gave me a mod a couple of days ago which I tried.
It was half successfull coz it DID allow the VIPs 2 add but thats all it would do! It wouldnt let em speak, use commands, even !help! lol So i've still got a prob :s
lol sorry found that i missed a line which needed 2 be copyed as well.
here's the full modded script.
hope that works correct. lol
-- FreshStuff v.3.3
-- original idea/script by chilla
-- completely rewriten by plop
-- if you were running 3.0 then you gotta delete the old file
-- it's incompatible with this version
-- deleting now goes by id number
-- Name the commands to what U like
-- This command adds stuff, syntax : +addalbum TYPE/CATAGORY THESTUFF2ADD
cmd1 = "+addalbum"
-- This command shows the stuff, syntax : +albums with options new/game/warez/music/movie
cmd2 = "+albums"
-- This command deletes an entry, syntax : +delalbum THESTUFF2DELETE
cmd3 = "+delalbum"
-- This command shows the latest stuff, syntax : +newalbums
cmd4 = "+newalbums"
-- This command reloads the txt file. syntax : +reloadalbums
-- (this command is needed if you manualy edit the text file)
cmd5 = "+reloadalbums"
-- Show latest stuff on entry 1=yes, 0=no
ShowOnEntry = 0
-- Max stuff shown on newalbums/entry
MaxNew = 20
-- The file storing the stuff
file = "txt/AlbumsAll.txt"
-- Name of the bot
Bot = "post-it_memo"
-- you can add catagory's yourself ["trigger_name"]="catagory_name"
Types = {["movie"] = "Movies", ["music"]="Music", ["warez"]="Warez", ["game"]="Games"}
--------------------- don't change anything below here
AllStuff = {}
NewestStuff = {}
function Main()
frmHub:RegBot(Bot)
ReloadRel()
end
function NewUserConnected(user)
if ShowOnEntry == 1 then
user:SendPM(Bot, MsgNew.."|")
end
end
function OpConnected(user)
if ShowOnEntry == 1 then
user:SendPM(Bot, MsgNew.."|")
end
end
function DataArrival(user,data)
if (strsub(data, 1, 1) == "<") then
data = strsub(data,1,strlen(data)-1)
s,e,cmd,type,tune = strfind(data, "%b<>%s+(%S+)%s*(%S*)%s*(.*)")
if cmd == cmd2 then
if type == "" then
user:SendPM(Bot, MsgAll.."|")
elseif type == "new" then
user:SendPM(Bot, MsgNew.."|")
elseif Types[type] then
ShowRelType(type)
user:SendPM(Bot, MsgType.."|")
end
return 1
elseif cmd == cmd4 then
user:SendPM(Bot, MsgNew.."|")
return 1
elseif user.bOperator then
if cmd == cmd3 then
if type ~= "" then
DelRel(user, type)
else
user:SendData(Bot, "yea right, like i know what i got 2 delete when you don't tell me!|")
end
return 1
elseif cmd == cmd1 then
if tune ~= "" and Types[type] then
AddRel(user, tune, type)
elseif Types[type] == nil then
user:SendData(Bot, "I need to know the catagory to add it to!|")
else
user:SendData(Bot, "yea right, like i know what you got 2 add when you don't tell me!|")
end
return 1
elseif cmd == cmd5 then
Reload()
user:SendData(Bot, "Albums reloaded!|")
return 1
end
elseif user.iProfile == 2 then
if cmd == cmd1 then
if tune ~= "" and Types[type] then
AddRel(user, tune, type)
elseif Types[type] == nil then
user:SendData(Bot, "I need to know the catagory to add it to!|")
else
user:SendData(Bot, "yea right, like i know what you got 2 add when you don't tell me!|")
end
return 1
end
end
end
end
function OpenRel()
AllStuff = nil
NewestStuff = nil
AllStuff = {}
NewestStuff = {}
Count = 0
Count2 = 0
readfrom(file)
while 1 do
local line = read()
if ( line == nil ) then
break
else
Count = Count +1
AllStuff[Count]=line
end
end
readfrom()
if Count > MaxNew then
local temp = Count - MaxNew + 1
for i=temp, Count do
Count2 = Count2 + 1
NewestStuff[Count2]=AllStuff[i]
end
else
for i=1, Count do
Count2 = Count2 + 1
NewestStuff[Count2]=AllStuff[i]
end
end
end
function ShowRel(table)
Msg = "\r\n"
if table == NewestStuff then
if Count2 == 0 then
MsgNew = "\r\n\r\n".." --------- The Latest Releases -------- \r\n\r\n No releases on the list yet\r\n\r\n --------- The Latest Releases -------- \r\n\r\n"
else
for i=1, Count2 do
s,e,type,who,when,title=strfind(NewestStuff[i], "(.+)$(.+)$(.+)$(.+)")
if title then
Msg = Msg.." "..when.." -- "..who.." -- "..type.." -- "..title.."\r\n"
else
Msg = Msg..NewestStuff[i].."\r\n"
end
end
MsgNew = "\r\n\r\n".." --------- The Latest "..MaxNew.." Releases -------- "..Msg.."\r\n --------- The Latest "..MaxNew.." Releases -------- \r\n\r\n"
end
else
if Count == 0 then
MsgAll = "\r\n\r\r\n".." --------- All The Releases -------- \r\n\r\n No releases on the list yet\r\n\r\n --------- All The Releases -------- \r\n\r\n"
else
MsgHelp = " use "..cmd2.." for a,b in Types do
MsgHelp = MsgHelp.."/"..a
end
MsgHelp = MsgHelp.."> to see only the selected types"
for i=1, Count do
s,e,type,who,when,title=strfind(AllStuff[i], "(.+)$(.+)$(.+)$(.+)")
if title then
Msg = Msg.." ID: "..i.." -- "..when.." -- "..who.." -- "..type.." -- "..title.."\r\n"
else
Msg = Msg..AllStuff[i].."\r\n"
end
end
MsgAll = "\r\n\r\r\n".." --------- All The Releases -------- "..Msg.."\r\n --------- All The Releases -------- \r\n"..MsgHelp.."\r\n"
end
end
end
function ShowRelType(what)
Msg = "\r\n"
tmp = 0
if Count == 0 then
MsgType = "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n\r\n No "..strlower(Types[what]).." yet\r\n\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
else
for i=1, Count do
s,e,type,who,when,title=strfind(AllStuff[i], "(.+)$(.+)$(.+)$(.+)")
if type == what then
tmp = tmp + 1
Msg = Msg.." "..when.." -- "..who.." -- "..title.."\r\n"
end
end
if tmp == 0 then
MsgType = "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n\r\n No "..strlower(Types[what]).." yet\r\n\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
else
MsgType= "\r\n\r\n".." --------- All The "..Types[what].." -------- \r\n"..Msg.."\r\n --------- All The "..Types[what].." -------- \r\n\r\n"
end
end
end
function AddRel(user, what, type)
Count = Count + 1
AllStuff[Count]=(type.."$"..user.sName.."$"..date("%x").."$"..what)
user:SendData(Bot, what.." is added to the releases as "..type.."|")
SaveRel()
ReloadRel()
end
function DelRel(user, what)
if tonumber(what) then
what = tonumber(what)
if AllStuff[what] then
local s,e,which=strfind(AllStuff[what], "([^%$]+)$")
user:SendData(Bot, which.." is deleted from the releases|")
AllStuff[what]=nil
SaveRel()
ReloadRel()
else
user:SendData(Bot, what.." wasn't found in the releases|")
end
else
user:SendData(Bot, "I need the ID number to delete a releas|")
end
end
function SaveRel()
writeto(file)
for i=1,Count do
if AllStuff[i] then
write(AllStuff[i].."\n")
end
end
writeto()
end
function ReloadRel()
OpenRel()
ShowRel(NewestStuff)
ShowRel(AllStuff)
end
function DelRelOld(user, what)
Okie = nil
for a,b in AllStuff do
s,e,title=strfind(b, ".+$(.+)$")
if title == what then
AllStuff[a]=nil
user:SendData(Bot, what.." is removed from the releases|")
Okie = 1
break
end
end
if Okie then
SaveRel()
ReloadRel()
else
user:SendData(Bot, what.." wasn't found in the releases|")
end
end
plop
EXCELLENT! Top man! I'll recommend u 4 a knighthood :D
Peace,
Quik.
QuoteOriginally posted by QuikThinker
EXCELLENT! Top man! I'll recommend u 4 a knighthood :D
Peace,
Quik.
i'm honored. lol
would become sir plop then.
plop
Sir Plop I have got one last mod to ask of u if possible? That script is working fine still (very satisfied customer) but I would like to know if it is possible so that once you've added a new release, the BOT automatically then runs the !banner command to say this "NEW RELEASE ADDED: ".
It sounds simple enuff and i'm very sure it's easily done?
Thanx again in advance,
Quik.
replace the function in the script for this 1.
function AddRel(user, what, type)
Count = Count + 1
AllStuff[Count]=(type.."$"..user.sName.."$"..date("%x").."$"..what)
user:SendData(Bot, what.." is added to the releases as "..type.."|")
local msg = "************************************************\r\n"
..what.." is added to the releases as "..type.."|"..
"\r\n************************************************\r\n|"
SendToAll(Bot, msg)
SaveRel()
ReloadRel()
end
plop
edited : )) ups, i mede modyfikaton myslef : P :D