Beispiel #1
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 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();
		}
		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();
		}
		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();
		}
Beispiel #7
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 );
		}
Beispiel #8
0
		public PlaySound( PacketReader reader, bool send ) : base( reader, send )
		{
			m_SoundMode = reader.ReadByte();
			m_SoundId = reader.ReadUInt16();
			m_Unknown = reader.ReadInt16();
			m_Position = new Point3D( reader.ReadInt16(), reader.ReadInt16(), reader.ReadInt16() );
		}
		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 );
			}
		}
        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();
		}
        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());
			}
		}
        public MacroUnequipItem(PacketReader reader, bool send) : base(reader, send)
		{
			reader.ReadUInt16();

            m_LayerCount = reader.ReadByte();
            for (int i = 0; i < (int)(m_LayerCount); i++)
			{
                m_LayerIds.Add(reader.ReadByte());
			}
		}
Beispiel #14
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();
		}
        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);
		}
Beispiel #16
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 ) );
		}
Beispiel #17
0
        public PlaySound(PacketReader reader, bool send) : base(reader, send)
        {
            m_SoundMode = reader.ReadByte();
            m_SoundId   = reader.ReadUInt16();
            m_Unknown   = reader.ReadInt16();
            m_Position  = new Point3D(reader.ReadInt16(), reader.ReadInt16(), reader.ReadInt16());

            try
            {
                if (m_SoundId != 0xFFFF)
                {
                    m_Sound = LoadSound(m_SoundId);

                    if (m_Sound != null)
                    {
                        m_Player = new SoundPlayer(m_Sound.WAVEStream);
                    }
                }
            }
            catch
            {
                // TODO logging
            }
        }
Beispiel #18
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 );
		}
Beispiel #19
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));
        }
Beispiel #20
0
		public PlayMusic( PacketReader reader, bool send ) : base( reader, send )
		{
			m_MusicId = reader.ReadUInt16();
		}
		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();
		}
		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);
			}
		}
		public ExtendedCommand( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Length = reader.ReadUInt16();
			m_Type = reader.ReadUInt16();
			m_Data = reader.ReadBytes(m_Length - 5);

			switch(m_Type)
			{
				case 0x01:
					m_Name = "FastWalk"; break;
				case 0x02:
					m_Name = "WalkKeyAdd"; break;
				case 0x04:
					m_Name = "GumpClose"; break;
				case 0x05:
					m_Name = "ScreenSize"; break;
				case 0x06:
					m_Name = "PartyPacket"; break;
				case 0x07:
					m_Name = "QuestArrow"; break;
				case 0x08:
					m_Name = "MapChange"; break;
				case 0x09:
					m_Name = "DisarmRequest"; break;
				case 0x0a:
					m_Name = "StunRequest"; break;
				case 0x0b:
					m_Name = "LanguageSet"; break;
				case 0x0c:
					m_Name = "StatusClose"; break;
				case 0x0e:
					m_Name = "Animate"; break;
				case 0x0f:
					m_Name = "Unknown_Empty"; break;
				case 0x10:
					m_Name = "ObjectPropertyListOld"; break;
				case 0x13:
					m_Name = "ContextMenuRequest"; break;
				case 0x14:
					m_Name = "ContextMenuDisplay"; break;
				case 0x15:
					m_Name = "ContextMenuResponse"; break;
				case 0x17:
					m_Name = "DisplayHelp"; break;
				case 0x18:
					m_Name = "MapDiffEnable"; break;
				case 0x19:
					m_Name = "MiscellaneousStatus"; break;
				case 0x1a:
					m_Name = "StatLockChange"; break;
				case 0x1b:
					m_Name = "NewSpellbookContent"; break;
				case 0x1c:
					m_Name = "CastSpell"; break;
				case 0x1d:
					m_Name = "HouseDesignVersion"; break;
				case 0x1e:
					m_Name = "HouseDesignDetailed"; break;
				case 0x20:
					m_Name = "HouseCustomization"; break;
				case 0x21:
					m_Name = "WeaponAbilityClear"; break;
				case 0x22:
					m_Name = "DamagePacketOld"; break;
				case 0x24:
					m_Name = "Unknown_CheatDetector"; break;
				case 0x25:
					m_Name = "SESpellIconToggle"; break;
				case 0x26:
					m_Name = "SpeedModeSet"; break;
				default:
					m_Name = "Unknown";	break;
			}
		}
