diff --git a/internal/v1_17_R1/src/main/java/com/lishid/openinv/internal/v1_17_R1/PlayerDataManager.java b/internal/v1_17_R1/src/main/java/com/lishid/openinv/internal/v1_17_R1/PlayerDataManager.java index df7697e..e17c144 100644 --- a/internal/v1_17_R1/src/main/java/com/lishid/openinv/internal/v1_17_R1/PlayerDataManager.java +++ b/internal/v1_17_R1/src/main/java/com/lishid/openinv/internal/v1_17_R1/PlayerDataManager.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011-2021 lishid. All rights reserved. + * Copyright (C) 2011-2022 lishid. All rights reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -130,6 +130,9 @@ public class PlayerDataManager implements IPlayerDataManager { public Player inject(@NotNull Player player) { try { ServerPlayer nmsPlayer = getHandle(player); + if (nmsPlayer.getBukkitEntity() instanceof OpenPlayer openPlayer) { + return openPlayer; + } injectPlayer(nmsPlayer); return nmsPlayer.getBukkitEntity(); } catch (IllegalAccessException e) { diff --git a/internal/v1_18_R1/src/main/java/com/lishid/openinv/internal/v1_18_R1/PlayerDataManager.java b/internal/v1_18_R1/src/main/java/com/lishid/openinv/internal/v1_18_R1/PlayerDataManager.java index a982b99..75f18d5 100644 --- a/internal/v1_18_R1/src/main/java/com/lishid/openinv/internal/v1_18_R1/PlayerDataManager.java +++ b/internal/v1_18_R1/src/main/java/com/lishid/openinv/internal/v1_18_R1/PlayerDataManager.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011-2021 lishid. All rights reserved. + * Copyright (C) 2011-2022 lishid. All rights reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -130,6 +130,9 @@ public class PlayerDataManager implements IPlayerDataManager { public Player inject(@NotNull Player player) { try { ServerPlayer nmsPlayer = getHandle(player); + if (nmsPlayer.getBukkitEntity() instanceof OpenPlayer openPlayer) { + return openPlayer; + } injectPlayer(nmsPlayer); return nmsPlayer.getBukkitEntity(); } catch (IllegalAccessException e) { diff --git a/internal/v1_18_R2/src/main/java/com/lishid/openinv/internal/v1_18_R2/PlayerDataManager.java b/internal/v1_18_R2/src/main/java/com/lishid/openinv/internal/v1_18_R2/PlayerDataManager.java index 40d6e8e..1be5f57 100644 --- a/internal/v1_18_R2/src/main/java/com/lishid/openinv/internal/v1_18_R2/PlayerDataManager.java +++ b/internal/v1_18_R2/src/main/java/com/lishid/openinv/internal/v1_18_R2/PlayerDataManager.java @@ -130,6 +130,9 @@ public class PlayerDataManager implements IPlayerDataManager { public Player inject(@NotNull Player player) { try { ServerPlayer nmsPlayer = getHandle(player); + if (nmsPlayer.getBukkitEntity() instanceof OpenPlayer openPlayer) { + return openPlayer; + } injectPlayer(nmsPlayer); return nmsPlayer.getBukkitEntity(); } catch (IllegalAccessException e) {