打砖块小游戏php程序,c++ 打砖块 小游戏示例

【实例简介】

【实例截图】

57e9e0e3651b187d0a5da306fab42198.png

【核心代码】

#include

#include

#include

#include

int scr[22][50], q=14, w=30, ban=20, score=1, sx=-1 , zy=-1 ,speed=1, chang=30;

void moveqiu(void);

void penzhuangqiu(void);

void printf(void);

void menu(void);

main(void)

{

int i=0,j=0;

menu();

for(;j<50;j )

scr[i][j]=4;

j=0;i=1;

;for(;i<3;i )

for(j=2;j<48;j )

scr[i][j]=3;

//这里设置砖头位置

scr[q][w]=2;

while(1)

{

for(j=0;j<20;j )//将板位置归0

scr[21][ban j]=0;

if(kbhit())//控制板的移动

switch(getch())

{

case'a':case'A':if(ban>1&&ban<=29) ban--;

break;

case'd':case'D':if(ban>0&&ban<=28) ban ;

break;

case'w':case'W':getch();break;//暂停键

}

for(j=0;j<20;j )//建立板位置为1

scr[21][ban j]=1;

penzhuangqiu();

moveqiu();

printf();

}

}

void penzhuangqiu(void)

{

int b;

b=0;

if(zy==1)//以下四个if用来检测撞砖,并改变球的运动方向

if(scr[q][w 1]==3||w 1==49)

{

scr[q][w 1]=0;

zy=-zy;

b=1;

}

if(zy==-1)//判断运动又有方向

if(scr[q][w-1]==3||w-1==0)

{

scr[q][w-1]=0;

zy=-zy;

b=1;//用来确认是否敲打左右上下的方块

}

if(sx==1)

if(scr[q-1][w]==3||q-1==0)

{

scr[q-1][w]=0;

sx=-sx;

b=1;

}

if(sx==-1)

if(scr[q 1][w]==3||q 1==21)

{

if(scr[q 1][w]==3)

{scr[q 1][w]=0;

sx=-sx;

b=1;

}

if(q 1==21)

{if(scr[q 1][w]==1)

sx=-sx;

else

{

printf("lose!!!!!!退出游戏");

if(getch())

main();

}

}

}

if(b==0)//斜的砖块

{

if(zy==1&&sx==1)

if(scr[q-1][w 1]==3)

{

scr[q-1][w 1]=0;

zy=-zy;

sx=-sx;

}

if(zy==-1&&sx==1)

if(scr[q-1][w-1]==3)

{

scr[q-1][w-1]=0;

zy=-zy;

sx=-sx;

}

if(zy==1&&sx==-1)

if(scr[q 1][w 1]==3)

{

scr[q 1][w 1]=0;

zy=-zy;

sx=-sx;

}

if(zy==-1&&sx==-1)

if(scr[q 1][w-1]==3)

{

scr[q 1][w-1]=0;

zy=-zy;

sx=-sx;

}//斜砖完毕

}

}

void moveqiu(void)

{

scr[q][w]=0;//使原来的球位置为0,并建立新的球位置

if(sx==1&&zy==1)

{

q--;w ;

}

if(sx==1&&zy==-1)

{

q--;w--;

}

if(sx==-1&&zy==1)

{

q ;w ;

}

if(sx==-1&&zy==-1)

{

q ;w--;

}

scr[q][w]=2;

}

void printf(void)

{

int i, j;

system("cls");

for(i=0;i<22;i )

{

for(j=0;j<50;j )

{

if(scr[i][j]==0)printf(" ");

if(scr[i][j]==1)printf("\3");

if(scr[i][j]==2)printf("\4");

if(scr[i][j]==3)printf("\5");

if(scr[i][j]==4)printf("_");

if(j==49)

printf("|\n");

}

}

}

void menu(void)

{

q=14, w=30, ban=20, score=1, sx=-1 , zy=-1 ,speed=1, chang=30;memset(scr,0, sizeof(int)*1100);

system("cls");

printf("A向左,D向右,W暂停\n开始游戏:任意键\n ");

if(getch()) printf("aaaaaa");

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值