diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Handlers/CharacterHandler.cpp | 8 |
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; |