34 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.network.protocol.common;
 | |
| 
 | |
| import com.google.common.collect.Lists;
 | |
| import net.minecraft.Util;
 | |
| import net.minecraft.network.FriendlyByteBuf;
 | |
| import net.minecraft.network.codec.StreamCodec;
 | |
| import net.minecraft.network.protocol.Packet;
 | |
| import net.minecraft.network.protocol.PacketType;
 | |
| import net.minecraft.network.protocol.common.custom.BrandPayload;
 | |
| import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
 | |
| import net.minecraft.network.protocol.common.custom.DiscardedPayload;
 | |
| 
 | |
| public record ServerboundCustomPayloadPacket(CustomPacketPayload payload) implements Packet<ServerCommonPacketListener> {
 | |
| 	private static final int MAX_PAYLOAD_SIZE = 32767;
 | |
| 	public static final StreamCodec<FriendlyByteBuf, ServerboundCustomPayloadPacket> STREAM_CODEC = CustomPacketPayload.<FriendlyByteBuf>codec(
 | |
| 			resourceLocation -> DiscardedPayload.codec(resourceLocation, 32767),
 | |
| 			Util.make(
 | |
| 				Lists.<CustomPacketPayload.TypeAndCodec<? super FriendlyByteBuf, ?>>newArrayList(
 | |
| 					new CustomPacketPayload.TypeAndCodec<>(BrandPayload.TYPE, BrandPayload.STREAM_CODEC)
 | |
| 				),
 | |
| 				arrayList -> {}
 | |
| 			)
 | |
| 		)
 | |
| 		.map(ServerboundCustomPayloadPacket::new, ServerboundCustomPayloadPacket::payload);
 | |
| 
 | |
| 	@Override
 | |
| 	public PacketType<ServerboundCustomPayloadPacket> type() {
 | |
| 		return CommonPacketTypes.SERVERBOUND_CUSTOM_PAYLOAD;
 | |
| 	}
 | |
| 
 | |
| 	public void handle(ServerCommonPacketListener serverCommonPacketListener) {
 | |
| 		serverCommonPacketListener.handleCustomPayload(this);
 | |
| 	}
 | |
| }
 |