前言
之前发了一个mc的基本操作以及api的使用,如果有问题看这里。
这次我们使用不同的方式来实现一个金字塔。
最简单的话,使用我们已有的setblock,以及for循环就能实现一个。
不过我最想讲的,还是使用minecraftstuff模块自带的一个绘制多边形的方法。
实现——循环
先来一个循环的吧,这部分就直接看代码&注释
import mcpi.minecraft as minecraft
import mcpi.block as block
mc = minecraft.Minecraft.create()
pos = mc.player.getTilePos()
# 高十层
for y in range(10):
# 计算每一层到中轴线的距离
width = 9-y
# 分别绘制四条直线
for x in range(pos.x-width,pos.x+width+1):
mc.setBlock(x,pos.y+y,pos.z-width,block.GLASS.id)
mc.setBlock(x,pos.y+y,pos.z+width,block.GLASS.id)
for z in range(pos.z-width+1,pos.z+width):
mc.setBlock(pos.x-width,pos.y+y,z,block.GLASS.id)
mc.setBlock(pos.x+width,pos.y+y,z,block.GLASS.id)
实现效果:

实现——绘制多边形
模块讲解。
minecraftstuff中提供了一个类叫做MinecraftDrawing,这个类中有很多的绘制函数,比如给两个点绘制一条直线,或者是绘制圆、球,当然也有绘制多边形的函数,今天的主角叫做drawFace

最低0.47元/天 解锁文章
6008

被折叠的 条评论
为什么被折叠?



