Esempio n. 1
0
        public Airliner(string id, AirlinerType type, string tailNumber, DateTime builtDate)
        {
            this.ID = id;
            this.BuiltDate = new DateTime(builtDate.Year, builtDate.Month, builtDate.Day);
            this.Type = type;
            this.LastServiceCheck = 0;
            this.TailNumber = tailNumber;
            this.Flown = 0;
            this.Condition = rnd.Next(90, 100);
            this.Classes = new List<AirlinerClass>();

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Passenger)
            {
                AirlinerClass aClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)this.Type).MaxSeatingCapacity);
                aClass.createBasicFacilities(this.Airline);
                this.Classes.Add(aClass);
            }

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Cargo)
            {
                AirlinerClass aClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, 0);
                aClass.createBasicFacilities(this.Airline);
                this.Classes.Add(aClass);

            }
        }
Esempio n. 2
0
        public Airliner(string id, AirlinerType type, string tailNumber, DateTime builtDate)
        {
            this.ID               = id;
            this.BuiltDate        = new DateTime(builtDate.Year, builtDate.Month, builtDate.Day);
            this.Type             = type;
            this.LastServiceCheck = 0;
            this.TailNumber       = tailNumber;
            this.Flown            = 0;
            this.Condition        = rnd.Next(90, 100);
            this.Classes          = new List <AirlinerClass>();

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Passenger)
            {
                AirlinerClass aClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)this.Type).MaxSeatingCapacity);
                aClass.createBasicFacilities(this.Airline);
                this.Classes.Add(aClass);
            }

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Cargo)
            {
                AirlinerClass aClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, 0);
                aClass.createBasicFacilities(this.Airline);
                this.Classes.Add(aClass);
            }
        }
Esempio n. 3
0
        //adds a new airliner class to the airliner
        public void addAirlinerClass(AirlinerClass airlinerClass)
        {
            this.Classes.Add(airlinerClass);

            if (airlinerClass.getFacilities().Count == 0)
            {
                airlinerClass.createBasicFacilities(this.Airline);
            }
        }
Esempio n. 4
0
        //adds a new airliner class to the airliner
        public void addAirlinerClass(AirlinerClass airlinerClass)
        {
            if (airlinerClass != null && !this.Classes.Exists(c => c.Type == airlinerClass.Type))
            {
                this.Classes.Add(airlinerClass);

                if (airlinerClass.getFacilities().Count == 0)
                {
                    airlinerClass.createBasicFacilities(this.Airline);
                }
            }
        }
        public AirlinerOrderMVVM(AirlinerType type, int amount = 1)
        {
            this.Type = type;
            this.Amount = amount;
            this.Classes = new List<AirlinerClass>();
            this.Homebases = new List<Airport>();

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Passenger)
            {
                AirlinerClass eClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)type).MaxSeatingCapacity);
                eClass.createBasicFacilities(null);
                this.Classes.Add(eClass);
            }

            long minRequiredRunway = this.Type.MinRunwaylength;

            foreach (var homebase in GameObject.GetInstance().HumanAirline.Airports.FindAll(a => a.getCurrentAirportFacility(GameObject.GetInstance().HumanAirline, AirportFacility.FacilityType.Service).TypeLevel > 0 && a.getMaxRunwayLength() >= minRequiredRunway))
                this.Homebases.Add(homebase);
        }
        private void link_Click(object sender, RoutedEventArgs e)
        {
            AirlinerType type = this.AirlinersToMaintain[0].Airliner.Type;
            if (this.Classes == null)
            {
                AirlinerClass eClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)type).MaxSeatingCapacity);
                eClass.createBasicFacilities(null);
                this.Classes.Add(eClass);
            }

            AirlinerClass aClass = (AirlinerClass)((Hyperlink)sender).Tag;

            AirlinerClass newClass = (AirlinerClass)PopUpAirlinerClassConfiguration.ShowPopUp(aClass);

            AirlinerClass economyClass = this.Classes.Find(c => c.Type == AirlinerClass.ClassType.Economy_Class);
            if (newClass != null)
            {
                AirlinerClass airlinerClass = new AirlinerClass(newClass.Type, newClass.SeatingCapacity);
                airlinerClass.RegularSeatingCapacity = newClass.RegularSeatingCapacity;

                int seatingDiff = ((AirlinerPassengerType)type).MaxSeatingCapacity;

                economyClass.RegularSeatingCapacity += seatingDiff;

                AirlinerFacility seatingFacility = economyClass.getFacility(AirlinerFacility.FacilityType.Seat);

                int extraSeats = (int)(seatingDiff / seatingFacility.SeatUses);

                economyClass.SeatingCapacity += extraSeats;

            }
        }
        private void cbAirliner_Checked(object sender, RoutedEventArgs e)
        {
            int maxNumberOfAirliners = this.AirlineFacility.ServiceLevel;

            FleetAirliner airliner = (FleetAirliner)((CheckBox)sender).Tag;

            if (this.AirlinersToMaintain.Count == 0 || (this.AirlinersToMaintain.Exists(a => a.Airliner.Type == airliner.Airliner.Type) && this.AirlinersToMaintain.Count + 1 <= maxNumberOfAirliners))
            {
                this.AirlinersToMaintain.Add(airliner);

                AirlinerType type = this.AirlinersToMaintain[0].Airliner.Type;
                if (this.Classes == null || this.Classes.Count == 0)
                {
                    AirlinerClass eClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)type).MaxSeatingCapacity);
                    eClass.createBasicFacilities(null);
                    this.Classes.Add(eClass);

                    showClasses();
                }

                btnEquipped.IsEnabled = true;
                btnApply.IsEnabled = true;
            }
            else
            {
                if (this.AirlinersToMaintain.Count == maxNumberOfAirliners)
                    WPFMessageBox.Show(Translator.GetInstance().GetString("MessageBox", "2901"), string.Format(Translator.GetInstance().GetString("MessageBox", "2901","message"), maxNumberOfAirliners), WPFMessageBoxButtons.Ok);

                ((CheckBox)sender).IsChecked = false;
            }
        }
