当前位置: 首页>>代码示例>>C#>>正文


C# GenericReader.ReadSByte方法代码示例

本文整理汇总了C#中Server.GenericReader.ReadSByte方法的典型用法代码示例。如果您正苦于以下问题:C# GenericReader.ReadSByte方法的具体用法?C# GenericReader.ReadSByte怎么用?C# GenericReader.ReadSByte使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Server.GenericReader的用法示例。


在下文中一共展示了GenericReader.ReadSByte方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Deserialize

        public virtual void Deserialize( GenericReader reader )
        {
            int version = reader.ReadInt();

            SetLastMoved();

            switch ( version )
            {
                case 7:
                case 6:
                {
                    SaveFlag flags = (SaveFlag)reader.ReadInt();

                    if ( version < 7 )
                    {
                        LastMoved = reader.ReadDeltaTime();
                    }
                    else
                    {
                        int minutes = reader.ReadEncodedInt();

                        try{ LastMoved = Core.Now - TimeSpan.FromMinutes( minutes ); }
                        catch{ LastMoved = Core.Now; }
                    }

                    if ( GetSaveFlag( flags, SaveFlag.Direction ) )
                        m_Direction = (Direction)reader.ReadByte();

                    if ( GetSaveFlag( flags, SaveFlag.Bounce ) )
                        m_Bounce = BounceInfo.Deserialize( reader );

                    if ( GetSaveFlag( flags, SaveFlag.LootType ) )
                        m_LootType = (LootType)reader.ReadByte();

                    int x = 0, y = 0, z = 0;

                    if ( GetSaveFlag( flags, SaveFlag.LocationFull ) )
                    {
                        x = reader.ReadEncodedInt();
                        y = reader.ReadEncodedInt();
                        z = reader.ReadEncodedInt();
                    }
                    else
                    {
                        if ( GetSaveFlag( flags, SaveFlag.LocationByteXY ) )
                        {
                            x = reader.ReadByte();
                            y = reader.ReadByte();
                        }
                        else if ( GetSaveFlag( flags, SaveFlag.LocationShortXY ) )
                        {
                            x = reader.ReadShort();
                            y = reader.ReadShort();
                        }

                        if ( GetSaveFlag( flags, SaveFlag.LocationSByteZ ) )
                            z = reader.ReadSByte();
                    }

                    m_Location = new Point3D( x, y, z );

                    if ( GetSaveFlag( flags, SaveFlag.ItemID ) )
                        m_ItemID = reader.ReadEncodedInt();

                    if ( GetSaveFlag( flags, SaveFlag.Hue ) )
                        m_Hue = reader.ReadEncodedInt();

                    if ( GetSaveFlag( flags, SaveFlag.Amount ) )
                        m_Amount = reader.ReadEncodedInt();
                    else
                        m_Amount = 1;

                    if ( GetSaveFlag( flags, SaveFlag.Layer ) )
                        m_Layer = (Layer)reader.ReadByte();

                    if ( GetSaveFlag( flags, SaveFlag.Name ) )
                        m_Name = string.Intern(reader.ReadString());

                    if ( GetSaveFlag( flags, SaveFlag.Parent ) )
                    {
                        Serial parent = reader.ReadInt();

                        if ( parent.IsMobile )
                            m_Parent = World.FindMobile( parent );
                        else if ( parent.IsItem )
                            m_Parent = World.FindItem( parent );
                        else
                            m_Parent = null;

                        if ( m_Parent == null && (parent.IsMobile || parent.IsItem) )
                            Delete();
                    }

                    if ( GetSaveFlag( flags, SaveFlag.Items ) )
                        m_Items = reader.ReadItemList();
                    //else
                    //	m_Items = new ArrayList( 1 );

                    if ( GetSaveFlag( flags, SaveFlag.IntWeight ) )
                        m_Weight = reader.ReadEncodedInt();
//.........这里部分代码省略.........
开发者ID:BackupTheBerlios,项目名称:sunuo-svn,代码行数:101,代码来源:Item.cs

示例2: Deserialize

        public virtual void Deserialize( GenericReader reader )
        {
            int version = reader.ReadInt();

            SetLastMoved();

            switch ( version )
            {
                case 14:
                    {
                        m_InstanceID = reader.ReadInt();

                        SaveFlag flags = (SaveFlag) reader.ReadInt();

                        int minutes = reader.ReadEncodedInt();

                        try { LastMoved = DateTime.Now - TimeSpan.FromMinutes( minutes ); }
                        catch { LastMoved = DateTime.Now; }

                        if ( GetSaveFlag( flags, SaveFlag.Direction ) )
                            m_Direction = (Direction) reader.ReadByte();

                        if ( GetSaveFlag( flags, SaveFlag.LightType ) )
                            m_LightType = (LightType) reader.ReadByte();

                        if ( GetSaveFlag( flags, SaveFlag.Bounce ) )
                            m_Bounce = BounceInfo.Deserialize( reader );

                        if ( GetSaveFlag( flags, SaveFlag.LootType ) )
                            m_LootType = (LootType) reader.ReadByte();

                        int x = 0, y = 0, z = 0;

                        if ( GetSaveFlag( flags, SaveFlag.LocationFull ) )
                        {
                            x = reader.ReadEncodedInt();
                            y = reader.ReadEncodedInt();
                            z = reader.ReadEncodedInt();
                        }
                        else
                        {
                            if ( GetSaveFlag( flags, SaveFlag.LocationByteXY ) )
                            {
                                x = reader.ReadByte();
                                y = reader.ReadByte();
                            }
                            else if ( GetSaveFlag( flags, SaveFlag.LocationShortXY ) )
                            {
                                x = reader.ReadShort();
                                y = reader.ReadShort();
                            }

                            if ( GetSaveFlag( flags, SaveFlag.LocationSByteZ ) )
                                z = reader.ReadSByte();
                        }

                        m_Location = new Point3D( x, y, z );

                        if ( GetSaveFlag( flags, SaveFlag.ItemID ) )
                            m_ItemID = reader.ReadEncodedInt();

                        if ( GetSaveFlag( flags, SaveFlag.Hue ) )
                            m_Hue = reader.ReadEncodedInt();

                        if ( GetSaveFlag( flags, SaveFlag.Amount ) )
                            m_Amount = reader.ReadEncodedInt();
                        else
                            m_Amount = 1;

                        if ( GetSaveFlag( flags, SaveFlag.Layer ) )
                            m_Layer = (Layer) reader.ReadByte();

                        if ( GetSaveFlag( flags, SaveFlag.Name ) )
                            m_Name = string.Intern( reader.ReadString() );

                        if ( GetSaveFlag( flags, SaveFlag.Parent ) )
                        {
                            Serial parent = reader.ReadInt();

                            if ( parent.IsMobile )
                                m_Parent = World.Instance.FindMobile( parent );
                            else if ( parent.IsItem )
                                m_Parent = World.Instance.FindItem( parent );
                            else
                                m_Parent = null;

                            if ( m_Parent == null && ( parent.IsMobile || parent.IsItem ) )
                                Delete();
                        }

                        if ( GetSaveFlag( flags, SaveFlag.Items ) )
                            m_Items = reader.ReadStrongItemList();

                        if ( GetSaveFlag( flags, SaveFlag.IntWeight ) )
                            m_Weight = reader.ReadEncodedInt();
                        else if ( GetSaveFlag( flags, SaveFlag.WeightNot1or0 ) )
                            m_Weight = reader.ReadDouble();
                        else if ( GetSaveFlag( flags, SaveFlag.WeightIs0 ) )
                            m_Weight = 0.0;
                        else
//.........这里部分代码省略.........
开发者ID:Ravenwolfe,项目名称:xrunuo,代码行数:101,代码来源:Item.cs

示例3: Deserialize

        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch ( version )
            {
                case 0:
                    _Rect = reader.ReadRect2D();
                    _Items = reader.ReadStrongItemList();
                    _Battle = reader.ReadItem<BattleController>();
                    _Owner = reader.ReadInt();
                    _ScoreFactor = reader.ReadSByte();
                    break;
            }

            Timer.DelayCall(TimeSpan.Zero, new TimerCallback(UpdateRect));

            _CheckTimer = Timer.DelayCall(TimeSpan.Zero, TimeSpan.FromSeconds(1.0), new TimerCallback(CheckOwner));
        }
开发者ID:greeduomacro,项目名称:divinity,代码行数:21,代码来源:BattleBuilding.cs

示例4: Deserialize

		public virtual void Deserialize(GenericReader reader)
		{
			int version = reader.ReadInt();

			SetLastMoved();

			// must always read this first
			SaveFlag flags = 0;
			if (version >= 5)
				flags = (SaveFlag)reader.ReadInt32();

			switch (version)
			{
				case 10:
					{	// get the per item custom drop rate
						if (GetSaveFlag(flags, SaveFlag.DropRate))
							m_DropRate = reader.ReadDouble();
					}
					goto case 9;
				case 9:
					goto case 8;
				case 8:
					goto case 7;// change is at bottom of file after ImplFlags are read
				case 7:
					goto case 6;
				case 6:
					{
						if (version < 7)
						{
							LastMoved = reader.ReadDeltaTime();
						}
						else
						{
							int minutes = reader.ReadEncodedInt();

							try { LastMoved = DateTime.Now - TimeSpan.FromMinutes(minutes); }
							catch { LastMoved = DateTime.Now; }
						}

						if (GetSaveFlag(flags, SaveFlag.Direction))
							m_Direction = (Direction)reader.ReadByte();

						if (GetSaveFlag(flags, SaveFlag.Bounce))
							m_Bounce = BounceInfo.Deserialize(reader);

						if (GetSaveFlag(flags, SaveFlag.LootType))
							m_LootType = (LootType)reader.ReadByte();

						int x = 0, y = 0, z = 0;

						if (GetSaveFlag(flags, SaveFlag.LocationFull))
						{
							x = reader.ReadEncodedInt();
							y = reader.ReadEncodedInt();
							z = reader.ReadEncodedInt();
						}
						else
						{
							if (GetSaveFlag(flags, SaveFlag.LocationByteXY))
							{
								x = reader.ReadByte();
								y = reader.ReadByte();
							}
							else if (GetSaveFlag(flags, SaveFlag.LocationShortXY))
							{
								x = reader.ReadShort();
								y = reader.ReadShort();
							}

							if (GetSaveFlag(flags, SaveFlag.LocationSByteZ))
								z = reader.ReadSByte();
						}

						m_Location = new Point3D(x, y, z);

						if (GetSaveFlag(flags, SaveFlag.ItemID))
							m_ItemID = reader.ReadEncodedInt();

						if (GetSaveFlag(flags, SaveFlag.Hue))
							m_Hue = reader.ReadEncodedInt();

						if (GetSaveFlag(flags, SaveFlag.Amount))
							m_Amount = reader.ReadEncodedInt();
						else
							m_Amount = 1;

						if (GetSaveFlag(flags, SaveFlag.Layer))
							m_Layer = (Layer)reader.ReadByte();

						if (GetSaveFlag(flags, SaveFlag.Name))
							m_Name = reader.ReadString();

						if (GetSaveFlag(flags, SaveFlag.Parent))
						{
							Serial parent = reader.ReadInt32();

							if (parent.IsMobile)
								m_Parent = World.FindMobile(parent);
							else if (parent.IsItem)
								m_Parent = World.FindItem(parent);
//.........这里部分代码省略.........
开发者ID:zerodowned,项目名称:angelisland,代码行数:101,代码来源:Item.cs


注:本文中的Server.GenericReader.ReadSByte方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。