1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| Private Sub PictureBox_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs)
Dim element As Object
Dim elementbis, elementter As Control
Dim dif, pas, saut, ecart, toto As Integer
Dim compteur As Integer = 0
Dim fin As Boolean = False
'On calcule la différence d'index entre le pion choisi et la case où il est laché
dif = sender.tabindex - depart
'On calcule le pas (valeur absolue)
If dif < 8 And dif > -8 Then
pas = 1
ElseIf dif Mod 9 = 0 Then
pas = 9
ElseIf dif Mod 10 = 0 Then
pas = 10
Else
pas = 11
End If
'On remet le pas en valeur réelle
If dif < 0 Then
pas = 0 - pas
End If
'On calcule le nombre de pions sautés
saut = (dif / pas) - 1
'On convertit les pions sautés et le pion de destination de la couleur de celui qui a joué
ecart = pas
'Boucle qui change les pions de couleur
While compteur <= saut
For Each element In Controls
If element.TabIndex = depart + ecart Then
'on change le statut de la case
If tour = "n" Then
element.image = Image.FromFile("pionnoir.gif")
element.tag = "n"
ElseIf tour = "b" Then
element.image = Image.FromFile("pionblanc.gif")
element.tag = "b"
End If
End If
Next element
compteur = compteur + 1
ecart = ecart + pas
End While
'On change de joueur
change_joueur()
End Sub
'PROCEDURE DE CHANGEMENT DE JOUEUR
Private Sub change_joueur()
Dim elementter As Control
'On change de joueur
If tour = "n" Then
tour = "b"
Label37.Text = " Player : " & player2
ElseIf tour = "b" Then
tour = "n"
Label37.Text = " Player : " & player1
End If
'On branche les pions du joueur qui doit jouer sur la procédure qui autorise le click
For Each elementter In Controls
If elementter.Tag = tour Then
AddHandler elementter.Click, AddressOf PictureBox_Click
Else
RemoveHandler elementter.Click, AddressOf PictureBox_Click
End If
Next elementter
End Sub |
Partager