2021年6月号 特設 マインクラフトでPythonレッスン6

多重ループの使い方

レッスン5  レッスン7

●Minecraftの画面

図1:プログラム実行前

 

図2(a):プログラム実行後.キャラクタの周りが整地されている

図2(b):視点を変えたところ.こちら側も整地されている.

 

●ソースコード

from mcpi.minecraft import Minecraft
from mcpi.block import *
mc = Minecraft.create()
Pos = mc.player.getTilePos()

size = 20 # ブロック数

# 空気の立方体を作る
mc.setBlocks(Pos.x – size, Pos.y, Pos.z – size,
Pos.x + size, Pos.y + 50, Pos.z + size, AIR)

for x in range(-size, size): # x軸方向にループ
# 空気の壁を配置
mc.setBlocks(Pos.x + x, Pos.y, Pos.z – size,
Pos.x + x, Pos.y + 50, Pos.z + size, AIR)

for x in range(-size, size): # x軸方向にループ
for z in range(-size, size): # z軸方向にループ
# 空気の柱を配置
mc.setBlocks(Pos.x + x, Pos.y, Pos.z + z,
Pos.x + x, Pos.y + 50, Pos.z + z, AIR)

for x in range(-size, size): # x軸方向にループ
for y in range(0, 51): # y軸方向にループ
for z in range(-size, size): # z軸方向にループ
# 空気のブロックを配置
mc.setBlock(Pos.x + x, Pos.y + y, Pos.z + z, AIR)