Store remaining turn seconds in PacketBattlePing

This commit is contained in:
Stephen Seo 2024-10-22 20:40:42 +09:00
parent cd6106a19c
commit 4e38f4a89a
2 changed files with 5 additions and 2 deletions

View file

@ -461,7 +461,7 @@ public class Battle {
if (!isServer) {
return;
}
PacketBattlePing pingPacket = new PacketBattlePing(getId());
PacketBattlePing pingPacket = new PacketBattlePing(getId(), (int)(timer / 1000000000L));
for (Combatant p : players.values()) {
PacketDistributor.sendToPlayer((ServerPlayer)p.entity, pingPacket);
}

View file

@ -11,12 +11,14 @@ import net.neoforged.neoforge.network.handling.IPayloadContext;
import net.neoforged.neoforge.network.handling.IPayloadHandler;
import org.jetbrains.annotations.NotNull;
public record PacketBattlePing(int battleID) implements CustomPacketPayload {
public record PacketBattlePing(int battleID, int remainingSeconds) implements CustomPacketPayload {
public static final CustomPacketPayload.Type<PacketBattlePing> TYPE = new CustomPacketPayload.Type<>(ResourceLocation.fromNamespaceAndPath(TurnBasedMinecraftMod.MODID, "network_packetbattleping"));
public static final StreamCodec<ByteBuf, PacketBattlePing> STREAM_CODEC = StreamCodec.composite(
ByteBufCodecs.VAR_INT,
PacketBattlePing::battleID,
ByteBufCodecs.VAR_INT,
PacketBattlePing::remainingSeconds,
PacketBattlePing::new
);
@ -34,6 +36,7 @@ public record PacketBattlePing(int battleID) implements CustomPacketPayload {
}
TurnBasedMinecraftMod.proxy.setBattleGuiAsGui();
TurnBasedMinecraftMod.proxy.setBattleGuiBattleChanged();
TurnBasedMinecraftMod.proxy.setBattleGuiTime(pkt.remainingSeconds);
}).exceptionally(e -> {
ctx.disconnect(Component.literal("Exception handling PacketBattlePing! " + e.getMessage()));
return null;