Core/Transports: Fixed clientside position of stoppable transports
Port From (https://github.com/TrinityCore/TrinityCore/commit/96026bfc58faa65aeef5cb1430aa2e442a43b115)
This commit is contained in:
@@ -649,9 +649,11 @@ namespace Game.Entities
|
|||||||
data.FlushBits();
|
data.FlushBits();
|
||||||
if (transport != null)
|
if (transport != null)
|
||||||
{
|
{
|
||||||
data.WriteUInt32(transport.GetTransportPeriod());
|
uint period = transport.GetTransportPeriod();
|
||||||
data.WriteUInt32(transport.GetTimer());
|
|
||||||
data.WriteBit(transport.IsStopRequested());
|
data.WriteUInt32((uint)((((long)transport.GetTimer() - (long)GameTime.GetGameTimeMS()) % period) + period) % period); // TimeOffset
|
||||||
|
data.WriteUInt32(transport.GetNextStopTimestamp().GetValueOrDefault(0));
|
||||||
|
data.WriteBit(transport.GetNextStopTimestamp().HasValue);
|
||||||
data.WriteBit(transport.IsStopped());
|
data.WriteBit(transport.IsStopped());
|
||||||
data.WriteBit(false);
|
data.WriteBit(false);
|
||||||
data.FlushBits();
|
data.FlushBits();
|
||||||
|
|||||||
@@ -766,7 +766,7 @@ namespace Game.Entities
|
|||||||
public uint GetTransportPeriod() { return m_gameObjectData.Level; }
|
public uint GetTransportPeriod() { return m_gameObjectData.Level; }
|
||||||
public void SetPeriod(uint period) { SetLevel(period); }
|
public void SetPeriod(uint period) { SetLevel(period); }
|
||||||
public uint GetTimer() { return _pathProgress; }
|
public uint GetTimer() { return _pathProgress; }
|
||||||
public bool IsStopRequested() { return _requestStopTimestamp.HasValue; }
|
public uint? GetNextStopTimestamp() { return _requestStopTimestamp; }
|
||||||
public bool IsStopped()
|
public bool IsStopped()
|
||||||
{
|
{
|
||||||
return HasDynamicFlag(GameObjectDynamicLowFlags.Stopped);
|
return HasDynamicFlag(GameObjectDynamicLowFlags.Stopped);
|
||||||
|
|||||||
Reference in New Issue
Block a user