コード例 #1
0
        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();
        }
コード例 #2
0
        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));
                }
            }
        }
コード例 #3
0
        //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;
            }
        }
コード例 #4
0
        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));
            }
        }