示例#1
0
		public PackedGump( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			uint serial = reader.ReadUInt32();
			uint gumpId = reader.ReadUInt32();
			uint x = reader.ReadUInt32();
			uint y = reader.ReadUInt32();

			byte[] dLayout = ReadPacked( reader );
			PacketReader layoutReader = new PacketReader( dLayout );
			string layout = layoutReader.ReadASCIIString( dLayout.Length );

			int stringCount = reader.ReadInt32();

			byte[] dText = ReadPacked( reader );
			PacketReader textReader = new PacketReader( dText );

			ArrayList textList = new ArrayList();
			for ( int i = 0; i < stringCount; i++ )
			{
				int length = textReader.ReadUInt16() * 2;

				string s = textReader.ReadUnicodeString( length );
				textList.Add( s );
			}
			string[] text = (string[])textList.ToArray( typeof( string ) );


			Init( serial, gumpId, x, y, layout, text );
		}
示例#2
0
		public Gump( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			uint serial = reader.ReadUInt32();
			uint gumpId = reader.ReadUInt32();
			uint x = reader.ReadUInt32();
			uint y = reader.ReadUInt32();

			ushort layoutLength = reader.ReadUInt16();
			string layout = reader.ReadASCIIString( layoutLength - 1 );
			reader.ReadByte();

			ArrayList textList = new ArrayList();
			ushort n = reader.ReadUInt16();
			for ( int i = 0; i < n; i++ )
			{
				int length = reader.ReadUInt16() * 2;

				string s = reader.ReadUnicodeString( length );
				textList.Add( s );
			}
			string[] text = (string[])textList.ToArray( typeof( string ) );

			Init( serial, gumpId, x, y, layout, text );
		}
		public ObjectProperties( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Type = reader.ReadUInt16();

			if ( m_Type == 1 )
			{
				m_Serial = reader.ReadUInt32();

				reader.ReadUInt16();

				m_HashCode = reader.ReadUInt32();

				ArrayList list = new ArrayList();
				while ( true )
				{
					uint number = reader.ReadUInt32();
					if ( number == 0 )
						break;

					ushort length = reader.ReadUInt16();
					string arguments = reader.ReadUnicodeStringLE( length );

					list.Add( new Property( number, arguments ) );
				}

				m_Properties = (Property[])list.ToArray( typeof( Property ) );
			}
			else
			{
				m_Properties = new Property[0];
			}
		}
		public LocalizedMessage( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();
			m_ModelId = reader.ReadUInt16();
			m_SpeechType = reader.ReadByte();
			m_Hue = reader.ReadUInt16();
			m_Font = reader.ReadUInt16();
			m_Number = reader.ReadUInt32();
			m_SourceName = reader.ReadASCIIString( 30 );
			m_Append = reader.ReadUnicodeStringLE();
		}
		public ContainerContentUpdate( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_ItemId = reader.ReadUInt16();

			reader.ReadByte();

			m_Amount = reader.ReadUInt16();
			m_X = reader.ReadInt16();
			m_Y = reader.ReadInt16();
            m_Grid = reader.ReadByte();
			m_ContSerial = reader.ReadUInt32();
			m_Hue = reader.ReadUInt16();
		}
        public EncryptionReply(PacketReader reader, bool send) : base(reader, send)
		{
            reader.ReadUInt16();

            m_LenData1 = reader.ReadUInt32();
            m_Data1 = new byte[m_LenData1];
            m_Data1 = reader.ReadBytes(m_LenData1);
        }
		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();
		}
示例#8
0
        public EncryptionSet(PacketReader reader, bool send) : base(reader, send)
		{
            reader.ReadUInt16();

            m_LenData1 = reader.ReadUInt32();
            m_Data1 = new byte[m_LenData1];
            m_Data1 = reader.ReadBytes(m_LenData1);
            m_LenData2 = reader.ReadUInt32();
            m_Data2 = new byte[m_LenData2];
            m_Data2 = reader.ReadBytes(m_LenData2);
            m_LenData3 = reader.ReadUInt32();
            m_Data3 = new byte[m_LenData3];
            m_Data3 = reader.ReadBytes(m_LenData3);
            m_Unknown = reader.ReadUInt32();
            m_LenDataIV = reader.ReadUInt32();
            m_DataIV = new byte[m_LenDataIV];
            m_DataIV = reader.ReadBytes(m_LenDataIV);
		}
