XrAaz

Command Handler

Oct 7th, 2020 (edited)
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.02 KB | None | 0 0
  1. Players = game:GetService("Players")
  2. LocalPlayer = Players.LocalPlayer
  3.  
  4. local Commands = {}
  5. local Settings = {['Prefix'] = ";"}
  6.  
  7. local function AddCmd(CmdName, Aliases, Desc, Func)
  8.     Commands[#Commands + 1] = {["Name"] = CmdName, ['Other'] = Aliases, ["Description"] = Desc, ["Function"] = Func}
  9.     addCmdtolist(CmdName, Aliases, Desc)
  10. end
  11.  
  12. local function Search(CmdName)
  13.     for _, v in next, Commands do
  14.         if v.Name == CmdName or table.find(v.Other, CmdName) then
  15.             return v.Function
  16.         end
  17.     end
  18. end
  19.  
  20. local function CheckCmd(Cmd)
  21.     if Cmd ~= "" and Cmd ~= Settings.Prefix and Cmd ~= " " then else return end
  22.     Cmd = string.lower(Cmd)
  23.     if Cmd:sub(1, #Settings.Prefix) == Settings.Prefix then
  24.         local Args = string.split(Cmd:sub(#Settings.Prefix + 1), " ")
  25.         local CmdName = Search(table.remove(Args, 1))
  26.         if CmdName and Args then
  27.             return CmdName(Args)
  28.         end
  29.     end
  30. end
  31.  
  32. LocalPlayer.Chatted:Connect(function(msg)
  33.     CheckCmd(msg)
  34. end)
Add Comment
Please, Sign In to add comment