diff --git a/pom.xml b/pom.xml
index 4c6ece4..69e32e8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -204,6 +204,10 @@
loohp-repo
https://repo.loohpjames.com/repository
+
+ placeholderapi
+ https://repo.extendedclip.com/content/repositories/placeholderapi/
+
@@ -261,5 +265,11 @@
7.18.7
compile
+
+ me.clip
+ placeholderapi
+ 2.9.2
+ provided
+
diff --git a/src/main/java/com/loohp/imageframe/objectholders/CombinedMapItemHandler.java b/src/main/java/com/loohp/imageframe/objectholders/CombinedMapItemHandler.java
index 1d1f0b0..875aa04 100644
--- a/src/main/java/com/loohp/imageframe/objectholders/CombinedMapItemHandler.java
+++ b/src/main/java/com/loohp/imageframe/objectholders/CombinedMapItemHandler.java
@@ -25,6 +25,8 @@
import com.loohp.imageframe.utils.PlayerUtils;
import com.loohp.imageframe.utils.UUIDUtils;
import io.github.bananapuncher714.nbteditor.NBTEditor;
+import me.clip.placeholderapi.PlaceholderAPI;
+import net.kyori.adventure.text.Component;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material;
@@ -85,14 +87,18 @@ public ItemStack getCombinedMap(ImageMap imageMap) {
.replace("{CreatorName}", imageMap.getCreatorName())
.replace("{CreatorUUID}", imageMap.getCreator().toString())
.replace("{TimeCreated}", ImageFrame.dateFormat.format(new Date(imageMap.getCreationTime()))));
- meta.setLore(ImageFrame.combinedMapItemLoreFormat.stream().map(each -> each
+ List lore = ImageFrame.combinedMapItemLoreFormat.stream().map(each -> each
.replace("{ImageID}", imageMap.getImageIndex() + "")
.replace("{Name}", imageMap.getName())
.replace("{Width}", imageMap.getWidth() + "")
.replace("{Height}", imageMap.getHeight() + "")
.replace("{CreatorName}", imageMap.getCreatorName())
.replace("{CreatorUUID}", imageMap.getCreator().toString())
- .replace("{TimeCreated}", ImageFrame.dateFormat.format(new Date(imageMap.getCreationTime())))).collect(Collectors.toList()));
+ .replace("{TimeCreated}", ImageFrame.dateFormat.format(new Date(imageMap.getCreationTime())))).collect(Collectors.toList());
+ if ((!lore.isEmpty()) && (Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null)) {
+ lore = lore.stream().map(each -> PlaceholderAPI.setPlaceholders(null, each)).collect(Collectors.toList());
+ }
+ meta.setLore(lore);
itemStack.setItemMeta(meta);
return NBTEditor.set(itemStack, imageMap.getImageIndex(), COMBINED_MAP_KEY);
}