发新话题
打印

给一个俄罗斯方块的VB代码!

给一个俄罗斯方块的VB代码!

给一个俄罗斯方块的VB代码!
有兴趣的同学可以试试:
首先,在form中添加label1,label2,command1,command2,timer1
label1位置要在左上方,离其它控件远很多!
timer1属性:enabled=false
label1的属性:backcolor用天蓝色
command1属性:caption:"start"
command2属性:caption:"quit"
下面是主要代码:(900余行,不算空行)

'
'



Option Base 1

Dim NNn(1 To 4, 1 To 2) As Integer
Dim FType As Integer
Dim Score As Integer
Dim FTypeE As Integer
Dim MM(1 To 10, 1 To 15) As Integer
Dim JG As Boolean
Dim ActiOn As Integer
Dim Sped As Variant

Dim Rou As Integer

Private Sub Command1_Click()
Timer1.Enabled = False
ActiOn = 0
Label2.Caption = "Score:0"

Dim Speed As Integer
ww:

ToZero

tt = InputBox("Input your Speed(1-10):", "New Game", "5")
'MsgBox tt
'Exit Sub

If tt = "" Then Exit Sub
Sped = tt


If IsNumeric(Sped) = False Then
GoTo ww
End If
If Int(Sped) > 10 Then
Speed = 10

ElseIf Int(Sped < 1) Then
Speed = 1
Else
Sped = Int(Sped)

End If

Select Case Sped
Case 1
Speed = 1000
Case 2
Speed = 800
Case 3
Speed = 600
Case 4
Speed = 550
Case 5
Speed = 500
Case 6

Speed = 400
Case 7
Speed = 300
Case 8
Speed = 200
Case 9
Speed = 150
Case 10
Speed = 100
End Select
Timer1.Interval = Speed
Timer1.Enabled = True
Label2.Caption = "Score:0" & vbCrLf & "Speed:" & Sped & vbCrLf & "Round:0"

End Sub



Private Sub Command1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii




Case 87 'KeyUp
ActiOn = 1





Case 83 'KeyDown
ActiOn = 2
MsgBox "rrr"






Case 65 'KeyLeft
ActiOn = 3
MsgBox "rrr"







Case 68 'KeyRight



ActiOn = 4


End Select




'''''''''''''''''''''''''''''''''''



End Sub

Private Sub Command2_Click()
End

End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case 87
'MsgBox "wwww"

ActiOn = 1





Case 83 'KeyDown
ActiOn = 2
'MsgBox "rrr"






Case 65 'KeyLeft
ActiOn = 3
'MsgBox "rrr"







Case 68 'KeyRight



ActiOn = 4


End Select




'''''''''''''''''''''''''''''''''''



DoWithActiOn








End Sub


Private Sub Form_Load()
StandB
ToZero

''''''''''''''''''
JG = False
Rou = 0
Label2.Caption = "Score:0" & vbCrLf & "Speed:5" & vbCrLf & "Round:0"





End Sub
Sub ToZero()
For i = 1 To 10
For j = 1 To 15
MM(i, j) = 0
Next j
Next i
For u = 1 To 4
For v = 1 To 2
NNn(u, v) = 0
Next v
Next u
Score = 0
Rou = 0

Dui

End Sub


Sub StandB()
Dim Dleft As Integer, Dtop As Integer

Dleft = 600
Dright = 240
Dim Doindex As Integer
Doindex = 1


For i = 1 To 10
Dleft = 600 + (i - 1) * 300
Dtop = 0
For j = 1 To 15
Dtop = 240 + (j - 1) * 300
If Not (j = 1 And i = 1) Then
Doindex = Doindex + 1
Load Label1(Doindex)
Label1(Doindex).Left = Dleft
Label1(Doindex).Top = Dtop
Label1(Doindex).Height = 300
Label1(Doindex).Width = 300
Label1(Doindex).Visible = True
Label1(Doindex).Caption = ""


End If
Next j
Next i
'MsgBox Doindex








End Sub

Sub Dui()    '让数组与图形对应'
If Timer1.Enabled = False Then Exit Sub
Dim Nown As Integer
Nown = 0
For i = 1 To 10
For j = 1 To 15
Nown = Nown + 1
Select Case MM(i, j)
Case 0
Label1(Nown).BackColor = vbCyan
Case 1
Label1(Nown).BackColor = vbBlue
Case 2
Label1(Nown).BackColor = vbRed

