Example #1
0
        public void WykonajNastepnaAkcje()
        {
            if (obecnyPrzystanek == null)
            {
                obecnyPrzystanek = linia.PierwszyPrzystanek;
            }

            //obecnyPrzystanek.WykonajPrzyplywy(czasRozpoczeciaPrzejazdu + czasPrzejazdu);
            zt.WykonajPrzyplywy(czasRozpoczeciaPrzejazdu + czasPrzejazdu);
            SprawdzCzyPrzejazdPosiadaZasoby();

            if (trasaZakonczona)
            {
                return;
            }

            switch (nastepnaAkcja)
            {
            case Akcja.PobieraniePasazerow:
                WykonajPobieraniaPasazerow();
                break;

            case Akcja.Przejazd:
                WykonajPrzejazd();
                break;

            case Akcja.WypuszczniePasazerow:
                WykonajWypuszczaniePasazerow();
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            linia.DodajWpisStatusuLinii(czasRozpoczeciaPrzejazdu + czasPrzejazdu, firma.DlugoscNajkrotszegoAutobusu, obecnyPrzystanek);
        }