个人作品

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下

贪婪球(by 奶酪)

这是模仿球球大作战写的小游戏,有食物、敌人、外面的毒圈。

操作很简单,用 A S D W 四个键控制球的移动方向。

地图大小是屏幕的16倍,吃完所有敌人就胜利。记住不要被敌人吃掉哦!

想和我交流的可以加我 QQ:2190038793

执行效果如下:

完整的 VC++ 源代码如下:

///////////////////////////////////////////////////
// 程序名称:贪婪球 1.6
// 编译环境:Microsoft Visual studio 2017,EasyX 2018春分版
// 作  者:奶酪
// 邮  箱:2190038793@qq.com
// 发布日期:2019-2-10
// 最后修改:2019-2-15
//
#include <graphics.h>
#include <conio.h>
#include <t
...

迷宫(by 祝融)

玩家被困在一个迷宫里,拥有一盏油灯,油灯能够照亮以玩家为中心的一片圆形区域,随着时间的流逝,油灯的照明力会逐渐下降,迷宫内随机分布着一些加油站(黄色的圆角矩形),经过这些加油站能够恢复油灯的照明力,找到地图右下角的终点(绿色圆角矩形)。就算过关。

游戏采用图块(N * N 的正方形)的方式构建地图,且墙壁,地面,玩家,终点采用四个独立的函数绘制,如果想改变地图的风格,只需要修改这些函数的内容即可。

运行效果如下:

迷宫生成采用的深度优先算法,有明显的主路。

完整的游戏源代码如下:

//////////////////////////////////////////////
// 程序名称:迷宫
// 程序作者:祝融
// 作者邮箱:211103376@qq.com
// 编译环境:Visual Studio 2017 + EasyX 20180727(beta)
// 发布时间:2019-2-10
// 最后
...

FlipGame(by that boy)

FlipGame,又名点灯游戏,是一个十分有趣的智力游戏:有一行 N 行 N 列的灯,开始时全部是灭的,当你点击其中一盏灯时他的上下左右(若存在的话)状态全部改变,现在要求你以最少地步数,将全部的灯点亮。
此处使用了 8 x 8 的方格,其亮灭状态使用一个 8 字节变量按位记录,点亮状态使用了图片作为背景。

执行效果如下:

项目使用 VS2017 编译,图片内嵌到了资源文件中,并设置了应用图标。【点击这里下载全部源码】

作者:that boy
QQ:512906409
邮箱:zhuguangfeng.thatboy@gmail.com

兰顿蚂蚁(by that boy)

受到生命游戏启发,想到了这个兰顿蚂蚁,都是零玩家游戏。

在平面上的正方形格被填上黑色或白色。在其中一格正方形有一只“蚂蚁”,它的头部朝向上下左右其中一方。
若蚂蚁在白格,右转90度,将该格改为黑格,向前移一步;
若蚂蚁在黑格,左转90度,将该格改为白格,向前移一步。

以上就是兰顿蚂蚁的简单规则描述。更详细的请参考维基百科。

执行效果如下:

完整的源代码如下:

/******************************
 * 兰顿蚂蚁
 * 编译环境:VC++ 2017
 * 作者:that boy,2018/12/19
 * 最后修改:2018/12/21
 ******************************/

#include <EasyX.h>
#include <string>
#include <conio.h&

...

墨攻棋阵 - 黑白棋中的 AI(by 千千)

到了考试周了佯,可是偏偏这个时候迎来了很多很多的课程设计,幸好教授把C语言的课程设计提前发出了,不然都在最后几周,加上数据结构的课程设计就没有时间做这个啦~

刚开始打算做成UWP应用的,可是网上的教程都是C#,并且用C++做的话某些功能和C#不一样,所以就这样拖了好多周,省赛前一点儿也没有开始做,等到省赛结束之后,别人都差不多完成啦!而我才开始准备查找资料……

然而一周过去了,进度还是0%。噫,1%吧!

眼看就要开始验收了,算了,还是用最简单的 EasyX 做吧!以后的 C# 课程设计再考虑 UWP。

周一开始敲代码,整整一周的课余时间,都在努力做这个,现在想起来,那个时候真的好累唉,居然没有感觉到~

最初做这个游戏是因为想起来 秦时明月 中的 墨攻棋阵 ,也就是黑白棋,努力还原动漫中的场景,周末的时候终于完成了。

先附图:

...

2D ���向对抗射击游戏(by 674729261)

花了一天时间,用最新版 easyx 做了一个小游戏,程序中所有的类函数都是内联函数,大约 300 行,开发环境是 Visual Studio 2015 Community,其他的编译器能不能通过编译不确定。

游戏运行截图如下:

代码说明:
关于无阻塞延时,
首先,先要 ctime 创建一个 clock_t 变量 a,初始化为 clock(),貌似是自从 1970 年到现在的毫秒数。
我们要每隔 0.5 秒执行函数 func() 一次。
那么创建主循环 while(1)
调用前用 clock() - a;
如果 clock() - a > 500,那么执行 func(),并把 a 重新赋值为 clock()。
如果使用 Sleep(500) 的话,这个循环就只能执行 func 函数了,在此期间什么也做不了。

完整的游戏源代码如下:

/*
 

...

华容道(by 左慈)

华容道游戏说明:

  • 编译环境:Visual C++ 6.0,EasyX 2014冬至版
  • 最后修改:2015-3-14
  • 操作方式:鼠标左键移动棋子,将曹操移动到出口处,过关。

游戏运行截图如下:

完整源代码、图片及编译后的可执行文件请【点击这里下载】

作者:左慈
QQ:2382036672
邮箱:qwj2222@126.com