Class ToucanNetwork
java.lang.Object
com.jvn.toucanlib.neoforge.network.ToucanNetwork
Thin NeoForge payload registration wrapper with safe client dispatch helpers.
-
Method Summary
Modifier and TypeMethodDescriptionstatic ToucanNetworkcreate(String modId, String version, net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent event) Creates a network wrapper around a versioned NeoForge payload registrar.static voidEnqueues work on the payload context.optional()Returns a wrapper around an optional payload registrar.<T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload>
voidplayToClient(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, net.neoforged.neoforge.network.handling.IPayloadHandler<T> handler) Registers a clientbound play payload.<T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload>
voidplayToServer(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, net.neoforged.neoforge.network.handling.IPayloadHandler<T> handler) Registers a serverbound play payload.<T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload>
voidsafePlayToClient(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, String className, String methodName) Registers a clientbound payload that dispatches to a static client method by reflection.<T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload>
voidsafePlayToClientThreaded(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, String className, String methodName) Registers a clientbound payload that dispatches to a static client method on the client task queue.static voidsendToAllPlayers(net.minecraft.server.MinecraftServer server, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to every online player.static voidsendToPlayer(net.minecraft.server.level.ServerPlayer player, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to one server player.static voidsendToPlayersInSameLevel(net.minecraft.server.level.ServerPlayer referencePlayer, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to players in the same level asreferencePlayer.static voidsendToServer(net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to the connected server.static booleanwithServerPlayer(net.neoforged.neoforge.network.handling.IPayloadContext context, Consumer<net.minecraft.server.level.ServerPlayer> consumer) Runs the consumer only when the payload sender is a server player.
-
Method Details
-
create
public static ToucanNetwork create(String modId, String version, net.neoforged.neoforge.network.event.RegisterPayloadHandlersEvent event) Creates a network wrapper around a versioned NeoForge payload registrar. -
optional
Returns a wrapper around an optional payload registrar. -
playToServer
public <T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload> void playToServer(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, net.neoforged.neoforge.network.handling.IPayloadHandler<T> handler) Registers a serverbound play payload. -
playToClient
public <T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload> void playToClient(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, net.neoforged.neoforge.network.handling.IPayloadHandler<T> handler) Registers a clientbound play payload. -
safePlayToClient
public <T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload> void safePlayToClient(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, String className, String methodName) Registers a clientbound payload that dispatches to a static client method by reflection. -
safePlayToClientThreaded
public <T extends net.minecraft.network.protocol.common.custom.CustomPacketPayload> void safePlayToClientThreaded(net.minecraft.network.protocol.common.custom.CustomPacketPayload.Type<T> type, net.minecraft.network.codec.StreamCodec<? super net.minecraft.network.RegistryFriendlyByteBuf, T> codec, String className, String methodName) Registers a clientbound payload that dispatches to a static client method on the client task queue. -
enqueue
public static void enqueue(net.neoforged.neoforge.network.handling.IPayloadContext context, Runnable work) Enqueues work on the payload context. -
withServerPlayer
public static boolean withServerPlayer(net.neoforged.neoforge.network.handling.IPayloadContext context, Consumer<net.minecraft.server.level.ServerPlayer> consumer) Runs the consumer only when the payload sender is a server player. -
sendToServer
public static void sendToServer(net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to the connected server. -
sendToPlayer
public static void sendToPlayer(net.minecraft.server.level.ServerPlayer player, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to one server player. -
sendToAllPlayers
public static void sendToAllPlayers(net.minecraft.server.MinecraftServer server, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to every online player. -
sendToPlayersInSameLevel
public static void sendToPlayersInSameLevel(net.minecraft.server.level.ServerPlayer referencePlayer, net.minecraft.network.protocol.common.custom.CustomPacketPayload payload) Sends a payload to players in the same level asreferencePlayer.
-