From f3600671985d39735b31dcbfc505ab4d4c96f5c9 Mon Sep 17 00:00:00 2001 From: Zidonuke Date: Thu, 29 Dec 2011 01:56:18 -0500 Subject: [PATCH] Request for Erik --- TShockAPI/Commands.cs | 39 +++++++++++++++++++++++---------------- TShockAPI/ConfigFile.cs | 3 +++ 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index 00c67b95..bd8d9df9 100644 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -427,30 +427,37 @@ namespace TShockAPI { try { + var user = new User(); + if (args.Parameters.Count == 1) { - var user = new User(); user.Name = args.Player.Name; user.Password = args.Parameters[0]; - user.Group = TShock.Config.DefaultRegistrationGroupName; // FIXME -- we should get this from the DB. - - if (TShock.Users.GetUserByName(user.Name) == null) // Cheap way of checking for existance of a user - { - args.Player.SendMessage("Account " + user.Name + " has been registered.", Color.Green); - args.Player.SendMessage("Your password is " + user.Password); - TShock.Users.AddUser(user); - Log.ConsoleInfo(args.Player.Name + " registered an Account: " + user.Name); - } - else - { - args.Player.SendMessage("Account " + user.Name + " has already been registered.", Color.Green); - Log.ConsoleInfo(args.Player.Name + " failed to register an existing Account: " + user.Name); - } - + } + else if (args.Parameters.Count == 2 && TShock.Config.AllowRegisterAnyUsername) + { + user.Name = args.Parameters[0]; + user.Password = args.Parameters[1]; } else { args.Player.SendMessage("Invalid syntax! Proper syntax: /register ", Color.Red); + return; + } + + user.Group = TShock.Config.DefaultRegistrationGroupName; // FIXME -- we should get this from the DB. + + if (TShock.Users.GetUserByName(user.Name) == null) // Cheap way of checking for existance of a user + { + args.Player.SendMessage("Account " + user.Name + " has been registered.", Color.Green); + args.Player.SendMessage("Your password is " + user.Password); + TShock.Users.AddUser(user); + Log.ConsoleInfo(args.Player.Name + " registered an Account: " + user.Name); + } + else + { + args.Player.SendMessage("Account " + user.Name + " has already been registered.", Color.Green); + Log.ConsoleInfo(args.Player.Name + " failed to register an existing Account: " + user.Name); } } catch (UserManagerException ex) diff --git a/TShockAPI/ConfigFile.cs b/TShockAPI/ConfigFile.cs index 3bff7bb4..3294352c 100644 --- a/TShockAPI/ConfigFile.cs +++ b/TShockAPI/ConfigFile.cs @@ -221,6 +221,9 @@ namespace TShockAPI [Description("Disable users from being able to login with account password when joining")] public bool DisableLoginBeforeJoin = false; + + [Description("Allows users to register any username with /register")] + public bool AllowRegisterAnyUsername = false; public static ConfigFile Read(string path) {