Exemplo n.º 1
0
        public void Handle_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            string   rood, blauw, beurt;
            Brush    beurtkleur;

            if (s.Scoreteller()[0] == 1)
            {
                rood = " Rode steen";
            }
            else
            {
                rood = " Rode stenen";
            }

            if (s.Scoreteller()[1] == 1)
            {
                blauw = " Blauwe steen";
            }
            else
            {
                blauw = " Blauwe stenen";
            }

            if (s.roodbeurt)
            {
                beurt      = "Rood is aan de beurt";
                beurtkleur = Brushes.Red;
            }
            else
            {
                beurt      = "Blauw is aan de beurt";
                beurtkleur = Brushes.Blue;
            }

            if (!s.Gameover())
            {
                g.FillEllipse(Brushes.Red, 0, 0, bolgrootte, bolgrootte);
                g.FillEllipse(Brushes.Blue, 0, bolgrootte + 10,
                              bolgrootte, bolgrootte);
                g.DrawString(s.Scoreteller()[0] + rood,
                             new Font("Tahoma", 12), Brushes.Red,
                             new PointF(bolgrootte + 5, (bolgrootte - 16) / 2));
                g.DrawString(s.Scoreteller()[1] + blauw,
                             new Font("Tahoma", 12), Brushes.Blue,
                             new PointF(bolgrootte + 5, bolgrootte + 10 +
                                        (bolgrootte - 16) / 2));
                g.DrawString(beurt, new Font("Tahoma", 12, FontStyle.Bold),
                             beurtkleur, new PointF(bolgrootte + 5, 2 *
                                                    bolgrootte + 10 +
                                                    (bolgrootte - 16) / 2));
            }

            else if (s.Gameover())
            {
                string winnaar;
                Brush  winnaarkleur;

                if (s.Scoreteller()[0] > s.Scoreteller()[1])
                {
                    winnaar      = "Rood wint!";
                    winnaarkleur = Brushes.Red;
                }
                else if (s.Scoreteller()[0] == s.Scoreteller()[1])
                {
                    winnaar      = "Remise!";
                    winnaarkleur = Brushes.Black;
                }
                else
                {
                    winnaar      = "Blauw wint!";
                    winnaarkleur = Brushes.Blue;
                }

                g.DrawString(s.Scoreteller()[0] + rood,
                             new Font("Tahoma", 12), Brushes.Red,
                             new PointF(bolgrootte + 5, 50));
                g.DrawString(s.Scoreteller()[1] + blauw,
                             new Font("Tahoma", 12), Brushes.Blue,
                             new PointF(bolgrootte + 5, 75));

                g.DrawString("Game Over!", new Font("Tahoma", 20,
                                                    FontStyle.Bold),
                             winnaarkleur, new PointF(50, 0));
                g.DrawString(winnaar, new Font("Tahoma", 12, FontStyle.Bold),
                             winnaarkleur, new PointF(bolgrootte + 5, 125));
            }
        }
Exemplo n.º 2
0
        public Scherm()
        {
            speelveld       = new Speelveld();
            this.ClientSize = new Size(speelveld.Width + 100,
                                       speelveld.Height + 300);
            speelveld.Location = new Point(50, ClientSize.Height -
                                           speelveld.Height - 50);
            scorebord = new Scorebord(this.ClientSize, speelveld);

            reset           = new Button();
            reset.Location  = new Point(50, 20);
            reset.Text      = "Nieuw Spel";
            reset.BackColor = Color.LightGray;
            reset.Click    += (sender, e) =>
            {
                speelveld.Leeg();
                speelveld.pasknop = false;
                scorebord.Invalidate();
                speelveld.Invalidate();
            };

            help           = new Button();
            help.Location  = new Point(150, 20);
            help.Text      = "Help";
            help.BackColor = Color.LightGray;
            help.Click    += (sender, e) =>
            {
                speelveld.help = !speelveld.help;
                speelveld.Invalidate();
            };

            pas           = new Button();
            pas.Location  = new Point(250, 20);
            pas.Text      = "Overslaan";
            pas.BackColor = Color.LightGray;
            pas.Click    += (sender, e) =>
            {
                speelveld.roodbeurt = !speelveld.roodbeurt;
                Controls.Remove(pas);
                scorebord.Invalidate();
            };

            speelveld.MouseClick += (sender, e) =>
            {
                Invalidate();
                scorebord.Invalidate();

                if (speelveld.pasknop)
                {
                    Controls.Add(pas);
                }
                else
                {
                    Controls.Remove(pas);
                }

                if (speelveld.Gameover())
                {
                    Controls.Remove(pas);
                }
            };

            Controls.Add(speelveld);
            Controls.Add(scorebord);
            Controls.Add(reset);
            Controls.Add(help);
        }