private void WriteBase(Entity.WorldObject animationTarget, Session session, MotionActivity activity, MotionType type, MotionFlags flags, MotionStance stance) { Writer.WriteGuid(animationTarget.Guid); Writer.Write((ushort)session.Player.TotalLogins); Writer.Write(animationTarget.Sequences.GetNextSequence(Sequence.SequenceType.MotionMessage)); Writer.Write((ushort)1); // Index, needs more research, it changes sometimes, but not every packet Writer.Write((ushort)activity); Writer.Write((byte)type); Writer.Write((byte)flags); Writer.Write((ushort)stance); }
public GameMessageMotion(Entity.WorldObject animationTarget, Session session, MotionActivity activity, MotionType type, MotionFlags flags, MotionStance stance, MotionCommand command, float speed) : this() { WriteBase(animationTarget, session, activity, type, flags, stance); List <MotionItem> animations = new List <MotionItem>() { new MotionItem(command, speed) }; WriteAnimations(animationTarget, animations); }