示例#9
0
        public MacroEquipItem(PacketReader reader, bool send) : base(reader, send)
		{
			reader.ReadUInt16();

            m_ItemCount = reader.ReadByte();
            for (int i = 0; i < (int)(m_ItemCount); i++)
			{
                m_ItemUids.Add(reader.ReadUInt32());
			}
		}
示例#10
0
		public MobileAnimation( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_Action = reader.ReadUInt16();
			m_FrameCount = reader.ReadUInt16();
			m_RepeatCount = reader.ReadUInt16();
			m_Forward = !reader.ReadBoolean();
			m_Repeat = reader.ReadBoolean();
			m_Delay = reader.ReadByte();
		}
示例#11
0
		public CorpseEquip( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();

			ArrayList list = new ArrayList();
			while ( true )
			{
				byte layer = reader.ReadByte();
				if ( layer == 0 )
					break;

				uint serial = reader.ReadUInt32();

				list.Add( new CorpseItem( (byte)(layer - 1), serial ) );
			}

			m_CorpseItems = (CorpseItem[])list.ToArray( typeof( CorpseItem ) );
		}
示例#12
0
		public ASCIIMessage( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();
			m_ModelId = reader.ReadUInt16();
			m_SpeechType = reader.ReadByte();
			m_Hue = reader.ReadUInt16();
			m_Font = reader.ReadUInt16();
			m_SourceName = reader.ReadASCIIString( 30 );
			m_Text = reader.ReadASCIIString();
		}
示例#13
0
        public UnicodeMessage(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial     = reader.ReadUInt32();
            m_ModelId    = reader.ReadUInt16();
            m_SpeechType = reader.ReadByte();
            m_Hue        = reader.ReadUInt16();
            m_Font       = reader.ReadUInt16();
            m_Lang       = reader.ReadASCIIString(4);
            m_SourceName = reader.ReadASCIIString(30);
            m_Text       = reader.ReadUnicodeString();
        }
示例#14
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();
 }
示例#15
0
        public BuyInfo(PacketReader reader, bool send) : base(reader, send)
        {
            int size = reader.ReadInt16();

            m_VendorSerial = reader.ReadUInt32();
            int count = reader.ReadByte();

            m_List = new List <BuyInfoEntry>();

            for (int i = 0; i < count; i++)
            {
                m_List.Add(new BuyInfoEntry(reader));
            }
        }
        public CorpseEquip(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial = reader.ReadUInt32();

            ArrayList list = new ArrayList();

            while (true)
            {
                byte layer = reader.ReadByte();
                if (layer == 0)
                {
                    break;
                }

                uint serial = reader.ReadUInt32();

                list.Add(new CorpseItem((byte)(layer - 1), serial));
            }

            m_CorpseItems = (CorpseItem[])list.ToArray(typeof(CorpseItem));
        }
示例#17
0
        public ObjectProperties(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Type = reader.ReadUInt16();

            if (m_Type == 1)
            {
                m_Serial = reader.ReadUInt32();

                reader.ReadUInt16();

                m_HashCode = reader.ReadUInt32();

                ArrayList list = new ArrayList();
                while (true)
                {
                    uint number = reader.ReadUInt32();
                    if (number == 0)
                    {
                        break;
                    }

                    ushort length    = reader.ReadUInt16();
                    string arguments = reader.ReadUnicodeStringLE(length);

                    list.Add(new Property(number, arguments));
                }

                m_Properties = (Property[])list.ToArray(typeof(Property));
            }
            else
            {
                m_Properties = new Property[0];
            }
        }
示例#18
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));
        }
示例#19
0
        public BookPageDetails(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial = reader.ReadUInt32();

            int pagesCount = reader.ReadUInt16();

            m_Pages = new BookPageInfo[pagesCount];

            for (int i = 0; i < m_Pages.Length; i++)
            {
                int index = reader.ReadUInt16();

                int linesCount = reader.ReadInt16();
                if (linesCount < 0)
                {
                    m_Pages[i] = new BookPageInfo(index, true, new string[0]);
                    continue;
                }

                string[] lines = new string[linesCount];

                for (int j = 0; j < linesCount; j++)
                {
                    ArrayList buffer = new ArrayList();

                    while (true)
                    {
                        byte b = reader.ReadByte();

                        if (b != 0)
                        {
                            buffer.Add(b);
                        }
                        else
                        {
                            byte[] bytes = (byte[])buffer.ToArray(typeof(byte));
                            lines[j] = Encoding.UTF8.GetString(bytes);

                            break;
                        }
                    }
                }

                m_Pages[i] = new BookPageInfo(index, false, lines);
            }
        }
