44 data << float(areaTriggerCircularMovement.
Radius);
47 data << float(areaTriggerCircularMovement.
ZOffset);
50 data << *areaTriggerCircularMovement.
PathTarget;
52 if (areaTriggerCircularMovement.
Center)
53 data << *areaTriggerCircularMovement.
Center;
61 data << areaTriggerMovementScript.
Center;
75 _worldPacket <<
int32(AreaTriggerID);
76 _worldPacket.WriteBit(Entered);
77 _worldPacket.FlushBits();
84 _worldPacket << TriggerGUID;
86 _worldPacket.
WriteBit(AreaTriggerSpline.has_value());
87 _worldPacket.WriteBit(AreaTriggerOrbit.has_value());
88 _worldPacket.WriteBit(AreaTriggerMovementScript.has_value());
89 _worldPacket.FlushBits();
91 if (AreaTriggerSpline)
92 _worldPacket << *AreaTriggerSpline;
94 if (AreaTriggerMovementScript)
95 _worldPacket << *AreaTriggerMovementScript;
98 _worldPacket << *AreaTriggerOrbit;
100 return &_worldPacket;
ByteBuffer & operator<<(ByteBuffer &data, WorldPackets::AreaTrigger::AreaTriggerSplineInfo const &areaTriggerSpline)
void WriteBits(std::size_t value, int32 bits)
WorldPacket const * Write() override
WorldPacket const * Write() override
int32 ElapsedTimeForMovement
Optional< TaggedPosition< Position::XYZ > > Center
Optional< ObjectGuid > PathTarget
TaggedPosition< Position::XYZ > Center
std::vector< TaggedPosition< Position::XYZ > > Points
uint32 ElapsedTimeForMovement