From a17a126883c7563e66cc5b0540aab389537ae99e Mon Sep 17 00:00:00 2001 From: Reider745 <70357814+Reider745@users.noreply.github.com> Date: Sun, 17 Dec 2023 19:02:43 +0300 Subject: [PATCH] fix: getExperienceOrbValue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - исправлен getExperienceOrbValue --- src/main/java/com/reider745/entity/EntityMethod.java | 8 ++++++++ .../adapter/innercore/game/entity/StaticEntity.java | 3 +-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/reider745/entity/EntityMethod.java b/src/main/java/com/reider745/entity/EntityMethod.java index 453c67a0a..14dfef561 100644 --- a/src/main/java/com/reider745/entity/EntityMethod.java +++ b/src/main/java/com/reider745/entity/EntityMethod.java @@ -6,6 +6,7 @@ import cn.nukkit.entity.EntityHuman; import cn.nukkit.entity.EntityRideable; import cn.nukkit.entity.item.EntityItem; +import cn.nukkit.entity.item.EntityXPOrb; import cn.nukkit.entity.projectile.EntityProjectile; import cn.nukkit.event.entity.EntityDamageEvent; import cn.nukkit.item.Item; @@ -389,4 +390,11 @@ public static void transferToDimension(long unwrapEntity, int dimension) { if(entity != null) entity.teleport(Location.fromObject(entity.getPosition(), BlockSourceMethods.getLevelForDimension(dimension))); } + + public static int getExperienceOrbValue(long unwrapEntity) { + Entity entity = getEntityToLong(unwrapEntity); + if(entity instanceof EntityXPOrb xp) + return xp.getExp(); + return 0; + } } diff --git a/src/main/java/com/zhekasmirnov/apparatus/adapter/innercore/game/entity/StaticEntity.java b/src/main/java/com/zhekasmirnov/apparatus/adapter/innercore/game/entity/StaticEntity.java index 0de6b0b07..71d826a1f 100644 --- a/src/main/java/com/zhekasmirnov/apparatus/adapter/innercore/game/entity/StaticEntity.java +++ b/src/main/java/com/zhekasmirnov/apparatus/adapter/innercore/game/entity/StaticEntity.java @@ -47,8 +47,7 @@ public static ItemStack getDroppedItem(long entity) { } public static int getExperienceOrbValue(long entity) { - CompoundTag tag = EntityMethod.getEntityCompoundTag(entity); - return tag != null ? new NativeCompoundTag(tag).getInt("experience value") : 0; + return EntityMethod.getExperienceOrbValue(entity); }