From b2241fc5f5dc73f56d21d270c8a4cffd7b7b9b4d Mon Sep 17 00:00:00 2001 From: jhqwqmc Date: Sun, 7 Dec 2025 15:54:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=A4=E6=96=AD=E6=98=AF?= =?UTF-8?q?=E5=90=A6=E6=98=AF=E5=9F=BA=E5=B2=A9=E7=89=88=E7=8E=A9=E5=AE=B6?= =?UTF-8?q?api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bukkit/plugin/user/BukkitServerPlayer.java | 10 ++++++++++ .../craftengine/core/entity/player/Player.java | 2 ++ 2 files changed, 12 insertions(+) diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/user/BukkitServerPlayer.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/user/BukkitServerPlayer.java index d9ebbbe69..d690465e9 100644 --- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/user/BukkitServerPlayer.java +++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/user/BukkitServerPlayer.java @@ -168,6 +168,8 @@ public class BukkitServerPlayer extends Player { private int lastHitFurnitureTick; // 控制展示实体可见距离 private double displayEntityViewDistance; + // 是否是基岩版 + private Tristate isBedrock = Tristate.UNDEFINED; public BukkitServerPlayer(BukkitCraftEngine plugin, @Nullable Channel channel) { this.channel = channel; @@ -1517,6 +1519,14 @@ public class BukkitServerPlayer extends Player { return FastNMS.INSTANCE.method$Inventory$clearOrCountMatchingItems(inventory, predicate, count, craftSlots); } + @Override + public boolean isBedrock() { + if (this.isBedrock == Tristate.UNDEFINED) { + this.isBedrock = Tristate.of(this.plugin.compatibilityManager().isBedrockPlayer(this)); + } + return this.isBedrock.asBoolean(); + } + @Override public void addTrackedFurniture(int entityId, Furniture furniture) { this.trackedFurniture.put(entityId, new VirtualCullableObject(furniture)); diff --git a/core/src/main/java/net/momirealms/craftengine/core/entity/player/Player.java b/core/src/main/java/net/momirealms/craftengine/core/entity/player/Player.java index f7f85bdf5..b5814c9b4 100644 --- a/core/src/main/java/net/momirealms/craftengine/core/entity/player/Player.java +++ b/core/src/main/java/net/momirealms/craftengine/core/entity/player/Player.java @@ -232,6 +232,8 @@ public abstract class Player extends AbstractEntity implements NetWorkUser { public abstract int clearOrCountMatchingInventoryItems(Key itemId, int count); + public abstract boolean isBedrock(); + @Override public void remove() { }