3
나는 ProtocolLib를 사용하여 패킷에 색깔을 가진 레드 스톤 입자를 플레이어에게 보내려고합니다. 그 (것)들을 착색하기 위하여 나는 googled, 나는 RGB 체계로 offset
매개 변수를 사용할 필요가있다. 그러나 의도 한대로 작동하지 않았습니다. 입자는 여전히 빨간색이거나 임의의 색상을 가지고 있습니다 (아래 참조). offset
은 여전히 주어진 위치에서 각 입자의 임의 화기로 사용됩니다. 내 코드 :레드 스톤 입자가 색깔을 바꾸지 않습니다
PacketContainer packet = new PacketContainer(PacketType.Play.Server.WORLD_PARTICLES);
packet.getModifier().writeDefaults();
packet.getParticles().write(0, Particle.REDSTONE);
float x = (float) loc.getX();
float y = (float) loc.getY() + 3;
float z = (float) loc.getZ();
float red = 0;
float green = 0;
float blue = 1;
packet.getFloat().write(0, x).write(1, y).write(2, z); // Location
packet.getFloat().write(3, red).write(4, green).write(5, blue); // Offset
packet.getFloat().write(6, 0F); // Particle data ?
packet.getIntegers().write(0, 1); // Amount
ProtocolManager manager = ProtocolLibrary.getProtocolManager();
try {
for (Player player : getters) manager.sendServerPacket(player, packet);
} catch (Exception ex) {ex.printStackTrace();}
나는 amount
입자 data
을 변경했습니다. 입자 data
이 0
인 경우 입자는 빨간색이고, 다른 경우에는 1
입자가 무작위 색입니다.
내가 ProtocolLib 4.3.0 및 스피을 사용하고 1.12.2 내 문제를 해결
답을 올바른대로 받아 들여야합니다! – Kerooker