Skip to content

Commit 919b515

Browse files
committed
Cleaned up Fabric Particle API fix
1 parent 29c88c8 commit 919b515

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

src/main/java/net/raphimc/viaproxy/proxy/packethandler/FabricParticleApiFixPacketHandler.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
public class FabricParticleApiFixPacketHandler extends PacketHandler {
3232

3333
private static final String REGISTER_CHANNEL = "minecraft:register";
34+
private static final String UNREGISTER_CHANNEL = "minecraft:unregister";
3435

3536
public FabricParticleApiFixPacketHandler(ProxyConnection proxyConnection) {
3637
super(proxyConnection);
@@ -39,13 +40,14 @@ public FabricParticleApiFixPacketHandler(ProxyConnection proxyConnection) {
3940
@Override
4041
public boolean handleC2P(Packet packet, List<ChannelFutureListener> listeners) throws Exception {
4142
if (packet instanceof C2SCustomPayloadPacket customPayloadPacket) {
42-
if (Key.namespaced(customPayloadPacket.channel).equals(REGISTER_CHANNEL)) {
43-
final List<String> channelsToRegister = Lists.newArrayList(new String(customPayloadPacket.data, StandardCharsets.UTF_8).split("\0"));
44-
if (channelsToRegister.remove("fabric:extended_block_state_particle_effect_sync")) {
45-
if (channelsToRegister.isEmpty()) {
46-
return false; // Cancel packet
43+
final String channel = Key.namespaced(customPayloadPacket.channel);
44+
if (channel.equals(REGISTER_CHANNEL) || channel.equals(UNREGISTER_CHANNEL)) {
45+
final List<String> channels = Lists.newArrayList(new String(customPayloadPacket.data, StandardCharsets.UTF_8).split("\0"));
46+
if (channels.remove("fabric:extended_block_state_particle_effect_sync")) {
47+
if (!channels.isEmpty()) {
48+
customPayloadPacket.data = String.join("\0", channels).getBytes(StandardCharsets.UTF_8);
4749
} else {
48-
customPayloadPacket.data = String.join("\0", channelsToRegister).getBytes(StandardCharsets.UTF_8);
50+
return false; // Cancel packet
4951
}
5052
}
5153
}

0 commit comments

Comments
 (0)