我想做三国志

努力学习做游戏的小白

爱的心脏线

大一的时候听说了 r = a(1 - cosθ) 这个方程,当时想试着自己推出它的直角坐标系方程,可惜数学不好解不出来,现在感觉编程能力变强了,就试着用程序画出这个方程的图像。这个方程本质上就是一个圆绕着另一个圆转一周时动圆上某个定点的轨迹,看起来像心脏线而且有数学家笛卡尔与爱徒的故事做背景,这个方程还染上了一丝浪漫的气氛。现在成功用代码把这个方程画出来了。

效果图


 

代码实现

#include <iostream>
#include <graphics.h>
#include <time.h>
#include <vector>
#include <math.h>
#define HEIGHT 300
#define WIDTH 300
#define ARROWLEN 3
#define DIS
...

围棋

游戏介绍

下围棋的程序,实现了界面切换,选择路数,和围棋规则,也实现了点目功能,不过只有当所有死子都被提走才能点目,不然不准确

操作方法

鼠标操作

游戏截图

完整游戏源代码

完整的 VC 项目在 gitee 上:https://gitee.com/ProtagonistMan/weiqi

编译环境

VisualStudio2019,EasyX_20211109

文件描述

用广度寻路寻找周围所有相同棋子,直到四处碰壁了,得到包围住自己的所有点,看看这些点是空地的数量,空地的数量就是气的数量,气为0这些子全部提掉,设为空地。每下一步棋记录下这步棋的位置,悔棋时把这些点提掉。打劫时在存悔棋的点的地方找到劫争的地方,只吃了一颗子并且落在劫争的地方就不能下。

点目就是找到一

...

手动摆放七巧板

游戏介绍

手动摆放七巧板的程序,可以拼成各种图案,也可以再添加一套七巧板一起拼。

操作方法:

  • 鼠标左键拖动图形;
  • 鼠标右键使七巧板顺时针旋转 45 度;
  • 按住左键时按空格可以让四边形轴对称翻转。

游戏截图

完整游戏源代码

完整的 VC 项目在 gitee 上:https://gitee.com/ProtagonistMan/tangram

编译环境

VisualStudio 2019,EasyX_20200902

文件描述

Point.h

用于存三角形和四边形的点的值,用整型限制很多,例如求一个点相对于一个圆心旋转一定角度后的位置,我的做法是用三角函数来求,就是半径长度乘以三角函数值得到 x,y 的坐标,最终结果一定是小数,如果这个值不保存下来,而是强转为整型,那么这个点的位置就不准确,下次旋转时得

...