diff --git a/common/src/main/java/io/github/kurrycat/mpkmod/compatibility/MCClasses/Player.java b/common/src/main/java/io/github/kurrycat/mpkmod/compatibility/MCClasses/Player.java index 2bc6ba9f..33c01972 100644 --- a/common/src/main/java/io/github/kurrycat/mpkmod/compatibility/MCClasses/Player.java +++ b/common/src/main/java/io/github/kurrycat/mpkmod/compatibility/MCClasses/Player.java @@ -54,6 +54,7 @@ public class Player { public BoundingBox3D boundingBox = null; public String sidestep = "None"; public boolean wadStart = false; + public boolean flying = false; @InfoString.Getter public static LandingBlock getLatestLB() { @@ -225,7 +226,7 @@ public Player buildAndSave() { Player.updateDisplayInstance(); return this; } - if (prev.onGround) airtime = 0; + if (prev.onGround || flying) airtime = 0; else airtime = prev.airtime + 1; if (prev.onGround && !onGround) airtime = 1; @@ -391,6 +392,16 @@ public String getSidestep() { return sidestep; } + @InfoString.Getter + public boolean isFlying() { + return flying; + } + + public Player setFlying(boolean flying) { + this.flying = flying; + return this; + } + @InfoString.DataClass public static class Blip implements FormatDecimals { @InfoString.Field diff --git a/fabric-1.21.6/src/main/java/io/github/kurrycat/mpkmod/compatibility/fabric_1_21_6/EventHandler.java b/fabric-1.21.6/src/main/java/io/github/kurrycat/mpkmod/compatibility/fabric_1_21_6/EventHandler.java index cca17edc..1c9ad1ba 100644 --- a/fabric-1.21.6/src/main/java/io/github/kurrycat/mpkmod/compatibility/fabric_1_21_6/EventHandler.java +++ b/fabric-1.21.6/src/main/java/io/github/kurrycat/mpkmod/compatibility/fabric_1_21_6/EventHandler.java @@ -103,6 +103,7 @@ public void onClientTickEnd(MinecraftClient mc) { new Vector3D(playerBB.minX, playerBB.minY, playerBB.minZ), new Vector3D(playerBB.maxX, playerBB.maxY, playerBB.maxZ) )) + .setFlying(mcPlayer.getAbilities().flying) .constructKeyInput() .setKeyMSList(timeQueue) .buildAndSave(); diff --git a/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/EventListener.java b/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/EventListener.java index 0a5ae6b0..5e7a6684 100644 --- a/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/EventListener.java +++ b/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/EventListener.java @@ -96,6 +96,7 @@ public void onTick(TickEvent.ClientTickEvent e) { new Vector3D(playerBB.minX, playerBB.minY, playerBB.minZ), new Vector3D(playerBB.maxX, playerBB.maxY, playerBB.maxZ) )) + .setFlying(mcPlayer.capabilities.isFlying) .constructKeyInput() .setKeyMSList(timeQueue.copy()) .buildAndSave(); diff --git a/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/FunctionCompatibility.java b/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/FunctionCompatibility.java index ba491be0..4eebaf54 100644 --- a/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/FunctionCompatibility.java +++ b/forge-1.8.9/src/main/java/io/github/kurrycat/mpkmod/compatibility/forge_1_8/FunctionCompatibility.java @@ -1,11 +1,7 @@ package io.github.kurrycat.mpkmod.compatibility.forge_1_8; import io.github.kurrycat.mpkmod.compatibility.MCClasses.*; -import io.github.kurrycat.mpkmod.util.BoundingBox3D; -import io.github.kurrycat.mpkmod.util.Debug; -import io.github.kurrycat.mpkmod.util.Vector2D; -import io.github.kurrycat.mpkmod.util.Vector3D; -import io.github.kurrycat.mpkmod.util.ScissorBox; +import io.github.kurrycat.mpkmod.util.*; import io.github.kurrycat.mpknetapi.common.network.packet.MPKPacket; import net.minecraft.block.Block; import net.minecraft.block.properties.IProperty; @@ -35,8 +31,8 @@ import java.awt.*; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.StringSelection; -import java.util.List; import java.util.*; +import java.util.List; import java.util.stream.Collectors; public class FunctionCompatibility implements FunctionHolder,