예제 #1
0
        private void OnTimedEvent(Object source, ElapsedEventArgs e)
        {
            /*Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves());
             *
             * waterskibaan.SporterStart(sporter);
             * Console.WriteLine(waterskibaan);
             * waterskibaan.VerplaatsKabel();
             * Console.WriteLine();*/


            if (loopCounter % 3 == 0)
            {
                Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves());
                NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(sporter));
            }

            if (loopCounter % 20 == 0)
            {
                List <Sporter> sporters = instructieGroep.SportersVerlatenRij(wachtrijinstructie.GetAlleSporters().Count);
                InstructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(sporters));
            }

            if (loopCounter % 4 == 0)
            {
                LijnenVerplaatst?.Invoke();
            }
        }
예제 #2
0
 public void SporterNeemPlaatsInRij(Sporter sporter)
 {
     if (_sportersQueue.Count < MAX_LENGTE_RIJ)
     {
         _sportersQueue.Enqueue(sporter);
     }
 }
예제 #3
0
        private void OnLijnenVerplaatst()
        {
            if (waterskibaan.kabel.IsStartPositieLeeg())
            {
                List <Sporter> sporters = wachtrijStarten.SportersVerlatenRij(1);
                if (sporters.Count != 0)
                {
                    Sporter sporter = sporters[0];
                    sporter.Zwemvest = new Zwemvest();
                    sporter.Skies    = new Skies();

                    waterskibaan.SporterStart(sporter);
                }
            }
            Console.WriteLine(waterskibaan);
            waterskibaan.VerplaatsKabel();
        }
예제 #4
0
        public void SporterStart(Sporter sporter)
        {
            Lijn lijn = voorraad.VerwijderEersteLijn();

            lijn.sporter = sporter;
            kabel.NeemLijnInGebruik(lijn);
            sporter.AantalRondenNogTeGaan = MoveCollection.random.Next(1, 3);

            Console.WriteLine($"Aantal ronden te gaan = {sporter.AantalRondenNogTeGaan}");

            if (sporter.Skies == null)
            {
                throw new Exception(string.Format("Sporter heeft geen skies."));
            }
            else if (sporter.Zwemvest == null)
            {
                throw new Exception(string.Format("Sporter heeft geen zwemvest."));
            }
        }
예제 #5
0
        public void timer_Tick(object sender, EventArgs e)
        {
            //Console.WriteLine($"loopCounter = {loopCounter}");
            if (loopCounter % 3 == 0)
            {
                Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves());
                NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(sporter));
            }

            if (loopCounter % 10 == 0)
            {
                List <Sporter> sporters = instructieGroep.SportersVerlatenRij(wachtrijinstructie.GetAlleSporters().Count);
                InstructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(sporters));
                //Console.WriteLine($"Totaal aantal bezoekers = {logger.totaalAantalBezoekers()}");
                //Console.WriteLine($"Hoogste score tot nu toe = {logger.hoogsteScore()}");
                //Console.WriteLine($"Totaal aantal rondjes gedaan = {logger.totaalAantalRondjes()}");
            }

            if (loopCounter % 4 == 0)
            {
                LijnenVerplaatst?.Invoke();
            }
            loopCounter++;
        }
예제 #6
0
        public static void TestOpdracht5()
        {
            var sporter = new Sporter(MoveCollection.GetWillekeurigeMoves());

            Console.WriteLine(sporter.BehaaldePunten);
        }
예제 #7
0
 public void voegBezoekerToe(Sporter sporter)
 {
     Bezoekers.Add(sporter);
 }
 public NieuweBezoekerArgs(Sporter sporter)
 {
     Sporter = sporter;
 }