Skip to content

Commit

Permalink
Fix packet types not being registered
Browse files Browse the repository at this point in the history
  • Loading branch information
BluSpring committed Oct 8, 2024
1 parent e151805 commit 19fd0d2
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
package cf.witcheskitchen.api.event.network;

import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;
import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking;
import net.minecraft.network.packet.CustomPayload;

public interface C2SPacketRegistryListener<T extends CustomPayload> extends PacketRegistryListener<T> {
void handle(T payload, ServerPlayNetworking.Context context);

default void register() {
PayloadTypeRegistry.playC2S().register(this.type().id(), this.type().codec());
ServerPlayNetworking.registerGlobalReceiver(this.type().id(), this::handle);
}
}
11 changes: 11 additions & 0 deletions src/main/java/cf/witcheskitchen/common/registry/WKPacketTypes.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package cf.witcheskitchen.common.registry;

import cf.witcheskitchen.api.event.network.C2SPacketRegistryListener;
import cf.witcheskitchen.common.network.packet.ParticlePacket;
import cf.witcheskitchen.common.network.packet.SoundPacket;
import cf.witcheskitchen.common.network.packet.SplashParticlePacket;
import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry;

import java.util.LinkedList;
import java.util.List;
Expand All @@ -18,5 +22,12 @@ static <T extends C2SPacketRegistryListener> T registerServerPacket(T handler) {

static void init() {
SERVER_PACKETS.forEach(handler -> handler.register());

// TODO: maybe move this to a separate class?
// the packet handlers are on the client-side, and our sources are split,
// which makes this a little more difficult.
PayloadTypeRegistry.playS2C().register(ParticlePacket.ID, ParticlePacket.TYPE.codec());
PayloadTypeRegistry.playS2C().register(SoundPacket.ID, SoundPacket.TYPE.codec());
PayloadTypeRegistry.playS2C().register(SplashParticlePacket.ID, SplashParticlePacket.TYPE.codec());
}
}

0 comments on commit 19fd0d2

Please sign in to comment.