java - 具有随机游戏对象和难度的游戏板

标签 java arrays random

我有一个游戏板,我想在其中填充随机游戏对象。
让我们在 int[10][10] 数组中为它们提供值 1...6

游戏应该有不同的难度。越容易,允许越多的相同对象彼此相邻;越难,彼此相邻的相同对象就越少(半径=2)。

示例:
让我们假设中等难度。一个物体(半径=2)周围40%的物体可以是同一类型。

 -000------
 00000-----
 00100-----
 00000-----
 -000------ 

只有 40% 的 0 被允许是 1 类型。

如何创建这样的随机数组?或者在这种情况下有更好的方法来实现难度吗?

最佳答案

我这样做的方法是随机化索引而不是值本身。 因此,其中 40% 意味着我只会循环总计数的 40%。 在你的例子中,这就是我会做的..

int n = 20 * 0.4;
for(i=1; i<n; ++i){
    int r = GetRandomIndex();
    board[r] = 1;
}

关于java - 具有随机游戏对象和难度的游戏板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21541681/

相关文章:

c# - 如何生成具有(单独)最小/最大限制的随机 double ?

java - 内存中的 "null"在哪里

java - Lombok 的 @Builder/@AllArgsConstructor 如何调用自定义构造函数?

javascript - 如何在不使用 JQUERY 的情况下连接两个 JSON 对象的 JavaScript 数组?

python - 如果没有图片,如何在同一位置抓取多个图像的链接空白该位置

vba - 使用 VBA 在单元格范围内生成真正的随机数

c# - Access 数据库的 3 位十六进制生成器

java - Tomcat 7 CometProcessor 上缺少 cometd 事件

java - 在 Byte Buddy 中禁用标识符验证

javascript - 如何在 Javascript 中访问 JSON 数组