private void UpdateData(DungeonChangedNty downf, List <ChapterInfo> data) { ChapterInfo chapterInfo = data.Find((ChapterInfo e) => e.chapterId == downf.chapterId); if (chapterInfo != null) { chapterInfo.totalStar = downf.chapterTotalStar; DungeonInfo dungeonInfo = chapterInfo.dungeons.Find((DungeonInfo e) => e.dungeonId == downf.dungeon.dungeonId); if (dungeonInfo != null) { dungeonInfo.clearance = downf.dungeon.clearance; dungeonInfo.remainingChallengeTimes = downf.dungeon.remainingChallengeTimes; dungeonInfo.star = downf.dungeon.star; dungeonInfo.resetChallengeTimes = downf.dungeon.resetChallengeTimes; Debug.Log(string.Concat(new object[] { "dungeon.clearance ", dungeonInfo.clearance, " dungeon.remainingChallengeTimes ", dungeonInfo.remainingChallengeTimes, " dungeon.star ", dungeonInfo.star, " dungeon.resetChallengeTimes ", dungeonInfo.resetChallengeTimes })); this.dicDungeonInfo.set_Item(downf.dungeon.dungeonId, dungeonInfo); } else { DungeonInfo dungeonInfo2 = new DungeonInfo(); dungeonInfo2.clearance = downf.dungeon.clearance; dungeonInfo2.remainingChallengeTimes = downf.dungeon.remainingChallengeTimes; dungeonInfo2.star = downf.dungeon.star; dungeonInfo2.resetChallengeTimes = downf.dungeon.resetChallengeTimes; chapterInfo.dungeons.Add(dungeonInfo2); this.dicDungeonInfo.Add(downf.dungeon.dungeonId, dungeonInfo2); } return; } }
private void OnGetDungeonChangeData(short state, DungeonChangedNty down = null) { if (state != 0) { StateManager.Instance.StateShow(state, 0); return; } if (down != null) { DungeonType.ENUM dungeonType = down.dungeonType; switch (dungeonType) { case DungeonType.ENUM.Normal: this.UpdateData(down, this.normalData); this.SetPross(DungeonType.ENUM.Normal); EventDispatcher.Broadcast(DungeonManagerEvent.InstanceDataHaveChange); break; case DungeonType.ENUM.Elite: this.UpdateData(down, this.eliteData); this.SetPross(DungeonType.ENUM.Elite); EventDispatcher.Broadcast(DungeonManagerEvent.InstanceDataHaveChange); break; case DungeonType.ENUM.Team: break; case DungeonType.ENUM.Arena: break; default: if (dungeonType != DungeonType.ENUM.Society) { } break; } } }