示例#20
0
        public CommandCastSpell(PacketReader reader, bool send) : base(reader, send)
        {
            m_UseType = (SpellUseType)reader.ReadUInt16();

            if (m_UseType == SpellUseType.Spellbook)
            {
                m_Spellbook = reader.ReadUInt32();
            }

            m_Expansion = (SpellExpansionType)reader.ReadByte();
            m_SpellID   = reader.ReadByte();

            if (m_SpellID >= 0x1 && m_SpellID <= 0x40)
            {
                m_Type      = SpellType.Mage;
                m_SpellName = LocalizedList.GetString((uint)1044380 + m_SpellID);
            }
            else if (m_SpellID >= 0x59 && m_SpellID <= 0x68)
            {
                m_Type      = SpellType.Spellweaving;
                m_SpellName = LocalizedList.GetString((uint)1031601 + m_SpellID - 0x59);
            }
            else if (m_SpellID >= 0x65 && m_SpellID <= 0x75)
            {
                m_Type      = SpellType.Necromancer;
                m_SpellName = LocalizedList.GetString((uint)1060509 + m_SpellID - 0x65);
            }
            else if (m_SpellID >= 0xC9 && m_SpellID <= 0xD2)
            {
                m_Type      = SpellType.Paladin;
                m_SpellName = LocalizedList.GetString((uint)1060492 + m_SpellID - 0xC9);
            }
            else if (m_SpellID >= 0x91 && m_SpellID <= 0x96)
            {
                m_Type      = SpellType.Samurai;
                m_SpellName = LocalizedList.GetString((uint)1060595 + m_SpellID - 0x91);
            }
            else if (m_SpellID >= 0xF5 && m_SpellID <= 0xFC)
            {
                m_Type      = SpellType.Ninja;
                m_SpellName = LocalizedList.GetString((uint)1060610 + m_SpellID - 0xF5);
            }
            else
            {
                m_Type = SpellType.Unknown;
            }
        }
示例#21
0
		public BookPageDetails( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();

			int pagesCount = reader.ReadUInt16();
			m_Pages = new BookPageInfo[pagesCount];

			for ( int i = 0; i < m_Pages.Length; i++ )
			{
				int index = reader.ReadUInt16();

				int linesCount = reader.ReadInt16();
				if ( linesCount < 0 )
				{
					m_Pages[i] = new BookPageInfo( index, true, new string[0] );
					continue;
				}

				string[] lines = new string[linesCount];

				for ( int j = 0; j < linesCount; j++ )
				{
					ArrayList buffer = new ArrayList();

					while ( true )
					{
						byte b = reader.ReadByte();

						if ( b != 0 )
						{
							buffer.Add( b );
						}
						else
						{
							byte[] bytes = (byte[])buffer.ToArray( typeof( byte ) );
							lines[j] = Encoding.UTF8.GetString( bytes );

							break;
						}
					}
				}

				m_Pages[i] = new BookPageInfo( index, false, lines );
			}
		}
示例#22
0
 public NewRegion(PacketReader reader, bool send) : base(reader, send)
 {
     m_Name        = reader.ReadASCIIString(40);
     m_Unknown     = reader.ReadUInt32();
     m_StartX      = reader.ReadInt16();
     m_StartY      = reader.ReadInt16();
     m_Width       = reader.ReadInt16();
     m_Height      = reader.ReadInt16();
     m_StartZ      = reader.ReadInt16();
     m_EndZ        = reader.ReadInt16();
     m_Description = reader.ReadASCIIString(40);
     m_Sound       = reader.ReadInt16();
     m_Music       = reader.ReadInt16();
     m_NightSound  = reader.ReadInt16();
     m_Dungeon     = reader.ReadByte();
     m_Light       = reader.ReadInt16();
 }
示例#23
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 );
		}
示例#24
0
		public BookHeader( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			m_Serial = reader.ReadUInt32();

			reader.ReadByte();

			m_Writable = reader.ReadBoolean();
			m_PagesCount = reader.ReadUInt16();

			int titleLength = reader.ReadUInt16() - 1;
			byte[] titleBuffer = reader.ReadBytes( titleLength );
			m_Title = Encoding.UTF8.GetString( titleBuffer );
			reader.ReadByte();

			int authorLength = reader.ReadUInt16() - 1;
			byte[] authorBuffer = reader.ReadBytes( authorLength );
			m_Author = Encoding.UTF8.GetString( authorBuffer );
			reader.ReadByte();
		}
