diff options
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index e64afb70d5f..555ecef35c3 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -16212,12 +16212,16 @@ void Unit::RemoveCharmedBy(Unit* charmer) charmer->ToPlayer()->SetClientControl(charmer, 1); charmer->ToPlayer()->SetViewpoint(this, false); charmer->ToPlayer()->SetClientControl(this, 0); + if (GetTypeId() == TYPEID_PLAYER) + ToPlayer()->SetMover(this); break; case CHARM_TYPE_POSSESS: charmer->ToPlayer()->SetClientControl(charmer, 1); charmer->ToPlayer()->SetViewpoint(this, false); charmer->ToPlayer()->SetClientControl(this, 0); charmer->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_DISABLE_MOVE); + if (GetTypeId() == TYPEID_PLAYER) + ToPlayer()->SetMover(this); break; case CHARM_TYPE_CHARM: if (GetTypeId() == TYPEID_UNIT && charmer->getClass() == CLASS_WARLOCK) |