]> git.seodisparate.com - TurnBasedMinecraftMod/commitdiff
Store remaining turn seconds in PacketBattlePing
authorStephen Seo <seo.disparate@gmail.com>
Tue, 22 Oct 2024 11:35:31 +0000 (20:35 +0900)
committerStephen Seo <seo.disparate@gmail.com>
Wed, 23 Oct 2024 07:23:05 +0000 (16:23 +0900)
src/main/java/com/burnedkirby/TurnBasedMinecraft/common/Battle.java
src/main/java/com/burnedkirby/TurnBasedMinecraft/common/networking/PacketBattlePing.java

index 1a031bd929cf8969db78e3e4895c6452bdbe81d9..0c33daef3b593bccafa3883c9915bcbf49ac2c28 100644 (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()) {
             TurnBasedMinecraftMod.getHandler().send(pingPacket, PacketDistributor.PLAYER.with((ServerPlayer)p.entity));
         }
index 942c7eec4dd4d7ea8ed6a6a7fd0db4b96e402795..d640f0bb041dfd837acca4ac68448f7e75c7a0ac 100644 (file)
@@ -9,13 +9,16 @@ import java.util.function.Function;
 
 public class PacketBattlePing {
     private int battleID;
+    private int decisionSeconds;
 
     public PacketBattlePing() {
         battleID = 0;
+        decisionSeconds = 1;
     }
 
-    public PacketBattlePing(int battleID) {
+    public PacketBattlePing(int battleID, int decisionSeconds) {
         this.battleID = battleID;
+        this.decisionSeconds = decisionSeconds;
     }
 
     public static class Encoder implements BiConsumer<PacketBattlePing, RegistryFriendlyByteBuf> {
@@ -24,6 +27,7 @@ public class PacketBattlePing {
         @Override
         public void accept(PacketBattlePing pkt, RegistryFriendlyByteBuf buf) {
             buf.writeInt(pkt.battleID);
+            buf.writeInt(pkt.decisionSeconds);
         }
     }
 
@@ -32,7 +36,7 @@ public class PacketBattlePing {
 
         @Override
         public PacketBattlePing apply(RegistryFriendlyByteBuf buf) {
-            return new PacketBattlePing(buf.readInt());
+            return new PacketBattlePing(buf.readInt(), buf.readInt());
         }
     }
 
@@ -46,6 +50,8 @@ public class PacketBattlePing {
                     TurnBasedMinecraftMod.proxy.createLocalBattle(pkt.battleID);
                 }
                 TurnBasedMinecraftMod.proxy.setBattleGuiAsGui();
+                TurnBasedMinecraftMod.proxy.setBattleGuiBattleChanged();
+                TurnBasedMinecraftMod.proxy.setBattleGuiTime(pkt.decisionSeconds);
             });
             ctx.setPacketHandled(true);
         }