Пример #1
0
        private static bool DeserializeProfiles(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
            case 1:
            {
                ConquestProfile[] list = reader.ReadBlockArray(() => new ConquestProfile(reader));

                foreach (ConquestProfile p in list)
                {
                    Profiles.AddOrReplace(p.Owner, p);
                }
            }
            break;

            case 0:
            {
                reader.ReadBlockDictionary(
                    () =>
                    {
                        var p          = new ConquestProfile(reader);
                        PlayerMobile s = p.Owner;

                        return(new KeyValuePair <PlayerMobile, ConquestProfile>(s, p));
                    },
                    Profiles);
            }
            break;
            }

            return(true);
        }
Пример #2
0
        public void Deserialize(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
            case 0:
            {
                Owner   = reader.ReadMobile <PlayerMobile>();
                Deleted = reader.ReadBool();

                if (!Deleted)
                {
                    History = reader.ReadBlockDictionary(
                        () =>
                        {
                            TimeStamp k = reader.ReadDouble();
                            var v       = reader.ReadBlockArray(() => new VoteProfileEntry(reader)).Where(e => (e.VoteSite != null)).ToList();

                            return(new KeyValuePair <TimeStamp, List <VoteProfileEntry> >(k, v));
                        });
                }
            }
            break;
            }
        }
Пример #3
0
        private static bool DeserializeProfiles(GenericReader reader)
        {
            var list = reader.ReadBlockArray(() => new TrashProfile(reader));

            foreach (var p in list)
            {
                Profiles.AddOrReplace(p.Owner, p);
            }

            return(true);
        }
Пример #4
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            reader.GetVersion();

            Boss1 = reader.ReadMobile();
            Boss2 = reader.ReadMobile();
            Boss3 = reader.ReadMobile();

            _BossFields = reader.ReadBlockArray(r => r.ReadStrongItemList <Static>());
        }
Пример #5
0
        private static bool DeserializeHandlers(GenericReader reader)
        {
            var list = reader.ReadBlockArray(() => reader.ReadTypeCreate <BaseTrashHandler>(reader));

            list.ForEach(
                h =>
            {
                if (!Handlers.ContainsKey(h.UID))
                {
                    Handlers.Add(h.UID, h);
                }
                else
                {
                    Handlers[h.UID] = h;
                }
            });

            InternalHandlerSort();
            return(true);
        }
Пример #6
0
        private static void DeserializeChannels(GenericReader reader)
        {
            reader.GetVersion();

            int idx = 0;

            reader.ReadBlockArray(
                r =>
            {
                var c = _PermaChannels[idx++];

                if (c != null)
                {
                    c.Deserialize(r);
                }

                return(c);
            },
                _PermaChannels);

            reader.ReadBlockList(r => r.ReadTypeCreate <WorldChatChannel>(r), _Channels);
        }
Пример #7
0
        private static bool DeserializeProfiles(GenericReader reader)
        {
            int version = reader.GetVersion();

            switch (version)
            {
                case 1:
                {
                    ConquestProfile[] list = reader.ReadBlockArray(() => new ConquestProfile(reader));

                    foreach (ConquestProfile p in list)
                    {
                        Profiles.AddOrReplace(p.Owner, p);
                    }
                }
                    break;
                case 0:
                {
                    reader.ReadBlockDictionary(
                        () =>
                        {
                            var p = new ConquestProfile(reader);
                            PlayerMobile s = p.Owner;

                            return new KeyValuePair<PlayerMobile, ConquestProfile>(s, p);
                        },
                        Profiles);
                }
                    break;
            }

            return true;
        }