切换2d数组值以响应vb.net中的单击事件

时间:2018-07-24 09:18:50

标签: arrays vb.net 2d

我正在Visual Basic中制作类似糖果的游戏。我已经开始并根据2D Label数组制定了代码。它包含开始时随机生成的6种不同颜色的图块。现在我进入了实际的游戏部分,被卡住了。

我可以单击数组中的一个图块,但似乎无法切换它们的位置,这样我就可以垂直或水平排列三种或更多颜色。

我不一定要求特定的代码,但我想知道更有经验的编码人员(例如在此平台上)将如何解决此问题。

下面是处理切换磁贴的代码片段:

Private Sub Click_H(ByVal sender As System.Object, ByVal e As System.EventArgs)

    Dim l1 As Label = DirectCast(sender, Label)
    Dim l2 As Label = DirectCast(sender, Label)
    Dim temp As Label

    For k As Integer = 0 To 2 Step 1
        For i As Integer = 0 To 9
            For j As Integer = 0 To 9

                If k = 0 Then

                    If l1.Equals(rooster(i, j)) Then
                        rooster(i, j).BorderStyle = BorderStyle.Fixed3D
                        ClickCounter += 1
                        l1 = rooster(i, j)
                        temp = rooster(i, j)
                        rooster(i, j) = rooster(i + 1, j)
                        rooster(i + 1, j) = temp
                    End If
                End If

                If k = 1 Then

                    If l1.Equals(rooster(i, j)) Then
                        rooster(i, j).BorderStyle = BorderStyle.Fixed3D
                        ClickCounter += 1
                        l2 = rooster(i, j)

                        If l2.Equals(rooster(i + 1, j)) Then
                            temp = rooster(i, j)
                            rooster(i, j) = rooster(i + 1, j)
                            rooster(i + 1, j) = temp
                        End If
                    End If
                End If
            Next
        Next
    Next
End Sub

“公鸡”是用另一种语言表示“田地”的词。有帮助吗?

0 个答案:

没有答案