public override string GetInfo() { string s = base.GetInfo(); s += string.Format("<color={0}>{1}</color>\n", XKCDColors.HexFormat.Cyan, experimentActionName); s += string.Format("Can Transmit: {0}\n", RUIutils.GetYesNoUIString(canTransmit)); if (canTransmit) { s += string.Format("Transmission: {0:P0}\n", xmitDataScalar); } if (excludeAtmosphere) { s += string.Format("Exclude Atmosphere: {0}\n", RUIutils.GetYesNoUIString(true)); } s += string.Format("Experiment Complexity: {0}\n", complexity); s += string.Format("Std. Time To Completion: {0:N0} Days\n", getDays(experimentTime)); if (animated && oneShotAnim) { s += string.Format("One Shot: {0}", RUIutils.GetYesNoUIString(true)); } s += resHandler.PrintModuleResources(1); return(s); }
private List <contractUIObject> typeSort(List <contractUIObject> cL, bool B) { List <int> position = new List <int>(); List <contractUIObject> altList = new List <contractUIObject>(); for (int i = 0; i < cL.Count; i++) { foreach (ContractParameter cP in cL[i].Container.Root.AllParameters) { if (cP.GetType() == typeof(ReachAltitudeEnvelope)) { altList.Add(cL[i]); position.Add(i); break; } } } if (altList.Count > 1) { altList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(B, ((ReachAltitudeEnvelope)a.Container.Root.AllParameters.First(s => s.GetType() == typeof(ReachAltitudeEnvelope))).minAltitude.CompareTo(((ReachAltitudeEnvelope)b.Container.Root.AllParameters.First(s => s.GetType() == typeof(ReachAltitudeEnvelope))).minAltitude), a.Container.Title.CompareTo(b.Container.Title))); for (int j = 0; j < position.Count; j++) { cL[position[j]] = altList[j]; } } //ReachFlightEnvelop doesn't actually seem to be used by anything //position.Clear(); //List<contractContainer> flightList = new List<contractContainer>(); //for (int i = 0; i < cL.Count; i++) //{ // foreach (parameterContainer cP in cL[i].paramList) // { // if (cP.cParam.ID == "testFlightEnvelope") // { // flightList.Add(cL[i]); // position.Add(i); // } // } //} //if (flightList.Count > 1) //{ // flightList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(B, ((ReachFlightEnvelope)a.contract.AllParameters.First(s => s.ID == "testFlightEnvelope")).minAltitude.CompareTo(((ReachFlightEnvelope)b.contract.AllParameters.First(s => s.ID == "testFlightEnvelope")).minAltitude), a.contract.Title.CompareTo(b.contract.Title))); // for (int j = 0; j < position.Count; j++) // { // cL[position[j]] = flightList[j]; // } //} return(cL); }
public override string GetInfo() { var info = StringBuilderCache.Acquire(); info.Append(Localizer.Format("#LOC_KSPIE_MicrowavePowerTransmitter_info1")); //Aperture Diameter info.Append(": ").Append(apertureDiameter.ToString("F1")).AppendLine(" m"); info.Append(Localizer.Format("#LOC_KSPIE_MicrowavePowerTransmitter_info2")); //Can Mirror power info.Append(": ").AppendLine(RUIutils.GetYesNoUIString(isMirror)); info.Append(Localizer.Format("#LOC_KSPIE_MicrowavePowerTransmitter_info3")); //Can Transmit power info.Append(": ").AppendLine(RUIutils.GetYesNoUIString(canTransmit)); info.Append(Localizer.Format("#LOC_KSPIE_MicrowavePowerTransmitter_info4")); //Can Relay independently info.Append(": ").AppendLine(RUIutils.GetYesNoUIString(buildInRelay)); return(info.ToStringAndRelease()); }
public override string GetInfo() { var sb = new StringBuilder("<color=#8dffec>KIS Part Printing Workshop</color>"); sb.Append($"\nMinimum Crew: {MinimumCrew}"); sb.Append($"\nBase productivity factor: {ProductivityFactor:P0}"); sb.Append($"\nUse specialist bonus: "); sb.Append(RUIutils.GetYesNoUIString(UseSpecializationBonus)); if (UseSpecializationBonus) { sb.Append($"\nSpecialist skill: {ExperienceEffect}"); sb.Append($"\nSpecialist bonus: {SpecialistEfficiencyFactor:P0} per level"); } return(sb.ToString()); }
private List <TrackingStationWidget> SortWidgetsAlpha(List <TrackingStationWidget> widgets, bool asc) { List <KeyValuePair <TrackingStationWidget, double> > maneuvers = GetManeuvers(widgets); widgets.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!asc, a.vessel.vesselName.CompareTo(b.vessel.vesselName), a.vessel.launchTime.CompareTo(b.vessel.launchTime))); int count = maneuvers.Count; for (int i = 0; i < count; i++) { widgets.Add(maneuvers[i].Key); } return(widgets); }
public override string GetInfo() { StringBuilder sb = new StringBuilder("<color=#8dffec>KIS Part Recycker</color>"); sb.Append("\nMinimum Crew: "); sb.Append(MinimumCrew); sb.Append(string.Format("\nBase productivity factor: {0:P0}", ProductivityFactor)); sb.Append("\nUse specialist bonus: "); sb.Append(RUIutils.GetYesNoUIString(UseSpecializationBonus)); if (UseSpecializationBonus) { sb.Append("\nSpecialist skill: "); sb.Append(ExperienceEffect); sb.Append(string.Format("\nSpecialist bonus: {0:P0} per level", SpecialistEfficiencyFactor)); } return(sb.ToString()); }
public override string GetInfo() { string info = base.GetInfo(); if (breakable) { info += string.Format("Breakable: {0}\n", RUIutils.GetYesNoUIString(fixable)); info += string.Format("Fixable: {0}\n", RUIutils.GetYesNoUIString(fixable)); if (fixable) { info += string.Format("Engineer Level To Fix: {0}\n", fixLevel); } } return(info); }
//Returns an ordered list of missions for the main window; the master mission is always first internal List <contractMission> getAllMissions() { List <contractMission> mList = new List <contractMission>(); List <contractMission> tempList = new List <contractMission>(); for (int i = 0; i < missionList.Count; i++) { contractMission m = missionList.At(i); if (m == null) { continue; } if (m.MasterMission) { mList.Add(m); } else { tempList.Add(m); } } if (mList.Count == 0) { if (addMissionList("MasterMission")) { mList.Add(getMissionList("MasterMission")); } } tempList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(false, a.ActiveContracts.CompareTo(b.ActiveContracts), a.MissionTitle.CompareTo(b.MissionTitle))); if (tempList.Count > 0) { mList.AddRange(tempList); } return(mList); }
public override string GetInfo() { var sb = StringBuilderCache.Acquire(); sb.Append(Localizer.Format("#LOC_KSPIE_BeamGenerator_Type")).Append(": ").AppendLine(beamTypeName); //Type sb.Append(Localizer.Format("#LOC_KSPIE_BeamGenerator_CanSwitch")).Append(": "); sb.AppendLine(RUIutils.GetYesNoUIString(canSwitchWavelengthInFlight)).AppendLine(); //Can Switch In Flight if (!string.IsNullOrEmpty(techLevelMk2)) { sb.Append("<color=#7fdfffff>").Append(Localizer.Format("#LOC_KSPIE_BeamGenerator_upgradeTechnologies")).AppendLine(":</color><size=10>"); if (!string.IsNullOrEmpty(techLevelMk1)) { sb.Append("<color=#ffff00ff>Mk1:</color> ").AppendLine(Localizer.Format(PluginHelper.GetTechTitleById(techLevelMk1))); } if (!string.IsNullOrEmpty(techLevelMk2)) { sb.Append("<color=#ffdd00ff>Mk2:</color> ").AppendLine(Localizer.Format(PluginHelper.GetTechTitleById(techLevelMk2))); } if (!string.IsNullOrEmpty(techLevelMk3)) { sb.Append("<color=#ffcc00ff>Mk3:</color> ").AppendLine(Localizer.Format(PluginHelper.GetTechTitleById(techLevelMk3))); } if (!string.IsNullOrEmpty(techLevelMk4)) { sb.Append("<color=#ffbb00ff>Mk4:</color> ").AppendLine(Localizer.Format(PluginHelper.GetTechTitleById(techLevelMk4))); } if (!string.IsNullOrEmpty(techLevelMk5)) { sb.Append("<color=#ffaa00ff>Mk5:</color> ").AppendLine(Localizer.Format(PluginHelper.GetTechTitleById(techLevelMk5))); } sb.AppendLine("</size>"); } if (_inlineConfigurations.Count <= 0) { return(sb.ToString()); } sb.Append("<color=#7fdfffff>").Append(Localizer.Format("#LOC_KSPIE_BeamGenerator_atmosphericAbsorbtion")).AppendLine(":</color><size=10>"); foreach (var beamConfiguration in _inlineConfigurations) { sb.Append(ExtendWithSpace(beamConfiguration.atmosphericAbsorptionPercentage + "%", 4)); sb.Append(" / ").Append(ExtendWithSpace(beamConfiguration.waterAbsorptionPercentage + "%", 4)); sb.Append("<color=#00ff00ff> ").Append(beamConfiguration.beamWaveName).AppendLine("</color>"); } sb.AppendLine("</size>"); sb.Append("<color=#7fdfffff>").Append(Localizer.Format("#LOC_KSPIE_BeamGenerator_beamEfficiencies")).AppendLine(":</color><size=10>"); foreach (var beamConfiguration in _inlineConfigurations) { sb.Append("<color=#00ff00ff>").Append(beamConfiguration.beamWaveName).Append("</color>"); sb.Append("<color=#00e600ff> (").Append(WavelengthToText(beamConfiguration.wavelength)).AppendLine(")</color> "); if (beamConfiguration.efficiencyPercentage0 > 0) { sb.Append(GetColorCodeFromTechId(beamConfiguration.techRequirement0)).Append("Mk"). Append(GetTechLevelFromTechId(beamConfiguration.techRequirement0)).Append(":</color> "). Append(beamConfiguration.efficiencyPercentage0).Append("% "); } if (beamConfiguration.efficiencyPercentage1 > 0) { sb.Append(GetColorCodeFromTechId(beamConfiguration.techRequirement1)).Append("Mk"). Append(GetTechLevelFromTechId(beamConfiguration.techRequirement1)).Append(":</color> ") .Append(beamConfiguration.efficiencyPercentage1).Append("% "); } if (beamConfiguration.efficiencyPercentage2 > 0) { sb.Append(GetColorCodeFromTechId(beamConfiguration.techRequirement2)).Append("Mk"). Append(GetTechLevelFromTechId(beamConfiguration.techRequirement2)).Append(":</color> "). Append(beamConfiguration.efficiencyPercentage2).Append("% "); } if (beamConfiguration.efficiencyPercentage3 > 0) { sb.Append(GetColorCodeFromTechId(beamConfiguration.techRequirement3)).Append("Mk"). Append(GetTechLevelFromTechId(beamConfiguration.techRequirement3)).Append(":</color> "). Append(beamConfiguration.efficiencyPercentage3).Append("% "); } sb.AppendLine(); } sb.Append("</size>"); return(sb.ToStringAndRelease()); }
public static string DisplayTech(string techId) { return(string.IsNullOrEmpty(techId) ? string.Empty : RUIutils.GetYesNoUIString( UpgradeAvailable(techId)) + " " + Localizer.Format(GetTechTitleById(techId))); }
private List <Guid> sortContracts(List <Guid> list, contractSortClass sortClass, bool dsc) { sortList.Clear(); int l = list.Count; for (int i = 0; i < l; i++) { Guid id = list[i]; contractUIObject cC = currentMission.getContract(id); if (cC == null) { continue; } if (cC.Order != null) { continue; } sortList.Add(cC); } switch (sortClass) { case contractSortClass.Expiration: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.Duration.CompareTo(b.Container.Duration), a.Container.Title.CompareTo(b.Container.Title))); break; case contractSortClass.Acceptance: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.Root.DateAccepted.CompareTo(b.Container.Root.DateAccepted), a.Container.Title.CompareTo(b.Container.Title))); break; case contractSortClass.Reward: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.TotalReward.CompareTo(b.Container.TotalReward), a.Container.Title.CompareTo(b.Container.Title))); break; case contractSortClass.Difficulty: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.Root.Prestige.CompareTo(b.Container.Root.Prestige), a.Container.Title.CompareTo(b.Container.Title))); break; case contractSortClass.Planet: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.TargetPlanet.CompareTo(b.Container.TargetPlanet), a.Container.Title.CompareTo(b.Container.Title))); break; case contractSortClass.Type: sortList.Sort((a, b) => RUIutils.SortAscDescPrimarySecondary(!dsc, a.Container.Root.GetType().Name.CompareTo(b.Container.Root.GetType().Name), a.Container.Title.CompareTo(b.Container.Title))); sortList = typeSort(sortList, !dsc); break; } list.Clear(); if (pinnedList.Count > 0) { list.AddRange(pinnedList); } int k = sortList.Count; for (int i = 0; i < k; i++) { contractUIObject c = sortList[i]; if (c == null) { continue; } list.Add(c.ID); } return(list); }
public override string GetInfo() { string s = base.GetInfo(); s += string.Format("<color={0}>{1}</color>\n", XKCDColors.HexFormat.Cyan, experimentActionName); s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoTransmit", RUIutils.GetYesNoUIString(canTransmit)); if (canTransmit) { s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoTransmission", xmitDataScalar.ToString("P0")); } if (excludeAtmosphere) { s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoAtmosphere", RUIutils.GetYesNoUIString(true)); } s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoComplexity", complexity); s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoCompletion", getDays(experimentTime).ToString("N0")); if (animated && oneShotAnim) { s += Localizer.Format("#LOC_SurfaceExperimentPack_ModuleSEPScienceExperiment_infoOneShot", RUIutils.GetYesNoUIString(true)); } s += resHandler.PrintModuleResources(1); return(s); }