我罗斯方块第一次作业

作业描述 详情
这个作业属于哪个课程 2020面向对象程序设计
这个作业要求在哪里 我罗斯方块
这个作业的目标 >发布一篇博客
>讲述你的设计,你选用的渲染方法
>整理你收集到的资料
>给出你的游戏界面示意图
>注意:请详细写出你需要的类,和类的成员函数与成员变量。
作业正文 如下
小组成员 031902535陈玉娜
031902537江舒颖
031902538李晓芳
参考文献 俄罗斯方块代码
俄罗斯方块实验报告(附源码)
百度百科渲染(计算机术语)
各种渲染方式对比解析
github 地址 https://github.com/dump16/Tetris
  • 设计讲述

在设计游戏时,我们先查找网上有关俄罗斯方块游戏的相关资料,以及渲染、引擎等一些专业术语的含义等。在经过初步了解之后才开始正式进一步考虑游戏的构思等。在设计时,我们从游戏的基础元素一步一步往外拓展,逐渐完善。从方块类、玩家类、渲染类、游戏类,四个类来考虑游戏的基础功能。方块类主要是对方块的基础操作,包括基础速度、随机出现、旋转、加速、左右移动、消行、增行;玩家类主要是每一个玩家对应的键盘操作,wasd、↑↓←→对应游戏的功能实现;渲染类主要是染色、边框界面,7种方块7种颜色的设置,边框界面的大小、数量,界面元素等;游戏类主要是管理整个游戏,包括游戏的开始、结束、终止、暂停、判定结束、计分等。通过四个类一步步完善游戏功能。

  • 基本功能

方块类

class Block{ 
	public:
		int shape;	//形状 
		int color;	//颜色 
		int speed;	//速度 
		char locate[10][10];	//位置 
		int score;	//得分 
		
	public:
		void Creat();	//构造
		void Random();	//随机出现 
		void Down();	//基础速度自动下落 
		bool IsAgain();	//边界判定及重合判定 
		void Move();	//移动 
		void Rotate();	//旋转
		void Accelerate();	//加速移动 
		bool Judge();	//层满判定 
		void Eliminate();	//消行
		void Add();	//增行 
		bool CheckWin//胜负判定 
		
};

玩家类

class Player{
	public:
		
	public:
		void Kbhit();	//键盘响应
		void Hide();	//隐藏光标 
		
};

渲染类

class Render{
	public:
		int height;	//界面高 
		int width;	//界面宽 
		int size;	//界面大小 
		int color;	// 界面颜色 
		char map[100][100];	//界面信息 
		
	public:
		void Paint();	//绘制界面 
		void Update();	//更新界面 
		void Score();	//显示得分
		
};

游戏类

class Game{
	public:
		
	public:
		void Welcome();	//欢迎界面 
		void Run();	//运行
		void End();	//结束
		void Over();	//结束界面 
		void Pause();	//暂停
		void Continue();	//继续 
		void Exit();	//退出
		void New();	//新游戏
		
};
  • 渲染方法

控制台

  • 游戏界面示意图

原文地址:https://www.cnblogs.com/ponynice/p/12833765.html