diff --git a/DBEditor/CommandList.cs b/DBEditor/CommandList.cs index 4b47951a..e1c24f64 100644 --- a/DBEditor/CommandList.cs +++ b/DBEditor/CommandList.cs @@ -43,6 +43,13 @@ namespace TShockDBEditor CommandList.Add("immunetokick"); CommandList.Add("immunetoban"); CommandList.Add("usebanneditem"); + + CommandList.Add("canregister"); + CommandList.Add("canlogin"); + CommandList.Add("canchangepassword"); + CommandList.Add("canpartychat"); + CommandList.Add("cantalkinthird"); + CommandList.Add("candisplayplaying"); foreach (string command in CommandList) { diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index 9c4dccd3..b804d71b 100644 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -167,20 +167,20 @@ namespace TShockAPI add(Permissions.manageregion, Region, "region"); add(Permissions.manageregion, DebugRegions, "debugreg"); add(null, Help, "help"); - add(null, Playing, "playing", "online", "who"); + add(Permissions.candisplayplaying, Playing, "playing", "online", "who"); add(null, AuthToken, "auth"); - add(null, ThirdPerson, "me"); - add(null, PartyChat, "p"); + add(Permissions.cantalkinthird, ThirdPerson, "me"); + add(Permissions.canpartychat, PartyChat, "p"); add(null, Motd, "motd"); add(null, Rules, "rules"); add(Permissions.mute, Mute, "mute", "unmute"); add(Permissions.logs, DisplayLogs, "displaylogs"); - ChatCommands.Add(new Command(PasswordUser, "password") { DoLog = false }); - ChatCommands.Add(new Command(RegisterUser, "register") { DoLog = false }); + ChatCommands.Add(new Command(Permissions.canchangepassword, PasswordUser, "password") { DoLog = false }); + ChatCommands.Add(new Command(Permissions.canregister, RegisterUser, "register") { DoLog = false }); ChatCommands.Add(new Command(Permissions.rootonly, ManageUsers, "user") { DoLog = false }); add(Permissions.rootonly, GrabUserUserInfo, "userinfo", "ui"); add(Permissions.rootonly, AuthVerify, "auth-verify"); - ChatCommands.Add(new Command(AttemptLogin, "login") { DoLog = false }); + ChatCommands.Add(new Command(Permissions.canlogin, AttemptLogin, "login") { DoLog = false }); add(Permissions.cfg, Broadcast, "broadcast", "bc"); add(Permissions.whisper, Whisper, "whisper", "w", "tell"); add(Permissions.whisper, Reply, "reply", "r"); diff --git a/TShockAPI/DB/GroupManager.cs b/TShockAPI/DB/GroupManager.cs index 11898003..0dc508d0 100644 --- a/TShockAPI/DB/GroupManager.cs +++ b/TShockAPI/DB/GroupManager.cs @@ -29,7 +29,7 @@ namespace TShockAPI.DB creator.EnsureExists(table); //Add default groups - AddGroup("default", "warp,canbuild"); + AddGroup("default", "warp,canbuild,canregister,canlogin,canchangepassword,canpartychat,cantalkinthird,candisplayplaying"); AddGroup("newadmin", "default", "kick,editspawn,reservedslot"); AddGroup("admin", "newadmin", "ban,unban,whitelist,causeevents,spawnboss,spawnmob,managewarp,time,tp,pvpfun,kill,logs,immunetokick,tphere"); AddGroup("trustedadmin", "admin", "maintenance,cfg,butcher,item,heal,immunetoban,usebanneditem,manageusers"); diff --git a/TShockAPI/Permissions.cs b/TShockAPI/Permissions.cs index 48f4d2eb..0b2f071b 100644 --- a/TShockAPI/Permissions.cs +++ b/TShockAPI/Permissions.cs @@ -151,6 +151,25 @@ namespace TShockAPI [Description("User can mute and unmute users")] public static readonly string mute; + + [Description("User can register account in game")] + public static readonly string canregister; + + [Description("User can login in game")] + public static readonly string canlogin; + + [Description("User can change password in game")] + public static readonly string canchangepassword; + + [Description("User can use party chat in game")] + public static readonly string canpartychat; + + [Description("User can talk in third person")] + public static readonly string cantalkinthird; + + [Description("User can see who plays on server")] + public static readonly string candisplayplaying; + static Permissions() {