コード例 #1
0
        public void Loop()
        {
            Zwemvest zw = new Zwemvest();
            Skies    s  = new Skies();
            Color    kleur;
            byte     r = Convert.ToByte(rnd.Next(1, 255));
            byte     g = Convert.ToByte(rnd.Next(1, 255));
            byte     b = Convert.ToByte(rnd.Next(1, 255));

            kleur = Color.FromRgb(r, g, b);
            Sporter sporter = new Sporter(MoveCollection.GetWillekeurigeMoves(), zw, s, kleur);

            if (counter % 3 == 0)
            {
                RaiseNieuweBezoeker(new NieuweBezoekerArgs(sporter));
            }
            else if (counter == 19)
            {
                RaiseInstructieAfgelopen(new InstructieAfgelopenArgs(5));
            }
            else if (counter % 4 == 0)
            {
                if (wachtrijStarten.StartQueue.Count() > 0 && wsb.kabel.IsStartPositieLeeg() == true)
                {
                    Sporter starter = wachtrijStarten.StartQueue.Dequeue();
                    RaiseLijnenVerplaatst(new LijnenVerplaatstArgs(starter));
                }
                else
                {
                    RaiseLijnenVerplaatst(new LijnenVerplaatstArgs());
                }
            }
            RaiseRefreshGraphics(new RefreshGraphicsArgs());
        }
コード例 #2
0
 public void SporterNeemPlaatsInRij(Sporter sporter)
 {
     if (StartQueue.Count() < MAX_LENGTE_RIJ)
     {
         StartQueue.Enqueue(sporter);
     }
 }
コード例 #3
0
        public void HandleNieuweBezoeker(NieuweBezoekerArgs args)
        {
            Sporter sp = args.Sporter;

            if (InstructieQueue.Count() < MAX_LENGTE_RIJ)
            {
                InstructieQueue.Enqueue(sp);
            }
        }
コード例 #4
0
        public void HandleLijnenVerplaatst(LijnenVerplaatstArgs args)
        {
            Sporter sporter = args.Sporter;

            VerplaatsKabel();
            if (sporter != null)
            {
                SporterStart(sporter);
            }
        }
コード例 #5
0
        public List <Sporter> GetAlleSporters()
        {
            Queue <Sporter> InstructieQueueAlleSporters = new Queue <Sporter>(InstructieQueue);
            List <Sporter>  AlleSportersWachtInstructie = new List <Sporter>();

            for (int i = 0; i < InstructieQueue.Count; i++)
            {
                Sporter sp = InstructieQueueAlleSporters.Dequeue();
                AlleSportersWachtInstructie.Add(sp);
            }
            return(AlleSportersWachtInstructie);
        }
コード例 #6
0
        public List <Sporter> GetAlleSporters()
        {
            Queue <Sporter> StartQueueAlleSporters = new Queue <Sporter>(StartQueue);
            List <Sporter>  AlleSportersStart      = new List <Sporter>();

            for (int i = 0; i < StartQueue.Count; i++)
            {
                Sporter sp = StartQueueAlleSporters.Dequeue();
                AlleSportersStart.Add(sp);
            }
            return(AlleSportersStart);
        }
コード例 #7
0
        public List <Sporter> SportersVerlatenRij(int aantal)
        {
            List <Sporter> VerlatenSportersWachtInstructie = new List <Sporter>();

            for (int i = 0; i < aantal; i++)
            {
                if (InstructieQueue.Count() != 0)
                {
                    Sporter sp = InstructieQueue.Dequeue();
                    VerlatenSportersWachtInstructie.Add(sp);
                }
            }
            return(VerlatenSportersWachtInstructie);
        }
コード例 #8
0
        public List <Sporter> SportersVerlatenRij(int aantal)
        {
            List <Sporter> VerlatenSportersStart = new List <Sporter>();

            for (int i = 0; i < aantal; i++)
            {
                if (StartQueue.Count() != 0)
                {
                    Sporter sp = StartQueue.Dequeue();
                    VerlatenSportersStart.Add(sp);
                }
            }
            return(VerlatenSportersStart);
        }
