For my game, I am trying to make an admin command. Specifically, a command that can change anybody's speed. For now, FE is disabled to see if that was what was causing the script to not work. I tried following this this guide and either I didn't follow it correctly or it's outdated in which I doubt.
Code:
local Admins = {
"TheOriginalJackie58";
"BennyBoiOriginal";
}
local function IsAdmin(Player)
for _,Admin in pairs (Admins) do
print(Admin,Player)
if type(Admin) == "string" and string.lower(Admin) == string.lower(Player.Name) then
return true
end
end
return false
end
local function getPlayerFromName(name)
for _, player in pairs(game:GetService("Players"):GetPlayers()) do
if player.Name:lower() == name:lower() then
return player
end
end
end
local function increasePlrSpeed(target, speed)
if target.Character.Humanoid.Heath == 0 then return false end
target.Character.Humanoid.WalkSpeed = speed
return true
end
local function Run(ChatService)
local function processMessage(speakerName, messageObject, channelName)
local messageText = messageObject.Message
local isACommand = string.find(messageText, ";speed")
if not isACommand then return false end
local speaker = ChatService:GetSpeaker(speakerName)
local speakerplr = speaker:GetPlayer()
if not IsAdmin(speakerplr) then return false end
local Arguments = {}
for Argument in string.gmatch(messageText,"[^%s]+") do
table.insert(Arguments,Argument)
end
table.remove(Arguments,1)
local target = Arguments[1] -- Getting the first argument which is the player name
local targetplr = getPlayerFromName(target) -- Getting the target player from a string
local success = increasePlrSpeed(targetplr, Arguments[2]) -- calling the speed function with parameters targetplr and desired speed
return success
end
ChatService:RegisterProcessCommandsFunction("speed_command", processMessage)
end
return Run

2 comments
Which part doesn't work?
When I type the command it chat it doesn't do anything and the message gets sent to the server instead if getting blocked.