End Select
Next j
Next i



End Sub


Sub MakeAN()
Gscore
If Timer1.Enabled = False Then Exit Sub
Randomize
FType = 0
FTypeE = 0

Dim TTTT As Integer
TTTT = Rnd * 6 + 1
Dim EEEE As Integer
EEEE = Rnd * 3 + 1

Select Case TTTT
Case 1                      '排出方块的坐标
NNn(1, 1) = 5               'o
NNn(1, 2) = 1          '''''ooo
NNn(2, 1) = 4
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
Case 2                      'oooo
NNn(1, 1) = 4
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 6
NNn(3, 2) = 1
NNn(4, 1) = 7
NNn(4, 2) = 1
Case 3                       'oo
NNn(1, 1) = 4                ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
Case 4                        'oo
NNn(1, 1) = 4               ''oo
NNn(1, 2) = 2
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 1
NNn(4, 1) = 6
NNn(4, 2) = 1
Case 5                        'o
NNn(1, 1) = 4              ''ooo
NNn(1, 2) = 2
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 6
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 1
Case 6                      'o
NNn(1, 1) = 4               'ooo
NNn(1, 2) = 1
NNn(2, 1) = 4
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
Case 7                       'oo
NNn(1, 1) = 5                'oo
NNn(1, 2) = 1
NNn(2, 1) = 6
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
End Select
If EEEE = 2 Then
Select Case TTTT
Case 1                      '排出方块的坐标
NNn(1, 1) = 4               'o
NNn(1, 2) = 1          '''''ooo
NNn(2, 1) = 4
NNn(2, 2) = 2
NNn(3, 1) = 4
NNn(3, 2) = 3
NNn(4, 1) = 5
NNn(4, 2) = 2
Case 2                      'oooo
NNn(1, 1) = 5
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 3
NNn(4, 1) = 5
NNn(4, 2) = 4
Case 3                       'oo
NNn(1, 1) = 5                ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 4
NNn(3, 2) = 2
NNn(4, 1) = 4
NNn(4, 2) = 3
Case 4                        'oo
NNn(1, 1) = 5               ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 6
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 3
Case 5                        'o
NNn(1, 1) = 4              ''ooo
NNn(1, 2) = 1
NNn(2, 1) = 4
NNn(2, 2) = 2
NNn(3, 1) = 4
NNn(3, 2) = 3
NNn(4, 1) = 5
NNn(4, 2) = 3
Case 6                      'o
NNn(1, 1) = 4               'ooo
NNn(1, 2) = 1
NNn(2, 1) = 4
NNn(2, 2) = 2
NNn(3, 1) = 4
NNn(3, 2) = 3
NNn(4, 1) = 5
NNn(4, 2) = 1
Case 7                       'oo
NNn(1, 1) = 5                'oo
NNn(1, 2) = 1
NNn(2, 1) = 6
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
End Select
ElseIf EEEE = 3 Then
Select Case TTTT
Case 1                      '排出方块的坐标
NNn(1, 1) = 4               'o
NNn(1, 2) = 1          '''''ooo
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 6
NNn(3, 2) = 1
NNn(4, 1) = 5
NNn(4, 2) = 2
Case 2                      'oooo
NNn(1, 1) = 4
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 6
NNn(3, 2) = 1
NNn(4, 1) = 7
NNn(4, 2) = 1
Case 3                       'oo
NNn(1, 1) = 4                ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
Case 4                        'oo
NNn(1, 1) = 4               ''oo
NNn(1, 2) = 2
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 1
NNn(4, 1) = 6
NNn(4, 2) = 1
Case 5                        'o
NNn(1, 1) = 4              ''ooo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 6
NNn(3, 2) = 1
NNn(4, 1) = 4
NNn(4, 2) = 2
Case 6                      'o
NNn(1, 1) = 4               'ooo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 6
NNn(3, 2) = 1
NNn(4, 1) = 6
NNn(4, 2) = 2
Case 7                       'oo
NNn(1, 1) = 5                'oo
NNn(1, 2) = 1
NNn(2, 1) = 6
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
End Select
ElseIf EEEE = 4 Then
Select Case TTTT
Case 1                      '排出方块的坐标
NNn(1, 1) = 5               'o
NNn(1, 2) = 1          '''''ooo
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 3
NNn(4, 1) = 4
NNn(4, 2) = 2
Case 2                      'oooo
NNn(1, 1) = 5
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 5
NNn(3, 2) = 3
NNn(4, 1) = 5
NNn(4, 2) = 4
Case 3                       'oo
NNn(1, 1) = 5                ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 4
NNn(3, 2) = 2
NNn(4, 1) = 4
NNn(4, 2) = 3
Case 4                        'oo
NNn(1, 1) = 5               ''oo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 2
NNn(3, 1) = 6
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 3
Case 5                        'o
NNn(1, 1) = 4              ''ooo
NNn(1, 2) = 1
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 5
NNn(4, 2) = 3
Case 6                      'o
NNn(1, 1) = 4               'ooo
NNn(1, 2) = 3
NNn(2, 1) = 5
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 5
NNn(4, 2) = 3
Case 7                       'oo
NNn(1, 1) = 5                'oo
NNn(1, 2) = 1
NNn(2, 1) = 6
NNn(2, 2) = 1
NNn(3, 1) = 5
NNn(3, 2) = 2
NNn(4, 1) = 6
NNn(4, 2) = 2
End Select



