PtokaX forum

Archive => Archived 5.1 boards => Help with scripts => Topic started by: Plagued Elohim on 22 April, 2007, 05:25:37

Title: Pls help with this one too...
Post by: Plagued Elohim on 22 April, 2007, 05:25:37
Hi there, again :) I have found this right click script:
--[[

PxCommands 1.0b LUA 5.0/5.1

By Mutor        03/07/06

-Sends Inbuilt PtokaX User Commands (per profile permissions)
-Allows for default custom / commands

+Changes from 1.0       03/07/06
        +Sends custom commands (per profile)

]]--

CmdCfg = {
--Command Menu Name
Menu = frmHub:GetHubName() or "User Commands",
--Botname
Bot = frmHub:GetHubBotName() or "Command_Bot",
--Register the bot? [show in user list]
RegBot = "yes",
--If registering, does bot have a key?
BotIsOp = 1,
--Bot description
BotDesc = "I send user commands",
--Bot Email address
BotMail = "user@domain.com",
}

Main = function()
if CmdCfg.RegBot == "yes" then
if CmdCfg.Bot ~= frmHub:GetHubBotName() or
CmdCfg.Bot == frmHub:GetHubBotName() and not frmHub:GetHubBot() then
frmHub:RegBot(CmdCfg.Bot, CmdCfg.BotIsOp, CmdCfg.BotDesc, CmdCfg.BotMail)
end
end
end

function NewUserConnected(user)
DefaultCmds(user)
if user.iProfile ~= -1 then
SendCmds(user)
end
user:SendData(CmdCfg.Bot,"Bine ati venit pe HUB-ul Volvo.V? multumim c? sunteti al?turi de noi si v? dorim o zi placut?                     is kicking because: ")
end
OpConnected = NewUserConnected

