/*
项目2:五子棋人机对战
制作人:flywindwyy
规划时间:2010,11,3
完成时间:2010,11,16
*/
#ifndef _COMMAND_H_
#define _COMMAND_H_
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/fb.h>
#include <sys/mman.h>
#include <math.h>
#define N 30 // 每个方格间的宽度;
#define R 13 // 棋子半径
#define C_WIDTH 10
#define C_HEIGBT 17
#define T___ 0xFFFFFFFF
#define BORD 0x0
#define X___ 0xFFFF
extern short *fbmem;
extern int cx,cy,cz;
extern int w,h;
extern int fd1;
extern short buf_tmp[2000]; //记录鼠标原来地址的内容;
extern int hx;
extern int hy; //棋盘顶点坐标;
extern int statu;
extern int player[16][16]; //记录棋盘上所有棋子的状态,无棋子为0,黑棋子为1(player),白棋子为2(computer).
extern int k1;
extern int k2;
extern int k3;
extern int k4;
extern int p1;
extern int p2;
extern int p3;
extern int p4;
extern int fb_flag;
extern int back[15][15],white[15][15]; //记分数组,分别记录电脑的 和 玩家的。
extern unsigned char fontdata_8x16[160];
int fb_players(void);
short rgb24to16(int color);
void fb_point(int x,int y, short color);
void fb_hline(int x1,int x2,int y,int color);
void fb_wline(int x1,int x2,int y,int color);
void fb_fline(int x1,int x2,int y,int color);
void fb_rline(int x1,int x2,int y,int color);
void fb_qipan(int x1,int x2);
int init_mouse(void); //鼠标处理:初始化,画鼠标,保存原来地址内容,释放原来地址内容,读取鼠标移动轨迹。
void fb_mouse(int x1,int x2);
int judge1_mouse(int x1,int x2);
int judge2_mouse(int x1,int x2);
int read_mouse(int fd);
int fb_judge_he(int x1,int x2,int statu); //判断各个方向的棋子多少记分;
int fb_judge_su(int x1,int x2,int statu);
int fb_judge_sy(int x1,int x2,int statu);
int fb_judge_xz(int x1,int x2,int statu);
int fb_computer1(); //将所有状态的分值放入到数组中;
int fb_judge_hewin(int x1,int x2,int statu); //判断各个方向棋子状态有几个,决定是否为赢;
int fb_judge_suwin(int x1,int x2,int statu);
int fb_judge_sywin(int x1,int x2,int statu);
int fb_judge_xzwin(int x1,int x2,int statu);
int fb_win(); //判断谁先赢
void fb_math(int x1,int x2); //鼠标上面写数字。
int fb_computer_judge();
int fb_player_judge(); //找出最大分值的坐标。
int fb_computer();
void fb_player(); //电脑下棋,玩家下棋;
#endif
五子棋人机对战详解;
最新推荐文章于 2024-07-11 18:00:00 发布