俄罗斯方块c语言代码txt,c语言实现俄罗斯方块代码

#include

#include

#include

#define ESC 27

#define UP 328

#define DOWN 336

#define LEFT 331

#define RIGHT 333

#define BLANK 32

#define BOTTOM 2

#define CANNOT 1

#define CAN 0

#define MAX 30

#define F1 315

#define ADD 43

#define EQUAL 61

#define DEC 45

#define SOUNDs 115

#define SOUNDS 83

#define PAUSEP 80

#define PAUSEp 112

void Init();

void Down();

void GoOn();

void ksdown();

void Display(int color);

void Give();

int Touch(int x,int y,int dx,int dy);

int GeyKey();

void Select();

void DetectFill();

void GetScores();

void Fail();

void Help();

void Quit();

void DrawBox(int x,int y,int Color);

void OutTextXY(int x,int y,char *String);

void DispScore(int x,int y,char Ch);

void DrawNext(int Color);

int Heng=12,Shu=20; /*横竖*/

int Position[MAX][MAX];

int middle[MAX][MAX];

int ActH,ActS;

int Act,Staus;

int i,j,k;

int Wid=10;

int NoPass=CAN;

float Delays=15000;

int BeginH=250,BeginS=7;

float Seconds=0;

int Scores=0;

int flag=1;

int Sounds=CAN;

int PreAct,NextAct;

int a[8][4][4][4]={{{1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0},

{1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0},

{1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0},

{1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0}},

{{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0}},

{{1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0},

{0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0},

{0,1,0,0,1,1,1,0,0,0,0,0,0,0,0,0},

{1,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0}},

{{1,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0},

{0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0},

{1,0,0,0,1,1,0,0,0,1,0,0,0,0,0,0},

{0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0}},

{{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0},

{1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0},

{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0},

{1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0}},

{{1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0},

{1,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0},

{1,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0},

{0,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0}},

{{0,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0},

{1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0},

{1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0}},

{{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0},

{1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}};

int b[4][4];

main(int argc,char *argv[])

{

if (argc!=1)

{

if (argv[1]!="")

Heng=atoi(argv[1]);

if (argv[2]!="")

Shu=atoi(argv[2]);

}

Init(); /*初始化界面*/

PreAct=random(8); /*取得当前的方块*/

for(;;) /*以下是游戏流程*/

{

NextAct=random(8); /*取得下一个方块*/

DrawNext(1); /*画出下一个方块*/

Act=PreAct;

if (Heng%2==0) ActH=Heng/2;

else ActH=(Heng-1)/2;

ActS=0; /*方块开始从游戏空间的中间下落*/

Staus=0; /*取开始的状态*/

NoPass=CAN; /*物体可以下落*/

Give(); /*取得当前的方块*/

Display(Act+1); /*显示当前的方块,每种方块的颜色不同*/

GoOn(); /*游戏的算法精髓所在*/

PreAct=NextAct; /*方块下落完毕,取得下一个方块*/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值