在linux下ubuntu的五子棋游戏c语言代码
#include
//#include
#include
#define CHESSBOARD1 10 #define CHESSBOARD2 10 #define X_OFFSET 400 #define Y_OFFSET 200 #define X_CAPASITY 10 #define Y_CAPASITY 10 #define SPACE 40
#define RED 0x00ff0000 #define BLUE 0x0000ff00 #define WHITE 0xffffffff #define BLACK 0xff000000 #define NOKEY 0 #define RADIO 19 #define C_H 17 #define C_W 10
#define T___ 0x00ffffff #define X___ 0xff00ffff #define BORD 0xeeff0000 #define u32_t unsigned int
int array[CHESSBOARD1][CHESSBOARD2][1]; int board[CHESSBOARD1][CHESSBOARD2]; int play1[CHESSBOARD1][CHESSBOARD2][4]; int com[CHESSBOARD1][CHESSBOARD2][4]; int cursor_store[C_H][C_W]; struct fb_info{ int w; int h; int bpp; int *mem; }fb;
static u32_t cursor_pixel[C_H][C_W]= { {BORD,T___,T___,T___,T___,T___,T___,T___,T___,T___},
{BORD,BORD,T___,T___,T___,T___,T___,T___,T___,T___}, {BORD,X___,BORD,T___,T___,T___,T___,T___,T___,T___}, {BORD,X___,X___,BORD,T___,T___,T___,T___,T___,T___}, {BORD,X___,X___,X___,BORD,T___,T___,T___,T___,T___}, {BORD,X___,X___,X___,X___,BORD,T___,T___,T___,T___}, {BORD,X___,X___,X___,X___,X___,BORD,T___,T___,T___}, {BORD,X___,X___,X___,X___,X___,X___,BORD,T___,T___}, {BORD,X___,X___,X___,X___,X___,X___,X___,BORD,T___}, {BORD,X___,X___,X___,X___,X___,X___,X___,X___,BORD}, {BORD,X___,X___,X___,X___,X___,BORD,BORD,BORD,BORD}, {BORD,X___,X___,BORD,X___,X___,BORD,T___,T___,T___}, {BORD,X___,BORD,T___,BORD,X___,X___,BORD,T___,T___}, {BORD,BORD,T___,T___,BORD,X___,X___,BORD,T___,T___}, {T___,T___,T___,T___,T___,BORD,X___,X___,BORD,T___}, {T___,T___,T___,T___,T___,BORD,X___,X___,BORD,T___}, {T___,T___,T___,T___,T___,T___,BORD,BORD,T___,T___} };
int fb_open() {
int fd; int *mem;
fd = open(\ if(fd < 0) {
printf(\ return 1; }
struct fb_var_screeninfo fb_var;
ioctl(fd,FBIOGET_VSCREENINFO,&fb_var); fb.w = fb_var.xres; fb.h = fb_var.yres;
fb.bpp = fb_var.bits_per_pixel;
printf(\ h:%d bpp:%d\\n\fb.mem = mmap(NULL,FB_H*FB_W*fb_var.bits_per_pixel/8,PROT_READ|PROT_WRITE,MAP_SHARED,fd,0); //printf(\
return 0; }
void fb_pixel(int x,int y,int color) {
*(fb.mem + y*FB_W+x) = color;
}
void fb_drawline(int x0,int x1,int y,int color) { int i;
for(i = x0;i fb_pixel(i,y,color); } } void fb_drawretangle(int x0,int y0,int x1,int y1,int color) { int i,j; for(i = x0;i fb_pixel(i,j,color); } } void fb_drawline2(int x,int y0,int y1,int color) { int i; for(i = y0;i void fb_drawcycle(int x,int y,int r,int color) { int i,j; for(i = -r;i if(i*i+j*j <= r*r) { fb_pixel(i+x,j+y,color); } } } int get_mouse_info(int fd,char *buf) { int n; n = read(fd,buf,8); return n; } int save_cursor(int x,int y) { int i,j; for(i = 0;i < C_H;i++) { for(j = 0;j cursor_store[i][j] = *(fb.mem + j + x+(i +y)*FB_W); } return 0; } int restore_cursor(int x,int y) { int i,j; for(i = 0;i for(j = 0;j < C_W;j++) *(fb.mem+j+x+(i+y)*FB_W)=cursor_store[i][j]; } return 0; } void drawmouse(int x,int y) { int i,j; for(i = 0;i for(j = 0;j if(cursor_pixel[i][j] != T___) fb_pixel(x+j,y+i,cursor_pixel[i][j]); //printf(\} } } int printboard() { int i; fb_drawretangle(X_OFFSET - SPACE,Y_OFFSET - SPACE,X_OFFSET + SPACE *Y_CAPASITY,Y_OFFSET + SPACE * X_CAPASITY,BLUE); for(i = 0;i < Y_CAPASITY;i++) { fb_drawline(X_OFFSET,X_OFFSET+SPACE*(Y_CAPASITY - 1),i * SPACE + Y_OFFSET,RED); } for(i = 0;i < X_CAPASITY;i++) { fb_drawline2(i*SPACE+X_OFFSET,Y_OFFSET,Y_OFFSET+SPACE*(X_CAPASITY-1),RED); } } void printqizi(int row,int col, int color) { int x,y; x = X_OFFSET + SPACE*col; y = Y_OFFSET + SPACE*row; fb_drawcycle(x,y,RADIO,color); } struct node_t{ int x; int y; int z; }; //print the chessboard void print(int board[CHESSBOARD1][CHESSBOARD2]) { int i, j; printf(\ printf(\ \ for (j = 0; j < CHESSBOARD2; j++) printf(\ printf(\ printf(\ for (j = 0; j < CHESSBOARD2; j++) printf(\ printf(\ for (i = 0; i < CHESSBOARD1; i++) { printf(\ for (j = 0; j < CHESSBOARD2; j++) { printf(\} printf(\} printf(\}
相关推荐:
- [说明书]浅谈视觉传达设计中的色彩艺术
- [说明书]数据库原理-实验8-查询优化
- [说明书]临时用电施工组织设计
- [说明书]反假币考试试题第二套(人民币)
- [说明书]《建设工程监理规范》-2014.3.1实施
- [说明书]筋出槽,骨错缝病机诠释
- [说明书]百度预计来路对网站权重有多大影响
- [说明书]房屋面积测绘细则
- [说明书]计算机控制技术填空题汇总
- [说明书]乡镇卫生院(社区中心)死亡医学证明管
- [说明书]2013尾矿工实操试题
- [说明书]2015事业单位面试备考:贵州省事业单位
- [说明书](目录)2017-2022年半导体材料市场发
- [说明书]浙江省制造业发展“十三五”规划
- [说明书]干部选拔任用工作情况的自查报告
- [说明书]《发电厂电气部分》课后部分问答题整理
- [说明书]中国建立政府成本会计制度的思考
- [说明书]中国文化输出的现状及挑战-100分
- [说明书]通信原理实验指导(13-9)
- [说明书]HSF培训试卷(有害物质培训考试试题)
- 高中地理必修一:2.3《大气环境之六_气
- 新人教版八年级数学上期末总复习精品优
- WEB应用托管平台系统架构
- 《应用文写作》期末试卷
- 2017年秋九年级数学上册24.3正多边形和
- _空心村_形态特征与生成机理分析_以河
- 北师大版生物七年级下册12章2节感受器
- 社区卫生服务中心主任职责
- 广东省2014届广州二模材料作文“求道”
- 完整户口本英文翻译模板
- 2015年液化天然气LNG市场调研及发展趋
- 农村学校教育发展新
- 2014年注册税务师税法(Ⅱ)考试试题及答
- 东方大学俄语新版第5册第-7课课文翻译
- 路基路面工程课程设计1
- 219亩项目2011营销策略
- 第1篇 贸易术语-EXW、FCA、FAS
- 年会或大型活动防疫应急预案
- 改善提案(合理化建议)
- 初三英语第四单元ppt




