// Token: 0x06004BBB RID: 19387 RVA: 0x0017714C File Offset: 0x0017534C public void UpdateInstantiatedData(DSHeroPhantomNtf DS) { using (List <ProHeroPhantom> .Enumerator enumerator = DS.HeroPhantoms.GetEnumerator()) { while (enumerator.MoveNext()) { ProHeroPhantom HP = enumerator.Current; int num = this.PhantomCollections.HeroPhantoms.FindIndex((HeroPhantom p) => p.ID == HP.ConfigId); if (num >= 0) { HeroPhantom heroPhantom = this.PhantomCollections.HeroPhantoms[num]; using (List <ProHeroPhantomLevel> .Enumerator enumerator2 = HP.LevelsCleared.GetEnumerator()) { while (enumerator2.MoveNext()) { ProHeroPhantomLevel LevelCleared = enumerator2.Current; HeroPhantomLevel heroPhantomLevel = heroPhantom.Levels.Find((HeroPhantomLevel l) => l.ID == LevelCleared.ConfigId); if (heroPhantomLevel != null) { heroPhantomLevel.FirstClear = new DateTime(LevelCleared.FirstClear); heroPhantomLevel.AchievementIdsFinished.AddRange(LevelCleared.AchievementsFinished); } } } } } } }
// Token: 0x0600723D RID: 29245 RVA: 0x001FA720 File Offset: 0x001F8920 public void DeSerialize(DSHeroPhantomNtf ntf) { if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_DeSerializeDSHeroPhantomNtf_hotfix != null) { this.m_DeSerializeDSHeroPhantomNtf_hotfix.call(new object[] { this, ntf }); return; } BJLuaObjHelper.IsSkipLuaHotfix = false; this.m_heroPhantomDS.ClearInitedData(); this.m_heroPhantomDS.InitVersion((ushort)ntf.Version, (ushort)ntf.Version); this.m_heroPhantomDS.PhantomCollections.ConfigDataLoader = base.m_configDataLoader; this.m_heroPhantomDS.UpdateInstantiatedData(ntf); }
// Token: 0x06004BBA RID: 19386 RVA: 0x00176F78 File Offset: 0x00175178 public override object SerializeToClient() { DSHeroPhantomNtf dsheroPhantomNtf = new DSHeroPhantomNtf(); dsheroPhantomNtf.Version = (uint)base.Version; if (this.PhantomCollections != null) { foreach (HeroPhantom heroPhantom in this.PhantomCollections.HeroPhantoms) { if (heroPhantom.Levels.Exists((HeroPhantomLevel l) => l.Cleared)) { ProHeroPhantom proHeroPhantom = new ProHeroPhantom { ConfigId = heroPhantom.ID }; foreach (HeroPhantomLevel heroPhantomLevel in heroPhantom.Levels) { if (heroPhantomLevel.Cleared) { ProHeroPhantomLevel proHeroPhantomLevel = new ProHeroPhantomLevel { ConfigId = heroPhantomLevel.ID, FirstClear = heroPhantomLevel.FirstClear.Ticks }; foreach (int item in heroPhantomLevel.AchievementIdsFinished) { proHeroPhantomLevel.AchievementsFinished.Add(item); } proHeroPhantom.LevelsCleared.Add(proHeroPhantomLevel); } } dsheroPhantomNtf.HeroPhantoms.Add(proHeroPhantom); } } } return(dsheroPhantomNtf); }