示例#25
0
        public BookHeader(PacketReader reader, bool send) : base(reader, send)
        {
            reader.ReadUInt16();

            m_Serial = reader.ReadUInt32();

            reader.ReadByte();

            m_Writable   = reader.ReadBoolean();
            m_PagesCount = reader.ReadUInt16();

            int titleLength = reader.ReadUInt16() - 1;

            byte[] titleBuffer = reader.ReadBytes(titleLength);
            m_Title = Encoding.UTF8.GetString(titleBuffer);
            reader.ReadByte();

            int authorLength = reader.ReadUInt16() - 1;

            byte[] authorBuffer = reader.ReadBytes(authorLength);
            m_Author = Encoding.UTF8.GetString(authorBuffer);
            reader.ReadByte();
        }
示例#26
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();
		}
示例#27
0
 public PropertyListInfo(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial = reader.ReadUInt32();
     m_Hash   = reader.ReadUInt32();
 }
示例#28
0
        public MobileStat(PacketReader reader, bool send) : base(reader, send)
        {
            int size = reader.ReadUInt16();

            m_Serial = reader.ReadUInt32();

            m_Name            = reader.ReadASCIIString(30);
            m_HitPoints       = reader.ReadUInt16();
            m_MaxHitPoints    = reader.ReadUInt16();
            m_AllowNameChange = reader.ReadByte();
            m_Features        = reader.ReadByte();
            m_Gender          = reader.ReadByte();

            m_Strength     = reader.ReadUInt16();
            m_Dexterity    = reader.ReadUInt16();
            m_Intelligence = reader.ReadUInt16();
            m_Stamina      = reader.ReadUInt16();
            m_MaxStamina   = reader.ReadUInt16();
            m_Mana         = reader.ReadUInt16();
            m_MaxMana      = reader.ReadUInt16();

            m_Gold        = reader.ReadUInt32();
            m_ArmorRating = reader.ReadUInt16();
            m_Weight      = reader.ReadUInt16();

            if (m_Features <= 5)
            {
                m_MaxWeight = reader.ReadUInt16();
                m_Race      = reader.ReadByte();
            }

            if (m_Features <= 3)
            {
                m_Followers    = reader.ReadByte();
                m_StatCap      = reader.ReadUInt16();
                m_Followers    = reader.ReadByte();
                m_MaxFollowers = reader.ReadByte();
            }

            if (m_Features <= 4)
            {
                m_FireRes       = reader.ReadUInt16();
                m_ColdRes       = reader.ReadUInt16();
                m_PoisonRes     = reader.ReadUInt16();
                m_EnergyRes     = reader.ReadUInt16();
                m_Luck          = reader.ReadUInt16();
                m_MinWeapDamage = reader.ReadUInt16();
                m_MaxWeapDamage = reader.ReadUInt16();
                m_TithingPoints = reader.ReadUInt32();
            }

            if (m_Features <= 6)
            {
                m_HitChanceIncr    = reader.ReadUInt16();
                m_SwingSpeedIncr   = reader.ReadUInt16();
                m_DamageChanceIncr = reader.ReadUInt16();
                m_LowerReagCost    = reader.ReadUInt16();
                m_HitPointsReg     = reader.ReadUInt16();

                m_StaminaPointsReg  = reader.ReadUInt16();
                m_ManaReag          = reader.ReadUInt16();
                m_ReflectPhysDamage = reader.ReadUInt16();
                m_EnhancePotions    = reader.ReadUInt16();
                m_DefenceChanceIncr = reader.ReadUInt16();

                m_SpellDamageIncr    = reader.ReadUInt16();
                m_FasterCastRecovery = reader.ReadUInt16();
                m_FasterCasting      = reader.ReadUInt16();
                m_LowerManaCost      = reader.ReadUInt16();
                m_StrengthIncr       = reader.ReadUInt16();

                m_DexterityIncr    = reader.ReadUInt16();
                m_IntelligenceIncr = reader.ReadUInt16();
                m_HitPointsIncr    = reader.ReadUInt16();
                m_StaminaIncr      = reader.ReadUInt16();
                m_ManaIncr         = reader.ReadUInt16();

                m_MaxHitPointsIncr = reader.ReadUInt16();
                m_MaxStaminaIncr   = reader.ReadUInt16();
                m_MaxManaIncr      = reader.ReadUInt16();
            }
        }
