Server.Regions.SpawnEntry.Deserialize C# (CSharp) Méthode

Deserialize() public méthode

public Deserialize ( GenericReader reader ) : void
reader GenericReader
Résultat void
		public void Deserialize( GenericReader reader )
		{
			int count = reader.ReadInt();

			for ( int i = 0; i < count; i++ )
			{
				int serial = reader.ReadInt();
				ISpawnable spawnableEntity = World.FindEntity( serial ) as ISpawnable;

				if (spawnableEntity != null)
					Add(spawnableEntity);
			}

			m_Running = reader.ReadBool();

			if ( reader.ReadBool() )
			{
				m_NextSpawn = reader.ReadDeltaTime();

				if ( this.Spawning )
				{
					if ( m_SpawnTimer != null )
						m_SpawnTimer.Stop();

					TimeSpan delay = m_NextSpawn - DateTime.Now;
					m_SpawnTimer = Timer.DelayCall( delay > TimeSpan.Zero ? delay : TimeSpan.Zero, new TimerCallback( TimerCallback ) ); 
				}
			}

			CheckTimer();
		}

Usage Example

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

            int version = reader.ReadEncodedInt();

            int count = reader.ReadInt();

            for (int i = 0; i < count; i++)
            {
                int id = reader.ReadInt();

                SpawnEntry entry = (SpawnEntry)SpawnEntry.Table[id];

                if (entry != null)
                {
                    entry.Deserialize(reader, version);
                }
                else
                {
                    SpawnEntry.Remove(reader, version);
                }
            }
        }