我正在为一个班级做一些工作,我正在用ASCII构建太空入侵者游戏。 我知道我可以使用对象做更好的代码,但在我的情况下我不能使用它! 我也知道我在代码上有其他错误,但我只想知道答案!
当我拍摄(按空间),然后我再次拍摄,如果第一次拍摄不与外星人发生碰撞,第一次拍摄就会停止!我真的不知道为什么!
我有葡萄牙语的评论和vars,但如果你不明白,请问!
代码:http://pastie.org/private/fbnjo8vczkxq6quoem6tig
在线:http://www.tomahock.com/Projecto-LabMM3/spaceInvaders.html
P.S。我知道这不是有史以来最好的代码!这是一个很多的alpha版本!
答案 0 :(得分:1)
你应该维护一个射弹列表,并在每次游戏迭代时更新整个列表。看起来你只是更新当前的射弹,一旦射击它就会忽略所有以前的射弹,即使它们应该更新。这意味着每次迭代都必须检查冲突,更新位置,并检查列表中每个射弹的屏幕外。