Bonjour, je réalise actuellement un puissance 4 en VB.net sur visual studio.
J'ai réalisé un tableau de PictureBox, à chaque fois que l'utilisateur place un pion, ce tableau est converti dans un autre tableau appelé TabConverti(), si la pion du joueur 1 est placé la case sera égale à 1 sinon à 2 pour un pion du joueur 2.
Ensuite la procédure verif() vérifie si (selon le pion placé) il vient de compléter une ligne, une colonne ou une diagonale. J'ai tenté de faire cette procédure verif() mais ça ne marche pas. Même si quatre pions sont alignés, aucun message ne s'affiche :
Private Sub verif()
Dim i As Integer
Dim j As Integer
For i = 1 To 7
For j = 1 To 6
If ((TabConverti(i, j) = "1" Or TabConverti(i, j) = "2")) Then
MsgBox("voila")
If ((TabConverti(i, j) = TabConverti(i + 1, j)) And (TabConverti(i + 1, j) = TabConverti(i + 2, j)) And (TabConverti(i + 2, j) = TabConverti(i + 3, j))) Then
MsgBox("Gagné" & MsgBoxStyle.Critical)
End If
End If
Next
Next
For i = 1 To 7
For j = 1 To 3
If (TabConverti(i, j) = "1" Or TabConverti(i, j) = "2") Then
MsgBox("Félicitation ! ")
If ((TabConverti(i, j) = TabConverti(i, j + 1)) And (TabConverti(i, j + 1) = TabConverti(i, j + 2)) And (TabConverti(i, j + 2) = TabConverti(i, j + 3))) Then
MsgBox("Gagné" & MsgBoxStyle.Critical)
End If
End If
Next
Next
For i = 1 To 4
For j = 1 To 3
If (TabConverti(i, j) = "1" Or TabConverti(i, j) = "2") Then
If ((TabConverti(i, j) = TabConverti(i + 1, j + 1)) And (TabConverti(i + 1, j + 1) = TabConverti(i + 2, j + 2)) And (TabConverti(i + 2, j + 2) = TabConverti(i + 3, j + 3))) Then
MsgBox("Gagné" & MsgBoxStyle.Critical)
End If
End If
Next
Next
For i = 1 To 4
For j = 4 To 6
If (TabConverti(i, j) = "1" Or TabConverti(i, j) = "2") Then
If ((TabConverti(i, j) = TabConverti(i + 1, j - 1)) And (TabConverti(i + 1, j - 1) = TabConverti(i + 2, j - 2)) And (TabConverti(i + 2, j - 2) = TabConverti(i + 3, j - 3))) Then
MsgBox("Gagné" & MsgBoxStyle.Critical)
End If
End If
Next
Next
End Sub
Est-ce que quelqu'un saurait comment résoudre ce problème?