public ParticleEffect(PacketReader reader, bool send) : base(reader, send)
        {
            m_Type      = reader.ReadByte();
            m_From      = reader.ReadUInt32();
            m_To        = reader.ReadUInt32();
            m_ItemId    = reader.ReadUInt16();
            m_FromPoint = new Point3D(reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte());
            m_ToPoint   = new Point3D(reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte());
            m_Speed     = reader.ReadByte();
            m_Duration  = reader.ReadByte();

            reader.ReadByte();
            reader.ReadByte();

            m_FixedDirection = reader.ReadBoolean();
            m_Explode        = reader.ReadBoolean();
            m_Hue            = reader.ReadUInt32();
            m_RenderMode     = reader.ReadUInt32();
            m_Effect         = reader.ReadUInt16();
            m_ExplodeEffect  = reader.ReadUInt16();
            m_ExplodeSound   = reader.ReadUInt16();
            m_Serial         = reader.ReadUInt32();
            m_Layer          = reader.ReadByte();
            m_Unknown        = reader.ReadInt16();
        }
示例#2
0
 public NakedMob(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial    = reader.ReadUInt32();
     m_ID        = reader.ReadUInt16();
     m_X         = reader.ReadUInt16();
     m_Y         = reader.ReadUInt16();
     m_Z         = reader.ReadSByte();
     m_Direction = reader.ReadSByte();
     m_SkinColor = reader.ReadUInt16();
     m_Status    = reader.ReadByte();
     m_Notoriety = (Notoriety)reader.ReadByte();
 }
        public GraphicalEffect(PacketReader reader, bool send) : base(reader, send)
        {
            m_Type      = reader.ReadByte();
            m_From      = reader.ReadUInt32();
            m_To        = reader.ReadUInt32();
            m_ItemId    = reader.ReadUInt16();
            m_FromPoint = new Point3D(reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte());
            m_ToPoint   = new Point3D(reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte());
            m_Speed     = reader.ReadByte();
            m_Duration  = reader.ReadByte();

            reader.ReadByte();
            reader.ReadByte();

            m_FixedDirection = reader.ReadBoolean();
            m_Explode        = reader.ReadBoolean();
        }
		public GraphicalEffect( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Type = reader.ReadByte();
			m_From = reader.ReadUInt32();
			m_To = reader.ReadUInt32();
			m_ItemId = reader.ReadUInt16();
			m_FromPoint = new Point3D( reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte() );
			m_ToPoint = new Point3D( reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte() );
			m_Speed = reader.ReadByte();
			m_Duration = reader.ReadByte();

			reader.ReadByte();
			reader.ReadByte();

			m_FixedDirection = reader.ReadBoolean();
			m_Explode = reader.ReadBoolean();
		}
示例#5
0
        public WorldItem(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial = reader.ReadUInt32();
            m_ItemId = reader.ReadUInt16();

            if ((m_Serial & 0x80000000) != 0)
            {
                m_Serial &= ~0x80000000;
                m_Count   = reader.ReadUInt16();
            }
            else
            {
                m_Count = 0;
            }

            if ((m_ItemId & 0x8000) != 0)
            {
                m_ItemId &= 0x7FFF;
                m_ItemId += reader.ReadByte();
            }

            ushort x = reader.ReadUInt16();
            ushort y = reader.ReadUInt16();

            if ((x & 0x8000) != 0)
            {
                m_Direction = reader.ReadByte();
            }
            else
            {
                m_Direction = 0;
            }

            sbyte z = reader.ReadSByte();

            if ((y & 0x8000) != 0)
            {
                m_Hue = reader.ReadUInt16();
            }
            else
            {
                m_Hue = 0;
            }

            if ((y & 0x4000) != 0)
            {
                m_Flag = reader.ReadByte();
            }
            else
            {
                m_Flag = 0;
            }

            m_Position = new Point3D(x & ~0x8000, y & ~0xC000, z);
        }
示例#6
0
 public MoveMobile(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial    = reader.ReadUInt32();
     m_Body      = reader.ReadUInt16();
     m_Zero1     = reader.ReadByte();
     m_SkinColor = reader.ReadUInt16();
     m_Status    = reader.ReadByte();
     m_X         = reader.ReadUInt16();
     m_Y         = reader.ReadUInt16();
     m_Zero2     = reader.ReadUInt16();
     m_Direction = reader.ReadByte();
     m_Z         = reader.ReadSByte();
 }
