引言
在网上看到了一个利用easyx图形库制作的简易射击游戏,并下载源码体验了一下之后发现存在以下缺点:
1.鼠标点击之后发射的激光速度很慢,有一种很卡的感觉,影响游戏体验感。
2.玩家移动过于缓慢,同样给玩家一种很卡的感觉。
3.对于发射激光的图形即飞机,采用的是easyx构造的图形,飞机模型不够形象美观。
4.对于激光击落每一个障碍物之后,障碍物就直接消失了,缺少得分,缺乏趣味性。
5.对于代码还有一个bug,当飞机撞向障碍物的时候,理应提示失败不能撞到,但装上去之后并没有什么变化。
原程序代码
View Code
对于上述问题的细化改进
1.鼠标点击之后发射的激光速度很慢
解决方法:发现控制激光发射使用的是sleep函数,发现其代码设置为800,于是将其减少到100即可很快发射
View Code
2.玩家移动过于缓慢
解决方法:尝试增加玩家移动的距离(比如将dis的值调整为更大的数值)或者减少移动时的间隔时间(比如减小Sleep函数的参数)来加快玩家角色的移动速度。这样就可以让玩家角色在按下移动键后更快地移动到新的位置。不过需要注意的是,移动速度过快可能会使得操作变得更具挑战性,需要设置合理的数值。
View Code
3.飞机模型不够形象美化
通过修改图标的方式来个性化你的应用程序,your_icon.ico
就是图标文件所在的路径
4.设置得分
hitObstacle()
函数用于增加得分,enemyHit()
函数模拟了敌方坦克被击中时的效果,并在其中调用了 hitObstacle()
函数来增加得分
5.不能碰到障碍物
isCollisionDetected
函数用于检测飞机与障碍物是否发生碰撞,如果检测到碰撞,则调用 gameOver
函数来处理游戏失败的逻辑
View Code
完整代码
View Code
总结
进行二次开发是一个很好的学习和提升编程能力的方式。
-
熟悉现有代码结构:在开始二次开发之前,首先要仔细阅读和理解现有软件的代码结构、功能和逻辑。这样可以帮助我更好地定位问题和进行修改。
-
确定需求和目标:在进行二次开发之前,我会明确自己的需求和目标,考虑要添加哪些新功能、要优化哪些方面,以便于有针对性地进行修改。
-
小步迭代:我喜欢采用小步迭代的方式进行二次开发,每次只修改少量代码并进行测试,确保每次修改都是有效的,避免一次性修改过多导致问题难以排查。
-
注重代码规范和可维护性:在进行二次开发时,我会注重代码的规范性和可维护性,保持良好的代码结构和注释,遵循设计原则,以便于后续的维护和扩展。
-
不断学习和尝试新技术:在二次开发过程中,我会不断学习和尝试新的技术和工具,以提升自己的技术水平,同时也为软件的改进和优化提供更多可能性。
标签:Code,函数,代码,easyx,简易,小游戏,二次开发,移动,View From: https://www.cnblogs.com/yang-zy/p/18054636