public override void Deserialize( GenericReader reader )
{
base.Deserialize( reader );
int version = reader.ReadInt();
switch ( version )
{
case 2:
case 1:
{
DateTime next = reader.ReadDateTime();
if ( next < DateTime.Now )
next = DateTime.Now;
m_Timer = Timer.DelayCall( next - DateTime.Now, EvaluationInterval, new TimerCallback( Evaluate ) );
goto case 0;
}
case 0:
{
m_LiveCreatures = reader.ReadInt();
m_VacationLeft = reader.ReadInt();
m_Food = new AquariumState();
m_Water = new AquariumState();
m_Food.Deserialize( reader );
m_Water.Deserialize( reader );
m_Events = new List<int>();
int count = reader.ReadInt();
for ( int i = 0; i < count; i ++ )
m_Events.Add( reader.ReadInt() );
m_RewardAvailable = reader.ReadBool();
break;
}
}
if ( version < 2 )
{
Weight = DefaultWeight;
Movable = false;
}
}