diff options
author | Vincent-Michael <vincent_michael@gmx.de> | 2016-08-27 19:58:17 +0200 |
---|---|---|
committer | Vincent-Michael <vincent_michael@gmx.de> | 2016-08-27 19:58:17 +0200 |
commit | 9f7c26273b96ae54542cf90872fd6c638879f0eb (patch) | |
tree | fcf1bc5ed1d9678f9f5019e01176abf768cd5c7a | |
parent | fbd547f5900c0c49d423b91872168366bfe1c527 (diff) |
Core/Characters:
- Added missing set PLAYER_BYTES_2_OFFSET_CUSTOM_DISPLAY_OPTION for barbershop
- Fixed crash
-rw-r--r-- | src/server/game/Handlers/CharacterHandler.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index 4328ffa0719..9077e6ad014 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -1510,7 +1510,7 @@ void WorldSession::HandleAlterAppearance(WorldPackets::Character::AlterApperance return; customDisplayEntries[i] = bs_customDisplay; - customDisplay[i] = bs_customDisplay->Data; + customDisplay[i] = bs_customDisplay ? bs_customDisplay->Data : 0; } if (!Player::ValidateAppearance(_player->getRace(), _player->getClass(), _player->GetByteValue(PLAYER_BYTES_3, PLAYER_BYTES_3_OFFSET_GENDER), @@ -1559,6 +1559,9 @@ void WorldSession::HandleAlterAppearance(WorldPackets::Character::AlterApperance if (bs_face) _player->SetByteValue(PLAYER_BYTES, PLAYER_BYTES_OFFSET_FACE_ID, uint8(bs_face->Data)); + for (uint32 i = 0; i < PLAYER_CUSTOM_DISPLAY_SIZE; ++i) + _player->SetByteValue(PLAYER_BYTES_2, PLAYER_BYTES_2_OFFSET_CUSTOM_DISPLAY_OPTION + i, customDisplay[i]); + _player->UpdateCriteria(CRITERIA_TYPE_VISIT_BARBER_SHOP, 1); _player->SetStandState(UNIT_STAND_STATE_STAND); |