End If


Rou = Rou + 1

FType = TTTT
FTypeE = EEEE



End Sub

Sub PaiRu()
On Error Resume Next

If Timer1.Enabled = False Then Exit Sub


''''''''''''''''''''
''判断‘’‘’‘’
Dim www As Boolean
www = False

For i = 1 To 4
Dim xx, yy
xx = NNn(i, 1)
yy = NNn(i, 2)
If yy = 15 Then
www = True
GoTo ss
End If

If MM(xx, yy + 1) = 1 Then www = True
ss:
Next i




If www = False Then
For h = 1 To 4
Dim ex, ey
ex = NNn(h, 1)
ey = NNn(h, 2)
MM(ex, ey) = 0
Next h

For j = 1 To 4

NNn(j, 2) = NNn(j, 2) + 1

Next j
For r = 1 To 4
Dim xy, yx
xy = NNn(r, 1)
yx = NNn(r, 2)
MM(xy, yx) = 2
Next r
XiaoX

Else
For t = 1 To 4
Dim xxx, yyy
xxx = NNn(t, 1)
yyy = NNn(t, 2)
MM(xxx, yyy) = 1
NNn(t, 1) = 0
NNn(t, 2) = 0

Next t
JG = False

End If







End Sub
Sub DoWithAc1()  'opu''
Dim Nn(1 To 4, 1 To 2) As Integer
Dim weree As Boolean
weree = True

Dim RRX, RRY As Integer
RRX = NNn(1, 1)
RRY = NNn(1, 2)



Select Case FType
Case 1
'''''''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 1

Nn(1, 1) = 4               'o
Nn(1, 2) = 1          '''''ooo
Nn(2, 1) = 4
Nn(2, 2) = 2
Nn(3, 1) = 4
Nn(3, 2) = 3
Nn(4, 1) = 5
Nn(4, 2) = 2
Case 2
Nn(1, 1) = 4               'o
Nn(1, 2) = 1          '''''ooo
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 6
Nn(3, 2) = 1
Nn(4, 1) = 5
Nn(4, 2) = 2
Case 3
Nn(1, 1) = 5               'o
Nn(1, 2) = 1          '''''ooo
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 3
Nn(4, 1) = 4
Nn(4, 2) = 2
Case 4
Nn(1, 1) = 5               'o
Nn(1, 2) = 1          '''''ooo
Nn(2, 1) = 4
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 2
End Select
''''''''''''''''''''''''''''''''''''''''''''''''''
Case 2
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 1

