本帖最后由 wshycaa 于 2019-4-1 04:39 编辑
我在写一个mod服插件,遇到点问题。怎么把net.minecraft.entity.player.EntityPlayerMP转换成LivingEnyity这类实体呢?强制转换会出错
或者告诉我怎么能够根据EntityId获得某一个Entity呢?
我在写一个mod服插件,遇到点问题。怎么把net.minecraft.entity.player.EntityPlayerMP转换成LivingEnyity这类实体呢?强制转换会出错
或者告诉我怎么能够根据EntityId获得某一个Entity呢?
//player 得你自己获取啦, 我这里就写成null了, 这个方法应该是可以的, 如果不行就通过player获取玩家名, 然后在用Bukkit.getPlayer("名字")再转换成LivingEntity
复制代码
- EntityPlayerMP player = null;
- LivingEntity le = (LivingEntity) Bukkit.getEntity(player.getUniqueID())
本帖最后由 wshycaa 于 2019-4-1 11:06 编辑
额,用uuid的确是可以得到玩家,我昨天已经测试成功了,但是如果想要转换类型的不是玩家而是其他实体呢? 比如我通过某种方法获取的是net minecraft entity Entity 里面的其他实体……
我可以获取到这个实体的uuid和Entity Id,可是bukkit里面貌似没有直接通过这些得到该实体的方法,只能遍历。有没有高效一些的办法呢?
cws_sh 发表于 2019-4-1 05:07
//player 得你自己获取啦, 我这里就写成null了, 这个方法应该是可以的, 如果不行就通过player获取玩家名, ...
额,用uuid的确是可以得到玩家,我昨天已经测试成功了,但是如果想要转换类型的不是玩家而是其他实体呢? 比如我通过某种方法获取的是net minecraft entity Entity 里面的其他实体……
我可以获取到这个实体的uuid和Entity Id,可是bukkit里面貌似没有直接通过这些得到该实体的方法,只能遍历。有没有高效一些的办法呢?
wshycaa 发表于 2019-4-1 11:00
额,用uuid的确是可以得到玩家,我昨天已经测试成功了,但是如果想要转换类型的不是玩家而是其他实体呢? ...
Entity entity = Bukkit.getEntity(UUID uuid);
cws_sh 发表于 2019-4-1 14:32
Entity entity = Bukkit.getEntity(UUID uuid);
我是1.710的服务端,好像没有这个方法。。我也是想找这个的
