Core: Disallow race and faction transfers to races for which character creation is not allowed.

--HG--
branch : trunk
This commit is contained in:
silinoron
2010-09-06 10:42:53 -07:00
parent 7afc640ef4
commit b1e7dc1ad2

View File

@@ -1387,6 +1387,18 @@ void WorldSession::HandleCharFactionOrRaceChange(WorldPacket& recv_data)
SendPacket( &data );
return;
}
if (GetSecurity() == SEC_PLAYER)
{
uint32 raceMaskDisabled = sWorld.getIntConfig(CONFIG_CHARACTER_CREATING_DISABLED_RACEMASK);
if ((1 << (race - 1)) & raceMaskDisabled)
{
WorldPacket data(SMSG_CHAR_FACTION_CHANGE, 1);
data << uint8(CHAR_CREATE_ERROR);
SendPacket( &data );
return;
}
}
// prevent character rename to invalid name
if (!normalizePlayerName(newname))