Logout players when their user account is removed

This commit is contained in:
Enerdy 2018-10-15 14:33:32 +01:00
parent ce6dc577cb
commit f5ccf925bd

View file

@ -95,13 +95,17 @@ namespace TShockAPI.DB
{
try
{
var tempuser = GetUserAccount(account);
// Logout any player logged in as the account to be removed
TShock.Players.Where(p => p?.IsLoggedIn == true && p.Account.Name == account.Name).ForEach(p => p.Logout());
UserAccount tempuser = GetUserAccount(account);
int affected = _database.Query("DELETE FROM Users WHERE Username=@0", account.Name);
if (affected < 1)
throw new UserAccountNotExistException(account.Name);
Hooks.AccountHooks.OnAccountDelete(tempuser);
}
catch (Exception ex)
{