Items in menus now translate placeholder lore with respect to a player

This commit is contained in:
Auxilor
2021-04-17 10:24:27 +01:00
parent 7d4262e0ef
commit 0f9cb7db7a

View File

@@ -2,11 +2,14 @@ package com.willfp.eco.internal.gui;
import com.willfp.eco.core.gui.menu.Menu;
import com.willfp.eco.core.gui.slot.Slot;
import com.willfp.eco.util.StringUtils;
import lombok.Getter;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.jetbrains.annotations.NotNull;
import java.util.List;
@@ -56,7 +59,17 @@ public class EcoMenu implements Menu {
if (i == rows * 9) {
break;
}
inventory.setItem(i, item.getItemStack());
ItemStack slotItem = item.getItemStack();
ItemMeta meta = slotItem.getItemMeta();
if (meta != null) {
List<String> lore = meta.getLore();
if (lore != null) {
lore.replaceAll(s -> StringUtils.translate(s, player));
meta.setLore(lore);
}
slotItem.setItemMeta(meta);
}
inventory.setItem(i, slotItem);
i++;
}
}