diff options
author | Linnea Gräf <nea@nea.moe> | 2024-05-29 21:09:07 +0200 |
---|---|---|
committer | Linnea Gräf <nea@nea.moe> | 2024-06-01 01:34:34 +0200 |
commit | e630426656b713ec67bfe7ede2f2081751e349db (patch) | |
tree | 63eff82e16d400a42b5a48bfcb6c89ec81c6763e /src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt | |
parent | fac6103658b2c8d6bab3598606d57041cfe16e0c (diff) | |
download | firmament-e630426656b713ec67bfe7ede2f2081751e349db.tar.gz firmament-e630426656b713ec67bfe7ede2f2081751e349db.tar.bz2 firmament-e630426656b713ec67bfe7ede2f2081751e349db.zip |
[WIP] Add mod api
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt')
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt b/src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt new file mode 100644 index 0000000..34e39ab --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/apis/ingame/FirmamentCustomPayload.kt @@ -0,0 +1,36 @@ +/* + * SPDX-FileCopyrightText: 2024 Linnea Gräf <nea@nea.moe> + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +package moe.nea.firmament.apis.ingame + +import io.netty.buffer.ByteBuf +import net.minecraft.network.codec.PacketCodec +import net.minecraft.network.packet.CustomPayload +import net.minecraft.util.Identifier + +interface FirmamentCustomPayload : CustomPayload { + + class Unhandled private constructor(val identifier: Identifier) : FirmamentCustomPayload { + override fun getId(): CustomPayload.Id<out CustomPayload> { + return CustomPayload.id(identifier.toString()) + } + + companion object { + fun <B : ByteBuf> createCodec(identifier: Identifier): PacketCodec<B, Unhandled> { + return object : PacketCodec<B, Unhandled> { + override fun decode(buf: B): Unhandled { + return Unhandled(identifier) + } + + override fun encode(buf: B, value: Unhandled) { + // we will never send an unhandled packet stealthy + } + } + } + } + + } +} |