diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 536d9c0ff18..6a6cd82af15 100755 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1769,7 +1769,15 @@ class Unit : public WorldObject uint64 m_ObjectSlot[4]; ShapeshiftForm GetShapeshiftForm() const { return ShapeshiftForm(GetByteValue(UNIT_FIELD_BYTES_2, 3)); } - void SetShapeshiftForm(ShapeshiftForm form) { SetByteValue(UNIT_FIELD_BYTES_2, 3, form); } + void SetShapeshiftForm(ShapeshiftForm form) + { + SetByteValue(UNIT_FIELD_BYTES_2, 3, form); + + // force update as too quick shapeshifting and back + // causes the value to stay the same serverside + // causes issues clientside (player gets stuck) + ForceValuesUpdateAtIndex(UNIT_FIELD_BYTES_2); + } inline bool IsInFeralForm() const { |