示例#1
0
        private void OnTimedEvent(Object source, EventArgs e)
        {
            totalSecondsPassed++;

            if (totalSecondsPassed % 3 == 0)
            {
                zwemvest = new Zwemvest();
                skies    = new Skies();
                sporter  = new Sporter(zwemvest, skies);

                NieuweBezoeker.Invoke(new NieuweBezoekerArgs(sporter));
            }

            if (totalSecondsPassed % 2 == 0)
            {
                verplaatsLijnen.Invoke();
            }

            if (totalSecondsPassed % 8 == 0)
            {
                List <Sporter> alleWachtendeSporters = wi.SportersVerlaten(wi.GetAlleSporters().Count);
                instructieAfgelopen.Invoke(new InstructieAfgelopenArgs(alleWachtendeSporters));
            }

            Console.WriteLine(ToString());
        }
示例#2
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();
            }
        }
示例#3
0
 public void rondeSpel()
 {
     if (kabel.IsStartPositieLeeg() == true)
     {
         if (WachtrijStarten.ReturnWachtrij().Count != 0)
         {
             Sporter sporter = WachtrijStarten.SportersVerlatenRij(1).ElementAt(0);
             w.SporterStart(sporter);
         }
     }
     if (counter % 4 == 0)
     {
         LijnenVerplaatst.Invoke();
     }
     if (counter % 2 == 0)
     {
         NieuweBezoeker.Invoke(new NieuweBezoekerArgs(new Sporter()));
     }
     if (counter % 13 == 0)
     {
         NieuweInstructie.Invoke();
     }
     if (counter % 20 == 0)
     {
         InstructieAfgelopen.Invoke(new InstructieAfgelopenArgs(new List <Sporter>()));
     }
     counter++;
 }
示例#4
0
        private void HandleNewVisitor()
        {
            var visitor = new Sporter(MoveCollection.GetWillekeurigeMoves());
            var args    = new NieuweBezoekerArgs()
            {
                Sporter = visitor
            };

            logger.AddVisitor(visitor);
            NieuweBezoeker?.Invoke(args);
        }
示例#5
0
 private void BijNieuweBezoeker(object source, EventArgs e)
 {
     if (tickCount % 3 == 0)
     {
         Sporter sporternu = new Sporter();
         logger.sporters.Add(sporternu);
         NieuweBezoeker?.Invoke(new NieuweBezoekersArgs {
             Sporter = sporternu
         });
     }
 }
示例#6
0
        private void NewSporter()
        {
            //opdracht 11

            /*
             * Sporter henk = new Sporter(MoveCollection.GetWillekeurigeMoves(5));
             * waterskibaan.VerplaatsKabel();
             * waterskibaan.SporterStart(henk);
             * Console.WriteLine(waterskibaan.ToString());
             */
            Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves(5));

            NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(sporter));
        }
示例#7
0
        private void WachtrijLoop(object sender, ElapsedEventArgs e)
        {
            Random R           = new Random();
            Color  randomColor = Color.FromArgb(255, R.Next(256), R.Next(256), R.Next(256));

            Sporter s = new Sporter(Movecollection.GetWillekeurigeMoves())
            {
                Skies        = new Skies(),
                Zwemvest     = new Zwemvest(),
                KledingKleur = randomColor
            };

            NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(s));
        }
示例#8
0
        private void OnNieuweBezoeker(object source, EventArgs e)
        {
            if (_counter % 3 != 0)
            {
                return;
            }

            var bezoeker = new Sporter(MoveCollection.GetWillekeurigeMoves());
            var args     = new NieuweBezoekerArgs
            {
                Sporter = bezoeker
            };

            _logger.AddBezoeker(bezoeker);

            NieuweBezoeker?.Invoke(args);
        }
示例#9
0
 private void Timer_Elapsed(object sender, ElapsedEventArgs e)
 {
     timed++;
     if (timed % 3 == 0)
     {
         Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves());
         NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(sporter));
     }
     if (timed % 21 == 0)
     {
         List <Sporter> sporters = wachtrijInstructie.SportersVerlatenRij(wachtrijInstructie.GetAlleSporters().Count);
         instructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(sporters));
     }
     if (timed > 30 && timed % 3 == 0)
     {
         LijnenVerplaatst?.Invoke();
     }
 }
示例#10
0
 public void OnTimedEvent(Object source, EventArgs e)
 {
     teller++;
     if (teller % 3 == 0)
     {
         NieuweBezoeker.Invoke(new NieuweBezoekerArgs(new Sporter(MoveCollection.GetWillekeurigeMoves())));
         OutputStatus();
     }
     if (teller % 20 == 0)
     {
         int            aantal  = WachtI.GetAlleSporters().Count > 5 ? 5 : WachtI.GetAlleSporters().Count;
         List <Sporter> splijst = WachtI.SportersVerlatenRij(aantal);
         InstructieAfgelopen.Invoke(new InstructieAfgelopenArgs(splijst));
     }
     if (teller % 4 == 0)
     {
         LijnenVerplaatss.Invoke();
     }
 }
