CyanBillows
本帖最后由 CyanBillows 于 2020-12-25 00:01 编辑

如题,我按照论坛上搜到的教程鼓捣了很久,但仍然无法生成实体,后台没有报错,主要代码如下。
Location loc = p.getLocation();
                        PacketContainer Packet = pm.createPacket(PacketType.Play.Server.SPAWN_ENTITY); //pm = protocolmanager
                        Packet.getModifier().writeDefaults();
                        Packet.getIntegers().write(0, Entityid);
                        Packet.getUUIDs().write(0, UUID.randomUUID());                        Packet.getIntegers().write(1, 1); //设置实体的type,也许问题出在这儿?我不知道该版本如何设置
                        Packet.getDoubles().write(0, loc.getX());
                        Packet.getDoubles().write(1, loc.getY());
                        Packet.getDoubles().write(2, loc.getZ());
                        try {
                                pm.sendServerPacket(p, Packet);
                        } catch (InvocationTargetException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                        }

还望诸位指点.

CyanBillows
已自行解决,的确是设置实体种类的问题。
1.14.4的spigot核心中PacketPlayOutSpawnEntity设置生物种类为EntityTypes类
所以改为
  1. Packet.getSpecificModifier(EntityTypes.class).write(0, EntityTypes.ARMOR_STAND);
复制代码

即可

豆沙2333
感谢楼主的代码 已白嫖2333

d312880203
豆沙2333 发表于 2021-3-11 03:11
感谢楼主的代码 已白嫖2333

同样白嫖,一同感谢

PassedBook
问下楼主,如果我想要发包实现生成一个假方块,要怎么写呢?

第一页 上一页 下一页 最后一页