c语言编写俄罗斯方块源程序,C语言实现俄罗斯方块源代码.pdf

C语语言言实实现现俄俄罗罗斯斯方方块块源源代代码码

本文实例为大家分享了C语言实现俄罗斯方块的具体代码,供大家参考,具体内容如

GitHub: 【C语言】实现俄罗斯方块源代码

Head.h

#ifndef _HEAD_H_

#define _HEAD_H_

#include

#include

#include

#include

#include

#include

#define _CRT_ ECURE_NO_WARNING 1

//界面的相关的参数

#define WALL_ QUARE_WIDTH 10 //围墙方块的宽度

#define xWALL_ QUARE_NUM 30 //x轴方向的方块的数目

#define yWALL_ QUARE_WIDTH 46 //y轴方向的方块的数目

#define GAME_WALL_WIDTH (WALL_ QUARE_WIDTH*xWALL_ QUARE_NUM) //游戏区域的宽度 300

#define GAME_WALL_HTGH (WALL_ QUARE_WIDTH*yWALL_ QUARE_WIDTH) //游戏区域的高度 460

#define WINDOW_WIDTH 480 // 游戏总窗口宽度 480

#define WINDOW_HIGH 460 // 游戏总窗口高度 460

//定义俄罗斯方块的相关参数

#define ROCK_ QUARE_WIDTH (2*WALL_ QUARE_WIDTH) //俄罗斯方块的大小是围墙的两倍 20

#define xROCK_ QUARE_NUM ((GAME_WALL_WIDTH -20)/ROCK_ QUARE_WIDTH) // 游戏区x轴放的方块数

目:14

#define yROCK_ QUARE_NUM ((GAME_WALL_HTGH -20)/ROCK_ QUARE_WIDTH) // 游戏区y轴放的方块数

目:22

//定义移动方块的相关操作

#define DIRECT_UP 3

#define DIRECT_DOWN 2

#define DIRECT_LEFT -1

#define DIRECT_RIGHT 1

/*数据结构-线性表(结构体数组)*/

typedef struct ROCK

{

//用来表示方块的形状(每一个字节是8位,用每4位表示方块中的一行)

unsigned short rock hapeBits;

int nextRockIndex; // 一个方块,在数组中的 标

} RockType;

//方块在图形窗口中的位置(即定位4*4大块的左上角坐标)

typedef struct LOCATE

{

int left;

int top;

} RockLocation_t;

//全局变量-游戏板的状态描述(即表示当前界面哪些位置有方块)

//0表示没有,1表示有(多加了两行和两列,形成一个围墙,便于判断方块是否能够移动)

int game_board[yROCK_ QUARE_NUM + 2][xROCK_ QUARE_NUM + 2] = { 0 };

int game_socres = 0; //全局分数

// 把俄罗斯方块的19种类放到数组中

int rockTypeNum = 19;

RockType RockArray[19] = { (0, 0) };

//预览区的方块的位置

RockLocation_t preRockLocation = {GAME_WALL_WIDTH+70,70};

//每次生成初始化方块的位置

RockLocation_t initRockLocation = { (WALL_ QUARE_WIDTH + 100), WALL_ QUARE_WIDTH };

//分数显示的位置

//各个文件中的函数

// 画出界面以及画出方块Draw.h

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值