package net.minecraft.network.protocol.common.custom; import net.minecraft.core.registries.Registries; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.codec.StreamCodec; import net.minecraft.resources.ResourceKey; import net.minecraft.world.level.gameevent.GameEvent; import net.minecraft.world.phys.Vec3; public record GameEventDebugPayload(ResourceKey gameEventType, Vec3 pos) implements CustomPacketPayload { public static final StreamCodec STREAM_CODEC = CustomPacketPayload.codec( GameEventDebugPayload::write, GameEventDebugPayload::new ); public static final CustomPacketPayload.Type TYPE = CustomPacketPayload.createType("debug/game_event"); private GameEventDebugPayload(FriendlyByteBuf buffer) { this(buffer.readResourceKey(Registries.GAME_EVENT), buffer.readVec3()); } private void write(FriendlyByteBuf buffer) { buffer.writeResourceKey(this.gameEventType); buffer.writeVec3(this.pos); } @Override public CustomPacketPayload.Type type() { return TYPE; } }