diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index 2282e038..7c547a05 100755 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -793,12 +793,20 @@ namespace TShockAPI var group = TShock.Utils.GetGroup(user.Group); + args.Player.Group = group; + args.Player.tempGroup = null; + args.Player.User = user; + args.Player.IsLoggedIn = true; + args.Player.IgnoreActionsForInventory = "none"; + if (Main.ServerSideCharacter) { if (args.Player.HasPermission(Permissions.bypassssc)) { - args.Player.PlayerData.RestoreCharacter(args.Player); + args.Player.PlayerData.CopyCharacter(args.Player); + TShock.CharacterDB.InsertPlayerData(args.Player); } + args.Player.PlayerData.RestoreCharacter(args.Player); } args.Player.LoginFailsBySsi = false; @@ -808,17 +816,6 @@ namespace TShockAPI if (args.Player.HasPermission(Permissions.usebanneditem)) args.Player.IgnoreActionsForDisabledArmor = "none"; - args.Player.Group = group; - args.Player.tempGroup = null; - args.Player.User = user; - args.Player.IsLoggedIn = true; - args.Player.IgnoreActionsForInventory = "none"; - - if (!args.Player.IgnoreActionsForClearingTrashCan && Main.ServerSideCharacter) - { - args.Player.PlayerData.CopyCharacter(args.Player); - TShock.CharacterDB.InsertPlayerData(args.Player); - } args.Player.SendSuccessMessage("Authenticated as " + user.Name + " successfully."); TShock.Log.ConsoleInfo(args.Player.Name + " authenticated successfully as user: " + user.Name + "."); diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index f7448b65..be1a5313 100755 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -1476,12 +1476,20 @@ namespace TShockAPI var group = TShock.Utils.GetGroup(user.Group); + args.Player.Group = group; + args.Player.tempGroup = null; + args.Player.User = user; + args.Player.IsLoggedIn = true; + args.Player.IgnoreActionsForInventory = "none"; + if (Main.ServerSideCharacter) { if (args.Player.HasPermission(Permissions.bypassssc)) { - args.Player.PlayerData.RestoreCharacter(args.Player); + args.Player.PlayerData.CopyCharacter(args.Player); + TShock.CharacterDB.InsertPlayerData(args.Player); } + args.Player.PlayerData.RestoreCharacter(args.Player); } args.Player.LoginFailsBySsi = false; @@ -1491,17 +1499,6 @@ namespace TShockAPI if (args.Player.HasPermission(Permissions.usebanneditem)) args.Player.IgnoreActionsForDisabledArmor = "none"; - args.Player.Group = group; - args.Player.tempGroup = null; - args.Player.User = user; - args.Player.IsLoggedIn = true; - args.Player.IgnoreActionsForInventory = "none"; - - if (!args.Player.IgnoreActionsForClearingTrashCan && Main.ServerSideCharacter) - { - args.Player.PlayerData.CopyCharacter(args.Player); - TShock.CharacterDB.InsertPlayerData(args.Player); - } args.Player.SendSuccessMessage("Authenticated as " + user.Name + " successfully."); TShock.Log.ConsoleInfo(args.Player.Name + " authenticated successfully as user " + args.Player.Name + "."); Hooks.PlayerHooks.OnPlayerPostLogin(args.Player); @@ -1551,12 +1548,20 @@ namespace TShockAPI var group = TShock.Utils.GetGroup(user.Group); + args.Player.Group = group; + args.Player.tempGroup = null; + args.Player.User = user; + args.Player.IsLoggedIn = true; + args.Player.IgnoreActionsForInventory = "none"; + if (Main.ServerSideCharacter) { if (args.Player.HasPermission(Permissions.bypassssc)) { - args.Player.PlayerData.RestoreCharacter(args.Player); + args.Player.PlayerData.CopyCharacter(args.Player); + TShock.CharacterDB.InsertPlayerData(args.Player); } + args.Player.PlayerData.RestoreCharacter(args.Player); } args.Player.LoginFailsBySsi = false; @@ -1566,17 +1571,7 @@ namespace TShockAPI if (args.Player.HasPermission(Permissions.usebanneditem)) args.Player.IgnoreActionsForDisabledArmor = "none"; - args.Player.Group = group; - args.Player.tempGroup = null; - args.Player.User = user; - args.Player.IsLoggedIn = true; - args.Player.IgnoreActionsForInventory = "none"; - if (!args.Player.IgnoreActionsForClearingTrashCan && Main.ServerSideCharacter) - { - args.Player.PlayerData.CopyCharacter(args.Player); - TShock.CharacterDB.InsertPlayerData(args.Player); - } args.Player.SendMessage("Authenticated as " + args.Player.Name + " successfully.", Color.LimeGreen); TShock.Log.ConsoleInfo(args.Player.Name + " authenticated successfully as user " + args.Player.Name + "."); TShock.Users.SetUserUUID(user, args.Player.UUID);