我罗斯方块

这个作业属于哪个课程 2020面向对象程序设计
这个作业要求在哪里 我罗斯方块
这个作业的目标 讲述你的设计,你选用的渲染方法,你收集到的资料,和你的游戏界面示意图,和。注意:请详细写出你需要的类,和类的成员函数与成员变量。
作业正文 博客园
github地址 github
其他参考文献 如何做一个超低配俄罗斯方块(已完结)
c++俄罗斯方块(一):程序设计
C语言俄罗斯方块
小组成员 学号
肖清江 131901121
陈上委 031902303
黄朝威 031902309

渲染方法不限制,无论是控制台、绘图还是游戏引擎。但必须使用 cpp 编写代码。
注意不同方块的共性和特性。
使用git进行协作。
组队人数
2-3人

博客要求
在5.6作业结束前发布一篇博客,讲述你的设计,你选用的渲染方法,你收集到的资料,和你的游戏界面示意图,和。注意:请详细写出你需要的类,和类的成员函数与成员变量。

渲染方式

目前是使用Windows.h,以后可能会学QT

以下这张图是粗糙实现的游戏界面,以后还会改动,不是最终界面,目前是使用win32头文件<Windows.h>编程,以后可能会尝试学一下QT再来重新做;

设计思路:

主要参考了传统俄罗斯方块的玩法,再加入作业要求的双人对战和此消彼长的功能;
以下为几个类的分工
方块类:实现方块的基本操作;包括左移、右移、变形、随机生成、加速下落、普通下落等;
游戏类:实现游戏进行的一些操作;包括消行、增行、积分累计、显示分数、计时器等;
玩家类:实现玩家操作与游戏之间的联系;包括按键检测和重新开始等操作;
渲染类:实现游戏界面的设计和创建、消息循环和屏幕刷新等操作;

你可能需要以下类,方块类(分别代表 4 种方块种类),玩家类(代表每一个玩家),渲染类(封装渲染需要的函数),游戏类(管理整个函数)

类和函数

大体构造设计:

方块类:

int CreateRandom();//随机生成方块
void PaintSquare();//画方块
void Squaredown();//方块下落函数
void Squaredownquicker();//方块加速下落函数
int CanSquareLeft();//方块左移
int CanSquareRight();//方块右移
void ChangeSquare();//方块变形

游戏类:

void  DestoryOneLineSpare();//消行函数
void ShowScore();//显示分数函数
void OnTimer();//计时器
void AddOneLineSpare();//增行函数
int AddScore();//积分增加函数

玩家类

int keyhit1();//玩家1按键检测函数
int keyhit2();//玩家2按键检测函数
void OneMoreReturn();//计时器清零,重新开始游戏

渲染类

WNDCLASSEX wc;//创建窗口类wc
RegisterClassEx(&wc);//注册窗口
CreateWindowEx()//创建窗口
ShowWindow();//显示窗口
void paintBack();//设置背景
int CanGameBegin();//游戏开始函数
int CanGameOver();//游戏结束
void update_screen();//屏幕刷新
while(GetMessage()){}//消息循环;
原文地址:https://www.cnblogs.com/xiao-qingjiang/p/12828939.html