private void getPracticeUpInfo_To_Kouku(PracticeDeckResultFmt fmt) { int level = this.mem_ship.get_Item(0).Level; double num = Math.Sqrt((double)this.mem_ship.get_Item(0).Level); bool flag = Mst_DataManager.Instance.Mst_stype.get_Item(this.mem_ship.get_Item(0).Stype).IsTrainingShip(); fmt.PracticeResult.GetMemberExp = 0; int num2 = (!flag) ? 0 : 1; fmt.PracticeResult.GetShipExp = new Dictionary <int, int>(); fmt.PowerUpData = new Dictionary <int, PowUpInfo>(); double difficultShipExpKeisu = this.getDifficultShipExpKeisu(); double shipExpCommonKeisu = this.getShipExpCommonKeisu(); Dictionary <int, Mst_ship> mst_ship = Mst_DataManager.Instance.Mst_ship; using (List <Mem_ship> .Enumerator enumerator = this.mem_ship.GetEnumerator()) { while (enumerator.MoveNext()) { Mem_ship current = enumerator.get_Current(); fmt.PracticeResult.GetShipExp.Add(current.Rid, 0); fmt.PowerUpData.Add(current.Rid, default(PowUpInfo)); Mst_ship mst_ship2 = mst_ship.get_Item(current.Ship_id); if (mst_ship2.Stype != 13) { if (mst_ship2.Stype == 14) { List <Mst_slotitem> mstSlotItems = current.GetMstSlotItems(); bool flag2 = false; for (int i = 0; i < mstSlotItems.get_Count(); i++) { SlotitemCategory slotitem_type = Mst_DataManager.Instance.Mst_equip_category.get_Item(mstSlotItems.get_Item(i).Type3).Slotitem_type; if (slotitem_type == SlotitemCategory.Kanjouki || slotitem_type == SlotitemCategory.Suijouki) { flag2 = true; break; } } if (!flag2) { continue; } } double num3 = Math.Sqrt((double)current.Level); double max = (double)(14 + num2 * 7); double num4 = 10.0 + Utils.GetRandDouble(0.0, max, 1.0, 1) + Utils.GetRandDouble(0.0, num, 1.0, 1) + num / 2.0 + num3; num4 = num4 * difficultShipExpKeisu * shipExpCommonKeisu; fmt.PracticeResult.GetShipExp.set_Item(current.Rid, (int)num4); Ship_GrowValues battleBaseParam = current.GetBattleBaseParam(); PowUpInfo powUpInfo = default(PowUpInfo); double max2 = 1.5 + (double)num2 * 0.2 + (num + num3) / 20.0; powUpInfo.Taiku = (int)Utils.GetRandDouble(0.0, max2, 1.0, 1); if (battleBaseParam.Taiku + powUpInfo.Taiku > mst_ship2.Tyku_max) { int num5 = mst_ship2.Tyku_max - mst_ship2.Tyku; powUpInfo.Taiku = num5 - current.Kyouka.get_Item(Mem_ship.enumKyoukaIdx.Tyku); } if (this.motherBGroup.Contains(current.Stype)) { double max3 = 1.2 + (num + num3) / 20.0; powUpInfo.Karyoku = (int)Utils.GetRandDouble(0.0, max3, 1.0, 1); if (battleBaseParam.Houg + powUpInfo.Karyoku > mst_ship2.Houg_max) { int num6 = mst_ship2.Houg_max - mst_ship2.Houg; powUpInfo.Karyoku = num6 - current.Kyouka.get_Item(Mem_ship.enumKyoukaIdx.Houg); } } fmt.PowerUpData.set_Item(current.Rid, powUpInfo); } } } }