diff --git a/internal/v1_14_R1/src/main/java/com/lishid/openinv/internal/v1_14_R1/PlayerDataManager.java b/internal/v1_14_R1/src/main/java/com/lishid/openinv/internal/v1_14_R1/PlayerDataManager.java index 96a5d33..66bbcd9 100644 --- a/internal/v1_14_R1/src/main/java/com/lishid/openinv/internal/v1_14_R1/PlayerDataManager.java +++ b/internal/v1_14_R1/src/main/java/com/lishid/openinv/internal/v1_14_R1/PlayerDataManager.java @@ -190,19 +190,16 @@ public class PlayerDataManager implements IPlayerDataManager { String title; if (inventory instanceof SpecialEnderChest) { HumanEntity owner = (HumanEntity) ((SpecialEnderChest) inventory).getBukkitOwner(); - title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.enderchest"); + title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.enderchest", "%player%", owner.getName()); if (title == null) { - title = "%player%'s Ender Chest"; + title = owner.getName() + "'s Ender Chest"; } - //noinspection ConstantConditions - owner name can be null if loaded by UUID - title = title.replace("%player%", owner.getName() != null ? owner.getName() : owner.getUniqueId().toString()); } else if (inventory instanceof SpecialPlayerInventory) { EntityHuman owner = ((PlayerInventory) inventory).player; - title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.player"); + title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.player", "%player%", owner.getName()); if (title == null) { - title = "%player%'s Inventory"; + title = owner.getName() + "'s Inventory"; } - title = title.replace("%player%", owner.getName() != null ? owner.getName() : owner.getUniqueID().toString()); } else { return player.openInventory(inventory.getBukkitInventory()); } diff --git a/internal/v1_15_R1/src/main/java/com/lishid/openinv/internal/v1_15_R1/PlayerDataManager.java b/internal/v1_15_R1/src/main/java/com/lishid/openinv/internal/v1_15_R1/PlayerDataManager.java index 854a7b7..23876cf 100644 --- a/internal/v1_15_R1/src/main/java/com/lishid/openinv/internal/v1_15_R1/PlayerDataManager.java +++ b/internal/v1_15_R1/src/main/java/com/lishid/openinv/internal/v1_15_R1/PlayerDataManager.java @@ -192,17 +192,16 @@ public class PlayerDataManager implements IPlayerDataManager { String title; if (inventory instanceof SpecialEnderChest) { HumanEntity owner = (HumanEntity) ((SpecialEnderChest) inventory).getBukkitOwner(); - title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.enderchest"); + title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.enderchest", "%player%", owner.getName()); if (title == null) { - title = "%player%'s Ender Chest"; + title = owner.getName() + "'s Ender Chest"; } } else if (inventory instanceof SpecialPlayerInventory) { EntityHuman owner = ((PlayerInventory) inventory).player; - title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.player"); + title = OpenInv.getPlugin(OpenInv.class).getLocalizedMessage(player, "container.player", "%player%", owner.getName()); if (title == null) { - title = "%player%'s Inventory"; + title = owner.getName() + "'s Inventory"; } - title = title.replace("%player%", owner.getName() != null ? owner.getName() : owner.getUniqueID().toString()); } else { return player.openInventory(inventory.getBukkitInventory()); } diff --git a/plugin/src/main/java/com/lishid/openinv/OpenInv.java b/plugin/src/main/java/com/lishid/openinv/OpenInv.java index 4f95b7b..5b58523 100644 --- a/plugin/src/main/java/com/lishid/openinv/OpenInv.java +++ b/plugin/src/main/java/com/lishid/openinv/OpenInv.java @@ -313,6 +313,10 @@ public class OpenInv extends JavaPlugin implements IOpenInv { return this.languageManager.getValue(key, getLocale(sender)); } + public @Nullable String getLocalizedMessage(@NotNull CommandSender sender, @NotNull String key, String... replacements) { + return this.languageManager.getValue(key, getLocale(sender), replacements); + } + @Nullable private String getLocale(@NotNull CommandSender sender) { if (sender instanceof Player) { diff --git a/plugin/src/main/resources/en_us.yml b/plugin/src/main/resources/en_us.yml index 8ea3b42..6d5ef70 100644 --- a/plugin/src/main/resources/en_us.yml +++ b/plugin/src/main/resources/en_us.yml @@ -25,4 +25,4 @@ messages: off: 'off' container: player: '%player%''s Inventory' - enderchest: '%Player''s Ender Chest' + enderchest: '%player%''s Ender Chest'