コード例 #9
0
 public void MaakInstructieGroep()
 {
     GroepInstructie.Children.Clear();
     for (int i = 0; i < aanwezigInstructieGroep.Count(); i++)
     {
         Sporter         sporter      = aanwezigInstructieGroep.Dequeue();
         Color           kledingColor = sporter.KledingKleur;
         SolidColorBrush kledingKleur = new SolidColorBrush(Color.FromRgb(kledingColor.R, kledingColor.G, kledingColor.B));
         int             x            = 10 + (i * 20);
         int             y            = 10;
         int             grootte      = 18;
         Canvas          cv           = GroepInstructie;
         DrawSporter(kledingKleur, x, y, grootte, cv);
     }
 }
コード例 #10
0
        public void MaakWachtrijInstructie()
        {
            int counterSporters = 0;

            InstructieWachtrij.Children.Clear();
            for (int i = 0; i < wachtrijInstructieSporters.Count(); i++)
            {
                Sporter         sporter      = wachtrijInstructieSporters.Dequeue();
                SolidColorBrush kledingKleur = new SolidColorBrush(Color.FromRgb(sporter.KledingKleur.R, sporter.KledingKleur.G, sporter.KledingKleur.B));

                int x = 5 + (counterSporters * 12);
                int y = 5;
                if (i > 15 && i < 31)
                {
                    x -= 16;
                    y += 15;
                }
                if (i > 30 && i < 46)
                {
                    x -= 31;
                    y += 30;
                }
                if (i > 45 && i < 61)
                {
                    x -= 46;
                    y += 45;
                }
                if (i > 60 && i < 76)
                {
                    x -= 61;;
                    y += 60;
                }
                if (i > 75 && i < 101)
                {
                    x -= 76;
                    y += 75;
                }
                int    grootte = 10;
                Canvas cv      = InstructieWachtrij;
                DrawSporter(kledingKleur, x, y, grootte, cv);
                counterSporters++;
                ContentLINQ.Content = $"{game.logger.GetResultaten()}";
            }
        }
コード例 #11
0
 public void SporterStart(Sporter sp)
 {
     if (sp != null)
     {
         if (sp.Zwemvest != null && sp.Skies != null)
         {
             if (kabel.IsStartPositieLeeg() == true)
             {
                 Lijn lijnStart = lijnVoorraad.VerwijderEersteLijn();
                 lijnStart.SporterAanLijn   = sp;
                 lijnStart.PositieOpDeKabel = 0;
                 kabel.NeemLijnInGebruik(lijnStart);
                 sp.AantalRondenNogTeGaan = rnd.Next(1, 3);
             }
         }
         else
         {
             throw new AttributeNullException();
         }
     }
 }
コード例 #12
0
        public void MaakStartWachtrij()
        {
            int counterSporters = 0;

            StartWachtrij.Children.Clear();
            for (int i = 0; i < wachtrijStarters.Count(); i++)
            {
                Sporter         sporter      = wachtrijStarters.Dequeue();
                Color           kledingColor = sporter.KledingKleur;
                SolidColorBrush kledingKleur = new SolidColorBrush(Color.FromRgb(kledingColor.R, kledingColor.G, kledingColor.B));
                int             x            = 5 + (i * 12);
                int             y            = 5;
                if (counterSporters > 9 && counterSporters < 20)
                {
                    x -= 11;
                    y += 15;
                }
                int    grootte = 10;
                Canvas cv      = StartWachtrij;
                DrawSporter(kledingKleur, x, y, grootte, cv);
                counterSporters++;
            }
        }
コード例 #13
0
 public Lijn(int positie, Sporter sporter)
 {
     PositieOpDeKabel = positie;
     SporterAanLijn   = sporter;
 }
コード例 #14
0
        public void LoggerHandleNieuweBezoeker(NieuweBezoekerArgs args)
        {
            Sporter sp = args.Sporter;

            alleBezoekers.Add(sp);
        }
コード例 #15
0
 public void SporterNeemPlaatsInRij(Sporter sporter)
 {
     InstructieQueue.Enqueue(sporter);
 }
