1

我正在创建一个“避免积木”游戏,为此我需要使用 GHKJ 键在网格(2D 数组)周围移动一个角色。每 x 圈数(随着等级的增加而减少)必须出现一个阴影,然后该阴影变成一个块,如果玩家进入该块,他们就会失去生命。除了让块出现的看似简单的任务之外,大部分这些都是为我完成的,这是我到目前为止用于下降块的代码:

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 仅用于调试目的,检查正在访问的值。玩家每走一步,Turn 就增加 1,ran.nextInt(12) 是 0 到 11 之间随机生成的数字,B.board 是棋盘。

4

1 回答 1

1

将其初始化为“转”后,您似乎永远不会更改“保存”。因此,当您检查 if(save == turn-3) 时,它将始终为 false,因此永远不要将块移入。如果您想跟踪经过了多少转,我会推荐一个私有实例变量“ int turnPassed”,您可以每转一圈递增。然后对于每个级别,您可以检查是否 (turnsPassed % x == 0),其中 x 与您描述的一样。希望有帮助!

于 2012-11-30T15:18:51.133 回答