分享代码 快乐编程

一起学习,一起进步,从分享代码开始~

可以自由定制的电子相册(by 席锦)

这是一个自已DIY内容并且具有背景音乐的电子相册。通过自定义内容,可以制作成属于自己的电子纪念册。

点击小图可以查看每张图片以及对于的图片文字描述,按下 w、s、a、d、↑、↓、←、→ 按键可以达到和鼠标点击的同样效果。支持跳转至任意一张已加载的相片,也支持自动循环浏览相册,具体操作请点击对应的工具图标。

执行效果如下:

操作说明:

  1. 点击小相片将看到对应的大相片和相片印记
  2. 点击不同的工具图标将产生不同的效果
  3. 支持按键 w、s、a、d、↑、↓、←、→,作用分别是上下移动和左右翻页
  4. 支持跳转至任意编号相片
  5. 支持内容 DIY,具体操作请参照 Set.ini
  6. rc 文件为程序图标,不可修改
  7. res 为程序 DIY 内容所在文件夹,里面内容皆可修改
...

贪婪球(by 奶酪)

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

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

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

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

贪婪球 2.0 做了许多升级,详见这里:https://codebus.cn/contributor/post/greedy-ball-2

执行效果如下:

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

///////////////////////////////////////////////////
// 程序名称:贪婪球 1.6
// 编译环境:Microsoft Visual studio 2017,EasyX 2018春分版
//

...

随机街道闪电效果

想起之前看的一部鬼片,里面闪电效果和BGM营造了一种阴森恐怖的气氛。所以,突然想试试用简约的风格绘出这样的气氛。

目标:绘画出 简单的随机街道 ,

街道上空出现 各种形态的闪电 ,

并实现街道在闪电时的 闪光变化

效果动态图:

代码如下:

/************************************************************
* 程序名称: 随机街道闪电效果 
* version : Release x86-1.0 
* 程序目标: 制作简单的随机街道上空出现闪电,并实现街道在闪电时的闪光变化
* 编写系统: win10 1809专业版 x64 
* 编译环境: VS2017 + EasyX_20180727(beta) 
* 作者 : 星羽 
* 邮箱 : 1479245050@qq.com 
* QQ : 1479245050
...

飞机大战游戏(by 刘华欣)

这是一个简单的飞机空战游戏。

游戏操作说明:

w、s、a、d 控制飞机移动
k 发射子弹
空格暂停
ESC退出

敌机自动发射子弹、自动移动

当飞船碰到敌机、飞船血量为 0、敌机碰到底部时游戏结束
敌机血量为 0 时,会出现一个新的敌机
小敌机随机出现

结束后按 ESC 退出,按 R 重来。

游戏运行截图如下:

该游戏的编译环境为:Visual C++ 2013,EasyX_20190219(beta)。

完整的游戏源码包【点击这里下载】

作者:刘华欣
QQ:1359240780

...

迷宫(by 祝融)

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

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

运行效果如下:

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

完整的游戏源代码如下:

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

2D 赛车游戏(by 极品史莱姆)

一、关于本程序
看到吧里没有人写过赛车游戏,于是我就心血来潮写了一个了
顺便在这个程序里用上几个最近学习和思考的成果
也顺便复习了一下物理和数学

二、如何建立一个地图包
1. 选择赛车,音乐,地图的素材
2. 在程序的 map 文件夹下建立一个文件夹将这些素材放入
3. 建立 set.ini 文件
详情参考工程下的文件夹 a 和 b

三、关于碰撞图的绘制
1. 黄色(0xFFFF00)为沙地,会减速
2. 黑色(0xFFFFFF)为赛道,减速较小
3. 蓝色(0x0000FF)为冰面,会滑动
4. 红色(0xFF0000)为围栏,无法通过
5. 绿色(0xFFFFFF)为终点线
6. 灰色(0xAAAAAA)为终点线的两端,用于判定方向(终点线右侧)
7. 紫色(0xFF00FF)为玩家 2 起点
8. 白色(0x000000)为玩家 1 起点
*终点线最好为宽度为一的直线!!!

...

Rolling Ball

这是经典的下 100 层游戏。>_<

通过鼠标左右键或者键盘 A、D 按键及左右方向键控制小球左右移动,木板会不断上升,小球到底认定游戏结束,按下键盘后小球会加速到一个最大速度,小球在木板上则会跟着木板上移,达到一定分数启动反向操作。

本程序采用单例设计模式,RollingBall 公有继承 BallAndPlank,protected 便于派生类访问基类数据成员。

木板的颜色随机,位置随机。

界面由初始化界面大小控制,可自行更改。

游戏运行截图如下:

游戏的完整源代码如下:

/*
	项目名称:
		RollingBall
	作者:
		tzdhu.z@qq.com (1926594835)
	编译环境:
		Visual Studio 2017,EasyX_20190219(beta)
	发布日期:
		2019-2-2
	最后修改:
		2019-2-23
	项目介
...

功能强大的计算器(by 尔灵尔亿)

这个计算器程序是模仿 Windows 10 系统的计算器所写的,借鉴了 Windows 10 计算器的一些外观设计以及所包含的一些功能,但是实现此计算器的所有算法是自己独立开发,其中的一些功能或许没有写的很完善。

下面介绍此计算器所包含的一些功能,以及用法。

计算器包含两大功能:计算功能、转换功能。计算功能包含普通计算器、科学计算器、超大数的计算、解一元一次方程。转换器包含体积转换、长度转换、重量转换、温度转换、能量转换、面积转换、速度转换、时间转换、功率转换、数据转换、压力转换、角度转换,包含了基本所有常用的转换。

普通计算器:实现最普通的加减乘除,通过用户输入的字符串(中缀表达式),转换为计算机可以计算的后缀表达式(后缀表达式又称逆波兰式),最后通过栈来实现计算。

科学计算器:所谓的科学计算器只是加上了一些可以计算的函数,如 sin、cos、tan 等,这个计算器不是按上面普通计算器的实现方法,而是通过数字的直接计算,功能实现的不是很好(所以我认为科学计算用起来是不怎么好用)。

超大数计算:实现一

...

FlipGame(by that boy)

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

执行效果如下:

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

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