示例#7
0
		public WorldItem( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();
			m_ItemId = reader.ReadUInt16();

			if ( (m_Serial & 0x80000000) != 0 )
			{
				m_Serial &= ~0x80000000;
				m_Count = reader.ReadUInt16();
			}
			else
				m_Count = 0;

			if ( (m_ItemId & 0x8000) != 0 )
			{
				m_ItemId &= 0x7FFF;
				m_ItemId += reader.ReadByte();
			}

			ushort x = reader.ReadUInt16();
			ushort y = reader.ReadUInt16();

			if ( (x & 0x8000) != 0 )
				m_Direction = reader.ReadByte();
			else
				m_Direction = 0;

			sbyte z = reader.ReadSByte();

			if ( (y & 0x8000) != 0 )
				m_Hue = reader.ReadUInt16();
			else
				m_Hue = 0;

			if ( (y & 0x4000) != 0 )
				m_Flag = reader.ReadByte();
			else
				m_Flag = 0;

			m_Position = new Point3D( x & ~0x8000, y & ~0xC000, z );
		}
示例#8
0
        public MobileIncoming(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial    = reader.ReadUInt32();
            m_ModelId   = reader.ReadUInt16();
            m_Position  = new Point3D(reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte());
            m_Direction = reader.ReadByte();
            m_Hue       = reader.ReadUInt16();
            m_Flag      = reader.ReadByte();
            m_Notoriety = (Notoriety)reader.ReadByte();

            ArrayList list = new ArrayList();
            uint      serial;

            while ((serial = reader.ReadUInt32()) != 0)
            {
                ushort itemId = reader.ReadUInt16();
                byte   layer  = reader.ReadByte();

                ushort hue;
                if ((itemId & 0x8000) != 0)
                {
                    itemId &= 0x7FFF;
                    hue     = reader.ReadUInt16();
                }
                else
                {
                    hue = 0;
                }

                list.Add(new EquipInfo(serial, itemId, layer, hue));
            }

            m_Equipment = (EquipInfo[])list.ToArray(typeof(EquipInfo));
        }
示例#9
0
		public ParticleEffect( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Type = reader.ReadByte();
			m_From = reader.ReadUInt32();
			m_To = reader.ReadUInt32();
			m_ItemId = reader.ReadUInt16();
			m_FromPoint = new Point3D( reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte() );
			m_ToPoint = new Point3D( reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte() );
			m_Speed = reader.ReadByte();
			m_Duration = reader.ReadByte();

			reader.ReadByte();
			reader.ReadByte();

			m_FixedDirection = reader.ReadBoolean();
			m_Explode = reader.ReadBoolean();
			m_Hue = reader.ReadUInt32();
			m_RenderMode = reader.ReadUInt32();
			m_Effect = reader.ReadUInt16();
			m_ExplodeEffect = reader.ReadUInt16();
			m_ExplodeSound = reader.ReadUInt16();
			m_Serial = reader.ReadUInt32();
			m_Layer = reader.ReadByte();
			m_Unknown = reader.ReadInt16();
		}
示例#10
0
		public MobileIncoming( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();
			m_ModelId = reader.ReadUInt16();
			m_Position = new Point3D( reader.ReadUInt16(), reader.ReadUInt16(), reader.ReadSByte() );
			m_Direction = reader.ReadByte();
			m_Hue = reader.ReadUInt16();
			m_Flag = reader.ReadByte();
			m_Notoriety = reader.ReadByte();

			ArrayList list = new ArrayList();
			uint serial;
			while ( (serial = reader.ReadUInt32()) != 0 )
			{
				ushort itemId = reader.ReadUInt16();
				byte layer = reader.ReadByte();

				ushort hue;
				if ( (itemId & 0x8000) != 0 )
				{
					itemId &= 0x7FFF;
					hue = reader.ReadUInt16();
				}
				else
					hue = 0;

				list.Add( new EquipInfo( serial, itemId, layer, hue ) );
			}

			m_Equipment = (EquipInfo[])list.ToArray( typeof( EquipInfo ) );
		}