From c9ba401a6e383f2611477b4a2c3d24e294b7ae33 Mon Sep 17 00:00:00 2001 From: Jikoo Date: Fri, 13 May 2022 11:14:45 -0400 Subject: [PATCH] Don't inject player if unnecessary --- .../lishid/openinv/internal/v1_17_R1/PlayerDataManager.java | 5 ++++- .../lishid/openinv/internal/v1_18_R1/PlayerDataManager.java | 5 ++++- .../lishid/openinv/internal/v1_18_R2/PlayerDataManager.java | 3 +++ 3 files changed, 11 insertions(+), 2 deletions(-) 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) {