Nn(1, 1) = 5
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 3
Nn(4, 1) = 5
Nn(4, 2) = 4
Case 3
Nn(1, 1) = 5
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 3
Nn(4, 1) = 5
Nn(4, 2) = 4
Case 2
Nn(1, 1) = 4
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 6
Nn(3, 2) = 1
Nn(4, 1) = 7
Nn(4, 2) = 1
Case 4
Nn(1, 1) = 4
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 6
Nn(3, 2) = 1
Nn(4, 1) = 7
Nn(4, 2) = 1
End Select
'''''''''''''''''''''''''''''''''''''''''''''''''''''
Case 3
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 2
Nn(1, 1) = 4                ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 2
Case 4
Nn(1, 1) = 4                ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 2
Case 1
Nn(1, 1) = 5                ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 4
Nn(3, 2) = 2
Nn(4, 1) = 4
Nn(4, 2) = 3
Case 3
Nn(1, 1) = 5                ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 4
Nn(3, 2) = 2
Nn(4, 1) = 4
Nn(4, 2) = 3
End Select
''''''''''''''''''''''''''''''''''''''''''''''''''''
Case 4
''''''''''''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 2
Nn(1, 1) = 4               ''oo
Nn(1, 2) = 2
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 1
Nn(4, 1) = 6
Nn(4, 2) = 1
Case 4
Nn(1, 1) = 6              ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 1
Nn(4, 1) = 4
Nn(4, 2) = 2
Case 1
Nn(1, 1) = 5               ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 6
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 3
Case 3
Nn(1, 1) = 5               ''oo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 6
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 3
End Select
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
Case 5
'''''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 1
Nn(1, 1) = 4              ''ooo
Nn(1, 2) = 1
Nn(2, 1) = 4
Nn(2, 2) = 2
Nn(3, 1) = 4
Nn(3, 2) = 3
Nn(4, 1) = 5
Nn(4, 2) = 3
Case 2
Nn(1, 1) = 4              ''ooo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 6
Nn(3, 2) = 1
Nn(4, 1) = 4
Nn(4, 2) = 2
Case 3
Nn(1, 1) = 4              ''ooo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 5
Nn(4, 2) = 3
Case 4
Nn(1, 1) = 6              ''ooo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 2
Nn(3, 1) = 6
Nn(3, 2) = 2
Nn(4, 1) = 4
Nn(4, 2) = 2
End Select
'''''''''''''''''''''''''''''''''''''''''''''''
Case 6
'''''''''''''''''''''''''''''''''''''''''''
Select Case FTypeE
Case 1
Nn(1, 1) = 4               'ooo
Nn(1, 2) = 1
Nn(2, 1) = 4
Nn(2, 2) = 2
Nn(3, 1) = 4
Nn(3, 2) = 3
Nn(4, 1) = 5
Nn(4, 2) = 1
Case 2
Nn(1, 1) = 4               'ooo
Nn(1, 2) = 1
Nn(2, 1) = 5
Nn(2, 2) = 1
Nn(3, 1) = 6
Nn(3, 2) = 1
Nn(4, 1) = 6
Nn(4, 2) = 2
Case 3
Nn(1, 1) = 5               'ooo
Nn(1, 2) = 1
Nn(2, 1) = 4
Nn(2, 2) = 3
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 5
Nn(4, 2) = 3
Case 4
Nn(1, 1) = 4               'ooo
Nn(1, 2) = 1
Nn(2, 1) = 4
Nn(2, 2) = 2
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 2
End Select
''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''
Case 7
Nn(1, 1) = 5                'oo
Nn(1, 2) = 1
Nn(2, 1) = 6
Nn(2, 2) = 1
Nn(3, 1) = 5
Nn(3, 2) = 2
Nn(4, 1) = 6
Nn(4, 2) = 2
End Select
Dim XdI As Integer, YdI As Integer
XdI = NNn(1, 1) - Nn(1, 1)
YdI = NNn(1, 2) - Nn(1, 2)
For uy = 1 To 4

Nn(uy, 1) = Nn(uy, 1) + XdI
Nn(uy, 2) = Nn(uy, 2) + YdI
Next uy
''''''''''''''''''''''''''''''''''''
For h = 1 To 4
If Nn(h, 1) < 1 Or Nn(h, 1) > 10 Or Nn(h, 2) < 1 Or Nn(h, 2) > 15 Then
weree = False
GoTo ee
End If


Next h

For tt = 1 To 4
Dim xx, yy
xx = Nn(tt, 1)
yy = Nn(tt, 2)
If MM(xx, yy) = 1 Then weree = False
Next tt
ee:
If weree = True Then
For t = 1 To 4
Dim xe, ye
xe = NNn(t, 1)
ye = NNn(t, 2)
MM(xe, ye) = 0
Next t
For ryry = 1 To 4
NNn(ryry, 1) = Nn(ryry, 1)
NNn(ryry, 2) = Nn(ryry, 2)
Next ryry
For ep = 1 To 4
Dim xz, yz
xz = NNn(ep, 1)
yz = NNn(ep, 2)
MM(xz, yz) = 2
Next ep
If FTypeE < 4 Then
FTypeE = FTypeE + 1
Else
FTypeE = 1
End If