示例#11
0
        private void VoegSporterToe(object source, ElapsedEventArgs e)
        {
            if (secondsSinceLastBezoeker > 3) //elke 3 seconden nieuwe sporter
            {
                Sporter sporter = NieuweSporterbezoeker();
                secondsSinceLastBezoeker = 0;
                NieuweBezoeker?.Invoke(new NieuweBezoekerArgs {
                    Sporter = sporter
                });
            }

            if (secondsSinceLastInstructie > 20) // elke 20 seconden nieuwe instructiegroep
            {
                secondsSinceLastInstructie = 0;
                InstructieAfgelopen.Invoke(new InstructieAfgelopenArgs
                {
                    Sporters               = wachtrijInstructie.SportersVerlatenRij(5),
                    SportersInInstructie   = instructiegroep.Queue.Count,
                    SportersKlaarVoorStart = wachtrijStarten.Queue.Count
                });
            }
            if (secondsSinceLijnenVerplaatst > 4)
            {
                secondsSinceLijnenVerplaatst = 0;
                LijnenVerplaatst.Invoke(new VerplaatsLijnenArgs(waterskiBaan._kabel._lijnen, waterskiBaan._lijnenVoorraad));
            }

            //secondes erbij, elke een losse anders heb je niet verschillende events, haalt de eerste het altijd terug naar 0
            secondsSinceLastBezoeker++;
            secondsSinceLastInstructie++;
            secondsSinceLijnenVerplaatst++;

            // print de waardes
            Console.WriteLine(waterskiBaan);
            Console.WriteLine(wachtrijInstructie);
            Console.WriteLine(instructiegroep);
            Console.WriteLine(wachtrijStarten);



            gameTimer.Start();
        }
示例#12
0
        private void OnTimedEvent(Object source, ElapsedEventArgs e)
        {
            _counter++;
            _timer.Interval = getRandomTime();

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

            if (_counter % 4 == 0)
            {
                LijnenVerplaatst?.Invoke();
            }

            if (_counter % 20 == 0)
            {
                List<Sporter> sporters = _instructieGroep.SportersVerlatenRij(_wachtrijInstructie.GetAlleSporters().Count);
                InstructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(sporters));
            }
            
        }
        private void OnTimedEvent(Object source, EventArgs e)
        {
            counter++;
            Console.WriteLine(waterskibaan.ToString());
            Console.WriteLine(wachtrijInstructie.ToString());
            Console.WriteLine(instructieGroep.ToString());
            Console.WriteLine(wachtrijStarten.ToString());

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

            if (counter % 20 == 0)
            {
                List <Sporter> sporters = instructieGroep.SportersVerlatenRij(wachtrijInstructie.GetAlleSporters().Count);
                InstructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(sporters));
            }
            if (counter % 4 == 0)
            {
                LijnenVerplaatst?.Invoke();
            }
        }
示例#14
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++;
        }
示例#15
0
 public void TriggerNieuweBezoeker(Sporter sporter)
 {
     NieuweBezoeker?.Invoke(this, new SporterEventArgs(sporter));
 }
示例#16
0
        private void dispatcherTimer_Tick(object sender, EventArgs e)
        {
            if (count % 1 == 0)
            {
                if (waterskibaan.Kabel.IsStartPositieLeeg())
                {
                    try {
                        Sporter sp = wachtrijStarten.SportersVerlatenRij(1)[0];
                        sp.Skies    = new Skies();
                        sp.Zwemvest = new Zwemvest();
                        waterskibaan.SporterStart(sp);
                        Console.WriteLine(waterskibaan.ToString());
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
            }
            if (count % 3 == 0)
            {
                try
                {
                    NieuweBezoeker?.Invoke(new NieuweBezoekerArgs(new Sporter(MoveCollection.GetWillekeurigeMoves())));
                }
                catch (Exception ex)
                {
                    Console.WriteLine("COUNT 3");
                    Console.WriteLine(ex.Message);
                }
            }
            if (count % 4 == 0)
            {
                try
                {
                    LijnenVerplaatst?.Invoke();
                }
                catch (Exception ex)
                {
                    Console.WriteLine("count 4");
                    Console.WriteLine(ex.Message);
                }
            }

            if (count % 20 == 0)
            {
                try
                {
                    List <Sporter> Sporters = instructieGroep.SportersVerlatenRij(instructieGroep.MAX_LENGTE_RIJ);
                    InstructieAfgelopen?.Invoke(new InstructieAfgelopenArgs(Sporters));
                }
                catch (Exception ex)
                {
                    Console.WriteLine("count 20");
                    Console.WriteLine(ex.Message);
                }
            }

            if (count % 10 == 0)
            {
                Console.WriteLine("=====================INVENTARIS==================");
                Console.WriteLine($"WachtrijInstructie: {wachtrijinstructie.ToString()}");
                Console.WriteLine($"Instructiegroep: {instructieGroep.ToString()}");
                Console.WriteLine($"WachtrijStarten: {wachtrijStarten.ToString()}");
                Console.WriteLine("==================================================");
            }
            count += 1;
        }
示例#17
0
 public void NieuweBezoekers(NieuweBezoekerArgs args)
 {
     NieuweBezoeker?.Invoke(args);
 }