protected void CreateVesselListParameter() { if (vesselList.Any()) { if (vesselList.Count() == 1) { vesselListParam = new ParameterDelegate <Vessel>(hideVesselName ? "" : Localizer.Format("#cc.param.VesselParameterGroup.default", ContractVesselTracker.GetDisplayName(vesselList.First())), v => { bool check = VesselCanBeConsidered(v); if (!hideVesselName) { vesselListParam.SetTitle(Localizer.Format((FlightGlobals.ActiveVessel == v && trackedVessel != null ? "#cc.param.VesselParameterGroup.default" : "#cc.param.VesselParameterGroup.trackedVessel"), ContractVesselTracker.GetDisplayName(vesselList.First()))); } return(check); }); vesselListParam.Optional = true; vesselListParam.fakeOptional = true; AddParameter(vesselListParam); } else { vesselListParam = new ParameterDelegate <Vessel>(hideVesselName ? "" : Localizer.GetStringByTag("#cc.param.VesselParameterGroup.anyVesselListEmpty"), v => { bool check = VesselCanBeConsidered(v); if (!hideVesselName) { if (check) { vesselListParam.SetTitle(Localizer.Format("#cc.param.VesselParameterGroup.anyVesselList", ParameterDelegate <Vessel> .GetDelegateText(vesselListParam))); } else { Localizer.GetStringByTag("#cc.param.VesselParameterGroup.anyVesselListEmpty"); } } return(check); }); vesselListParam.Optional = true; vesselListParam.fakeOptional = true; foreach (string vessel in vesselList) { ContractParameter childParam = new ParameterDelegate <Vessel>(ContractVesselTracker.GetDisplayName(vessel), v => false); vesselListParam.AddParameter(childParam); } AddParameter(vesselListParam); } } }
protected void CreateVesselListParameter() { if (vesselList.Any()) { if (vesselList.Count() == 1) { vesselListParam = new ParameterDelegate <Vessel>(hideVesselName ? "" : "Vessel: " + ContractVesselTracker.GetDisplayName(vesselList.First()), v => { bool check = VesselCanBeConsidered(v); if (!hideVesselName) { vesselListParam.SetTitle((FlightGlobals.ActiveVessel == v && trackedVessel != null ? "" : "Tracked ") + "Vessel: " + ContractVesselTracker.GetDisplayName(vesselList.First())); } return(check); }); vesselListParam.Optional = true; vesselListParam.fakeOptional = true; AddParameter(vesselListParam); } else { vesselListParam = new ParameterDelegate <Vessel>(hideVesselName ? "" : "Vessel: Any of the following:", v => { bool check = VesselCanBeConsidered(v); if (!hideVesselName) { vesselListParam.SetTitle("Vessel: Any of the following:" + (check ? " " + ParameterDelegate <Vessel> .GetDelegateText(vesselListParam) : "")); } return(check); }); vesselListParam.Optional = true; vesselListParam.fakeOptional = true; foreach (string vessel in vesselList) { ContractParameter childParam = new ParameterDelegate <Vessel>(ContractVesselTracker.GetDisplayName(vessel), v => false); vesselListParam.AddParameter(childParam); } AddParameter(vesselListParam); } } }