All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dev.linwood.api.ui.template.item.TranslatedItem Maven / Gradle / Ivy

The newest version!
package dev.linwood.api.ui.template.item;

import dev.linwood.api.translations.TranslatedObject;
import dev.linwood.api.translations.Translation;
import dev.linwood.api.ui.Gui;
import dev.linwood.api.ui.item.StaticItem;
import dev.linwood.api.item.ItemStackBuilder;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;

/**
 * @author CodeDoctorDE
 */
public class TranslatedItem extends StaticItem implements TranslatedObject {
    private final Translation translation;

    public TranslatedItem(Translation translation) {
        this(translation, new ItemStack(Material.AIR));
    }

    public TranslatedItem(Translation translation, ItemStack itemStack) {
        super(itemStack);
        this.translation = translation;
    }

    @Override
    public ItemStack build(Gui gui) {
        renderAction.accept(gui);
        ItemStackBuilder itemStackBuilder = new ItemStackBuilder(getItemStack());
        if (translation != null && !getItemStack().getType().isAir())
            getTranslation().translate(itemStackBuilder, getPlaceholders());
        return itemStackBuilder.build();
    }

    public Translation getTranslation() {
        return translation;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy