-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathServerboundHypixelPayload.java
More file actions
34 lines (28 loc) · 1.19 KB
/
ServerboundHypixelPayload.java
File metadata and controls
34 lines (28 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package net.hypixel.modapi.fabric.payload;
import net.hypixel.modapi.packet.HypixelPacket;
import net.hypixel.modapi.serializer.PacketSerializer;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.network.codec.PacketCodec;
import net.minecraft.network.packet.CustomPayload;
import net.minecraft.util.Identifier;
public class ServerboundHypixelPayload implements CustomPayload {
private final Id<ServerboundHypixelPayload> id;
private final HypixelPacket packet;
public ServerboundHypixelPayload(HypixelPacket packet) {
this.id = new CustomPayload.Id<>(Identifier.of(packet.getIdentifier()));
this.packet = packet;
}
private void write(PacketByteBuf buf) {
PacketSerializer serializer = new PacketSerializer(buf);
packet.write(serializer);
}
@Override
public Id<? extends CustomPayload> getId() {
return id;
}
public static PacketCodec<PacketByteBuf, ServerboundHypixelPayload> buildCodec(Id<ServerboundHypixelPayload> id) {
return CustomPayload.codecOf(ServerboundHypixelPayload::write, buf -> {
throw new UnsupportedOperationException("Cannot read ServerboundHypixelPayload");
});
}
}