我想创建一个类叫做敌人1,敌人2和敌人3。
敌人1:很容易杀死,但很多。 敌人2:更难杀死,但更少。 敌人3:老板,超级难以杀死,只有一个。
让我们说许多人将是1000。较少的人将是100.老板当然是一个。
因此,为敌人的游戏制作1,101个不同的实例是愚蠢的。它需要很多代码。
现在我生病的战士可以发射大量导弹。为了好玩,让我们说每分钟2000分钟。
我需要检查敌人和所有导弹之间的碰撞。我计划只使用4个不同的实例。这将是敌人1,敌人2,敌人3和导弹。
有关如何解决此问题的任何想法?显然我需要线程,但我不确定如何在这种情况下检查冲突。
答案 0 :(得分:3)
如果你有1101个敌人在这个地方游荡,那么他们每个人都会有他们的位置,伤害,弹药库存等等,所以你需要1101个实例。您只需要四个类。然后,您创建每个类的整个实例数组。
每个导弹都需要一个实例。
碰撞?那么,你打算为此使用一些3D图形游戏库吗?它可能会处理碰撞检测。或者你的敌人是所有领域?你需要几何......
答案 1 :(得分:2)
因此,为敌人的游戏制作1,101个不同的实例是愚蠢的。它需要很多代码。
完全没有。您可能会将类与实例混淆,因为您实际上必须创建这些对象的1,101个实例,但是只需要3个Enemy类的代码(或者如果您可以使得杀死类的属性有多难,则可能需要1个类) )。可能你会有一个集合,比如Enemy的ArrayList。
另一个答案处理碰撞,但您可能会在模型中执行此操作,而不是在视图代码中。