Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Windows.Forms;
- using System.Drawing;
- namespace TicTacToe
- {
- class Program : Form
- {
- // Gui
- Button btnOne;
- Button btnTwo;
- Button btnThree;
- Button btnFour;
- Button btnFive;
- Button btnSix;
- Button btnSeven;
- Button btnEight;
- Button btnNine;
- Label lblVictoryInfo;
- // Game table
- string[] table = { "0", "0", "0", "0", "0", "0", "0", "0", "0", };
- // Turn tracker
- int iTurn;
- public Program()
- {
- InitializeComponents();
- Random rnd = new Random();
- iTurn = rnd.Next(0,2);
- }
- void InitializeComponents()
- {
- // Main window
- this.Width = 100;
- this.Height = 150;
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;
- this.Text = "Tic Tac Toe";
- this.Visible = true;
- this.Enabled = true;
- this.StartPosition = FormStartPosition.CenterScreen;
- // Button One
- btnOne = new Button();
- btnOne.Width = 30;
- btnOne.Height = 30;
- btnOne.Text = " ";
- btnOne.Font = new Font(Font.SystemFontName, 20f);
- btnOne.Location = new Point(10, 10);
- btnOne.Click += new EventHandler(btnOne_Click);
- // Button Two
- btnTwo = new Button();
- btnTwo.Width = 30;
- btnTwo.Height = 30;
- btnTwo.Text = " ";
- btnTwo.Font = new Font(Font.SystemFontName, 20f);
- btnTwo.Location = new Point(40, 10);
- btnTwo.Click += new EventHandler(btnTwo_Click);
- // Button Three
- btnThree = new Button();
- btnThree.Width = 30;
- btnThree.Height = 30;
- btnThree.Text = " ";
- btnThree.Font = new Font(Font.SystemFontName, 20f);
- btnThree.Location = new Point(70, 10);
- btnThree.Click += new EventHandler(btnThree_Click);
- // Button Four
- btnFour = new Button();
- btnFour.Width = 30;
- btnFour.Height = 30;
- btnFour.Text = " ";
- btnFour.Font = new Font(Font.SystemFontName, 20f);
- btnFour.Location = new Point(10, 40);
- btnFour.Click += new EventHandler(btnFour_Click);
- // Button Five
- btnFive = new Button();
- btnFive.Width = 30;
- btnFive.Height = 30;
- btnFive.Text = " ";
- btnFive.Font = new Font(Font.SystemFontName, 20f);
- btnFive.Location = new Point(40, 40);
- btnFive.Click += new EventHandler(btnFive_Click);
- // Button Six
- btnSix = new Button();
- btnSix.Width = 30;
- btnSix.Height = 30;
- btnSix.Text = " ";
- btnSix.Font = new Font(Font.SystemFontName, 20f);
- btnSix.Location = new Point(70, 40);
- btnSix.Click += new EventHandler(btnSix_Click);
- // Button Seven
- btnSeven = new Button();
- btnSeven.Width = 30;
- btnSeven.Height = 30;
- btnSeven.Text = " ";
- btnSeven.Font = new Font(Font.SystemFontName, 20f);
- btnSeven.Location = new Point(10, 70);
- btnSeven.Click += new EventHandler(btnSeven_Click);
- // Button Eight
- btnEight = new Button();
- btnEight.Width = 30;
- btnEight.Height = 30;
- btnEight.Text = " ";
- btnEight.Font = new Font(Font.SystemFontName, 20f);
- btnEight.Location = new Point(40, 70);
- btnEight.Click += new EventHandler(btnEight_Click);
- // Button Nine
- btnNine = new Button();
- btnNine.Width = 30;
- btnNine.Height = 30;
- btnNine.Text = " ";
- btnNine.Font = new Font(Font.SystemFontName, 20f);
- btnNine.Location = new Point(70, 70);
- btnNine.Click += new EventHandler(btnNine_Click);
- // Add items to form
- this.Controls.Add(btnOne);
- this.Controls.Add(btnTwo);
- this.Controls.Add(btnThree);
- this.Controls.Add(btnFour);
- this.Controls.Add(btnFive);
- this.Controls.Add(btnSix);
- this.Controls.Add(btnSeven);
- this.Controls.Add(btnEight);
- this.Controls.Add(btnNine);
- }
- string TurnChecker()
- {
- if (iTurn == 1)
- {
- // X is up
- iTurn = 0;
- return "X";
- }
- else
- {
- // O is up
- iTurn = 1;
- return "O";
- }
- }
- void UpdateTable(int placement, string player)
- {
- table[placement] = player;
- }
- void CheckWinConditions(string player)
- {
- if (
- ((table[0] == player)) && ((table[1] == player)) && ((table[2] == player)))
- {
- btnOne.BackColor = Color.LightSalmon;
- btnTwo.BackColor = Color.LightSalmon;
- btnThree.BackColor = Color.LightSalmon;
- btnFour.Enabled = false;
- btnFive.Enabled = false;
- btnSix.Enabled = false;
- btnSeven.Enabled = false;
- btnEight.Enabled = false;
- btnNine.Enabled = false;
- }
- else if (
- ((table[0] == player)) && ((table[3] == player)) && ((table[6] == player)))
- {
- btnOne.BackColor = Color.LightSalmon;
- btnFour.BackColor = Color.LightSalmon;
- btnSeven.BackColor = Color.LightSalmon;
- btnTwo.Enabled = false;
- btnThree.Enabled = false;
- btnFive.Enabled = false;
- btnSix.Enabled = false;
- btnEight.Enabled = false;
- btnNine.Enabled = false;
- }
- else if (
- ((table[6] == player)) && ((table[7] == player)) && ((table[8] == player)))
- {
- btnSeven.BackColor = Color.LightSalmon;
- btnEight.BackColor = Color.LightSalmon;
- btnNine.BackColor = Color.LightSalmon;
- btnOne.Enabled = false;
- btnTwo.Enabled = false;
- btnThree.Enabled = false;
- btnFour.Enabled = false;
- btnFive.Enabled = false;
- btnSix.Enabled = false;
- }
- else if (
- ((table[0] == player)) && ((table[4] == player)) && ((table[8] == player)))
- {
- btnOne.BackColor = Color.LightSalmon;
- btnFive.BackColor = Color.LightSalmon;
- btnNine.BackColor = Color.LightSalmon;
- btnTwo.Enabled = false;
- btnThree.Enabled = false;
- btnFour.Enabled = false;
- btnSix.Enabled = false;
- btnSeven.Enabled = false;
- btnEight.Enabled = false;
- }
- else if (
- ((table[3] == player)) && ((table[4] == player)) && ((table[5] == player)))
- {
- btnFour.BackColor = Color.LightSalmon;
- btnFive.BackColor = Color.LightSalmon;
- btnSix.BackColor = Color.LightSalmon;
- btnOne.Enabled = false;
- btnTwo.Enabled = false;
- btnThree.Enabled = false;
- btnSeven.Enabled = false;
- btnEight.Enabled = false;
- btnNine.Enabled = false;
- }
- else if (
- ((table[2] == player)) && ((table[5] == player)) && ((table[8] == player)))
- {
- btnThree.BackColor = Color.LightSalmon;
- btnSix.BackColor = Color.LightSalmon;
- btnNine.BackColor = Color.LightSalmon;
- btnOne.Enabled = false;
- btnTwo.Enabled = false;
- btnFour.Enabled = false;
- btnFive.Enabled = false;
- btnSeven.Enabled = false;
- btnEight.Enabled = false;
- }
- else if (
- ((table[1] == player)) && ((table[4] == player)) && ((table[7] == player)))
- {
- btnTwo.BackColor = Color.LightSalmon;
- btnFive.BackColor = Color.LightSalmon;
- btnEight.BackColor = Color.LightSalmon;
- btnOne.Enabled = false;
- btnThree.Enabled = false;
- btnFour.Enabled = false;
- btnSix.Enabled = false;
- btnSeven.Enabled = false;
- btnNine.Enabled = false;
- }
- }
- void btnNine_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(8, sTurn);
- btnNine.Text = sTurn;
- btnNine.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnEight_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(7, sTurn);
- btnEight.Text = sTurn;
- btnEight.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnSeven_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(6, sTurn);
- btnSeven.Text = sTurn;
- btnSeven.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnSix_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(5, sTurn);
- btnSix.Text = sTurn;
- btnSix.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnFive_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(4, sTurn);
- btnFive.Text = sTurn;
- btnFive.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnFour_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(3, sTurn);
- btnFour.Text = sTurn;
- btnFour.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnThree_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(2, sTurn);
- btnThree.Text = sTurn;
- btnThree.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnTwo_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(1, sTurn);
- btnTwo.Text = sTurn;
- btnTwo.Enabled = false;
- CheckWinConditions(sTurn);
- }
- void btnOne_Click(object sender, EventArgs e)
- {
- string sTurn = TurnChecker();
- UpdateTable(0, sTurn);
- btnOne.Text = sTurn;
- btnOne.Enabled = false;
- CheckWinConditions(sTurn);
- }
- static void Main()
- { Application.Run(new Program()); }
- }
- }
Add Comment
Please, Sign In to add comment