c++俄罗斯方块 完整源代码

文章目录

1. 功能描述

1
2

2. 源代码

#include<iostream>
#include<string>
#include<cstdlib>
#include<windows.h>
#include<ctime>
#include<conio.h>
#include<cstdio>
using namespace std;

class Tetris
{
private:
	int rank;				//游戏难度等级
	int score;				// 得分
	int id;					//图形ID
	int point[2];			//两基点
	int top;					//最高点高度
	double clock;		        //距离上一次消行过去的毫秒数
public:
	Tetris();
	void DrawMap();			//游戏界面
	void SetColor(int);		//控制颜色
	void Draw(int, int, int);		//画图形
	void Run();				//运行游戏
	void ReDraw(int, int, int);			//清除图形
	bool Judge(int, int, int);
	void Turn(int);				//旋转
	void Updata();				// 更新界面
	void Pause();				//游戏暂停
	void Input_score();
	void Welocme();
}; const int sharp[19][8] =	{				//组成图形的各个点的各个坐标,先纵后横
//条形
{0,0,1,0,2,0,3,0},{0,0,0,1,0,2,0,3},     
//方块
{0,0,1,0,0,1,1,1},  
//L形
{0,0,1,0,1,1,1,2},{0,1,1,1,2,0,2,1},{0,0,0,1,0,2,1,2},{0,0,0,1,1,0,2,0},
//J形
{1,0,1,1,1,2,0,2},{0,0,0,1,1,1,2,1},{0,0,0,1,0,2,1,0},{0,0,1,0,2,0,2,1},
//T形
{1,0,0,1,1,1,2,1},{1,0,1,1,1,2,0,1},{0,0,1,0,2,0,1,1},{0,0,0,1,0,2,1,1},
//S形
{1,0,2,0,1,1,0,1},{0,0,0,1,1,1,1,2},
//Z形
{0,0,1,0,1,1,2,1},{1,0,1,1,0,1,0,2}
};

const int high[19] = { 4,1,2,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3 };
int map[28][16]{};
//条形
#define a1  0			
#define a2  1

// 方块
#define b 2					

//L形
#define c1 3					
#define c2 4
#define c3 5
#define c4 6

//J形
#define d1 7					
#define d2 8 
#define d3 9
#define d4 10

//T形
#define e1 11
#define e2 12
#define e3 13
#define e4 14

//S形
#define f1 15
#define f2 16

//Z形
#define g1 17
#define g2 18






Tetris::Tetris()				//构造函数, 初始化各个值
{
	point[0] = 0;
	point[1] = 5;
	score = 0;
	top = 25;
	clock = 0;
}

void Tetris::Turn(int num)				//旋转函数
{
	/*
	
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值