我正在创建一个“避免方 block ”游戏,为此我需要使用 GHKJ 键在网格(二维数组)周围移动角色。每 x 个回合(随着等级的增加而减少)必须出现一个阴影,然后该阴影就会成为一个方 block ,如果玩家移动到该方 block 中,他们就会失去生命。 除了看似简单的让方 block 出现的任务之外,大部分工作都是为我完成的,这是迄今为止我的掉落方 block 的代码:
public void rocked(){
int rockInit = turn;
if(rockInit > 1){
int save = turn;
System.out.println(turn + " ");
B.board[ran.nextInt(12)][ran.nextInt(12)] = shadow;
if(save == turn - 3){
B.board[rockLocX][rockLocY] = rock;
}
}
}
system.println 只是用于调试目的,检查正在访问的值。玩家每移动一步,回合数就会增加 1,ran.nextInt(12) 是随机生成的 0 到 11 之间的数字,B.board 是游戏板。
最佳答案
在将“save”初始化为“turn”后,您似乎永远不会更改“save”。因此,当您检查 if(save ==turn-3) 时,它始终为 false,因此永远不要将 block 移入。如果您想跟踪已经经过了多少回合,我建议您使用一个私有(private)实例变量“intturnsPassed”,您可以在每个回合中递增它。然后对于每个级别,您可以检查 if (turnsPassed % x == 0),其中 x 正如您所描述的那样。希望有帮助!
关于java - 每 x 圈更改二维数组的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13647646/