示例#29
0
 public HardwareInfo(PacketReader reader, bool send) : base(reader, send)
 {
     m_PacketSize       = reader.ReadUInt16();
     m_ClientType       = reader.ReadByte();
     m_IstanceID        = reader.ReadUInt32();
     m_OSMajor          = reader.ReadUInt32();
     m_OSMinor          = reader.ReadUInt32();
     m_OSRevision       = reader.ReadUInt32();
     m_CPUManuf         = reader.ReadByte();
     m_CPUFamily        = reader.ReadUInt32();
     m_CPUModel         = reader.ReadUInt32();
     m_ClockSpeed       = reader.ReadUInt32();
     m_CPUQuantity      = reader.ReadByte();
     m_PhysicalMemory   = reader.ReadUInt32();
     m_ScreenWidth      = reader.ReadUInt32();
     m_ScreenHeight     = reader.ReadUInt32();
     m_ScreenDepth      = reader.ReadUInt32();
     m_DirectXMajor     = reader.ReadUInt16();
     m_DirectXMinor     = reader.ReadUInt16();
     m_VideoDescription = reader.ReadASCIIString(64);
     m_VideoVendorID    = reader.ReadUInt32();
     m_VideoDeviceID    = reader.ReadUInt32();
     m_VideoMemory      = reader.ReadUInt32();
     m_Distribution     = reader.ReadByte();
     m_ClientsRunning   = reader.ReadByte();
     m_ClientsInstalled = reader.ReadByte();
     m_PartialInstalled = reader.ReadByte();
     m_Language         = reader.ReadASCIIString(4);
     m_Unknown          = reader.ReadASCIIString(64);
 }
示例#30
0
		public DoubleClick( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
		}
示例#31
0
		public RemoveEntity( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
		}
示例#32
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 ) );
		}
示例#33
0
 public SetPersonalLight(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial = reader.ReadUInt32();
     m_Level  = reader.ReadByte();
 }
示例#34
0
 public DoubleClick(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial = reader.ReadUInt32();
 }
示例#35
0
 public MobileMana(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial  = reader.ReadUInt32();
     m_MaxMana = reader.ReadUInt16();
     m_Mana    = reader.ReadUInt16();
 }
 public ContainerDisplay(PacketReader reader, bool send) : base(reader, send)
 {
     m_ItemId = reader.ReadUInt32();
     m_Gump   = reader.ReadUInt16();
 }
示例#37
0
 public Damage(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial = reader.ReadUInt32();
     m_Amount = reader.ReadInt16();
 }
示例#38
0
		public MobileHits( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_MaxHits = reader.ReadUInt16();
			m_Hits = reader.ReadUInt16();
		}
示例#39
0
		public ContainerDisplay( PacketReader reader, bool send ) : base( reader, send )
		{
			m_ItemId = reader.ReadUInt32();
			m_Gump = reader.ReadUInt16();
		}
示例#40
0
		public ContainerContent( PacketReader reader, bool send ) : base( reader, send )
		{
			reader.ReadUInt16();

			ushort n = reader.ReadUInt16();
			m_ContainedItems = new ContainedItem[n];

			for ( int i = 0; i < n; i++ )
			{
				uint serial = reader.ReadUInt32();
				ushort itemId = reader.ReadUInt16();

				reader.ReadByte();

				ushort amount = reader.ReadUInt16();
				short x = reader.ReadInt16();
				short y = reader.ReadInt16();
                byte grid = reader.ReadByte();
				uint contSerial = reader.ReadUInt32();
				ushort hue = reader.ReadUInt16();

                m_ContainedItems[i] = new ContainedItem(serial, itemId, amount, x, y, grid, contSerial, hue);
			}
		}
示例#41
0
文件: ReqWalk.cs 项目: leeairw/SpyUO
 public ReqMove(PacketReader reader, bool send) : base(reader, send)
 {
     m_Direction = reader.ReadByte();
     m_Sequence  = reader.ReadByte();
     m_Fastwalk  = reader.ReadUInt32();
 }
示例#42
0
 public RemoveEntity(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial = reader.ReadUInt32();
 }
示例#43
0
 public DeathAnimation(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial  = reader.ReadUInt32();
     m_Corpse  = reader.ReadUInt32();
     m_Unknown = reader.ReadUInt32();
 }
示例#44
0
 public Combat(PacketReader reader, bool send) : base(reader, send)
 {
     m_WarMode = reader.ReadByte();
     m_Unknown = reader.ReadUInt32();
 }
 public MobileHits(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial  = reader.ReadUInt32();
     m_MaxHits = reader.ReadUInt16();
     m_Hits    = reader.ReadUInt16();
 }
示例#46
0
		public MobileMana( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_MaxMana = reader.ReadUInt16();
			m_Mana = reader.ReadUInt16();
		}