资源简介
一个五子棋游戏的简单C++实现,可以人机对战。效果已在MFS上实现。
代码片段和文件信息
#include
#include
#include
using namespace std;
/**********************************************************/
/* 定义符号常量 */
/*定义画棋盘所需的制表符*/
#define CROSSRU 0xbf /*右上角点*/
#define CROSSLU 0xda /*左上角点*/
#define CROSSLD 0xc0 /*左下角点*/
#define CROSSRD 0xd9 /*右下角点*/
#define CROSSL 0xc3 /*左边*/
#define CROSSR 0xb4 /*右边*/
#define CROSSU 0xc2 /*上边*/
#define CROSSD 0xc1 /*下边*/
#define CROSS 0xc5 /*十字交叉点*/
/*定义棋盘左上角点在屏幕上的位置*/
#define MAPXOFT 5
#define MAPYOFT 2
/*定义1号玩家的操作键键码*/
#define PLAY1UP ‘W‘/*上移--‘W‘*/
#define PLAY1DOWN ‘S‘/*下移--‘S‘*/
#define PLAY1LEFT ‘A‘/*左移--‘A‘*/
#define PLAY1RIGHT ‘D‘/*右移--‘D‘*/
#define PLAY1DO ‘ ‘/*落子--空格键*/
/*定义2号玩家的操作键键码*/
#define PLAY2UP ‘H‘/*上移--‘↑‘*/
#define PLAY2DOWN ‘P‘/*下移--‘↓‘*/
#define PLAY2LEFT ‘K‘/*左移--‘←‘*/
#define PLAY2RIGHT ‘M‘/*右移--‘→‘*/
#define PLAY2DO 0x0d/*落子--回车键Enter*/
/*若想悔棋 可按 BackSpace 键*/
#define BACKSPACE 0x08
/*若想保存棋局 可按 F2 键*/
#define SAVE ‘<‘
/*若想加载棋局 可按 F3 键*/
#define LOAD ‘=‘
/*若想让游戏中途退出 可按 Esc 键*/
#define EXIT 0x1b
/*定义棋盘上交叉点的状态 即该点有无棋子 */
/*若有棋子 还应能指出是哪个玩家的棋子 */
#define CHESSNULL 0 /*没有棋子*/
#define CHESS1 1/*一号玩家的棋子*/
#define CHESS2 2/*二号玩家的棋子*/
/*定义按键类别*/
#define KEYEXIT 0/*退出键*/
#define KEYFALLCHESS 1/*落子键*/
#define KEYMOVECURSOR 2/*光标移动键*/
#define KEYBACKCHESS 3/*悔棋键*/
#define KEYSAVECHESS 4/*保存键*/
#define KEYLOADCHESS 5/*加载键*/
#define KEYINVALID 6/*无效键*/
/*定义符号常量: 真 假 --- 真为1 假为0 */
#define TRUE 1
#define FALSE 0
/**********************************************************/
/* 定义数据结构 */
/*棋盘交叉点坐标的数据结构*/
struct point
{
int xy;
};
/**********************************************************/
/*自定义函数原型说明 */
void Init(void);
void DrawMap(void);
void DrawCross(int xint y);
int CheckKey(char press);
int ChessGo(int Orderstruct point Cursor);
void DoError(void);
void DoOK(void);
int JudgeWin(int Orderstruct point Cursor);
int JudgeWinLine(int Orderstruct point Cursorint direction);
void DoWin(int Order);
int ChangeOrder(void);
void ShowOrderMsg(int Order);
void MoveCursor(int Orderchar press);
int GoBack(void);
int SaveChess(void);
int LoadChess(void);
void EndGame(void);
/**********************************************************/
/**********************************************************/
/* 定义全局变量 */
char gPlayOrder; /*指示当前行棋方 */
struct point gCursor; /*光标在棋盘上的位置 */
char gChessBoard[19][19]; /*用于记录棋盘上各点的状态*/
int gBackChess[19*19]; /*用于记录落子次序——悔棋*/
int gStep; /*用于记录走棋步数——悔棋*/
/**********************************************************/
/***********************************************
相关资源
- C++五子棋源码有AI,先手禁手
- C++五子棋源代码程序解析
- MFC五子棋,本地,网络,人机
- 五子棋纯c语言代码(测试完美)
- C++ 3D 五子棋 opengl
- MFC 五子棋 一个简单的五子棋游戏
- c++小游戏五子棋,带AI
- VC++五子棋程序源码VC6.0控制台下运行
- 数据结构和算法案例-欢乐五子棋 C+
- 一个五子棋游戏的MFC实现源码已判禁
- 剪枝算法的五子棋C++程序
- 五子棋游戏 源码--完整版 VC MFC C++
- 五子棋(C++面向对象实现)
- C语言五子棋 课程设计
- C++ Builder 网络小游戏 五子棋
- Qt五子棋小游戏(源码+截图)
- c++ 五子棋游戏 (控制台)
- C++ 设计网络五子棋游戏
- c语言五子棋源码.zip
- “欢乐五子棋”——C++程序设计
- Qt五子棋简单实现
- QT五子棋 游戏源码
- Linux:基于网络对战的五子棋游戏(含
- c++ 五子棋 小游戏源码
- c++ 五子棋 小游戏源码
- c++ 五子棋 游戏源码
- c++ 五子棋小游戏源码
- c++黑白棋ai游戏源码(带背景音乐)
- C++五子棋小游戏开发
- C++/MFC 智能五子棋(含代码) 双人游
评论
共有 条评论