0
我刚开始制作我的第一个bukkit插件。我想让鸡蛋在碰到地面时发生爆炸,我成功地做到了这一点。但是现在我想要有正常的鸡蛋和鸡蛋,当它们碰到地面时会发生爆炸。我如何创建这个? 我尝试以不同的方式命名它们,但实体没有项目名称。我怎么能检测到哪个鸡蛋是一个应该爆炸的鸡蛋,哪个是正常鸡蛋?如何在Minecraft中定制项目bukkit [插件]
如果有什么不够清楚的,请让我更好地解释它,谢谢!
我刚开始制作我的第一个bukkit插件。我想让鸡蛋在碰到地面时发生爆炸,我成功地做到了这一点。但是现在我想要有正常的鸡蛋和鸡蛋,当它们碰到地面时会发生爆炸。我如何创建这个? 我尝试以不同的方式命名它们,但实体没有项目名称。我怎么能检测到哪个鸡蛋是一个应该爆炸的鸡蛋,哪个是正常鸡蛋?如何在Minecraft中定制项目bukkit [插件]
如果有什么不够清楚的,请让我更好地解释它,谢谢!
你可以有一个EventHandler
为当一名球员投Egg
你想要的,并添加一些元数据到它:
@EventHandler
public void onProjectileLaunch(ProjectileLaunchEvent e){
Projectile projectile = e.getEntity();
if (//This projectile should be an explosive egg) {
projectile.setMetadata("explosiveegg", new FixedMetadataValue(plugin, "explosiveegg";
}
}
然后恢复您的元数据每当Egg
击中Entity
或地板,并检查它是否是元数据是“爆炸蛋”
if (projectile.hasMetadata("explosiveegg")) //Explode
欢迎来到SO。本网站不是代码编写服务,不适用于提供完整的解决方案。预计用户将展示一些努力和代码,而SO在此期间将帮助您解决具体的编程问题。你有没有尝试过任何东西? –
您可以为实体设置UUID并通过getUUID()[Javadocs](https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Entity.html#getUniqueId--) – Kerooker
鸡蛋也是Metadatable,所以你可以添加元数据,[Bukkit论坛](https://bukkit.org/threads/tutorial-metadata-what-it-is-and-how-to-use-it.276338/ ) – Kerooker