Jumat, 15 Mei 2015

Source Code Game Tic Tac Toe Pada VB.Net

Selamat siang ,hari ini saya akan mengposting tentang cara membuat game tic tac toe di VB.Net
Kali ini saya menggunakan button create on the fly
Berikut Codingannya :
Public Class Form1
    'true -> giliran player 1 X
    'false -> giliran player 2 O
    Dim flag As Boolean = True
    Function cekbutton(btna As Button, btnb As Button, btnc As Button) As Integer
        Dim menang As Integer = 0
        If (btna.Text = btnb.Text) And (btnb.Text = btnc.Text) Then
            If btna.Text = "X" Then
                menang = 1
            ElseIf btna.Text = "O" Then
                menang = 2
            End If
        End If
        Return menang
    End Function
    Sub cekmenang()
        '0 -> blm ad yang menang
        '1 -> player 1 yg menang
        '2 -> player 2 yang menang
        Dim menang As Integer = 0
        Dim temp As Integer
        'Horizontal

        'temp = cekbutton(Button1, Button2, Button3)
        'If temp = 1 Then
        '    menang = 1
        'ElseIf temp = 2 Then
        '    menang = 2
        'End If
       
        If (Button1.Text = Button2.Text) And (Button2.Text = Button3.Text) Then
            If Button1.Text = "X" Then
                menang = 1
            ElseIf Button1.Text = "O" Then
                menang = 2
            End If
        End If

        If (Button4.Text = Button5.Text) And (Button5.Text = Button6.Text) Then
            If Button4.Text = "X" Then
                menang = 1
            ElseIf Button4.Text = "O" Then
                menang = 2
            End If
        End If

        If (Button7.Text = Button8.Text) And (Button8.Text = Button9.Text) Then
            If Button7.Text = "X" Then
                menang = 1
            ElseIf Button7.Text = "O" Then
                menang = 2
            End If
        End If
        'Vertikal
        If (Button1.Text = Button4.Text) And (Button4.Text = Button7.Text) Then
            If Button1.Text = "X" Then
                menang = 1
            ElseIf Button1.Text = "O" Then
                menang = 2
            End If
        End If

        If (Button2.Text = Button5.Text) And (Button5.Text = Button8.Text) Then
            If Button2.Text = "X" Then
                menang = 1
            ElseIf Button2.Text = "O" Then
                menang = 2
            End If
        End If
        If (Button3.Text = Button6.Text) And (Button6.Text = Button9.Text) Then
            If Button3.Text = "X" Then
                menang = 1
            ElseIf Button3.Text = "O" Then
                menang = 2
            End If
        End If
        'Diagonal
        If (Button1.Text = Button5.Text) And (Button5.Text = Button9.Text) Then
            If Button1.Text = "X" Then
                menang = 1
            ElseIf Button1.Text = "O" Then
                menang = 2
            End If
        End If
        If (Button3.Text = Button5.Text) And (Button5.Text = Button7.Text) Then
            If Button3.Text = "X" Then
                menang = 1
            ElseIf Button3.Text = "O" Then
                menang = 2
            End If
        End If
        If menang = 1 Then
            Label1.Text = "Player 1 Menang"
        ElseIf menang = 2 Then
            Label1.Text = "Player 2 Menang"
        End If
    End Sub
    Sub cekdraw()
        'memeriksa apakah draw/stalemate
        Dim temp As Boolean = True 'draw
        If Button1.Text = "" Then
            temp = False
        End If
        If Button2.Text = "" Then
            temp = False
        End If
        If Button3.Text = "" Then
            temp = False
        End If
        If Button4.Text = "" Then
            temp = False
        End If
        If Button5.Text = "" Then
            temp = False
        End If
        If Button6.Text = "" Then
            temp = False
        End If
        If Button7.Text = "" Then
            temp = False
        End If
        If Button8.Text = "" Then
            temp = False
        End If
        If Button9.Text = "" Then
            temp = False
        End If
        If temp Then
            Label1.Text = "Game Over"
        End If


    End Sub
    Private Sub Cekflag()
        If flag = True Then
            Label1.Text = "Player 1 Turn"
        Else
            Label1.Text = "Player 2 Turn"
        End If
    End Sub
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        flag = True
        Call Cekflag()
    End Sub
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button9.Click, Button8.Click, Button7.Click, Button6.Click, Button5.Click, Button4.Click, Button3.Click, Button2.Click
        Dim a As Button = CType(sender, Button)
        If a.Text = "" Then
            'masih kosong
            'if flag = true then
            If flag Then 'artinya turn player 1
                a.Text = "X"
            Else 'artinya turn player 2
                a.Text = "O"
            End If
            flag = Not flag
            Call Cekflag()
            Call cekdraw()
            Call cekmenang()

        Else
            MsgBox("Kotak Sdh Ad Isinya !!!")
        End If
    End Sub
End Class


Screenshot :



 










































3 komentar:

Unknown mengatakan...

Lumayan untuk waktu luang..

Unknown mengatakan...

keren2,thx min

Unknown mengatakan...

Tnx Source Codenya, cuman kalau bisa agar admin blog mengubah tampilan blog agar lebih mudah untuk di comment secara lansung tanpa harus dibawah ke page lain