private TurnWorkResult ExecTurnStartWork() { IEnumerable <int> enumerable = Enumerable.Select <Mem_ndock, int>(Enumerable.Where <Mem_ndock>(Comm_UserDatas.Instance.User_ndock.get_Values(), (Mem_ndock ndock) => !ndock.IsRecoverEndTime() && ndock.State == NdockStates.RESTORE), (Mem_ndock ndock) => ndock.Ship_id); HashSet <int> hashSet = new HashSet <int>(enumerable); IEnumerable <int> enumerable2 = Enumerable.Select <Mem_deck, int>(Comm_UserDatas.Instance.User_deck.get_Values(), (Mem_deck x) => x.Ship[0]); HashSet <int> hashSet2 = new HashSet <int>(enumerable2); using (Dictionary <int, Mem_ship> .ValueCollection.Enumerator enumerator = Comm_UserDatas.Instance.User_ship.get_Values().GetEnumerator()) { while (enumerator.MoveNext()) { Mem_ship current = enumerator.get_Current(); current.AddTurnRecoveryCond(this, 10); bool flag = current.SumLovToTurnStart(hashSet.Contains(current.Rid), hashSet2.Contains(current.Rid)); } } TurnWorkResult turnWorkResult = new TurnWorkResult(); turnWorkResult.ChangeState = TurnState.CONTINOUS; turnWorkResult.TransportMaterial = new Dictionary <enumMaterialCategory, int>(); Dictionary <enumMaterialCategory, int> dictionary = new Dictionary <enumMaterialCategory, int>(); using (IEnumerator enumerator2 = Enum.GetValues(typeof(enumMaterialCategory)).GetEnumerator()) { while (enumerator2.MoveNext()) { object current2 = enumerator2.get_Current(); turnWorkResult.TransportMaterial.Add((enumMaterialCategory)((int)current2), 0); dictionary.Add((enumMaterialCategory)((int)current2), 0); } } this.TakeMaterial(ref turnWorkResult.TransportMaterial, ref dictionary); this.setSummaryMaterialInfo(dictionary, out turnWorkResult.BonusMaterialMonthly, out turnWorkResult.BonusMaterialWeekly); using (Dictionary <int, Mem_deck> .ValueCollection.Enumerator enumerator3 = Comm_UserDatas.Instance.User_deck.get_Values().GetEnumerator()) { while (enumerator3.MoveNext()) { Mem_deck current3 = enumerator3.get_Current(); if (current3.MissionState == MissionStates.NONE) { this.repairShipAutoRecovery(current3.Ship); } } } this.getInstance.Deck_Port(); turnWorkResult.MissionEndDecks = Enumerable.ToList <Mem_deck>(Enumerable.Where <Mem_deck>(Comm_UserDatas.Instance.User_deck.get_Values(), (Mem_deck x) => x.MissionState == MissionStates.END || (x.MissionState == MissionStates.STOP && x.CompleteTime == 0))); this.ExecBling_Ship(out turnWorkResult.BlingEndShip); this.ExecBling_EscortDeck(out turnWorkResult.BlingEndEscortDeck); this.ExecBling_Tanker(out turnWorkResult.BlingEndTanker); this.setTurnRewardItem(out turnWorkResult.SpecialItem); this.updateRewardItem(turnWorkResult.SpecialItem); return(turnWorkResult); }