aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfunjoker <funjoker109@gmail.com>2020-05-17 23:39:17 +0200
committerGitHub <noreply@github.com>2020-05-17 23:39:17 +0200
commit4055434ba6260e528c877023faebf87ba2c81a42 (patch)
tree253b53b838959ae465f317678c0091339767ec63
parentce10a9482af00dd316d9866fd9bed2934c9db191 (diff)
Core/Misc: Unify handling CharacterCreating.Disabled.RaceMask with other racemask fields (#24604)
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp
index 355a3078b30..8117c76f5e6 100644
--- a/src/server/game/Handlers/CharacterHandler.cpp
+++ b/src/server/game/Handlers/CharacterHandler.cpp
@@ -539,8 +539,8 @@ void WorldSession::HandleCharCreateOpcode(WorldPackets::Character::CreateCharact
if (!HasPermission(rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RACEMASK))
{
- uint64 raceMaskDisabled = sWorld->GetUInt64Config(CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK);
- if ((UI64LIT(1) << (charCreate.CreateInfo->Race - 1)) & raceMaskDisabled)
+ Trinity::RaceMask<uint64> raceMaskDisabled{ sWorld->GetUInt64Config(CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK) };
+ if (raceMaskDisabled.HasRace(charCreate.CreateInfo->Race))
{
SendCharCreate(CHAR_CREATE_DISABLED);
return;
@@ -1893,8 +1893,8 @@ void WorldSession::HandleCharRaceOrFactionChangeCallback(std::shared_ptr<WorldPa
if (!HasPermission(rbac::RBAC_PERM_SKIP_CHECK_CHARACTER_CREATION_RACEMASK))
{
- uint64 raceMaskDisabled = sWorld->GetUInt64Config(CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK);
- if ((UI64LIT(1) << (factionChangeInfo->RaceID - 1)) & raceMaskDisabled)
+ Trinity::RaceMask<uint64> raceMaskDisabled{ sWorld->GetUInt64Config(CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK) };
+ if (raceMaskDisabled.HasRace(factionChangeInfo->RaceID))
{
SendCharFactionChange(CHAR_CREATE_ERROR, factionChangeInfo.get());
return;