Esempio n. 8
0
        public AirlinerOrderMVVM(AirlinerType type, AirlinerOrdersMVVM order, int amount = 1)
        {
            this.Type = type;
            this.Order = order;
            this.Amount = amount;
            this._classes = new List<AirlinerClass>();
            this.Homebases = new List<Airport>();

            if (this.Type.TypeAirliner == AirlinerType.TypeOfAirliner.Passenger)
            {
                AirlinerClass eClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)type).MaxSeatingCapacity);
                eClass.createBasicFacilities(null);
                this.Classes.Add(eClass);
            }

            long minRunway = this.Type.MinRunwaylength;

            //var homebases = GameObject.GetInstance().HumanAirline.Airports.FindAll(a => (a.hasContractType(GameObject.GetInstance().HumanAirline, AirportContract.ContractType.Full_Service) || a.getCurrentAirportFacility(GameObject.GetInstance().HumanAirline, AirportFacility.FacilityType.Service).TypeLevel > 0) && a.getMaxRunwayLength() >= minRunway);

            var homebases = AirlineHelpers.GetHomebases(GameObject.GetInstance().HumanAirline, minRunway);

            foreach (var homebase in homebases)
                this.Homebases.Add(homebase);
        }
        //creates the panel for how the airline should be equipped
        private StackPanel createEquippedPanel(AirlinerType type)
        {
            this.Type = type;

            StackPanel panelEquipped = new StackPanel();
            panelEquipped.Margin = new Thickness(0, 5, 0, 0);

            TextBlock txtOrders = new TextBlock();
            txtOrders.FontWeight = FontWeights.Bold;
            txtOrders.SetResourceReference(TextBlock.BackgroundProperty, "HeaderBackgroundBrush2");
            txtOrders.Uid = "1012";
            txtOrders.Text = Translator.GetInstance().GetString("PageOrderAirliners", txtOrders.Uid);

            panelEquipped.Children.Add(txtOrders);

            ListBox lbEquipped = new ListBox();
            lbEquipped.ItemContainerStyleSelector = new ListBoxItemStyleSelector();
            lbEquipped.SetResourceReference(ListBox.ItemTemplateProperty, "QuickInfoItem");

            panelEquipped.Children.Add(lbEquipped);

            this.Classes.Clear();

            AirlinerClass eClass = new AirlinerClass(AirlinerClass.ClassType.Economy_Class, ((AirlinerPassengerType)type).MaxSeatingCapacity);
            eClass.createBasicFacilities(null);
            this.Classes.Add(eClass);

            panelClasses = new WrapPanel();

            foreach (AirlinerClass aClass in this.Classes)
            {
                panelClasses.Children.Add(createAirlineClassLink(aClass));
            }

            lbEquipped.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageOrderAirliners", "1012"), panelClasses));

            Configuration airlinerTypeConfiguration = Configurations.GetConfigurations(Configuration.ConfigurationType.AirlinerType).Find(c => ((AirlinerTypeConfiguration)c).Airliner == type && ((AirlinerTypeConfiguration)c).Period.From <= GameObject.GetInstance().GameTime && ((AirlinerTypeConfiguration)c).Period.To > GameObject.GetInstance().GameTime);

            if (airlinerTypeConfiguration != null)
            {
                CheckBox cbStandardConfiguration = new CheckBox();
                cbStandardConfiguration.Checked += cbStandardConfiguration_Checked;
                cbStandardConfiguration.Unchecked += cbStandardConfiguration_Unchecked;
                cbStandardConfiguration.Tag = type;

                lbEquipped.Items.Add(new QuickInfoValue(Translator.GetInstance().GetString("PageOrderAirliners", "1013"), cbStandardConfiguration));
            }

            WrapPanel panelConfiguration = new WrapPanel();
            panelEquipped.Margin = new Thickness(0, 5, 0, 0);
            panelEquipped.Children.Add(panelConfiguration);

            btnEquipped = new Button();
            btnEquipped.Uid = "201";
            btnEquipped.SetResourceReference(Button.StyleProperty, "RoundedButton");
            btnEquipped.Height = Double.NaN;
            btnEquipped.Width = Double.NaN;
            btnEquipped.Content = Translator.GetInstance().GetString("PageOrderAirliners", btnEquipped.Uid);
            btnEquipped.SetResourceReference(Button.BackgroundProperty, "ButtonBrush");
            btnEquipped.Click += btnEquipped_Click;
            btnEquipped.Tag = type;
            btnEquipped.HorizontalAlignment = System.Windows.HorizontalAlignment.Left;

            panelConfiguration.Children.Add(btnEquipped);

            btnApplyConfiguration = new Button();
            btnApplyConfiguration.Uid = "202";
            btnApplyConfiguration.SetResourceReference(Button.StyleProperty, "RoundedButton");
            btnApplyConfiguration.Height = Double.NaN;
            btnApplyConfiguration.Width = Double.NaN;
            btnApplyConfiguration.Margin = new Thickness(5, 0, 0, 0);
            btnApplyConfiguration.SetResourceReference(Button.BackgroundProperty, "ButtonBrush");
            btnApplyConfiguration.Content = Translator.GetInstance().GetString("PageOrderAirli ners", btnApplyConfiguration.Uid);
            btnApplyConfiguration.Visibility = System.Windows.Visibility.Collapsed;

            panelConfiguration.Children.Add(btnApplyConfiguration);

            return panelEquipped;
        }
Esempio n. 10
0
        //adds a new airliner class to the airliner
        public void addAirlinerClass(AirlinerClass airlinerClass)
        {
            this.Classes.Add(airlinerClass);

            if (airlinerClass.getFacilities().Count == 0)
                airlinerClass.createBasicFacilities(this.Airline);
        }
Esempio n. 11
0
        //adds a new airliner class to the airliner
        public void addAirlinerClass(AirlinerClass airlinerClass)
        {
            if (airlinerClass != null && !this.Classes.Exists(c => c.Type == airlinerClass.Type))
            {
                this.Classes.Add(airlinerClass);

                if (airlinerClass.getFacilities().Count == 0)
                    airlinerClass.createBasicFacilities(this.Airline);
            }
        }