C语言 Linux版俄罗斯方块,C语言版——俄罗斯方块(一)
——使用软件VC6.0(需要一个函数库——Easy_X)
#include
#include
#include
#include
#include
#include
#include
#include
#pragma comment (lib,"winmm.lib")
#define B1_x 0// 游戏矩形左边值#define B2_x 360//游戏矩形右边值#define B1_y 120//上边值#define B2_y 480
#define V_box 20//每个小方块边长#define H_box 20
#define M 18//一共有18个小方块#define N 18
#define left 1
#define right 2
#define down 3
#define up 4
#define space 5
#define F 0
#define T 1
struct MAX_BOX
{
int var;//填充值!
int color;}min_box[M][N];int R_top_x;//小游戏方块的最右边值
int R_top_y;
int bottom_y;//zuixiazhiint bottom_x;
int L_bottom_x;
int score=0;
int speed=0;
int n=1;
int full_row=0;
int flag_newbox=0;
int speed_step=30;
int sleeptime=1000;
#define MAX_BOX 19struct SHAPE{char box[2];
int color;
int next;
}shapes[MAX_BOX]=
{{0x88,0xc0,RED,1},
{0x8e,0x0,RED,2},
{0xc4,0x40,RED,3},
{0x2e,0x0,RED,0},//*******************{0x44,0xc0,MAGENTA,5},{0x8e,0x0,MAGENTA,6},{0xc8,0x80,MAGENTA,7},{0xe2,0x0,MAGENTA,4},//++++++++++++++++++++{0x8c,0x40,WHITE,9},{0x6c,0x0,WHITE,8},//*******************{0x4c,0x80,YELLOW,11},{0xc6,0x0,YELLOW,10},//____________________
{0x4e,0x0,BLUE,15},
{0x8c,0x80,BLUE,14},
{0xe4,0x0,BLUE,13},
{0x4c,0x40,BLUE,12},//&&&&&&&&&&&&&&&&&&&&&&{0x88,0x88,RED,17},
{0xf0,0x0,RED,16},//***********************{0xcc,0x0,MAGENTA,18},};
void interface_one()//第一幅画面
{
initgraph(640,480);
setbkcolor(BLACK);// 设置背景色为黑色cleardevice();// 用背景色清空屏幕settextcolor(RED);
settextstyle(50,0,_T("楷体"));
RECT r={0,0,640,480};//drawtext(_T("俄罗斯方块游戏"),&r,DT_CENTER|DT_VCENTER|DT_SINGLELINE);
getch();
closegraph();}
void interface_game()//游戏运行画面!
{
int i,j;
int x1=B1_x;
int y1=B1_y;
int x2=B2_x;
int y2=B2_y;
initgraph(640,480);
setbkcolor(BLACK);
cleardevice();
setlinecolor(RED);
line(0,30,640,30);
settextcolor(RED);
settextstyle(16,0,_T("楷体"));
RECT r={0,0,640,30};
drawtext(_T("欢迎来到俄罗斯方块游戏"),&r,DT_CENTER|DT_SINGLELINE|DT_VCENTER);
setlinecolor(RED);
for(i=0;i
{
for(j=0;j
{
min_box[i][j].var=0;
min_box[i][j].color=BLACK;line(x1,y1,x1+H_box,y1);line(x1,y1+V_box,x1+H_box,y1+H_box);line(x1,y1,x1,y1+V_box);line(x1+H_box,y1,x1+H_box,y1+V_box);x1=x1+H_box;}x1=B1_x;y1=y1+H_box;
}
}
int born_box()//随机生成方块!
{
int box_numb;srand(time(NULL));box_numb=(rand()%19);
return(box_numb);
}
int randomize()//初始化X的坐标!
{
int B_x;
srand(time(NULL));
B_x=(rand()%15)*20;return(B_x);
}
void show_score(int s)
{
char S[5];
setcolor(RED);
setfillcolor(RED);rectangle(480,120,640,180);
floodfill(501,121,RED);
RECT r={480,120,640,180};settextcolor(RED);settextstyle(25,0,_T("宋体"));
drawtext(_T("当前得分"),&r,DT_CENTER|DT_SINGLELINE|DT_VCENTER);
sprintf(S,"%d",s);
outtextxy(560,200,S);//指定位置输出字符串}
void show_level(int k)
{
char L[5];
setcolor(RED);
setfillcolor(RED);rectangle(480,240,640,300);
floodfill(501,241,RED);
settextcolor(RED);
RECT r={480,240,640,300};settextstyle(25,0,_T("宋体"));drawtext(_T("当前等级"),&r,DT_CENTER|DT_SINGLELINE|DT_VCENTER);
sprintf(L,"%d",k);
outtextxy(560,320,L);
}
C语言 Linux版俄罗斯方块,C语言版——俄罗斯方块(一)相关推荐
- linux系统下怎么使用c语言,Linux操作系统下C语言使用.ppt
Linux操作系统下C语言使用 Linux操作系统下C语言的使用 授课教师:江兰帆 E-Mail: jiang_lanfan@126.com GCC的使用 在LINUX开发环境下,GCC(GNU C ...
- c语言 linux常用函数,C语言常用函数
int isPrime(int n) {int i; for(i=2;i ...
- 2048游戏c语言linux简易代码,C语言实现2048游戏代码
本文实例为大家分享了C语言实现2048游戏具体代码,供大家参考,具体内容如下 效果图: 使用文本界面的屏幕绘图库 ncurses. 设计思路: 在满足条件情况下消除方块 允许在游戏主界面(16 宫格) ...
- 易语言linux数据库模块,易语言ADO数据库对象模块源码
下面我们对易语言ADO数据库对象模块源码文件阐述相关使用资料和易语言ADO数据库对象模块源码文件的更新信息. 易语言ADO数据库对象模块源码 易语言ADO数据库对象模块源码 系统结构:list,取错误 ...
- 俄罗斯方块-C语言-详注版
代码地址如下: http://www.demodashi.com/demo/14818.html 俄罗斯方块-C语言-详注版 概述 本文详述了C语言版俄罗斯方块游戏的原理以及实现方法,对游戏代码进行了 ...
- 红旗linux9支持软件,红旗linux系统下载|红旗Linux操作系统9.0正式版下载(c语言编写) 最新版_数码资源网...
今天带来的红旗Linux操作系统9.0正式版相信是很多从事编程行业人员非常了解的,红旗Linux系统下载是非常专业的c语言编写软件,同时红旗Linux操作系统9.0正式版还拥有开关机加速.Firstc ...
- C语言实现2048游戏(Windows版)
本文是Windows版的C语言实现2048小游戏,嵌入式版的请移步 C语言实现2048小游戏-粤嵌GE6818嵌入式系统实训 C语言实现电子音乐相册-粤嵌GE6818嵌入式系统实训 一.游戏介绍 所谓 ...
- 《C语言入门指南》合集版,学习c语言有这一篇就够了?
前言: <C语言入门指南>,全文分为3篇,共计34248字,此为合集版,适用初学者入门C语言,非初学者也可以通过本文复习C语言相关知识点,强化记忆!十三肝7天才弄完,贼累了,发布这篇笔记也 ...
- c语言入门经典第五版自学,C语言入门经典(第5版) PDF扫描[103MB]
C语言入门经典(第5版) 内容简介: C语言是每一位程序员都应该掌握的基础语言.C语言是微软.NET编程中使用的C#语言的基础:C语言是iPhone.iPad和其他苹果设备编程中使用的Objecti ...
- C语言入门经典(第5版)之编程初步
为什么80%的码农都做不了架构师?>>> 现在读者一定很渴望编写程序,让计算机与外界进行实际的交互.我们不希望程序只能做打字员的工作,显示包含在程序代码中的固定信息.的确,编程 ...
最新文章
- SVM讲的成体系的,自圆其说较好的一篇,上午没读完,KKT第二部分不等式有疑问没弄懂,复制后继续读完
- 成功解决 将xgboost的plot_importance绘图时出现的f0、f1、f2、f3、f4、f5等改为对应特征的字段名
- 对于linux下指令的进一步扩充与巩固
- 结构设计模式 - 适配器设计模式
- . Two Sum(C, C++, Python)
- 白皮书丨关于工业互联网,你想知道的都在这儿
- 将数据库中一张表中数据复制到另一张表
- 吴裕雄--天生自然 高等数学学习:微分中值定理与导数的应用
- 解决 网上下载的例子 My Mac 64-bit 不能运行的问题
- 网络排障少走弯路两案例速解网管疑难
- 关于浏览器被劫持主页的处理方法(完结版)
- 计算机网络分层汇聚层,大型局域网通常划分为核心层、汇聚层和接入层,以下关于各个网络层次的描述中,不 - 问答库...
- ISTQB- TTA大纲
- 删除浏览器的cookie
- fps游戏通用内存自瞄算法的原理与C++实现
- Linux监控操作系统CPU、内存、磁盘、网络和dstat
- 要早点进入IT行业不是没道理的
- 礼物说仿写项目iOS源码
- AUL恢复truncate删除的表
- “+智能”与混合云成为战略主线 郑叶来如何解码华为云2018年终总结