Beispiel #24
0
        public ExtendedCommand(PacketReader reader, bool send) : base(reader, send)
        {
            m_Length = reader.ReadUInt16();
            m_Type   = reader.ReadUInt16();
            m_Data   = reader.ReadBytes(m_Length - 5);

            switch (m_Type)
            {
            case 0x01:
                m_Name = "FastWalk"; break;

            case 0x02:
                m_Name = "WalkKeyAdd"; break;

            case 0x04:
                m_Name = "GumpClose"; break;

            case 0x05:
                m_Name = "ScreenSize"; break;

            case 0x06:
                m_Name = "PartyPacket"; break;

            case 0x07:
                m_Name = "QuestArrow"; break;

            case 0x08:
                m_Name = "MapChange"; break;

            case 0x09:
                m_Name = "DisarmRequest"; break;

            case 0x0a:
                m_Name = "StunRequest"; break;

            case 0x0b:
                m_Name = "LanguageSet"; break;

            case 0x0c:
                m_Name = "StatusClose"; break;

            case 0x0e:
                m_Name = "Animate"; break;

            case 0x0f:
                m_Name = "Unknown_Empty"; break;

            case 0x10:
                m_Name = "ObjectPropertyListOld"; break;

            case 0x13:
                m_Name = "ContextMenuRequest"; break;

            case 0x14:
                m_Name = "ContextMenuDisplay"; break;

            case 0x15:
                m_Name = "ContextMenuResponse"; break;

            case 0x17:
                m_Name = "DisplayHelp"; break;

            case 0x18:
                m_Name = "MapDiffEnable"; break;

            case 0x19:
                m_Name = "MiscellaneousStatus"; break;

            case 0x1a:
                m_Name = "StatLockChange"; break;

            case 0x1b:
                m_Name = "NewSpellbookContent"; break;

            case 0x1c:
                m_Name = "CastSpell"; break;

            case 0x1d:
                m_Name = "HouseDesignVersion"; break;

            case 0x1e:
                m_Name = "HouseDesignDetailed"; break;

            case 0x20:
                m_Name = "HouseCustomization"; break;

            case 0x21:
                m_Name = "WeaponAbilityClear"; break;

            case 0x22:
                m_Name = "DamagePacketOld"; break;

            case 0x24:
                m_Name = "Unknown_CheatDetector"; break;

            case 0x25:
                m_Name = "SESpellIconToggle"; break;

            case 0x26:
                m_Name = "SpeedModeSet"; break;

            default:
                m_Name = "Unknown";     break;
            }
        }
Beispiel #25
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();
            }
        }
		public ContainerDisplay( PacketReader reader, bool send ) : base( reader, send )
		{
			m_ItemId = reader.ReadUInt32();
			m_Gump = reader.ReadUInt16();
		}
Beispiel #27
0
		public MobileHits( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_MaxHits = reader.ReadUInt16();
			m_Hits = reader.ReadUInt16();
		}
Beispiel #28
0
 public PlayMusic(PacketReader reader, bool send) : base(reader, send)
 {
     m_MusicId = reader.ReadUInt16();
 }
 public ContainerDisplay(PacketReader reader, bool send) : base(reader, send)
 {
     m_ItemId = reader.ReadUInt32();
     m_Gump   = reader.ReadUInt16();
 }
Beispiel #30
0
 public MobileMana(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial  = reader.ReadUInt32();
     m_MaxMana = reader.ReadUInt16();
     m_Mana    = reader.ReadUInt16();
 }
		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 ) );
		}
 public MobileHits(PacketReader reader, bool send) : base(reader, send)
 {
     m_Serial  = reader.ReadUInt32();
     m_MaxHits = reader.ReadUInt16();
     m_Hits    = reader.ReadUInt16();
 }
Beispiel #33
0
		public MobileMana( PacketReader reader, bool send ) : base( reader, send )
		{
			m_Serial = reader.ReadUInt32();
			m_MaxMana = reader.ReadUInt16();
			m_Mana = reader.ReadUInt16();
		}