From f0fa9fe7d8f4e8b7dd0b068cf0b4999e8a0ce719 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sun, 29 May 2022 20:50:25 -0400 Subject: [PATCH] Don't count character pending deletion towards character per account limit Port From (https://github.com/TrinityCore/TrinityCore/commit/6b8d03d71e5511d0f2012eec3d11e578d03c2d0f) --- Source/Framework/Database/Databases/CharacterDatabase.cs | 2 +- Source/Game/Handlers/CharacterHandler.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Framework/Database/Databases/CharacterDatabase.cs b/Source/Framework/Database/Databases/CharacterDatabase.cs index 257408e9a..79ed7113f 100644 --- a/Source/Framework/Database/Databases/CharacterDatabase.cs +++ b/Source/Framework/Database/Databases/CharacterDatabase.cs @@ -35,7 +35,7 @@ namespace Framework.Database PrepareStatement(CharStatements.DEL_EXPIRED_BANS, "UPDATE character_banned SET active = 0 WHERE unbandate <= UNIX_TIMESTAMP() AND unbandate <> bandate"); PrepareStatement(CharStatements.SEL_CHECK_NAME, "SELECT 1 FROM characters WHERE name = ?"); PrepareStatement(CharStatements.SEL_CHECK_GUID, "SELECT 1 FROM characters WHERE guid = ?"); - PrepareStatement(CharStatements.SEL_SUM_CHARS, "SELECT COUNT(guid) FROM characters WHERE account = ?"); + PrepareStatement(CharStatements.SEL_SUM_CHARS, "SELECT COUNT(guid) FROM characters WHERE account = ? AND deleteDate IS NULL"); PrepareStatement(CharStatements.SEL_CHAR_CREATE_INFO, "SELECT level, race, class FROM characters WHERE account = ? LIMIT 0, ?"); PrepareStatement(CharStatements.INS_CHARACTER_BAN, "INSERT INTO character_banned (guid, bandate, unbandate, bannedby, banreason, active) VALUES (?, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()+?, ?, ?, 1)"); PrepareStatement(CharStatements.UPD_CHARACTER_BAN, "UPDATE character_banned SET active = 0 WHERE guid = ? AND active != 0"); diff --git a/Source/Game/Handlers/CharacterHandler.cs b/Source/Game/Handlers/CharacterHandler.cs index 64dc6a1f2..a5e047da6 100644 --- a/Source/Game/Handlers/CharacterHandler.cs +++ b/Source/Game/Handlers/CharacterHandler.cs @@ -120,7 +120,7 @@ namespace Game charResult.Characters.Add(charInfo); } - while (result.NextRow()); + while (result.NextRow() && charResult.Characters.Count < 200); } charResult.IsAlliedRacesCreationAllowed = CanAccessAlliedRaces();