Class LeveledItem

java.lang.Object
studio.magemonkey.codex.manager.LoadableItem
studio.magemonkey.divinity.modules.ModuleItem
studio.magemonkey.divinity.modules.LeveledItem
All Implemented Interfaces:
Tiered
Direct Known Subclasses:
ArrowManager.QArrow, LimitedItem

public abstract class LeveledItem extends ModuleItem implements Tiered
  • Field Details

    • tier

      protected Tier tier
    • levelMin

      protected int levelMin
    • levelMax

      protected int levelMax
    • targetItemLevels

      protected TreeMap<Integer,String[]> targetItemLevels
    • targetItemTypes

      protected String[] targetItemTypes
    • targetItemModules

      protected String[] targetItemModules
    • targetTier

      protected String targetTier
  • Constructor Details

    • LeveledItem

      @Deprecated public LeveledItem(@NotNull Divinity plugin, String path, QModuleDrop<?> module) throws org.bukkit.configuration.InvalidConfigurationException
      Deprecated.
      Throws:
      org.bukkit.configuration.InvalidConfigurationException
    • LeveledItem

      public LeveledItem(@NotNull Divinity plugin, @NotNull studio.magemonkey.codex.config.api.JYML cfg, @NotNull QModuleDrop<?> module)
  • Method Details

    • applyLoreReplacements

      protected String applyLoreReplacements(String lore)
      Description copied from class: ModuleItem
      This method just returns the same string by default, but can be overridden to apply custom replacements. For example, LeveledItem uses this to replace the item tier placeholders.
      Overrides:
      applyLoreReplacements in class ModuleItem
      Parameters:
      lore - The lore line to apply replacements to.
      Returns:
      The lore line with replacements applied.
    • processLore

      protected void processLore(@NotNull studio.magemonkey.codex.config.api.JYML cfg, @NotNull QModuleDrop<?> module)
      Overrides:
      processLore in class ModuleItem
    • save

      protected void save(@NotNull studio.magemonkey.codex.config.api.JYML cfg)
      Overrides:
      save in class ModuleItem
    • getName

      @NotNull public String getName()
      Overrides:
      getName in class ModuleItem
    • getLore

      @NotNull public List<String> getLore()
      Overrides:
      getLore in class ModuleItem
    • getModule

      @NotNull public QModuleDrop<?> getModule()
      Overrides:
      getModule in class ModuleItem
    • create

      @NotNull public final org.bukkit.inventory.ItemStack create()
      Overrides:
      create in class ModuleItem
    • getTier

      @NotNull public Tier getTier()
      Specified by:
      getTier in interface Tiered
    • getMinLevel

      public int getMinLevel()
    • getMaxLevel

      public int getMaxLevel()
    • getTargetLevelRequirement

      protected final int[] getTargetLevelRequirement(int itemLvl)
    • doMathExpression

      protected final int[] doMathExpression(int itemLvl, @NotNull String[] both)
    • create

      @NotNull public org.bukkit.inventory.ItemStack create(int lvl)
    • build

      @NotNull protected org.bukkit.inventory.ItemStack build(int lvl)
    • build

      @NotNull protected org.bukkit.inventory.ItemStack build(@Nullable org.bukkit.inventory.ItemStack item, int lvl)
    • validateLevel

      protected final int validateLevel(int lvl)
    • replacePlaceholders

      protected void replacePlaceholders(@NotNull org.bukkit.inventory.ItemStack item)