MFC双人版俄罗斯方块

俄罗斯方块

第一次单独完成了一个小游戏,虽然是按照老师编的实验指导书上面单人版俄罗斯方块改过来的,但是还是很有成就感的。


砖块实现思路: 给砖块设置一个中心点,然后依次按照中心块的位置设置其他块的坐标,在移动和变换砖块时,只需要变换中心块的位置,然后其他块跟着一起移动。这样做既可以有利于旋转,实现起来也比较简单.


游戏截图:


启动界面


进入游戏界面



类的定义:

首先定义2个基类CBin和CBrick, CBin用来游戏界面的绘制,CBrick是一个抽象类,用来作为各种方块的基类,所以就有了5个派生类CIBrick, CLBrick, CSBrick, COBrick, CTBrick

//CBin类

class CBin {
private:
unsigned char** image;
unsigned int width;
unsigned int height;
public:
CBin(unsigned int w, unsigned int h);
~CBin();
unsigned int getWidth() { return width; };
unsigned int getHeight() { return height; };
void getImage(unsigned char** destImage);
void setImage(unsigned char** srcImage);
unsigned int removeFullLines();
};


//CBrick类

class CBrick {
protected:
unsigned int orientation; //表示砖块的状态
unsigned int posX; //砖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值