Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Public Class Main
- Dim Random As New Random
- Dim compChar As String
- Dim playerChar As String
- Dim gStatus As String
- Dim gTime As Integer
- Dim turnIs As String
- Private Sub startButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles startButton.Click
- If gStatus = "" Or gStatus = "Reset" Then
- gStatus = "Started"
- gTime = 0
- turnIs = "Player"
- ElseIf gStatus = "Stopped" Or gStatus = "Won" Or gStatus = "Started" Then
- Return
- End If
- End Sub
- Private Sub resetButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resetButton.Click
- If gStatus = "Stopped" Or gStatus = "Won" Then
- gStatus = "Reset"
- Time.Text = "0"
- Me.Text = "Tic Tac Toe"
- Grid_1.Text = ""
- Grid_2.Text = ""
- Grid_3.Text = ""
- Grid_4.Text = ""
- Grid_5.Text = ""
- Grid_6.Text = ""
- Grid_7.Text = ""
- Grid_8.Text = ""
- Grid_9.Text = ""
- End If
- End Sub
- Private Sub Grid_1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_1.Click
- If Grid_1.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_1.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_2.Click
- If Grid_2.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_2.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_3.Click
- If Grid_3.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_3.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_4.Click
- If Grid_4.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_4.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_5.Click
- If Grid_5.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_5.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_6.Click
- If Grid_6.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_6.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_7.Click
- If Grid_7.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_7.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_8.Click
- If Grid_8.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_8.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Grid_9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Grid_9.Click
- If Grid_9.Text = "" And gStatus = "Started" And turnIs = "Player" Then
- Grid_9.Text = playerChar : turnIs = "Computer"
- Else : Return
- End If
- End Sub
- Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
- If gStatus = "Started" And turnIs = "Computer" Then
- ChooseBox()
- End If
- CheckResult()
- End Sub
- Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
- If gStatus = "Started" Then
- gTime += 1
- Time.Text = gTime.ToString()
- End If
- End Sub
- Private Sub ChooseBox()
- Dim num As Integer
- Dim Random As New Random
- num = Random.Next(0, 10)
- If Grid_1.Text <> "" And Grid_2.Text <> "" And Grid_3.Text <> "" And Grid_4.Text <> "" And Grid_5.Text <> "" And Grid_6.Text <> "" And Grid_7.Text <> "" And Grid_8.Text <> "" And Grid_9.Text <> "" Then
- gStatus = "Tie"
- Me.Text = "Tic Tac Toe - Nobody won!"
- Else
- If num = 1 And Grid_1.Text = "" Then
- Grid_1.Text = compChar : turnIs = "Player"
- ElseIf num = 2 And Grid_2.Text = "" Then
- Grid_2.Text = compChar : turnIs = "Player"
- ElseIf num = 3 And Grid_3.Text = "" Then
- Grid_3.Text = compChar : turnIs = "Player"
- ElseIf num = 4 And Grid_4.Text = "" Then
- Grid_4.Text = compChar : turnIs = "Player"
- ElseIf num = 5 And Grid_5.Text = "" Then
- Grid_5.Text = compChar : turnIs = "Player"
- ElseIf num = 6 And Grid_6.Text = "" Then
- Grid_6.Text = compChar : turnIs = "Player"
- ElseIf num = 7 And Grid_7.Text = "" Then
- Grid_7.Text = compChar : turnIs = "Player"
- ElseIf num = 8 And Grid_8.Text = "" Then
- Grid_8.Text = compChar : turnIs = "Player"
- ElseIf num = 9 And Grid_9.Text = "" Then
- Grid_9.Text = compChar
- Else : ChooseBox()
- End If
- End If
- End Sub
- Private Sub CheckResult()
- 'First Column is filled
- If Grid_1.Text = compChar And Grid_2.Text = compChar And Grid_3.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_1.Text = playerChar And Grid_2.Text = playerChar And Grid_3.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Second Column is filled
- If Grid_4.Text = compChar And Grid_5.Text = compChar And Grid_6.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_4.Text = playerChar And Grid_5.Text = playerChar And Grid_6.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Third Column is filled
- If Grid_7.Text = compChar And Grid_8.Text = compChar And Grid_9.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_7.Text = playerChar And Grid_8.Text = playerChar And Grid_9.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'First Row is filled
- If Grid_1.Text = compChar And Grid_4.Text = compChar And Grid_7.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_1.Text = playerChar And Grid_4.Text = playerChar And Grid_7.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Second Row is filled
- If Grid_2.Text = compChar And Grid_5.Text = compChar And Grid_8.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_2.Text = playerChar And Grid_5.Text = playerChar And Grid_8.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Third Row is filled
- If Grid_3.Text = compChar And Grid_6.Text = compChar And Grid_9.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_3.Text = playerChar And Grid_6.Text = playerChar And Grid_9.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Diagonal Upwards is filled
- If Grid_1.Text = compChar And Grid_5.Text = compChar And Grid_9.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_1.Text = playerChar And Grid_5.Text = playerChar And Grid_9.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- 'Diagonal Downwards is filled
- If Grid_3.Text = compChar And Grid_5.Text = compChar And Grid_7.Text = compChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Computer Wins!"
- ElseIf Grid_3.Text = playerChar And Grid_5.Text = playerChar And Grid_7.Text = playerChar Then
- gStatus = "Won"
- Me.Text = "Tic Tac Toe - Player Wins!"
- End If
- End Sub
- Private Sub pCrosses_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pCrosses.CheckedChanged
- If gStatus = "Reset" Or gStatus = "" Then
- compChar = "O"
- playerChar = "X"
- End If
- End Sub
- Private Sub pCircles_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pCircles.CheckedChanged
- If gStatus = "Reset" Or gStatus = "" Then
- compChar = "X"
- playerChar = "O"
- End If
- End Sub
- End Class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement