在之前的文章在《我的世界》游戏中学python编程,告别学习编程的枯燥——配置游戏及编程环境中已经介绍了通过python代码对我的世界继进行编程,需要做的配置操作。本节来讲解如何使用python编程获取我的世界中控制的人物对应的位置(坐标),以及如何通过设置坐标让所控制的角色瞬间移动到指定坐标。


Minecraft是一个3D世界,所以Minecraft使用三维坐标,每个位置的坐标包括三个数字:x、y、z,分别代表了东西方向、南北方向、高度。如下图:

这种使用固定数字来代表位置的坐标又叫做“绝对坐标”,例如:x=1,y=1,z=1,每次使用这个坐标,都代表游戏世界中一个确定的位置,永远不会变。
当玩家向东移动时,x坐标变大;向西移动时,x坐标变小;
向上时,y坐标变大;向下时,y坐标变小;
向南移动时,z坐标变大,向北移动时,z坐标变小。


程序编写流程
1、导入minecraft库。(可以简单理解为找到连接工具)
import mcpi.minecraft as minecraft
2、创建minecraft连接实例。(可以简单理解为使用连接工具将python和我的世界进行连接)
mc = minecraft.Minecraft.create()
3、通过实例调用获取玩家位置、设置玩家位置方法。
pos = mc.player.getTilePos() # 获取玩家位置,mc即第2步产生的实例名。
mc.player.setTilePos(x,y,z) # 设置玩家位置,可以让玩家瞬移过去
4、需要看到获取的坐标,可以使用输出功能实现。
print(pos) # 输出玩家位置,pos即第3步获取的玩家位置


程序代码
python代码
先获取角色坐标并输出,然后将角色坐标设置为200,200,10,此时角色会被设置在空中,当然,如果修改坐标值,你甚至可以将角色瞬间传送至地下、河里、山上等任何地方。

注意:请找到你的python code文件夹,然后将你的代码保存在该文件夹下的MinecraftCoding\MCDemo目录中。
具体效果:
END