示例#1
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);
            reader.ReadInt();

            ValidationQueue <BaseFamiliar> .Add(this);
        }
示例#2
0
 private void Deserialize(IGenericReader reader, int version)
 {
     if (version == 0)
     {
         ValidationQueue <ArcaneCircleAddon> .Add(this);
     }
 }
示例#3
0
        public QuestArea(TextDefinition name, string region, Map forceMap)
        {
            m_Name       = name;
            m_RegionName = region;
            m_ForceMap   = forceMap;

            if (MLQuestSystem.Debug)
            {
                ValidationQueue <QuestArea> .Add(this);
            }
        }
示例#4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            if (reader.ReadBool())
            {
                ValidationQueue <Changeling> .Add(this);
            }
        }
示例#5
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadEncodedInt();

            if (version == 0)
            {
                ValidationQueue <ArcaneCircleAddon> .Add(this);
            }
        }
示例#6
0
        public override void Deserialize(IGenericReader reader)
        {
            base.Deserialize(reader);

            var version = reader.ReadInt();

            switch (version)
            {
            case 1:
            case 0:
            {
                Poster       = reader.ReadMobile();
                Subject      = reader.ReadString();
                Time         = reader.ReadDateTime();
                LastPostTime = reader.ReadDateTime();
                var hasThread = reader.ReadBool();
                Thread     = reader.ReadItem() as BulletinMessage;
                PostedName = reader.ReadString();
                PostedBody = reader.ReadInt();
                PostedHue  = reader.ReadInt();

                PostedEquip = new BulletinEquip[reader.ReadInt()];

                for (var i = 0; i < PostedEquip.Length; ++i)
                {
                    PostedEquip[i].itemID = reader.ReadInt();
                    PostedEquip[i].hue    = reader.ReadInt();
                }

                Lines = new string[reader.ReadInt()];

                for (var i = 0; i < Lines.Length; ++i)
                {
                    Lines[i] = reader.ReadString();
                }

                if (hasThread && Thread == null)
                {
                    Delete();
                }

                if (version == 0)
                {
                    ValidationQueue <BulletinMessage> .Add(this);
                }

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

            int version = reader.ReadInt();

            switch (version)
            {
            case 1:
            case 0:
            {
                this.m_Poster       = reader.ReadMobile();
                this.m_Subject      = reader.ReadString();
                this.m_Time         = reader.ReadDateTime();
                this.m_LastPostTime = reader.ReadDateTime();
                bool hasThread = reader.ReadBool();
                this.m_Thread     = reader.ReadItem() as BulletinMessage;
                this.m_PostedName = reader.ReadString();
                this.m_PostedBody = reader.ReadInt();
                this.m_PostedHue  = reader.ReadInt();

                this.m_PostedEquip = new BulletinEquip[reader.ReadInt()];

                for (int i = 0; i < this.m_PostedEquip.Length; ++i)
                {
                    this.m_PostedEquip[i].itemID = reader.ReadInt();
                    this.m_PostedEquip[i].hue    = reader.ReadInt();
                }

                this.m_Lines = new string[reader.ReadInt()];

                for (int i = 0; i < this.m_Lines.Length; ++i)
                {
                    this.m_Lines[i] = reader.ReadString();
                }

                if (hasThread && this.m_Thread == null)
                {
                    this.Delete();
                }

                if (version == 0)
                {
                    ValidationQueue <BulletinMessage> .Add(this);
                }

                break;
            }
            }
        }
示例#8
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 3:
            case 2:
            case 1:
            {
                DateTime next = reader.ReadDateTime();

                if (next < DateTime.UtcNow)
                {
                    next = DateTime.UtcNow;
                }

                m_Timer = Timer.DelayCall(next - DateTime.UtcNow, 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;
            }

            if (version < 3)
            {
                ValidationQueue <Aquarium> .Add(this);
            }
        }