Class KingdomItem<T extends KingdomItemStyle<?,?,?>>

java.lang.Object
org.kingdoms.constants.metadata.KingdomsObject<SimpleLocation>
org.kingdoms.constants.land.abstraction.KingdomItem<T>
All Implemented Interfaces:
org.kingdoms.abstraction.LandOperator
Direct Known Subclasses:
Structure, Turret

public abstract class KingdomItem<T extends KingdomItemStyle<?,?,?>> extends KingdomsObject<SimpleLocation> implements org.kingdoms.abstraction.LandOperator
  • Field Details

    • style

      protected final @NonNull T extends KingdomItemStyle<?,?,?> style
    • location

      protected final transient @NonNull SimpleLocation location
    • level

      protected @org.checkerframework.common.value.qual.IntRange(from=1L) int level
  • Constructor Details

    • KingdomItem

      public KingdomItem(@NonNull String meta, @NonNull T type, @NonNull SimpleLocation location)
  • Method Details

    • getDataKey

      public final @NonNull SimpleLocation getDataKey()
      Specified by:
      getDataKey in class KingdomsObject<SimpleLocation>
    • getCompressedData

      public final @NonNull String getCompressedData()
      Specified by:
      getCompressedData in class KingdomsObject<SimpleLocation>
    • round

      protected String round(double num)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • getStyle

      public @NonNull T getStyle()
    • getBlock

      public @NonNull org.bukkit.block.Block getBlock()
    • remove

      public final KingdomItemBreakEvent<?> remove()
    • getContext

      public PlaceholderContextBuilder getContext()
    • place

      @MustBeInvokedByOverriders public KingdomItemPlaceEvent<?> place(org.kingdoms.events.items.KingdomItemPlaceContext context)
    • remove

      @MustBeInvokedByOverriders public @NonNull KingdomItemBreakEvent<?> remove(org.kingdoms.events.items.KingdomItemRemoveContext context)
    • dropItem

      public void dropItem(org.bukkit.Location location, Kingdom kingdom)
    • removeData

      protected abstract void removeData()
    • serialize

      public void serialize(SerializationContext<org.kingdoms.data.database.dataprovider.SectionableDataSetter> context)
    • removeHolograms

      public void removeHolograms()
    • removeHolograms

      public void removeHolograms(Collection<? extends org.bukkit.entity.Player> players, boolean sendPacket)
    • playSound

      public void playSound(String sound)
    • playSound

      public void playSound(org.bukkit.Location location, String sound)
    • displayParticle

      public void displayParticle(String particle)
    • displayParticle

      public void displayParticle(org.bukkit.Location location, String particle)
    • getTags

      public Pair<org.bukkit.inventory.ItemStack,NBTTagCompound> getTags()
    • getItem

      public org.bukkit.inventory.ItemStack getItem(@Nullable Kingdom kingdom)
    • getEdits

      public MessageBuilder getEdits(Kingdom kingdom)
    • getEdits

      public final MessageBuilder getEdits()
    • setDataFromNBT

      public void setDataFromNBT(NBTTagCompound tag)
    • getLand

      public Land getLand()
      Specified by:
      getLand in interface org.kingdoms.abstraction.LandOperator
    • getLocation

      public @NonNull SimpleLocation getLocation()
    • getLevel

      public int getLevel()
    • setLevel

      public void setLevel(int level)
    • upgrade

      public void upgrade(int newLevel)
    • getMaxLevel

      public int getMaxLevel(@Nullable Kingdom kingdom)
    • getUpgradeCost

      public int getUpgradeCost(@Nullable Kingdom kingdom)
    • eval

      public double eval(@NonNull String str, @Nullable Kingdom kingdom, int lvl)
    • eval

      public double eval(@NonNull KeyedConfigAccessor option, @Nullable Kingdom kingdom, int lvl)
    • ofSection

      public KeyedConfigAccessor ofSection(String sectionName)
    • ofSection

      public KeyedConfigAccessor ofSection(String sectionName, int withLevel)
    • ofSection

      public KeyedConfigAccessor ofSection(String sectionName, int withLevel, boolean error)
    • setHolograms

      public void setHolograms(@Nonnull Set<UUID> holograms)
    • getHolograms

      public IntHashMap<List<org.bukkit.entity.ArmorStand>> getHolograms()
    • spawnHolograms

      public void spawnHolograms(@Nonnull Kingdom kingdom)
    • spawnHolograms

      public List<org.bukkit.entity.ArmorStand> spawnHolograms(@Nonnull Kingdom kingdom, Collection<? extends org.bukkit.entity.Player> players)
    • updateHolograms

      public void updateHolograms(@NonNull Kingdom kingdom)