实现功能

1.双人分别控制小人移动

2.子弹碰撞

3.可改变出弹方向

4.血条实体化

前言

这个游戏是看了知乎一位非常好的老师的专栏后练手写的,(至于是哪位,知乎搜C语言小游戏最牛逼的那位)

有老师系统性的交这些的确规范了许多,我之前自己摸索写的游戏相对它来说规范性是大大的不抵。

我大致是看了一个飞机游戏的代码,学会了实时更新函数与用户输入更新函数,与设置子弹体。

在此基础上我结合我最近学的弹球写出了这个靠风骚走位的双人战斗小游戏。下面是图与具体实现。


0.游戏主体

   while(1) 
{
•        show();  // 显示画面
•        updateWithoutInput();  // 与用户输入无关的更新
•        updateWithInput();  // 与用户输入有关的更新
•   }

显然这两个简单的思路却开辟了许多新的游戏模式。

一边局面自动改变

一边靠用户输入控制改变

1.双人分别控制小人移动

其实就是简单的增加一次移动,多加一次方向判断。就简单的实现了双人模式。但重点是给定每个人相应的功能。

2.子弹碰撞

你可知道弹球小游戏0.0,实现思路超级简单,碰到边界改变相应的x,y增加值。

3.可改变出弹方向

每个角色都有对应的两个方向键实现枪的逆时针与顺时针旋转,也就是可以控制8个方向的开枪。

4.血条实体化

每个角色的结构体内有一个life值,每次实时更新用for循环打印life个血条,一旦子弹碰到人,就life减一,实时更新血条。

结语(欠缺):

我也想过游戏的可玩性我才会做他,毕竟做着有趣,才有动力继续弄下去.经过实测,这个最大的乐趣就是躲子弹。而不是杀人0.0,缺点就是我更新的方式还停留在简单的for循环+清屏刷新打印上,会出现很多的花屏现象。随后我后来学会了新的东西实现的流程的运行。

最新文章

  1. Angular2入门系列教程4-服务
  2. Mybatis的choose when otherwise
  3. phpcms v9常用方法
  4. TreeView checkbox 全选
  5. java.sql.SQLException: 关闭的 Resultset: next
  6. Win + D 和 Win + M的区别
  7. Python语言and-or的用法
  8. LeetCode OJ-- Clone Graph **@
  9. openfire+asmack搭建的安卓即时通讯(三) 15.4.9
  10. Sky数[HDU2097]
  11. SqlServer 临时表、表变量、函数 替代游标
  12. oracle 有用站点
  13. Express4+Mongodb极简入门实例
  14. iOS堆栈-内存-代码在据算机中的运行
  15. linux 终端相关
  16. PHP零基础入门
  17. python摸爬滚打之day032 管道 数据共享 进程池
  18. 转:【专题三】自定义Web服务器
  19. Awk 从入门到放弃(5)– Awk模式(Pattern)之一
  20. P2303 [SDOi2012]Longge的问题

热门文章

  1. ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'问题的解决
  2. restframewor 版本(version)
  3. 国产CPU 申威1621 异数OS基础组件理论性能测试报告
  4. javaweb-codereview 学习记录-3
  5. java集合与数组之间转换
  6. 机器学习-K最近邻算法
  7. Day8-Python3基础-Socket网络编程
  8. wirkshark过滤规则
  9. 关于mysql8启动后又停止(windows10系统),忘记密码以及密码过期等坑解决办法总结!
  10. orcle导入大数据文件