hi everyone. i’m currently in the process of scripting a cafe game, and was wondering how i can make a plugin that connects to basic admin essentials where if a player thats a certain rank (junior barista+) can say !help/!support or something like that and it will call for an admin thats in the game, and if theres no admin, it will notify them as so.
I have seen a lot of people attempt to achieve this; however, none of them has been successful from what I’ve seen so far. The reason being that you have to fork the main module which can be really complicated since you need to add a whole chunk of code and also edit the essentials code.
If you know how to utilize remote events, then I highly suggest make your own system instead of trying to connect it to Basic Admin Essentials.
actually i have a question. i’m gonna use the example plugin and make it have the same command as another support command i’m using
anyway, do u know how to make it so when i say !support i dont have to say !support me?
would really appreciate ur help, heres my script if your able to assist.
--[[
____
/\ _`\ __
\ \ \L\ \ __ ____/\_\ ___
\ \ _ <' /'__`\ /',__\/\ \ /'___\
\ \ \L\ \/\ \L\.\_/\__, `\ \ \/\ \__/
\ \____/\ \__/.\_\/\____/\ \_\ \____\
\/___/ \/__/\/_/\/___/ \/_/\/____/
Admin Essentials v2
Plugin Documentation
*coming soon^tm
If you have any questions regarding Plugins, contact TheFurryFish.
--]]
local Plugin = function(...)
local Data = {...}
-- Included Functions and Info --
local remoteEvent = Data[1][1]
local remoteFunction = Data[1][2]
local returnPermissions = Data[1][3]
local Commands = Data[1][4]
local Prefix = Data[1][5]
local actionPrefix = Data[1][6]
local returnPlayers = Data[1][7]
local cleanData = Data[1][8] -- cleanData(Sender,Receiver,Data)
-- Practical example, for a gui specifically for a player, from another player
-- cleanData(Sender,Receiver,"hi") -- You need receiver because it's being sent to everyone
-- Or for a broadcast (something everyone sees, from one person, to nobody specific)
-- cleanData(Sender,nil,"hi") -- Receiver is nil because it is a broadcast
-- Plugin Configuration --
local pluginName = 'support'
local pluginPrefix = actionPrefix
local pluginLevel = 1
local pluginUsage = "" -- leave blank if the command has no arguments
local pluginDescription = "Call for an admins support."
-- Example Plugin Function --
local function pluginFunction(Args) -- keep the name of the function as "pluginFunction"
local Player = Args[1]
if Args[3] then
local Victims = returnPlayers(Player, Args[3]) if not Victims then return end
local combinedVictims = ''
for a,b in pairs(Victims) do
if combinedVictims == '' then
combinedVictims = b.Name
else
combinedVictims = combinedVictims..', '..b.Name
end
end
for a,b in next,Victims do
remoteEvent:FireClient(b,'Notif','Mocha Administration','Secuessfully called for support.',{'Message','Results',combinedVictims})
end
end
end
-- Return Everything to the MainModule --
local descToReturn
if pluginUsage ~= "" then
descToReturn = pluginPrefix..pluginName..' '..pluginUsage..'\n'..pluginDescription
else
descToReturn = pluginPrefix..pluginName..'\n'..pluginDescription
end
return pluginName,pluginFunction,pluginLevel,pluginPrefix,{pluginName,pluginUsage,pluginDescription}
end
return Plugin
local CMDS = {
["!help"] = function(Player:Player?)
if Player:GetRankInGroup(YOURGOURPID) >= BARISTARANKPLACEMENT then
-- do stuff
end
end,
}
game:GetService("Players").PlayerAdded:Connect(function(Player)
Player.Chatted:Connect(function(Message)
local Command = Message:lower():split(" ")
if Whitelist[Command[1]] == true then
Reason = Command
CMDS[Command[1]](Player)
end
end)
end)
Sorry for the delayed response, I noticed that someone already replied but if you still want the basic admin plugin version, you need to replace:
local Player = Args[1]
if Args[3] then
local Victims = returnPlayers(Player, Args[3]) if not Victims then return end
local combinedVictims = ''
for a,b in pairs(Victims) do
if combinedVictims == '' then
combinedVictims = b.Name
else
combinedVictims = combinedVictims..', '..b.Name
end
end
for a,b in next,Victims do
remoteEvent:FireClient(b,'Notif','Mocha Administration','Secuessfully called for support.',{'Message','Results',combinedVictims})
end
end
with
remoteEvent:FireClient(Player,'Notif','Mocha Administration','Successfully called for support.',{'Message','Results',combinedVictims})```
hey there im sorry, i completely forgot to mark it as solved. I switched to another admin system thats slightly easier to use (atleast for me) since basic admin also hasn’t been updated since 2019/2020. thanks for responding though!