PYTHON玩转我的世界(3) —— 批量生成铁傀儡

坐标系统

我的世界是由一个个方块构成的,每个方块边长都是1米。方块的位置由X,Y,Z三维坐标表示。其中X和Z表示水平面的坐标,Y表示垂直高度坐标。

 

用代码生成一个铁傀儡

 

铁傀儡是由4个铁块和一个雕刻过的南瓜构成,注意:南瓜要最后放上去才行。另外四个空白角落的格子必须都是空气,不能有草或其他东西。

 

代码如下

import mcpi.minecraft as minecraft

import time


if __name__ == "__main__":

# 连接到游戏

mc = minecraft.Minecraft.create()


# 获取玩家坐标

pos = mc.player.getTilePos()


time.sleep(5)


# 放置铁块和南瓜造出一个铁傀儡

mc.setBlock(pos.x, pos.y + 5, pos.z - 10, 'IRON_BLOCK')

mc.setBlock(pos.x, pos.y + 4, pos.z - 10, 'IRON_BLOCK')

mc.setBlock(pos.x - 1, pos.y + 5, pos.z - 10, 'IRON_BLOCK')

mc.setBlock(pos.x + 1, pos.y + 5, pos.z - 10, 'IRON_BLOCK')

mc.setBlock(pos.x, pos.y + 6, pos.z - 10, 'carved pumpkin')

 

批量生成铁傀儡

上面代码使用SetBlock来放置一个方块,下面我们使用SetBlocks来批量放置方块。

 

SetBlocks(X1,Y1,Z1,X2,Y2,Z2,Block_Name)

SetBlocks坐标参数包含两个点,分别表示矩形的左下角和右上角。使用SetBlocks可以画出一个面或者一条线。

我们将上面的的每个方块改为一条线就可以批量建造出铁傀儡。

 

代码如下

import mcpi.minecraft as minecraft

import time


if __name__ == "__main__":

# 连接到游戏

mc = minecraft.Minecraft.create()


# 获取玩家坐标

pos = mc.player.getTilePos()


time.sleep(5)


# 批量放置铁块和南瓜来实现批量生产铁傀儡

mc.setBlocks(pos.x, pos.y, pos.z + 5, pos.x, pos.y, pos.z + 10, 'IRON_BLOCK')

mc.setBlocks(pos.x, pos.y - 1, pos.z + 5, pos.x, pos.y - 1, pos.z + 10, 'IRON_BLOCK')

mc.setBlocks(pos.x - 1, pos.y, pos.z + 5, pos.x - 1, pos.y, pos.z + 10, 'IRON_BLOCK')

mc.setBlocks(pos.x + 1, pos.y, pos.z + 5, pos.x + 1, pos.y, pos.z + 10, 'IRON_BLOCK')

mc.setBlocks(pos.x, pos.y + 1, pos.z + 5, pos.x, pos.y + 1, pos.z + 10, 'carved pumpkin')

 

参考资料:

https://blog.csdn.net/gogir/article/details/100074563

https://blog.csdn.net/gogir/article/details/100085244

 

 


版权声明:本文为gogir原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。