// Als de user een nieuw spel wil starten, maken we een nieuwe NewGameForm. Hierin kan de user de gewenste grootte aanpassen public void nieuwspel(object o, EventArgs mea) { Form nieuwspel = new NewGameForm(gamestate.SizeX, gamestate.SizeY); nieuwspel.ShowDialog(); this.Invalidate(); }
// De constructormethode public MainForm() { DoubleBuffered = true; this.Text = "Reversi"; this.FormBorderStyle = FormBorderStyle.FixedDialog; // Verstop de form, roep een NewGameForm aan om aan de user de gewenste grootte te vragen this.Hide(); Form nieuwspelform = new NewGameForm(6, 6); nieuwspelform.ShowDialog(); if (NewGameForm.buttonexit == false) { return; // Als de user die form wegklikt (ipv nieuwspel-knop), stop } // De volgende knoppen en labels worden gemaakt met behulp van een methode uit FormFuncties newgameb = new Button(); // De nieuw-spel-knop FormFuncties.NewControl <Button>(ref newgameb, new Point(10, 20), new Size(70, 20), "Nieuw Spel"); this.Controls.Add(newgameb); helpb = new Button(); // De help-knop FormFuncties.NewControl <Button>(ref helpb, new Point(85, 20), new Size(40, 20), "Help"); this.Controls.Add(helpb); roodl = new Label(); // De label die aangeeft hoeveel rode stenen op het veld liggen FormFuncties.NewControl <Label>(ref roodl, new Point(80, 60), new Size(60, 20), gamestate.RoodN + " stenen"); roodl.ForeColor = Color.Red; this.Controls.Add(roodl); blauwl = new Label(); // De label die aangeeft hoeveel blauwe stenen op het veld liggen FormFuncties.NewControl <Label>(ref blauwl, new Point(80, 90), new Size(60, 20), gamestate.BlauwN + " stenen"); blauwl.ForeColor = Color.Blue; this.Controls.Add(blauwl); beurtl = new Label(); // De label die aangieft wiens beurt het is FormFuncties.NewControl <Label>(ref beurtl, new Point(30, 110), new Size(160, 40), "Blauw is aan zet"); beurtl.ForeColor = beurtkleur; beurtl.Font = new Font("Arial", 12); this.Controls.Add(beurtl); this.newgameb.Click += nieuwspel; this.helpb.Click += togglehelp; this.MouseClick += klik; this.Paint += teken; gamestate.Initialise(); }
private void newGame() { NewGameForm form = new NewGameForm(board); form.ShowDialog(this); if (form.board != null) { board = form.board; oldboard = null; displayOldBoard = false; gameOver = false; } updateScores(board); redraw(); }