add "Help Up" feature for knocked players, improve execution handling, and update mod version to 1.6.0

This commit is contained in:
2026-05-23 19:37:58 +02:00
parent 25d0ae5229
commit 332b6552cf
30 changed files with 956 additions and 42 deletions
@@ -0,0 +1,36 @@
package net.fretux.knockedback;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.server.level.ServerPlayer;
import net.minecraftforge.network.NetworkEvent;
import java.util.function.Supplier;
public class HelpUpKnockedPacket {
private final boolean helping;
public HelpUpKnockedPacket(boolean helping) {
this.helping = helping;
}
public static void encode(HelpUpKnockedPacket msg, FriendlyByteBuf buf) {
buf.writeBoolean(msg.helping);
}
public static HelpUpKnockedPacket decode(FriendlyByteBuf buf) {
return new HelpUpKnockedPacket(buf.readBoolean());
}
public static void handle(HelpUpKnockedPacket msg, Supplier<NetworkEvent.Context> ctx) {
ctx.get().enqueueWork(() -> {
ServerPlayer helper = ctx.get().getSender();
if (helper == null) return;
if (msg.helping) {
HelpUpHandler.startHelpUp(helper);
} else {
HelpUpHandler.cancelHelpUpByHelper(helper.getUUID());
}
});
ctx.get().setPacketHandled(true);
}
}