初级迷宫游戏
Rudimentary Maze Game
今天在我的 class 中,我们讨论了一个可以在 Java 中构建的基本迷宫游戏。老实说,我不知道如何着手创造这样的东西,教授也不太懂。不过,我想知道如何在没有唱阵列的情况下制作这样的东西。作为一个非常擅长编码的菜鸟,我对应该从哪里开始有一个非常模糊的想法。请帮我!正如我希望看到生成地图的代码背后的那样。注意:对于每个命令,在用户做出选择后,代码循环返回并返回到网格上的一个新部分。谢谢!
帮助机器人 (R) 到达出口 (E)
R o o o o
o o o o o
o o o o o
o o o o o
o o o o E
- 向上
- 向下
- 左
- 对
搬家? 4
因为你不能使用数组,也不能创建任何新方法。你可以这样做:
输出:
R . . . .
. . . . .
. . . . .
. . . . .
. . . . E
代码:
int playerX=0, playerY=0; //holds player's location
int exitX = 4, exitY = 4; //holds exit's location
//Print map
for(int x=0; x<5; x++){
for(int y=0; y<5; y++)
if(x == playerX && y == playerY)
System.out.print(" R "); //print player location
else if(x == exitX && y == exitY)
System.out.print(" E ");
else
System.out.print(" . ");
System.out.println("");
}
/*
//Update player's position on movement
if (movement == DOWN)
playerY = Math.min(playerY+1 , 5);
else if (movement == UP)
playerY = Math.max(playerY-1 , 0);
else if (movement == LEFT)
playerX = Math.max(playerX-1 , 0);
else else if (movement == RIGHT)
playerX = Math.max(playerY+1 , 5);
*/
您可以将所有内容包含在一个 while 循环中,并在玩家位置与出口位置不同时重复循环。
今天在我的 class 中,我们讨论了一个可以在 Java 中构建的基本迷宫游戏。老实说,我不知道如何着手创造这样的东西,教授也不太懂。不过,我想知道如何在没有唱阵列的情况下制作这样的东西。作为一个非常擅长编码的菜鸟,我对应该从哪里开始有一个非常模糊的想法。请帮我!正如我希望看到生成地图的代码背后的那样。注意:对于每个命令,在用户做出选择后,代码循环返回并返回到网格上的一个新部分。谢谢!
帮助机器人 (R) 到达出口 (E)
R o o o o
o o o o o
o o o o o
o o o o o
o o o o E
- 向上
- 向下
- 左
- 对
搬家? 4
因为你不能使用数组,也不能创建任何新方法。你可以这样做:
输出:
R . . . .
. . . . .
. . . . .
. . . . .
. . . . E
代码:
int playerX=0, playerY=0; //holds player's location
int exitX = 4, exitY = 4; //holds exit's location
//Print map
for(int x=0; x<5; x++){
for(int y=0; y<5; y++)
if(x == playerX && y == playerY)
System.out.print(" R "); //print player location
else if(x == exitX && y == exitY)
System.out.print(" E ");
else
System.out.print(" . ");
System.out.println("");
}
/*
//Update player's position on movement
if (movement == DOWN)
playerY = Math.min(playerY+1 , 5);
else if (movement == UP)
playerY = Math.max(playerY-1 , 0);
else if (movement == LEFT)
playerX = Math.max(playerX-1 , 0);
else else if (movement == RIGHT)
playerX = Math.max(playerY+1 , 5);
*/
您可以将所有内容包含在一个 while 循环中,并在玩家位置与出口位置不同时重复循环。