Beispiel #1
0
 /// <summary>
 /// Metoda statyczna , Po to żeby sprawdzać czy wybrany samolot i trasa będą dobre- metode stayczną da się wywoływać jak nie istnieje obiekt
 /// </summary>
 /// <param name="TypPojazdu"></param>
 /// <param name="Droga"></param>
 public static Boolean CzyDoleci(TypSamolotu TypPojazdu, Trasa Droga)
 {
     if (TypPojazdu.GetZasieg() >= Droga.GetOdleglosc())
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Beispiel #2
0
        /// <summary>
        /// Specialny konstruktor Lotu, zakłada powrót tego samego samolotu więc tworzony lot ma wszystko takie same prócz: IDLotu , daty wylotu, kolejności Lotnisk w trasie, po tym wywołaniu stary lot powinien zostac usunięty
        /// </summary>
        //public Lot(Lot IstniejacyLOt,string _IDLotu,TimeSpan IloscCzasuDoStartuLiczonaOdMomentuLondowania)
        //{
        //    this.LNIDRezerwacjiBiletow = new List<string>();
        //    this.ListaRezerwacji = new List<RezerwcjaBilet>();

        //    IstniejacyLOt.GetSamolot().CzyDostepny=true;// taki cheat żeby przez chwile samolt był dostępny ten cheat się komplikuje wiestety , lepiej nie ruszać
        //    this.SetPojazd(IstniejacyLOt.Pojazd);
        //    this.SetIDSamolotuWLocie(IstniejacyLOt.GetSamolot().GetIDWlasne());
        //    IstniejacyLOt.GetSamolot().CzyDostepny=false;// taki cheat
        //    this.DataGodzinaWylotu = IstniejacyLOt.DataLądowaniaDateTime().Add(IloscCzasuDoStartuLiczonaOdMomentuLondowania);
        //    this.CzasLotu = IstniejacyLOt.GetCzasLotu();
        //    this.Droga = new Trasa(IstniejacyLOt.GetDroga());
        //    CzyMaWracac = false;
        //}


        /// <summary>
        ///  Z racji że typ samolotu ma dany zasięg, trzeba sprawdazć czy dany samolot nadaje się do lotu
        ///  dla konkretnej trasy, podawy jest od razu id samolotu, bardzo ważna funkcja, bez niej lot nie mam maszyny!!
        ///  funkcja od razu liczy nowy czas przelotu danej trasy
        /// </summary>
        /// <returns></returns>
        public Boolean SetPojazd(TypSamolotu TypPojazdu)//  nie jest w konstruktorze ponieważ zwraca booleana
        {
            if (TypPojazdu.GetZasieg() >= Droga.GetOdleglosc())
            {
                Pojazd = TypPojazdu;
                double czas = Droga.GetOdleglosc() / Pojazd.GetPredkosc(); // czas wychodzi w godz z minutamie po przecinku
                czas = Math.Round(czas, 2);
                double min = (czas % 1) * 60;                              // minuty w formiacie 0,xx więc trzeba pomnożyć razy 60
                CzasLotu      = new TimeSpan((int)czas, (int)min, 0);      // zero na końcu- to sekundy nieistotne w programie
                DataLadowania = this.DataLądowaniaDateTime();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Beispiel #3
0
 /// <summary>
 ///  Funkcja wywala
 /// </summary>
 public void PrzyciskDodajLot(Trasa Droga, DateTime DataWylotu, Boolean CzyMawracac, TypSamolotu _WybranytypSamolotu, Samolot WybranaMaszyna)
 {
     if (Droga != null && DataWylotu != null && _WybranytypSamolotu != null && WybranaMaszyna != null)
     {
         if (_WybranytypSamolotu.GetZasieg() >= Droga.Odleglosc)
         {
             Lot tmp = new Lot(PrzydzielanieID(ListaLotow, LNIDLotow), Droga, DataWylotu, CzyMawracac, WybranaMaszyna, _WybranytypSamolotu);
             if (CzyMawracac == true)
             {
                 Lot tmp2 = new Lot(PrzydzielanieID(ListaLotow, LNIDLotow), Droga, DataWylotu.Add(tmp.CzasLotu.Add(new TimeSpan(3, 0, 0))), CzyMawracac, WybranaMaszyna, _WybranytypSamolotu);
                 DodawanieDoListy(ListaLotow, tmp2);
             }
             DodawanieDoListy(ListaLotow, tmp);
         }
         else
         {
             throw new Wyjatek("Samolot nie doleci do celu, zmień jego rodzaj!");
         }
     }
     else
     {
         throw new Wyjatek("Wypełnij wszystkie pola!");
     }
 }