基于c++EGE图形库编写的五子棋小游戏 |
您所在的位置:网站首页 › 如何自制游戏棋盘图片 › 基于c++EGE图形库编写的五子棋小游戏 |
基于c++EGE图形库编写的五子棋小游戏
EGE图形库
新手推荐使用 EGE(Easy Graphics Engine),是windows下的简易绘图库,是一个类似BGI(graphics.h)的面向C/C++语言新手的图形库,它的目标也是为了替代TC的BGI库而存在。 它的使用方法与TC中的graphics.h相当接近,对新手来说,简单,友好,容易上手,免费开源,而且接口意义直观,即使是完全没有接触过图形编程的,也能迅速学会基本的绘图。 目前,EGE图形库已经完美支持VC6, VC2008, VC2010, VC2012, VC2013, VC2015, VC2017, VC2019, C-Free, DevCpp, Code::Blocks, wxDev, Eclipse for C/C++等IDE,即支持使用MSVC和MinGW为编译环境的IDE。如果你需要在VC下使用graphics.h,那么ege将会是很好的替代品。 引用自EGE图形库官网 EGE官网:Easy Graphics Engine – EGE图形库主站 (xege.org) 结果展示 简易的五子棋 实现原理 步骤:1.打印棋盘; 2.打印棋子; 3.判断胜利方; 在一整张棋盘图纸上添加黑白子不好写,那我们可以换个思路。把棋盘分为n个格子,分别为:1)空白格子 2)下了黑子的格子 3)下了白子的格子 那我们就需要三种图片拼接起来 编写过程 使用EGE图形库: 在EGE官网中下载小熊猫dev-c++,在菜单中依次点击文件→新建→新建项目→多媒体→Graphics.h这就是EGE的图形库了 头文件加载: #include //EGE图形库 #include 所需的一些函数如下: int chessBord[15][15]; //棋盘 int player=2; //当前玩家 PIMAGE picture[3]; //棋盘图片 mouse_msg msg; //鼠标 int loadPicture(); //加载图片函数 int printBord(); //打印棋盘 int judgeWiner(int x,int y); //判断输赢函数为了将图片导入到程序中,需要预先加载 设置棋盘处括号内数字为棋盘大小,可自行设置,如我的样例为15*15 加载图片函数: int loadPicture() { char path[100]; //加载图片路径 for(int i=0;i=5||lu>=5) return 1; else return 0; }其实并没有看起来那么复杂,这里类似于广度优先搜索。 到这里程序的大部分都完成了,剩下的就是组合起来,然后进行小小的优化。 完整代码: #include #include int chessBord[15][15]; //棋盘 int player=2; //当前玩家 PIMAGE picture[3]; //棋盘图片 mouse_msg msg; //鼠标 int loadPicture(); //加载图片函数 int printBord(); //打印棋盘 int judgeWiner(int x,int y); //判断输赢函数 int main() { initgraph(375,375); //设置幕布大小并显示 setcaption("五子棋"); //设置程序标题 loadPicture(); //调用加载图片函数 将素材存入picture图片数组中 for(;is_run();delay_fps(180)) { while(mousemsg()) { msg=getmouse(); } if(msg.is_down()) { int x=msg.x/25,y=msg.y/25; if(chessBord[x][y]==0) //判断当前格子是否可以落子 { chessBord[x][y]=player; //改变当前棋盘格子状态 if(judgeWiner(x,y)) { printBord(); if(player==1) outtextxy(150,150,"白方获胜"); else outtextxy(150,150,"黑方获胜"); getch(); return 0; } player=player==1?2:1; //换手 } } printBord(); //更新棋盘 } return 0; } int loadPicture() { char path[100]; //加载图片路径 for(int i=0;i=5||lu>=5) return 1; else return 0; }八十多行就解决了,并不难,有一定基础就能做 免费的图片及实例下载链接免费的图片及实例下载链接:基于EGE的c++五子棋人对人小游戏-其他文档类资源-CSDN文库 感谢支持! 2022.4.30 14:11 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |