Class ProtectionSign

All Implemented Interfaces:
Keyed<SimpleLocation>, SmartObject, org.kingdoms.constants.group.model.logs.Loggable, org.kingdoms.locale.provider.CascadingMessageContextProvider, org.kingdoms.locale.provider.MessageContextProvider

public final class ProtectionSign extends KingdomBlock
  • Constructor Details

  • Method Details

    • isProtected

      public static boolean isProtected(@NonNull org.bukkit.block.Block block)
    • canBlockBeProtected

      public static boolean canBlockBeProtected(@NonNull org.bukkit.block.Block block)
    • placeProtection

      public static @NonNull ProtectionSign placeProtection(@Nullable Land land, @NonNull org.bukkit.block.Block block, @NonNull org.bukkit.block.Block sign, @NonNull org.bukkit.entity.Player owner, ProtectionSign.ProtectionType protectionType)
    • getAutomaticStateToggle

      public @Nullable Duration getAutomaticStateToggle()
    • setAutomaticStateToggle

      public void setAutomaticStateToggle(@Nullable Duration automaticStateToggle)
    • shouldRemoveProtectionAfterBreak

      public boolean shouldRemoveProtectionAfterBreak(org.bukkit.block.Block block)
      Handles doors and chests.
    • getProtection

      public static @NonNull Optional<ProtectionSign> getProtection(@NonNull org.bukkit.block.Block block)
    • isSign

      public static boolean isSign(@NonNull org.bukkit.block.Block block)
    • isContainer

      public boolean isContainer()
    • getSince

      public long getSince()
    • hashCode

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

      public void updateSign()
    • getKey

      public @NonNull SimpleLocation getKey()
    • equals

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

      public boolean isOwner(@NonNull org.bukkit.OfflinePlayer player)
    • removeProtection

      public void removeProtection()
    • getOwner

      public @NonNull UUID getOwner()
    • setOwner

      public void setOwner(@NonNull UUID owner)
    • getOwnerPlayer

      public @NonNull org.bukkit.OfflinePlayer getOwnerPlayer()
    • getAccessEntries

      public @NonNull List<ProtectionSign.AccessEntry> getAccessEntries()
    • getSign

      public @NonNull SimpleLocation getSign()
    • canAccess

      public ProtectionSign.AccessPrivilege canAccess(@NonNull org.bukkit.OfflinePlayer player)
    • canAccess

      public ProtectionSign.AccessPrivilege canAccess(@NonNull UUID player)
    • getProtectionType

      public @NonNull ProtectionSign.ProtectionType getProtectionType()
    • setProtectionType

      public void setProtectionType(@NonNull ProtectionSign.ProtectionType protectionType)
    • getBlock

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

      public @NonNull org.kingdoms.utils.cache.caffeine.ExpirableSet<UUID> getTemporarilyTrusted()
    • setTemporarilyTrusted

      public void setTemporarilyTrusted(@NonNull org.kingdoms.utils.cache.caffeine.ExpirableSet<UUID> temporarilyTrusted)
    • getPassword

      public @Nullable String getPassword()
    • setHashedPassword

      public void setHashedPassword(@Nullable String password)
    • changePassword

      public void changePassword(@Nullable String password)
    • verifyPassword

      public boolean verifyPassword(@NonNull String password)
    • hashPassword

      public String hashPassword(String password)
    • hasPassword

      public boolean hasPassword()
    • getKingdomBlockHandler

      public org.kingdoms.constants.land.KingdomBuildingHandler<?> getKingdomBlockHandler()
      Specified by:
      getKingdomBlockHandler in class KingdomBlock
    • modifyData

      public void modifyData(Land land, boolean adding)
      Specified by:
      modifyData in class KingdomBlock