質問編集履歴
1
自分でwhile文を追加してみましたが、UnboundLocalError: local variable 'x' referenced before assignmentが出てしまいました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
現状ではrキーを何回か押さなければなりませんが、一度押しただけで迷路内のマス(x、y)のうち、x、yがともに偶数であるマスがすべて壁になるまで壁を生成するようにしたいです。
|
10
10
|
|
11
|
-
|
11
|
+
while文の中身のヒントを教えてください。
|
12
12
|
|
13
13
|
|
14
14
|
|
@@ -284,22 +284,24 @@
|
|
284
284
|
|
285
285
|
def generate_maze_random():
|
286
286
|
|
287
|
+
while road_map[x][y] != 1:
|
288
|
+
|
287
|
-
for x in range(2, board_x-2, 2):
|
289
|
+
for x in range(2, board_x-2, 2):
|
288
|
-
|
290
|
+
|
289
|
-
for y in range(2, board_y-2, 2):
|
291
|
+
for y in range(2, board_y-2, 2):
|
290
|
-
|
292
|
+
|
291
|
-
if road_map[x][y] == 1:
|
293
|
+
if road_map[x][y] == 1:
|
292
|
-
|
294
|
+
|
293
|
-
r = int(random(0, 3))
|
295
|
+
r = int(random(0, 3))
|
294
|
-
|
296
|
+
|
295
|
-
dx = dir_x[r]
|
297
|
+
dx = dir_x[r]
|
296
|
-
|
298
|
+
|
297
|
-
dy = dir_y[r]
|
299
|
+
dy = dir_y[r]
|
298
|
-
|
300
|
+
|
299
|
-
if road_map[x+dx*2][y+dy*2] == 0:
|
301
|
+
if road_map[x+dx*2][y+dy*2] == 0:
|
300
|
-
|
302
|
+
|
301
|
-
road_map[x+dx][y+dy] = 1
|
303
|
+
road_map[x+dx][y+dy] = 1
|
302
|
-
|
304
|
+
|
303
|
-
road_map[x+dx*2][y+dy*2] =1
|
305
|
+
road_map[x+dx*2][y+dy*2] =1
|
304
306
|
|
305
307
|
```
|