文档详情

俄罗斯方块游戏程序设计.doc

发布:2017-06-08约1.31万字共5页下载文档
文本预览下载声明
俄罗斯方块游戏 程序设计报告 学号: 姓名: 难度:**** 知识点:(1)绘图 (2)键盘事件处理 (3)定时器控件 (4)多模块程序设计 (5)文本文件的读写 1.功能要求: (1)启动程序,单击“开始”或“回车”键开始游戏。不同形状以随机颜色出现,出现时的方向是随机的; (2)使用“选项”菜单画框提供按键方案; (3)游戏过程中可以单击窗口右下角的“暂停”和“继续”,也可使用“回车”键控制,打开“选项”对话框时,程序自动进入暂停状态; (4)计分遵循一次消去一行加一百,两行三百,三行七百,四行一千五,程序自动记录并显示历史的最高分; (5)得分每增加2000分,程序自动将方块下落速度提高一档。 2.需要解决的疑难问题和方法: (1)本程序在模块中定义变量: Private blnGrid(0 To 19, 0 To 9) As Boolean 网格 Private lngColor(0 To 19, 0 To 9) As Long 网格绘制颜色 Private blnBlock(0 To 4, 0 To 3, 0 To 3, 0 To 3) As Boolean 五种方块的四种不同方位 Private blnStarted As Boolean 是否已开始玩 Dim intTypeCur As Integer 当前方块的类型 Dim lngColorCur As Long 当前方块的颜色 Dim intOrieCur As Integer 当前方块的方位 Dim intOrieNext As Integer 当前方块的下一个方位 Dim intXCur As Integer 当前方块的当前位置 Dim intYCur As Integer Dim intXNext As Integer 当前方块的下一个位置 Dim intYNext As Integer Public intDownDistance As Integer 快速下降时的下降距离 Public blnClockWise As Boolean 方块旋转方向 Public blnShowNext As Boolean 是否显示下一个方块 Public blnScheme As Boolean 按键方案 Dim lngScore As Long 得分 Dim intTypeNew As Integer 下一个方块的类型 Dim lngColorNew As Long 下一个方块的颜色 Dim intOrieNew As Integer 下一个方块的方位 Dim lngHighScore As Long Dim blnRedraw As Boolean (2)画10×20的网格: Dim i As Integer, j As Integer 去掉旧图象 For i = 0 To 3 If i + intYCur = 0 And i + intYCur = 19 Then 如果在大方框外,则不绘制 For j = 0 To 3 If j + intXCur = 0 And j + intXCur = 9 Then If (j + intXCur = 0) And (j + intXCur = 9) And (blnBlock(intTypeCur, intOrieCur, i, j)) And Not blnGrid(i + intYCur, j + intXCur) Then picGrid.Line ((j + intXCur) * 20 + 2, (i + intYCur) * 20 + 2)-((j + intXCur) * 20 + 19, (i + intYCur) * 20 + 19), vbBlack, B picGrid.Line ((j + intXCur) * 20 + 4, (i + intYCur) * 20 + 4)-((j + intXCur) * 20 + 17, (i + intYCur) *
显示全部
相似文档