21xrx.com
2024-12-23 05:04:26 Monday
登录
文章检索 我的文章 写文章
Minecraft服务器上更新了我的Java版本
2023-06-10 08:25:36 深夜i     --     --
LeashKnot(系绳结) Entity(实体) NBT(命名标签)

上个月,我在我的Minecraft服务器上更新了我的Java版本。我发现新版的Java中没有了以前版本的拴住村民的代码。然而,我想要在我的世界中保留这个功能。我开始搜索新版的Java怎么拴住村民。在搜索的过程中,我发现了以下三个

我阅读了官方的Java文档,学会了使用新方法拴住村民,如下所示:


Entity villager = ... ;

ItemStack leash = ... ;

// Add NBT tag to leash item

NBTTagCompound leashTag = new NBTTagCompound();

leashTag.setBoolean("Unbreakable", true);

leash.setTagCompound(leashTag);

// Spawn leash in world

EntityLeashKnot leashKnot = new EntityLeashKnot(villager.world, villager.getPosition());

leashKnot.setDisplayedItem(leash);

villager.world.spawnEntity(leashKnot);

// Attach leash to villager

villager.startRiding(leashKnot, true);

首先,我们需要使用实体实例化一个村民,并使用ItemStack实例化一根绳子。然后,我们需要为绳子添加NBT标签,以确保它是不可摧毁的。我们需要用到net.minecraft.nbt包中的NBTTagCompound类。

为了将绳子在世界上生成,我们使用了EntityLeashKnot实体类。接着,使用实例化的绳子将绳子展示在世界上,并将其附加到村民身上。

最后,我们调用villager.startRiding()方法,将村民挂在绳子上。

通过这种方式,我成功地在我的世界中拴住了村民。在新版的Java中,我们需要使用更复杂的代码来实现此功能,但拴住村民这个乐趣得以保留。

标题:使用LeashKnot,Entity和NBT标签在新版Java中如何拴住村民?

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章