DefaultCmds = function(user)
local Menu = CmdCfg.Menu
--//-- Add your custom/default commands here
--//-- Index = {
--//--          [0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
--//-- [#] = {"!command", "args", "Command Description", "Submenu", *Context},
--//--          },
--//--
--//-- Key [0] contains user profiles, use =1 to enable that profile, =0 to disable
--//-- *Context
--//-- 1=Hub Menu 2=User Menu 3=Hub/User Menu 4 = File[Search] 5 = Hub/File 6 = User/File 7 = Hub/User/File
local Default = {
help = {
[0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
[1] = {"!help", "", "Comenzi", "General",3,},
},
me = {
[0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
[1] = {"!me", " %[line:Say What?]", "Sa vorbesti la persoana a 3-a", "General",3},
},
myip = {
[0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
[1] = {"!myip", "", "Ip-ul tau", "General",3},
},
pwd = {
[0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
[1] = {"!passwd", " %[line:New Password]", "Schimba-ti parola", "General",3},
},
stats = {
[0] = {[-1]=1,[0]=1,[1]=1,[2]=1,[3]=1},
[1] = {"!stat", "", "Statisticile hub-ului", "General",3},
},
}
for i,v in pairs(Default) do
local profiles = v[0]
if profiles[user.iProfile] and profiles[user.iProfile] == 1 then
for a,b in pairs(v) do
if a > 0 then
user:SendData("$UserCommand 1 "..b[5].." "..Menu.."\\"..
b[4].."\\"..b[3].." $<%[mynick]> "..b[1]..b[2].."&#124;")
end
end
end
end
collectgarbage()
end

SendCmds = function(user)
local Menu = CmdCfg.Menu
local Cmds = GetProfilePermissions(user.iProfile)
local Commands = {
bTempUnban = {
[1] = {"!tempunban", " %[line:Nick Or IP To unban]", "Temp Unban Nick/IP", "Check/Clear/Display",3},
},
bGetInfo = {
[1] = {"!getinfo", " %[nick]", "Info User", "Info",2},
},
bGag = {
[1] = {"!gag", " %[line:Nick To Gag]", "Gag user", "Gag",1},
[2] = {"!gag", " %[nick]", "Gag user", "Gag",2},
[3] = {"!ungag", " %[line:Nick To Ungag]", "UNgag user", "Gag",1},
[4] = {"!ungag", " %[nick]", "UNgag user", "Gag",2}
},
bGetBans = {
[1] = {"!getbans", "", "Display Bans", "Check/Clear/Display",3},
[2] = {"!getpermbans", "", "Display Perm Bans", "Check/Clear/Display",3},
[3] = {"!gettempbans", "", "Display Temp Bans", "Check/Clear/Display",3},
[4] = {"!checknickban", " %[line:Check This Nick]", "Check Nick For Ban", "Check/Clear/Display",3},
[5] = {"!checkipban", " %[line:Check This IP]", "Check IP For Ban", "Check/Clear/Display",3},
},
bMassMsg = {
[1] = {"!massmsg", " %[line:Mass Message]", "Send A MASS To All Users", "MASS",3},
[2] = {"!opmassmsg", " %[line:Mass Message to OP]", "Send A MASS To All Ops", "MASS",3},
},
bClearRangeTempBans = {
[1] = {"!clrrangetempbans", "", "Clear Temp Range Bans", "Check/Clear/Display",3},
},
bRangeUnban = {
[1] = {"!rangeunban", " %[line:Start Of IP Range] %[line:End Of IP Range]", "Unban An IP Range", "Check/Clear/Display",3},
},
bTopic = {
[1] = {"!topic", " %[line:Topic (Leave Empty To Clear Topic)]", "Set/Change/Clear Topic", "Topic",3},
},
bTempBan = {
[1] = {"!tempban", " %[nick] %[line:Time To Ban - m=mins,h=hours,d=days,w=weeks] %[line:Reason For Ban]", "Temp Ban User", "Ban/Temp Ban/Kick",2},
[2] = {"!nicktempban", " %[nick] %[line:Time To Ban - m=mins,h=hours,d=days,w=weeks] %[line:Reason For Ban]", "Temp Ban Nick", "Ban/Temp Ban/Kick",2},
[3] = {"!tempbanip", " %[ip] %[line:Time To Ban - m=mins,h=hours,d=days,w=weeks] %[line:Reason For Ban]", "Temp Ban IP", "Ban/Temp Ban/Kick",2},
[4] = {"!fulltempban", " %[nick] %[line:Time To Ban - m=mins,h=hours,d=days,w=weeks] %[line:Reason For Ban]", "Full Temp Ban Nick", "Ban/Temp Ban/Kick",2},
[5] = {"!fulltempbanip", " %[ip] %[line:Time To Ban - m=mins,h=hours,d=days,w=weeks] %[line:Reason For Ban]", "Full Temp Ban IP", "Ban/Temp Ban/Kick",2},
},
bRangeTempBan = {
[1] = {"!rangetempban", " %[line:Start Of IP Range] %[line:End Of IP Range] %[line:Time For Ban] %[line:Reason For Ban]", "Temp Ban An IP Range", "Ban/Temp Ban/Kick",3},
[2] = {"!fullrangetempban", " %[line:Start Of IP Range] %[line:End Of IP Range] %[line:Time For Ban] %[line:Reason For Ban]", "Full Temp Ban An IP Range", "Ban/Temp Ban/Kick",3},
},
bTempOP = {
[1] = {"!op", " %[line:Nick]", "Give Temp OP", "Reg",1},
[2] = {"!op", " %[nick]", "Give Temp OP", "Temp OP",2},
},
bAddRegUser = {
[1] = {"!addreguser", " %[line: Nick To Register] %[line:Password For Nick] %[line:Profile (Reg/VIP/Op/Master)]", "Reg A User", "Reg",1},
[2] = {"!addreguser", " %[line: Nick To Register] %[line:Password For Nick] %[line:Profile (Reg/VIP/Op/Master)]", "Reg A User", "Reg",2},
},
bUnban = {
[1] = {"!unban", " %[line:Nick or IP to Unban]", "Unban Nick/IP", "Check/Clear/Display",3},
[2] = {"!permunban", " %[line:Nick or IP to Unban]", "Perm Unban Nick/IP", "Check/Clear/Display",3},
},
bClrPermBan = {
[1] = {"!clrpermbans", "", "Clear Perm Bans", "Check/Clear/Display",3},
},
bRangeTempUnban = {
[1] = {"!rangetempunban", " %[line:Start Of IP Range] %[line:End Of IP Range] %[line:Time For Ban] %[line:Reason For Ban]", "Unban Temp IP Range Ban", "Check/Clear/Display",3},
},
bDelRegUser = {
[1] = {"!delreguser", " %[line:Nick To Delete]", "Del A Reg User ", "Reg",1},
[2] = {"!delreguser", " %[line:Nick To Delete]", "Del A Reg User ", "Reg",2},
},
bClearRangePermBans = {
[1] = {"!clrrangepermbans", "", "Clear Perm Range Bans", "Check/Clear/Display",3},
},
bRangeBan = {
[1] = {"!rangeban", " %[line:Start Of IP Range] %[line:End Of IP Range] %[line:Reason For Ban]", "Perm Ban An IP Range", "Ban/Temp Ban/Kick",3},
},
bGetRangeBans = {
[1] = {"!getrangebans", "", "Display Banned IP Ranges", "Check/Clear/Display",3},
[2] = {"!getrangepermbans", "", "Display Perm Banned IP Ranges", "Check/Clear/Display",3},
[3] = {"!getrangetempbans", "", "Display Temp Banned IP Ranges", "Check/Clear/Display",3},
[4] = {"!checkrangeban", " %[line:Start Of IP Range] %[line:End Of IP Range]", "Check Bans For This IP Range", "Check/Clear/Display",3},
},
bDrop = {
[1] = {"!drop", " %[nick] %[line:Reason For Drop]", "Drop", "Ban/Temp Ban/Kick",2},
},
bKick = {
[1] = {"!kick", " %[nick] %[line:Reason For Kick]", "Kick", "Ban/Temp Ban/Kick",2},
},
bBan = {
[1] = {"!nickban", " %[nick] %[line:Reason For Ban]", "Ban Nick", "Ban/Temp Ban/Kick",3},
},
bClrTempBan = {
[1] = {"!clrtempbans", "", "Clear Temp Bans", "Check/Clear/Display",3},
},
}
for i,v in pairs(Commands) do
if Cmds[i] == 1 then
for a,b in pairs(v) do
user:SendData("$UserCommand 1 "..b[5].." "..Menu.."\\"..b[4].."\\"..b[3].." $<%[mynick]> "..b[1]..b[2].."&#124;")
end
end
end
end

Could somebody add some extra commands, please? I don't think the !command works... this is what I want:
QuoteCLS:   ClearMain
      !cls

Clones:   CloneHelp
      !clonehelp
   SeeClones
      !clone
   AddClone
      +clone <nick>
   RemClone
      -clone <nick>

Hide:   Hide You
      !hidebot
      !unhidebot

   HideShare
      !hideshare
      !unhideshare

Mainchat: ON/OFF
      !mainchat <on/off>

Info:   Info IP
      !ipinfo <ip>
Thank you
Title: Re: Pls help with this one too...
Post by: Tw?sT?d-d?v on 22 April, 2007, 09:44:45
Try this     not fully tested but cmds appear in rightclicker
Title: Re: Pls help with this one too...
Post by: Plagued Elohim on 22 April, 2007, 13:22:28
the script u made is not quite 100% freebug but I have made it just how I like it. I thank you, twisted devil :) ;)