我罗斯方块设计方案
| 这个作业属于哪个课程 | 2020面向对象程序设计 |
|---|---|
| 这个作业要求在哪里 | 面向对象程序设计我罗斯方块设计方案 |
| 这个作业的目标 | 讲述你的设计,你选用的渲染方法,你收集到的资料,和你的游戏界面示意图,和。注意:请详细写出你需要的类,和类的成员函数与成员变量。 |
| 作业正文 | 作业链接 |
| 参考文献 | coino.h的功能和使用、什么是渲染、控制台 |
| 项目地址 | Tetris2020 |
| 小组成员 | 031902407林建斌 031902408林蒋辉 |
一、设计方案
区别于单人俄罗斯方块,我罗斯方块是同屏幕,双人对战游戏,双方一人使用 wasd ,一人使用上下左右控制,当一名玩家消去一行,就会让另一名玩家最底下增加随机一行。其中玩家一通过AD 控制方块左右移动,W 转换方块朝向,S 快速下落,使得方块落到底端;玩家二通过左右控制方块左右移动,上转换方块朝向,下快速下落,使得方块落到底端。当一名玩家方块高度达到一个高度时就会结束游戏,该玩家失败。
1. 控制台通过调用windows.h的API函数来开启视窗和描绘图形,调用coino.h实现键盘的数据输入
2. 渲染方法:通过二维数组模拟界面图形范围,以界面左上角为坐标原点,数组的下标表示位置坐标,其中每个坐标表示一个方块,方块的状态分为三种,为0、1、2,其中0表示为空,可以用白色填充,其中1表示方块正在下落,可以用红色填充,其中2表示已经下落的方块,可以用蓝色填充。方块旋转、移动、或每隔一段时间下落,会改变数组的值,进而改变图形的填充,就需要重新渲染。双人对战就再增加一个互相联系的游戏区,旁边的区域则显示将要下落的方块形状、玩家id、游戏得分。
3. 在程序运行后,即游戏开始,生产游戏类对象,不断的接收用户传来的消息,并进行处理,游戏过程中,要处理出入的指令是否合法,能否进行,比如判断方块能否移动,是否已经达到边界不能继续移动,方块旋转中是否会被边界重叠或者与掉落区域的方块重叠。在每一个方块掉落后要进行判断,是否可以消去方块,然后在另一玩家处产生随机的一行。
二、游戏界面示意图


浙公网安备 33010602011771号