diff options
Diffstat (limited to 'src/server/scripts/Commands')
| -rw-r--r-- | src/server/scripts/Commands/cs_character.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/server/scripts/Commands/cs_character.cpp b/src/server/scripts/Commands/cs_character.cpp index b8c175f0fa1..2633b8313a2 100644 --- a/src/server/scripts/Commands/cs_character.cpp +++ b/src/server/scripts/Commands/cs_character.cpp @@ -422,6 +422,24 @@ public: if (!player) return false; + CharacterCacheEntry const* characterInfo = sCharacterCache->GetCharacterCacheByGuid(player->GetGUID()); + if (!characterInfo) + return false; + + if (characterInfo->Level < 10) + { + handler->PSendSysMessage(LANG_CHANGEFACTION_NOT_ELIGIBLE_10); + handler->SetSentErrorMessage(true); + return false; + } + + if (characterInfo->Class == CLASS_DEATH_KNIGHT && characterInfo->Level < 60) + { + handler->PSendSysMessage(LANG_CHANGEFACTION_NOT_ELIGIBLE_60); + handler->SetSentErrorMessage(true); + return false; + } + if (Player* target = player->GetConnectedPlayer()) { handler->PSendSysMessage(LANG_CUSTOMIZE_PLAYER, handler->GetNameLink(target).c_str()); |
