private static void LoadIndex(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary(r => { var i = r.ReadInt(); var p = r.ReadMap(); var m = new InstanceMap(i, p, p.Name + "-INDEX", Season.Desolation, MapRules.None); return(new KeyValuePair <InstanceMapSerial, InstanceMap>(m.Serial, m)); }, Maps); reader.ReadBlockDictionary(r => { var s = r.ReadHashCode <DungeonSerial>(); var d = r.ReadTypeCreate <Dungeon>(s); return(new KeyValuePair <DungeonSerial, Dungeon>(d.Serial, d)); }, Dungeons); } break; } }
public virtual void Deserialize(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 1: { Winners = reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = r.ReadStrongItemList(); return(new KeyValuePair <PlayerMobile, List <Item> >(k, v)); }); Losers = reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = r.ReadStrongItemList(); return(new KeyValuePair <PlayerMobile, List <Item> >(k, v)); }); } goto case 0; case 0: { Number = reader.ReadInt(); if (version < 1) { var winners = reader.ReadStrongMobileList <PlayerMobile>(); Winners = new Dictionary <PlayerMobile, List <Item> >(winners.Count); winners.ForEach(m => Winners.Add(m, new List <Item>())); var losers = reader.ReadStrongMobileList <PlayerMobile>(); Losers = new Dictionary <PlayerMobile, List <Item> >(losers.Count); losers.ForEach(m => Losers.Add(m, new List <Item>())); } if (reader.ReadBool()) { Started = reader.ReadDateTime(); } if (reader.ReadBool()) { Ended = reader.ReadDateTime(); } } break; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); reader.GetVersion(); Name = reader.ReadString(); Summary = reader.ReadString(); Token = reader.ReadString(); Available = reader.ReadBool(); AutoJoin = reader.ReadBool(); Access = reader.ReadFlag <AccessLevel>(); ProfanityAction = reader.ReadFlag <ProfanityAction>(); TextColor = reader.ReadFlag <KnownColor>(); TextHue = reader.ReadInt(); UserLimit = reader.ReadInt(); SpamDelay = reader.ReadTimeSpan(); Bans = reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = r.ReadDateTime(); return(new KeyValuePair <PlayerMobile, DateTime>(k, v)); }); History = new Dictionary <PlayerMobile, WorldChatMessage>(); Users = new Dictionary <PlayerMobile, DateTime>(); }
private static bool DeserializeGames(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( r => { var t = r.ReadType(); var g = Games.GetValue(t) ?? CreateGame(t); g.Deserialize(r); return(new KeyValuePair <Type, IGame>(t, g)); }, Games); } break; } return(true); }
public static bool Deserialize(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { if (reader.ReadBool()) { if (DefaultEntries != null) { DefaultEntries.Deserialize(reader); } else { DefaultEntries = new ToolbarState(reader); } } reader.ReadBlockDictionary( r => { PlayerMobile k = r.ReadMobile <PlayerMobile>(); ToolbarState v = new ToolbarState(r); return(new KeyValuePair <PlayerMobile, ToolbarState>(k, v)); }, Profiles); } break; } return(true); }
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; } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); Owner = reader.ReadMobile(); switch (version) { case 0: { Credits = reader.ReadInt(); _Statistics = reader.ReadBlockDictionary( r => { var k = r.ReadString(); var v = new GameStatistics(r); return(new KeyValuePair <string, GameStatistics>(k, v)); }, _Statistics); } break; } }
public void Deserialize(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { Owner = reader.ReadMobile <PlayerMobile>(); Deleted = reader.ReadBool(); if (!Deleted) { History = reader.ReadBlockDictionary( r1 => { TimeStamp k = r1.ReadDouble(); var v = r1.ReadBlockList(r2 => new TrashProfileEntry(r2)); return(new KeyValuePair <TimeStamp, List <TrashProfileEntry> >(k, v)); }); } } break; } }
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); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); switch (version) { case 1: Desc = reader.ReadString(); goto case 0; case 0: { Type = reader.ReadType(); Name = reader.ReadString(); CanIgnore = reader.ReadBool(); States = reader.ReadBlockDictionary( r => { var state = new NotifySettingsState(this, r); return(new KeyValuePair <IAccount, NotifySettingsState>(state.Owner.Account, state)); }); } break; } }
public void Deserialize(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { Owner = reader.ReadMobile <PlayerMobile>(); Deleted = reader.ReadBool(); if (!Deleted) { History = reader.ReadBlockDictionary( r1 => { TimeStamp k = r1.ReadDouble(); var v = r1.ReadBlockList(r2 => new VoteProfileEntry(r2)); return(new KeyValuePair <TimeStamp, List <VoteProfileEntry> >(k, v)); }); } } break; } if (History != null) { foreach (var h in History.Values) { h.Prune(true, e => e.VoteSite); } } }
private static bool Deserialize(GenericReader reader) { reader.ReadBlockDictionary( () => { string name = reader.ReadString(); var players = reader.ReadStrongMobileList <PlayerMobile>(); return(new KeyValuePair <string, List <PlayerMobile> >(name, players)); }); return(true); }
private static bool Deserialize(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 1: { reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = new CastBarState(r); return(new KeyValuePair <PlayerMobile, CastBarState>(k, v)); }, States); } break; case 0: { reader.ReadBlockDictionary( r => { var k = r.ReadMobile <PlayerMobile>(); var v = new CastBarState(r.ReadBool(), new Point(r.ReadInt(), r.ReadInt())); return(new KeyValuePair <PlayerMobile, CastBarState>(k, v)); }, States); } break; } return(true); }
public void Deserialize(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { Deleted = reader.ReadBool(); Name = reader.ReadString(); Season = reader.ReadInt(); Rules = reader.ReadFlag <MapRules>(); InstanceRegions = reader.ReadBlockList(r => { var t = r.ReadType(); var name = r.ReadString(); var area = r.ReadArray(r1 => r1.ReadRect3D()); if (Regions.ContainsKey(name)) { var reg = Regions[name]; if (!(reg is InstanceRegion ir) || !reg.TypeEquals(t, false) || !reg.Area.ContentsEqual(area, true)) { reg.Unregister(); Regions.Remove(name); } else { ir.Deserialize(r); return(ir); } } return(t.CreateInstanceSafe <InstanceRegion>(name, this, area, r)); }, InstanceRegions); BounceInfo = reader.ReadBlockDictionary(r => { var k = r.ReadMobile <PlayerMobile>(); var v = r.ReadLocation(); return(new KeyValuePair <PlayerMobile, MapPoint>(k, v)); }, BounceInfo); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); #region Critical Non-Versioned Values UID = new TemplateSerial(reader); #endregion int version = reader.GetVersion(); switch (version) { case 0: { Name = reader.ReadString(); Notes = reader.ReadString(); Skills = reader.ReadBlockDictionary( () => { var key = reader.ReadFlag <SkillName>(); double val = reader.ReadDouble(); return(new KeyValuePair <SkillName, double>(key, val)); }, Skills); Stats = reader.ReadBlockDictionary( () => { var key = reader.ReadFlag <StatType>(); int val = reader.ReadInt(); return(new KeyValuePair <StatType, int>(key, val)); }, Stats); } break; } }
private static bool DeserializeTransactions(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( r => { var t = new DonationTransaction(r); return(new KeyValuePair <string, DonationTransaction>(t.ID, t)); }, Transactions); return(true); }
private static bool Deserialize(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( r => { var k = r.ReadAccount(); var v = new TimeBoostProfile(r); return(new KeyValuePair <IAccount, TimeBoostProfile>(k, v)); }, Profiles); return(true); }
public virtual void Deserialize(GenericReader reader) { int version = reader.ReadInt(); switch (version) { case 0: Entries = reader.ReadBlockDictionary( r => { PvPProfileHistoryEntry e = r.ReadTypeCreate <PvPProfileHistoryEntry>(r); return(new KeyValuePair <int, PvPProfileHistoryEntry>(e.Season, e)); }); break; } }
private static bool DeserializePlayerProfiles(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var e = reader.ReadMobile <PlayerMobile>(); var p = new PlayerZombieProfile(reader); return(new KeyValuePair <PlayerMobile, PlayerZombieProfile>(e, p)); }, PlayerProfiles); return(true); }
private static bool DeserializePortals(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate <Portal>(reader); PortalSerial s = c != null ? c.UID : null; return(new KeyValuePair <PortalSerial, Portal>(s, c)); }, PortalList); return(true); }
private static bool DeserializeDonationProfiles(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var e = reader.ReadString(); var p = new DonationProfile(reader); return new KeyValuePair<string, DonationProfile>(e, p); }, DonationProfiles); return true; }
private static bool DeserializeInvasions(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate <Invasion>(reader); InvasionSerial s = c != null ? c.UID : null; return(new KeyValuePair <InvasionSerial, Invasion>(s, c)); }, Invasions); return(true); }
private static bool DeserializeDonationProfiles(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var e = reader.ReadString(); var p = new DonationProfile(reader); return(new KeyValuePair <string, DonationProfile>(e, p)); }, DonationProfiles); return(true); }
private static bool DeserializeZombieEvent(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate <ZombieInstance>(reader); ZombieInstanceSerial s = c != null ? c.Uid : null; return(new KeyValuePair <ZombieInstanceSerial, ZombieInstance>(s, c)); }, ZombieEvents); return(true); }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); var version = reader.GetVersion(); UID = version > 0 ? new PvPSerial(reader) : new PvPSerial(TimeStamp.UtcNow + "~" + Utility.RandomMinMax(0, Int32.MaxValue)); switch (version) { case 1: case 0: { Season = reader.ReadInt(); _DamageTaken = reader.ReadLong(); _DamageDone = reader.ReadLong(); _HealingTaken = reader.ReadLong(); _HealingDone = reader.ReadLong(); _Kills = reader.ReadLong(); _Deaths = reader.ReadLong(); _Resurrections = reader.ReadLong(); _PointsGained = reader.ReadLong(); _PointsLost = reader.ReadLong(); _Wins = reader.ReadLong(); _Losses = reader.ReadLong(); _Battles = reader.ReadLong(); _MiscStats = reader.ReadBlockDictionary( r => { var k = r.ReadString(); var v = r.ReadLong(); return(new KeyValuePair <string, long>(k, v)); }, _MiscStats); } break; } }
private static bool LoadSets(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( r => { EquipmentSet v = r.ReadTypeCreate <EquipmentSet>(r); return(new KeyValuePair <Type, EquipmentSet>(v.GetType(), v)); }, Sets); } break; } return(true); }
private static bool DeserializeLockouts(GenericReader reader) { var version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary(r => { var k = r.ReadMobile <PlayerMobile>(); var v = new LockoutState(r); return(new KeyValuePair <PlayerMobile, LockoutState>(k, v)); }, Lockouts); } break; } return(true); }
private static bool DeserializeVoteSites(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( r => { var v = r.ReadTypeCreate <IVoteSite>(r); return(new KeyValuePair <int, IVoteSite>(v.UID, v)); }, VoteSites); } break; } return(true); }
private static bool Deserialize(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var k = reader.ReadType(); var v = EnsureSettings(k); if (v != null) { v.Deserialize(reader); } return(new KeyValuePair <Type, NotifySettings>(k, v)); }, Settings); return(true); }
private static bool DeserializeTemplates(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { var key = reader.ReadMobile <PlayerMobile>(); var val = new TemplateProfile(reader); return(new KeyValuePair <PlayerMobile, TemplateProfile>(key, val)); }, Templates); } break; } return(true); }
private static bool DeserializeProfiles(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { PlayerMobile key = reader.ReadMobile <PlayerMobile>(); PvPProfile val = reader.ReadTypeCreate <PvPProfile>(reader); return(new KeyValuePair <PlayerMobile, PvPProfile>(key, val)); }, Profiles); } break; } return(true); }
private static bool DeserializeHueRegistry(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { var h = new TitleHue(reader); TitleObjectSerial s = h.UID; return new KeyValuePair<TitleObjectSerial, TitleHue>(s, h); }, HueRegistry); } break; } return true; }
private static bool DeserializeProfiles(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { var p = new TitleProfile(reader); PlayerMobile s = p.Owner; return new KeyValuePair<PlayerMobile, TitleProfile>(s, p); }, Profiles); } break; } return true; }
private static bool DeserializeTemplates(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { var key = reader.ReadMobile<PlayerMobile>(); var val = new TemplateProfile(reader); return new KeyValuePair<PlayerMobile, TemplateProfile>(key, val); }, Templates); } break; } return true; }
private static bool DeserializeInvasions(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate<Invasion>(reader); InvasionSerial s = c != null ? c.UID : null; return new KeyValuePair<InvasionSerial, Invasion>(s, c); }, Invasions); return true; }
private static void DeserializeCams(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 3: // Skip to case 1 goto case 1; case 2: { reader.ReadBlockDictionary( () => { var cam = reader.ReadMobile<PlayerMobile>(); var viewed = reader.ReadMobile<PlayerMobile>(); return new KeyValuePair<PlayerMobile, PlayerMobile>(cam, viewed); }, CurrentlyViewing); } goto case 1; case 1: { reader.ReadBlockDictionary( () => { var player = reader.ReadMobile<PlayerMobile>(); int count = reader.ReadInt(); return new KeyValuePair<PlayerMobile, int>(player, count); }, PlayerMurderers); reader.ReadBlockDictionary( () => { BaseCreature mob = reader.ReadMobile<BaseCreature>(); int count = reader.ReadInt(); return new KeyValuePair<BaseCreature, int>(mob, count); }, MonsterMurderers); CurrentDeathCount = reader.ReadULong(); CurrentPlayerMurders = reader.ReadULong(); CurrentMonsterMurders = reader.ReadULong(); } goto case 0; case 0: { if (version < 1) { CurrentDeathCount = Convert.ToUInt64(reader.ReadInt()); CurrentPlayerMurders = Convert.ToUInt64(reader.ReadInt()); CurrentMonsterMurders = Convert.ToUInt64(reader.ReadInt()); } TopPlayerMurderer = reader.ReadMobile<PlayerMobile>(); TopMonsterMurderer = reader.ReadMobile<BaseCreature>(); if (version < 1) { reader.ReadBlockDictionary( () => { var player = reader.ReadMobile<PlayerMobile>(); DateTime date = reader.ReadDateTime(); return new KeyValuePair<PlayerMobile, DateTime>(player, date); }, DeathCams); reader.ReadBlockDictionary( () => { var player = reader.ReadMobile<PlayerMobile>(); DateTime date = reader.ReadDateTime(); return new KeyValuePair<PlayerMobile, DateTime>(player, date); }, DeathCamsEvents); } } break; } }
private static bool DeserializePortals(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate<Portal>(reader); PortalSerial s = c != null ? c.UID : null; return new KeyValuePair<PortalSerial, Portal>(s, c); }, PortalList); return true; }
private static bool DeserializeConquestRegistry(GenericReader reader) { int version = reader.GetVersion(); switch (version) { case 0: { reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate<Conquest>(reader); ConquestSerial s = c != null ? c.UID : null; return new KeyValuePair<ConquestSerial, Conquest>(s, c); }, ConquestRegistry); } break; } return true; }
private static bool DeserializePlayerProfiles(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var e = reader.ReadMobile<PlayerMobile>(); var p = new PlayerEventScoreProfile(reader); if (p.DisplayCharacter == null) { p.DisplayCharacter = e; } return new KeyValuePair<PlayerMobile, PlayerEventScoreProfile>(e, p); }, PlayerProfiles); return true; }
private static bool DeserializeZombieEvent(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var c = reader.ReadTypeCreate<ZombieInstance>(reader); ZombieInstanceSerial s = c != null ? c.Uid : null; return new KeyValuePair<ZombieInstanceSerial, ZombieInstance>(s, c); }, ZombieEvents); return true; }
private static bool DeserializePlayerProfiles(GenericReader reader) { reader.GetVersion(); reader.ReadBlockDictionary( () => { var e = reader.ReadMobile<PlayerMobile>(); var p = new PlayerZombieProfile(reader); return new KeyValuePair<PlayerMobile, PlayerZombieProfile>(e, p); }, PlayerProfiles); return true; }
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; }