コード例 #16
0
        public void MaakWaterskibaan()
        {
            Waterskibaan.Children.Clear();
            Ellipse cirkel = new Ellipse
            {
                Fill            = Brushes.Black,
                Width           = 20,
                Height          = 20,
                StrokeThickness = 2,
                Stroke          = Brushes.Black
            };

            Canvas.SetLeft(cirkel, 238);
            Canvas.SetTop(cirkel, 200);
            Waterskibaan.Children.Add(cirkel);
            int[,] positiesArray = new int[10, 2] {
                { 107, 200 }, { 147, 127 }, { 208, 83 }, { 275, 83 }, { 328, 127 }, { 363, 200 }, { 328, 283 }, { 275, 315 }, { 208, 315 }, { 147, 283 }
            };
            int[,] labelArray = new int[10, 2] {
                { 89, 220 }, { 129, 152 }, { 190, 103 }, { 257, 108 }, { 310, 152 }, { 345, 225 }, { 310, 303 }, { 257, 335 }, { 190, 335 }, { 129, 303 }
            };
            //pos0 = (89,220) width is elke keer 60
            //pos1 = (129,152)
            //pos2 = (190,103)
            //pos3 = (257,108)
            //pos4 = (310,152)
            //pos5 = (345,225)
            //pos6 = (310,303)
            //pos7 = (257,335)
            //pos8 = (190,335)
            //pos9 = (129,303)
            for (int i = 0; i < 10; i++)
            {
                Random rnd = new Random();
                try
                {
                    if (game.wsb.kabel._lijnen.ElementAt(i) != null)
                    {
                        Lijn            lijn         = game.wsb.kabel._lijnen.ElementAt(i);
                        Sporter         sporter      = lijn.SporterAanLijn;
                        Color           kledingColor = sporter.KledingKleur;
                        SolidColorBrush kledingKleur = new SolidColorBrush(Color.FromRgb(kledingColor.R, kledingColor.G, kledingColor.B));
                        //position0 = (107,200)
                        //position1 = (147,127)
                        //position2 = (208,83)
                        //position3 = (275,83)
                        //position4 = (328,127)
                        //position5 = (363,200)
                        //position6 = (328,283)
                        //position7 = (275,315)
                        //position8 = (208,315)
                        //position9 = (147,283)
                        DrawSporter(kledingKleur, positiesArray[i, 0], positiesArray[i, 1], 20, Waterskibaan);
                        DrawLine((positiesArray[i, 0] + 10), (positiesArray[i, 1] + 10));
                        string output = "";
                        output += $"{i} \n";
                        int randomResult = rnd.Next(1, 4);
                        if (randomResult == 2 && i != 0)
                        {
                            Sporter obj = null;
                            if (game.logger.alleBezoekers.Contains(sporter))
                            {
                                obj = game.logger.alleBezoekers.FirstOrDefault(x => x == sporter);
                            }
                            output = "";
                            int punten = sporter.Move();
                            if (punten > 5)
                            {
                                if (obj != null)
                                {
                                    game.logger.alleBezoekers.FirstOrDefault(x => x == sporter).behaaldePunten += punten;
                                }
                                sporter.behaaldePunten += punten;
                                //Draai = 20
                                //EenBeen = 70
                                //EenHand = 30
                                //Jump = 40
                                if (punten == 20)
                                {
                                    output += "Draai \n Success!";
                                }
                                else if (punten == 30)
                                {
                                    output += "Één hand \n Success!";
                                }
                                else if (punten == 40)
                                {
                                    output += "Jump \n Success!";
                                }
                                else if (punten == 70)
                                {
                                    output += "Één been \n Success!";
                                }
                                else
                                {
                                    output += "Uh oh";
                                }
                            }
                            else if (punten < 5)
                            {
                                if (punten == 1)
                                {
                                    output += "Jump \n failed";
                                }
                                else if (punten == 2)
                                {
                                    output += "Draai \n failed";
                                }
                                else if (punten == 3)
                                {
                                    output += "Één been \n failed";
                                }
                                else if (punten == 4)
                                {
                                    output += "Één hand \n failed";
                                }
                            }
                            else
                            {
                                output += "";
                            }
                        }
                        DrawText(labelArray[i, 0], labelArray[i, 1], output);
                    }
                }
                catch (ArgumentOutOfRangeException)
                {
                }
            }
        }
コード例 #17
0
 public NieuweBezoekerArgs(Sporter sp)
 {
     Sporter = sp;
 }