【发布时间】:2011-02-22 05:22:03
【问题描述】:
我目前正在开发一款类似于经典街机太空射击游戏的 Android 游戏。到目前为止,我几乎完成了所有工作,但我的代码不太符合我的喜好,我正在尝试找出如何改进它。
我遇到的问题是敌人和其他物体进入屏幕。
目前我正在使用一个传递给线程的 Runnable 对象,在这个 Runnable 中是一个包含所有距离的数组,这些距离将触发新的敌人从屏幕的顶部或侧面进入。在 run() 方法中,我检查时间,如果 System.uptimeMillis() 大于或等于数组中的某个元素,我将触发另一个方法,该方法使用 switch 语句来确定要运行的事件。
这一切都变得相当麻烦,这就是为什么我想知道是否有人知道一种更有效、更简洁的方法来管理排队的敌人。
另外,我创建的数组包含 200 个对象,一旦它们离开屏幕,我就会将它们归零。显然,对于一个表现良好的游戏来说,这对于 GC 来说过于频繁了。重用被摧毁或离开屏幕的敌人是最好的吗?或者还有更好的方法吗? (我只是确保我的程序在冒险进入市场之前是最好的)
提前谢谢你,
-罗芙拉
【问题讨论】: