C/C++项目实战:2D射击游戏开发(简易版) !440 行源码分享来啦~
2023-01-12 15:32 作者:C语言编程__Plus | 我要投稿
每天一个C语言小项目,提升你的编程能力!

【第一版】
花了一天时间,用 easyx 做了一个小游戏,程序中所有的类函数都是内联函数,大约 300 行。
【第二版】
主要做了代码优化,加强可读性。
同时改了操作方式,玩家和敌人都可以在 x、y 方向上移动,敌人每隔一段时间会随机换向。
游戏运行截图如下:

操作方式
玩家通过方向键移动,z 键射击,左 Shift 进入低速移动模式提高操作精度。
代码说明
关于无阻塞延时,首先,先要 ctime 创建一个 clock_t 变量 a,初始化为 clock(),貌似是自从 1970 年到现在的毫秒数。
我们要每隔 0.5 秒执行函数 func() 一次。
那么创建主循环 while(1),调用前用 clock() - a;如果 clock() - a > 500,那么执行 func(),并把 a 重新赋值为 clock()。
如果使用 Sleep(500) 的话,这个循环就只能执行 func 函数了,在此期间什么也做不了。
代码展示:
(直接上源码,大家可以看注释)
大家赶紧去动手试试吧!

此外,我也给大家分享我收集的其他资源,从最零基础开始的教程到C语言C++项目案例,帮助大家在学习C语言的道路上披荆斩棘!

整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)最重要的是你可以在群里面交流提问编程问题哦!
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!大家也要把握住有限的时光,抓住成长的每一次机会哦~
编程学习书籍分享:

编程学习视频分享:
