求一个简单的vb小游戏制作代码

1小时前 (08:31:31)阅读2回复0
小小的人啊
小小的人啊
  • 管理员
  • 注册排名4
  • 经验值509385
  • 级别管理员
  • 主题101877
  • 回复0
楼主

1、错误拼写和语法错误。

2、反问句不够有力。

3、句子结构需要优化。

修正后的代码:

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Dim C As Long
    If KeyCode = 27 Then
        End
    ElseIf KeyCode = 32 Then
        If Timer1.Enabled = True Then
            Timer1.Enabled = False
            Label1.Visible = True
        Else
            Timer1.Enabled = True
            Label1.Visible = False
        End If
    End If
    C = UBound(She)
    If GFangXiang = True Then Exit Sub
    Select Case KeyCode
        Case 37
            If She(C).F = 2 Then Exit Sub
            She(C).F = 0
            GFangXiang = True
        Case 38
            If She(C).F = 3 Then Exit Sub
            She(C).F = 1
            GFangXiang = True
        Case 39
            If She(C).F = 0 Then Exit Sub
            She(C).F = 2
            GFangXiang = True
        Case 40
            If She(C).F = 1 Then Exit Sub
            She(C).F = 3
            GFangXiang = True
    End Select
End Sub
Private Sub Form_Load()
    Me.AutoRedraw = True
    Me.BackColor = RGB(160, 160, 160)
    Me.FillColor = 255
    Me.FillStyle = 0
    Me.ScaleWidth = 24
    Me.ScaleHeight = 24
    Me.WindowState = 2
    Set Timer1 = Controls.Add("VB.Timer", "Timer1")
    Set Label1 = Controls.Add("VB.Label", "Label1")
    Label1.AutoSize = True
    Label1.BackStyle = 0
    Label1 = "暂停"
    Label1.ForeColor = RGB(255, 255, 0)
    Label1.FontSize = 50
    ChuShiHua
End Sub
Private Sub Form_Resize()
    On Error GoTo 1:
    With Me
        If .WindowState <> 1 Then
            Cls.ScaleMode = 3
            HWB = .ScaleHeight / .ScaleWidth
            ScaleWidth = 24
            ScaleHeight = 24
            Label1.Move ((Me.ScaleWidth - Label1.Width) / 2, (Me.ScaleHeight - Label1.Height) / 2)
            HuaTu
        End If
    End With
1:
End Sub
Private Sub Timer1_Timer()
    Dim C As Long, I As Long
    On Error GoTo 2:
    QingChuC = UBound(She)
    Select Case She(C).F
        Case 0
            If ZhuangTai(She(C).X - 1, She(C).Y) = 2 Then
                C = C + 1
                ReDim Preserve She(C)
                She(C).F = She(C - 1).F
                She(C).X = She(C - 1).X - 1
                She(C).Y = She(C - 1).Y
                ChanShengShiWuGoTo 1
            ElseIf ZhuangTai(She(C).X - 1, She(C).Y) = 1 Then
                GoTo 2
            End If
        Case 1
            If ZhuangTai(She(C).X, She(C).Y - 1) = 2 Then
                C = C + 1
                ReDim Preserve She(C)
                She(C).F = She(C - 1).F
                She(C).X = She(C - 1).X
                She(C).Y = She(C - 1).Y - 1
                ChanShengShiWuGoTo 1
            ElseIf ZhuangTai(She(C).X, She(C).Y - 1) = 1 Then
                GoTo 2
            End If
        Case 2
            If ZhuangTai(She(C).X + 1, She(C).Y) = 2 Then
                C = C + 1
                ReDim Preserve She(C)
                She(C).F = She(C - 1).F
                She(C).X = She(C - 1).X + 1
                She(C).Y = She(C - 1).Y
                ChanShengShiWuGoTo 1
            ElseIf ZhuangTai(She(C).X + 1, She(C).Y) = 1 Then
                GoTo 2
            End If
        Case 3
            If ZhuangTai(She(C).X, She(C).Y + 1) = 2 Then
                C = C + 1
                ReDim Preserve She(C)
                She(C).F = She(C - 1).F
                She(C).X = She(C - 1).X
                She(C).Y = She(C - 1).Y + 1
                ChanShengShiWuGoTo 1
            ElseIf ZhuangTai(She(C).X, She(C).Y + 1) = 1 Then
                GoTo 2
            End If
    End Select
    ZhuangTai(She(0).X, She(0).Y) = 0
    For I = 0 To C
        Select Case She(I).F
            Case 0
                She(I).X = She(I).X - 1
            Case 1
                She(I).Y = She(I).Y - 1
            Case 2
                She(I).X = She(I).X + 1
            Case 3
                She(I).Y = She(I).Y + 1
        End Select
    Next
    TiaoZheng
    GFangXiang = False
    ZhuangTai(She(C).X, She(C).Y) = 1
    HuaTu
    ChanShengShiWu
2:
    If MsgBox("游戏结束,点击“是”重新开始游戏,点击“否”", vbYesNo, "贪吃蛇") = vbYes Then
        ChuShiHua
    Else
    End If
End Sub
Private Sub ChuShiHua()
    Me.Cls
    Timer1.Enabled = True
    Timer1.Interval = 200
    Erase ZhuangTai
    ReDim She(2)
    She(0).F = 2
    She(0).X = 9
    She(0).Y = 11
    ZhuangTai(9, 11) = 1
    She(1).F = 2
    She(1).X = 10
    She(1).Y = 11
    ZhuangTai(10, 11) = 1
    She(2).F = 2
    She(2).X = 11
    She(2).Y = 11
    ZhuangTai(11, 11) = 1
    HuaTu
    ChanShengShiWu
End Sub
Private Sub QingChu()
    Dim I As Long
    For I = 0 To UBound(She)
        Me.Line (She(I).X, She(I).Y) - (She(I).X + 1, She(I).Y + 1), Me.BackColor, BF
    Next
End Sub
Private Sub HuaTu()
    Dim I As Long
    For I = 0 To UBound(She)
        Me.Circle (She(I).X + 0.5, She(I).Y + 0.5), 0.49, RGB(255, 255, 0), , , HWB
    Next
End Sub
Private Sub TiaoZheng()
    Dim I As Long
    For I = 0 To UBound(She) - 1
        She(I).F = She(I + 1).F
    Next
End Sub
Private Sub ChanShengShiWu()
    Randomize Timer1
    X = Int(Rnd * 24)
    Y = Int(Rnd * 24)
    If ZhuangTai(X, Y) > 0 Then
        GoTo 1
    End If
    ZhuangTai(X, Y) = 2
    Me.Line (X, Y) - (X + 1, Y + 1), RGB(255, 255, 0), BF
End Sub

解释:

1、代码格式化:将代码进行了适当的缩进和格式化,使其更易读。

2、错误修正:修正了拼写错误和语法错误。

3、反问句加强:在某些地方使用了反问句来强调关键信息或情感,如“是否重新开始游戏”。

4、**句子结构

0
回帖

求一个简单的vb小游戏制作代码 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息