Qualcuno riesce gentilmente a capire cosa c'è di sbagliato in questo codice che non funziona? Grazie mille in anticipo attendo risposta
(devo ricreare il goco sunny seeds, il gioco è questo
https://www.youtube.com/watch?v=G_9DS5IkQQ)
Public Class Form1
Const numcolonne As Integer = 11
Const numrighe As Integer = 7
Dim matrice(numrighe - 1, numcolonne - 1), i, j, riga, colonna As Integer
Dim r1, r2, c1, c2, n As Integer
Dim possibile, possibile1 As Boolean
'j indice per le righe
'i indice per le colonne
'riga indica la riga selezionata
'colonna indica la colonna selezionata
Private Sub visualizza()
For j = 0 To numrighe - 1
For i = 0 To numcolonne - 1
dgv1.Item(i, j).Value = matrice(j, i)
Next
Next
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For i = 0 To numcolonne - 1
dgv1.Columns.Add(i + 1, i + 1)
dgv1.Columns(i).Width = 30
Next
dgv1.Rows.Add(6)
Dim num As New Random
For j = 0 To numrighe - 1
For i = 0 To numcolonne - 1
matrice(j, i) = num.Next(1, 10)
dgv1.Item(i, j).Value = matrice(j, i)
Next
Next
dgv1.RowsDefaultCellStyle.BackColor = Color.Yellow
r1 = dgv1.CurrentCell.RowIndex
c1 = dgv1.CurrentCell.ColumnIndex
' r2 = dgv1.CurrentCell.RowIndex
' c2 = dgv1.CurrentCell.ColumnIndex
'If c1 > c2 Then
'n = 1
' Else
' n = -1
' End If
' If r1 = r2 Then
'If (c1 = c2 + 1) Or (c1 = c2 - 1) Then
' Else
'vicini in riga
' possibile = True
' For k = c1 + 1 To c2 - 1 Step n
'If matrice(r1, k) <> "" Then
'possibile = True
' Else
' possibile = False
' End If
' Next
' If possibile = True Then
'controllasopra()
' controllasotto()
' End If
' End If
' End If
' If c1 = c2 Then
'If (r1 = r2 + 1) Or (r1 = r2 - 1) Then
' Else
'vicini in colonna
' possibile = True
' For k = r1 + 1 To r2 - 1 Step n
'If matrice(k, c1) <> "" Then
'possibile = False
' Else
' possibile = True
' End If
' Next
' If possibile = True Then
'controllasx()
' controlladx()
' End If
' End If
' End If
If c1 > 0 Then
controllasx()
End If
If c1 < 10 Then
controlladx()
End If
If r1 > 0 Then
controllasopra()
End If
If r1 < 6 Then
controllasotto()
End If
End Sub
Private Sub controllasx()
If matrice(r1, c1) = matrice(r1, c1 - 1) Then
dgv1.CurrentCell.Style.BackColor = Color.White
' matrice(r1, c1 - 1) = ""
' matrice(r1, c1) = ""
visualizza()
End If
End Sub
Private Sub controlladx()
If matrice(r1, c1) = matrice(r1, c1 + 1) Then
dgv1.CurrentCell.Style.BackColor = Color.White
' matrice(r1, c1 + 1) = ""
' matrice(r1, c1) = ""
visualizza()
End If
End Sub
Private Sub controllasopra()
If matrice(r1, c1) = matrice(r1 - 1, c1) Then
dgv1.CurrentCell.Style.BackColor = Color.White
' matrice(r1 - 1, c1) = ""
' matrice(r1, c1) = ""
visualizza()
End If
End Sub
Private Sub controllasotto()
If matrice(r1, c1) = matrice(r1 + 1, c1) Then
dgv1.CurrentCell.Style.BackColor = Color.White
' matrice(r1 + 1, c1) = ""
' matrice(r1, c1) = ""
visualizza()
End If
End Sub
End Class