public PageCreateRoute() { this.Classes = new List <MVVMRouteClass>(); foreach (AirlinerClass.ClassType type in AirlinerClass.GetAirlinerTypes()) { if ((int)type <= GameObject.GetInstance().GameTime.Year) { MVVMRouteClass rClass = new MVVMRouteClass(type, RouteAirlinerClass.SeatingType.Reserved_Seating, 1); this.Classes.Add(rClass); } } this.Airports = GameObject.GetInstance().HumanAirline.Airports.OrderByDescending(a => a == GameObject.GetInstance().HumanAirline.Airports[0]).ThenBy(a => a.Profile.Name).ToList(); AirlinerType dummyAircraft = new AirlinerCargoType(new Manufacturer("Dummy", "", null), "All Aircrafts", "", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, AirlinerType.BodyType.Single_Aisle, AirlinerType.TypeRange.Regional, AirlinerType.EngineType.Jet, new Period <DateTime>(DateTime.Now, DateTime.Now), 0); this.HumanAircrafts = new List <AirlinerType>(); this.HumanAircrafts.Add(dummyAircraft); foreach (AirlinerType type in GameObject.GetInstance().HumanAirline.Fleet.Select(f => f.Airliner.Type).Distinct()) { this.HumanAircrafts.Add(type); } this.Loaded += PageCreateRoute_Loaded; InitializeComponent(); }
private void btnConvertToCargo_Click(object sender, RoutedEventArgs e) { double convertPrice = GeneralHelpers.GetInflationPrice(1000 * ((AirlinerPassengerType)this.Airliner.Airliner.Type).MaxSeatingCapacity); if (this.Airliner.Airliner.getPrice() > GameObject.GetInstance().HumanAirline.Money) { WPFMessageBox.Show(Translator.GetInstance().GetString("MessageBox", "2109"), Translator.GetInstance().GetString("MessageBox", "2109", "message"), WPFMessageBoxButtons.Ok); } else { WPFMessageBoxResult result = WPFMessageBox.Show(Translator.GetInstance().GetString("MessageBox", "2123"), string.Format(Translator.GetInstance().GetString("MessageBox", "2123", "message"), this.Airliner.Name, new ValueCurrencyConverter().Convert(convertPrice)), WPFMessageBoxButtons.YesNo); if (result == WPFMessageBoxResult.Yes) { AirlinerPassengerType currentType = this.Airliner.Airliner.Type as AirlinerPassengerType; string airlinerName = string.Format("{0} Freighter", currentType.Name); double cargoSize = AirlinerHelpers.ConvertPassengersToCargoSize(currentType); AirlinerType newCargoType = new AirlinerCargoType(currentType.Manufacturer, airlinerName, currentType.AirlinerFamily, currentType.CockpitCrew, cargoSize, currentType.CruisingSpeed, currentType.Range, currentType.Wingspan, currentType.Length, currentType.FuelConsumption, currentType.Price, currentType.MinRunwaylength, currentType.FuelCapacity, currentType.Body, currentType.RangeType, currentType.Engine, currentType.Produced, currentType.ProductionRate, false); newCargoType.BaseType = currentType; AirlinerTypes.AddType(newCargoType); this.Airliner.Airliner.Type = newCargoType; AirlineHelpers.AddAirlineInvoice(GameObject.GetInstance().HumanAirline, GameObject.GetInstance().GameTime, Invoice.InvoiceType.Airline_Expenses, -convertPrice); PageNavigator.NavigateTo(new PageFleetAirliner(this.Airliner)); } } }
//creates the page private void createPage(List <Airport> airports) { this.AllAirlines = new List <Airline>(); this.SelectedAirports = new ObservableCollection <AirportMVVM>(); this.RoutesRanges = new List <FilterValue>() { new FilterValue("0", 0, 0), new FilterValue("1-9", 1, 9), new FilterValue("10-24", 10, 24), new FilterValue("25+", 25, int.MaxValue) }; this.OperatingRanges = new List <FilterValue>() { new FilterValue("0", 0, 0), new FilterValue("1-5", 1, 5), new FilterValue("6+", 5, int.MaxValue) }; Airline dummyAirline = new Airline(new AirlineProfile("All Airlines", "99", "Blue", "", false, 1900, 1900), Airline.AirlineMentality.Safe, Airline.AirlineFocus.Domestic, Airline.AirlineLicense.Domestic, Route.RouteType.Passenger); dummyAirline.Profile.addLogo(new AirlineLogo(AppSettings.getDataPath() + "\\graphics\\airlinelogos\\default.png")); this.AllAirlines.Add(dummyAirline); foreach (Airline airline in Airlines.GetAllAirlines().Where(a => a != GameObject.GetInstance().HumanAirline).OrderBy(a => a.Profile.Name)) { this.AllAirlines.Add(airline); } this.AllAirports = new List <AirportMVVM>(); foreach (Airport airport in airports.OrderBy(a => a.Profile.Name)) { this.AllAirports.Add(new AirportMVVM(airport)); } AirlinerType dummyAircraft = new AirlinerCargoType(new Manufacturer("Dummy", "", null, false), "All Aircrafts", "", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, AirlinerType.BodyType.Single_Aisle, AirlinerType.TypeRange.Regional, AirlinerType.EngineType.Jet, new Period <DateTime>(DateTime.Now, DateTime.Now), 0, false); this.HumanAircrafts = new List <AirlinerType>(); this.HumanAircrafts.Add(dummyAircraft); foreach (AirlinerType type in GameObject.GetInstance().HumanAirline.Fleet.Select(f => f.Airliner.Type).Distinct()) { this.HumanAircrafts.Add(type); } InitializeComponent(); TabControl tab_main = UIHelpers.FindChild <TabControl>(this.Tag as Page, "tabMenu"); if (tab_main != null) { var matchingItem = tab_main.Items.Cast <TabItem>() .Where(item => item.Tag.ToString() == "Airports") .FirstOrDefault(); //matchingItem.IsSelected = true; tab_main.SelectedItem = matchingItem; } }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { AirlinerCargoType airliner = (AirlinerCargoType)value; if (AppSettings.GetInstance().getLanguage().Unit == Language.UnitSystem.Metric) { return(string.Format("{0:0.##} m3", airliner.CargoSize)); } else { return(string.Format("{0:0.##} cu feet", MathHelpers.MeterToFeet(airliner.CargoSize) * 10)); } }