PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [T]Tic-Tac-Toe



Bl1zz4rD
20.07.2009, 20:56
Moin,

In diesem Tutorial zeig ich euch wie man ganz leicht mit vb.net ein Tic-Tac-Toe Spiel erstellt.

Was ihr braucht:


Visual Basic 2005/08

Eventuell ein paar Kenntnisse zu Vb.Net

Fangen wir an:

Als erstes legen wir auf der Form an:

9 Label (Fixed3D(Eigenschaftsfenster -> Border-Style -> Fixed3D))
1 Menustrip


Im Menüstript legt ihr folgenes an:

Game
-New
-Exit
Scores
-View Scores
-Reset Scores


Die Labels benennt ihr wiefolgt:
F1
F2
F3
F4
F5
F6
F7
F8
F9

Also ihr nennt das um bei "name".

So das kann dann so aussehen:
http://img3.myimg.de/TIcTacToed822d.jpg

So nun zu den Codes:
Als erstes Deklaieren wir ein paar Sachen (unter Public Class Form1)


Dim GW As Boolean
Dim Player As String = "X"
Dim X As Integer = 0
Dim O As Integer = 0


Danach fügen wir zwei Funktionen hinzu(unter den Deklarationen):



Private Function GWN()
If Player = "X" Then
Player = "O"
O = O + 1
Else
Player = "X"
X = X + 1
End If
Dim msg As String
Dim title As String
Dim style As MsgBoxStyle
Dim response As MsgBoxResult
msg = "Player-" & Player & " hat gewonnen!" & vbCr & "Möchtest du ein neues Spiel starten?"
style = MsgBoxStyle.DefaultButton1 Or _
MsgBoxStyle.Question Or MsgBoxStyle.YesNoCancel
title = "Player-" & Player & " hat gewonnen!"

response = MsgBox(msg, style, title)
If response = MsgBoxResult.Yes Then
F1.Text = ""
F2.Text = ""
F3.Text = ""
F4.Text = ""
F5.Text = ""
F6.Text = ""
F7.Text = ""
F8.Text = ""
F9.Text = ""
ElseIf response = MsgBoxResult.Cancel Then
F1.Text = ""
F2.Text = ""
F3.Text = ""
F4.Text = ""
F5.Text = ""
F6.Text = ""
F7.Text = ""
F8.Text = ""
F9.Text = ""

End If
GW = False
End Function

Und




Public Function GWE()
If F1.Text = "O" And F4.Text = "O" And F7.Text = "O" Then
GW = True
ElseIf F1.Text = "O" And F2.Text = "O" And F3.Text = "O" Then
GW = True
ElseIf F2.Text = "O" And F5.Text = "O" And F8.Text = "O" Then
GW = True
ElseIf F3.Text = "O" And F6.Text = "O" And F9.Text = "O" Then
GW = True
ElseIf F4.Text = "O" And F5.Text = "O" And F6.Text = "O" Then
GW = True
ElseIf F7.Text = "O" And F8.Text = "O" And F9.Text = "O" Then
GW = True
ElseIf F7.Text = "O" And F5.Text = "O" And F3.Text = "O" Then
GW = True
ElseIf F1.Text = "O" And F5.Text = "O" And F9.Text = "O" Then
GW = True

ElseIf F1.Text = "X" And F4.Text = "X" And F7.Text = "X" Then
GW = True
ElseIf F1.Text = "X" And F2.Text = "X" And F3.Text = "X" Then
GW = True
ElseIf F2.Text = "X" And F5.Text = "X" And F8.Text = "X" Then
GW = True
ElseIf F3.Text = "X" And F6.Text = "X" And F9.Text = "X" Then
GW = True
ElseIf F4.Text = "X" And F5.Text = "X" And F6.Text = "X" Then
GW = True
ElseIf F7.Text = "X" And F8.Text = "X" And F9.Text = "X" Then
GW = True
ElseIf F7.Text = "X" And F5.Text = "X" And F3.Text = "X" Then
GW = True
ElseIf F1.Text = "X" And F5.Text = "X" And F9.Text = "X" Then
GW = True
Else

End If

If GW = True Then
GWN()
End If

End Function


Doppelklick auf F1:



If F1.Text = "" Then
If Player = "X" Then
F1.Text = "X"
Player = "O"
ElseIf Player = "O" Then
F1.Text = "O"
Player = "X"
End If

End If
GWE()

Und so dann immer weiter (bis F9)
Einfach immer F1 mit F2-F9 austauschen.

Game -> New



F1.Text = ""
F2.Text = ""
F3.Text = ""
F4.Text = ""
F5.Text = ""
F6.Text = ""
F7.Text = ""
F8.Text = ""
F9.Text = ""
Player = "X"
GW = False


Game -> Exit



End


Scores -> View Scores:



MsgBox("Player-X: " & X & vbCr & vbCr & "Player-O: " & O)


Scores -> Reset Scores:



X = 0
O = 0


Nun Debuggen & Fertig ;)

Beispiel: Download (Das ganze project (Source Code)) (http://ul.to/zor6v1)

Sawyer
20.07.2009, 21:02
Wirklich nett gemacht , aber ich denke es passt eher in die Kategorie .NET Tutorials , deshalb werde ich es mal verschieben.

MfG

INfERn0 StyLe
20.07.2009, 21:10
Also ich und ein Kollege machen uns immer einen Spaß daraus das Spiel mit 4 Ebenen gleichzeitig zu Spielen(also 4x4x4).

OT.: Schön erklärt wenn auch nicht meine Programmiersprache. :/

mfG

sarex
20.07.2009, 21:15
also das hat zum lernen sehr geholen danke
macht auch fun zum spielen xD
mfg

phil333
20.07.2009, 21:18
Danke, echt praktisch zu sehen, wie man solch einfache Spiele programmiert ;-)

xpecs
20.07.2009, 21:19
Schön erklärt wenn
1.) ist da nichts erklärt
2.) was ist daran programmieren. Das sieht mal alles sehr Delphitypisch aus. Frei nach dem Motto Komponenten Verknüpfen und fertig. Und die Bedingungen sind sehr sehr sehr unelegant gelöst.

Aber naja nen halben Daum für die Mühe

DarkFire
20.07.2009, 21:44
Dann können wir uns ja bestimmt bald dein 1337-TuT/Sc anschauen =)

BTT:
Sieht gut aus :D
Jetzt fehlt nurnoch die Multiplayer Funktion(Internet) :P

Planxty
21.07.2009, 00:43
Jetzt fehlt nurnoch die Multiplayer Funktion(Internet) :P
Oder das Spielfeld 3 dimensional das würd mich mehr interressieren^^ schön mit rumziehen können den kasten und so xD