End If



''''''''''''''''





End Sub

Sub DoWithActiOn()
On Error Resume Next

If Timer1.Enabled = False Then Exit Sub
Select Case ActiOn
Case 1       'key up 的事件
DoWithAc1



Case 3          'key left 的事件
Dim ee As Boolean
ee = False
For t = 1 To 4
Dim xe, ye
xe = NNn(t, 1)
ye = NNn(t, 2)
MM(xe, ye) = 0
Next t
For i = 1 To 4
If NNn(i, 1) = 1 Then
ee = True
Else
Dim xx, yy
xx = NNn(i, 1)
yy = NNn(i, 2)
If MM(xx - 1, yy) = 1 Then ee = True
End If
Next i

If ee = False Then
For u = 1 To 4
NNn(u, 1) = NNn(u, 1) - 1
Next u
End If

For tt = 1 To 4
Dim xee, yee
xee = NNn(tt, 1)
yee = NNn(tt, 2)
MM(xee, yee) = 2
Next tt





Case 4                'key right 的事件
Dim eew As Boolean
eew = False
For tk = 1 To 4
Dim xek, yek
xek = NNn(tk, 1)
yek = NNn(tk, 2)
MM(xek, yek) = 0
Next tk
For ii = 1 To 4
If NNn(ii, 1) = 10 Then
eew = True
Else
Dim xxx, yyy
xxx = NNn(ii, 1)
yyy = NNn(ii, 2)
If MM(xxx + 1, yyy) = 1 Then eew = True
End If
Next ii
If eew = False Then
For uu = 1 To 4
NNn(uu, 1) = NNn(uu, 1) + 1
Next uu



End If
For ttk = 1 To 4
Dim xeek, yeek
xeek = NNn(ttk, 1)
yeek = NNn(ttk, 2)
MM(xeek, yeek) = 2
Next ttk





Case 2                       'key down 的事件
Dim eewk As Boolean
eewk = False
For tkk = 1 To 4
Dim xekk, yekk
xekk = NNn(tkk, 1)
yekk = NNn(tkk, 2)
MM(xekk, yekk) = 0
Next tkk
For iik = 1 To 4
If NNn(iik, 2) = 15 Then
eewk = True
Else
Dim xxxk, yyyk
xxxk = NNn(iik, 1)
yyyk = NNn(iik, 2)
If MM(xxxk, yyyk + 1) = 1 Then eewk = True
End If
Next iik
If eewk = False Then
For uuk = 1 To 4
NNn(uuk, 2) = NNn(uuk, 2) + 1
Next uuk



End If
For ttkk = 1 To 4
Dim xeekk, yeekk
xeekk = NNn(ttkk, 1)
yeekk = NNn(ttkk, 2)
MM(xeekk, yeekk) = 2
Next ttkk


End Select
ActiOn = 0



End Sub
Sub Gscore()
Label2.Caption = "Score:" & Str(Score) & vbCrLf & "Speed:" & Str(Speed) & vbCrLf & "Round:" & Str(Rou)




End Sub
Sub XiaoX() ''''''''''''''''''''''''A BIG PROBLEM

For i = 1 To 15
Dim wer As Boolean
wer = True


For j = 1 To 10
If MM(j, i) <> 1 Then wer = False
Next j
If wer = True Then
Score = Score + 1
Gscore

For k = i To 2 Step -1
For u = 1 To 10
MM(u, k) = MM(u, k - 1)

Next u
Next k
For tt = 1 To 10
MM(1, tt) = 0
Next tt
Dui

End If

Next i







End Sub


Sub IsLose()

Dim er As Boolean
er = True

For i = 1 To 10
If MM(i, 3) = 1 Then er = False
Next i
If er = False Then
Timer1.Enabled = False
ToZero
MsgBox "You Lose!!!!"

End If

End Sub
Private Sub Timer1_Timer()

If JG = False Then
MakeAN

JG = True
End If

Dui



PaiRu
'XiaoX
IsLose


End Sub

TOP

不错,顶了

TOP

发新话题
最近访问的版块