1、 C#程序设计实训报告程序设计实训报告 题目题目:5. 俄罗斯方块俄罗斯方块 院 系 信息工程系_ 专 业_计算机科学与技术_ 年级班别_ _ _ 学 号 学生姓名_ _ 指导教师_ _ 成 绩 2011 年 12 月 1 系统设计要求 1.1 需求分析 本系统为一个用 C#实现的为我们所熟悉的简单的俄罗斯方块游戏,该系统 的具体功能如下: 1) 能简便的开始游戏,游戏中的方块的功能与日常我们所熟悉的游戏 的功能一致,各种块的设置也一致,包括块的旋转,加速下降,平移,满行消 去,到顶游戏结束功能; 2) 能够自定义游戏中功能键的具体按键,设置游戏的级别,即方块下降 的速度等,并在设置后立即生效
2、,在游戏中立刻体现,在下次程序运行时读 取上次设置的游戏环境; 3) 显示下一方块提示信息,以及游戏数据的统计,如速度,按键速度,分 数行者等等; 4) 游戏有级别设置,级别越高,方块下降的速度越快,当到达一定分数 后进入下一级别; 1.2 界面要求 要求界面简洁美观,简单易用。 1.3 设计环境 本程序选择 Visual Studio 2008 作为实验环境。 2 设计思路 2.1 用面向对象的方法分析系统 对于俄罗斯方块来说,我们可以定义一个类,专门来描述俄罗斯方块,在这 个类中,包含与之相关的方法、属性和字段,通过封装,实现其业务逻辑。其中, 每一个俄罗斯方块都有相同的特征,由 4 个小
3、正方形构成,有旋转,移动,下落 的动作, 行被填满除去构成行的小正方体块。 基中块的形状类型有 7 种: 田、 一、 L、倒 L、Z、倒 Z、上。 在主窗口中,通过调用俄罗斯方块类来实现程序的表示层,在该窗口中通过 两个 Panel 控件来实现方块叠放窗口和下一方块信息窗口;调用设置窗口,保存 设计窗口类传回的信息,并设置到游戏中去,保存在配置文件中; 在设置窗口中,以良好的界面提供用户自定义快捷键的接口,保存相应设置 参数,以提供给调用窗口。 2.2 概要设计 根据设计思路,可以为系统设计三个类,实现俄罗斯方块其本块的类 RussiaBlock 继承 Object 类, 主窗体类 MainF
4、orm 类,设置窗体类 SettingForm 类。 1) RussiaBlock 类 字段 private int shapeNO;/形状号 private Control con;/绘图控件 private Point pos;/当前位置 private Point lastPos;/最后位置 private int leftBorder;/左边界 private int bottomBorder;/下边界 private int unitPix;/每块象素数 / / 当前块总个数 / private int blockNum = 0;/当前块总个数 private int rowDelNum = 0;/已构成满行被消去的行数 private bool, aroundExist;/周边的位置是否有块 private Color, aroundColor