package dev.lumareth.improvedAerodynamics.network; import dev.lumareth.improvedAerodynamics.flight.FlapControl; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraftforge.fml.ModList; import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; /** Sent when a pilot moves the flap lever: more flaps (true) or fewer. */ public final class FlapPacket { private final boolean extend; public FlapPacket(boolean extend) { this.extend = extend; } public void encode(FriendlyByteBuf buffer) { buffer.writeBoolean(extend); } public static FlapPacket decode(FriendlyByteBuf buffer) { return new FlapPacket(buffer.readBoolean()); } public void handle(Supplier context) { ServerPlayer player = context.get().getSender(); if (player != null && ModList.get().isLoaded("valkyrien_warium")) { FlapControl.step(player, extend ? 1 : -1); } } }