在Game中随机生成对象

时间:2015-09-11 19:46:16

标签: java random game-physics

我正在尝试构建一个简单的Java游戏,它会随机产生敌人以供用户击落。

我的游戏每秒调用60次方法。我希望它每隔一段时间随机执行一次动作,在这种情况下,会产生一个敌人。

我发现在使用Math.random()时使用并说例如,< 0.1,因为每秒60帧,它产生太多的几率为10%。我非常感谢任何有关使这项工作更好的建议。

提前致谢。

1 个答案:

答案 0 :(得分:1)

在这种情况下,我有两个可能对你有帮助的想法。

  1. 为什么不尝试降低发生的可能性?在您的示例中,如果这种情况经常发生在10%,则将其降低到更小的数字。例如,如果你想要它发生说,每1秒,你需要一个相似于1/60 = 0.016%的几率。同样的想法,如果你想每5秒做一次,1 /(60 * 5)。

  2. 根据自上次随机对象以来的时间更改您的值。例如,在0.0001处开始%概率。每次调用该方法时,都会增加少量发生的可能性。这样它最终会被调用,但可能发生得更快(例如,你希望这至少每10秒左右发生一次,但你可能会更快地得到它然后随机)。