Interface CosmeticLocation<T>

Type Parameters:
T - Input Type

public interface CosmeticLocation<T>
Represents a specific entry for a cosmetic.
  • Method Details

    • getNamespace

      @NotNull default @NotNull String getNamespace()
      Fetches the namespace of this cosmetic location that would belong to parent Cosmetic.
      Returns:
      Cosmetic Namespace
    • isUnlocked

      default boolean isUnlocked(@NotNull @NotNull Player p)
      Whether this Player has unlocked this cosmetic.
      Parameters:
      p - Player to test
      Returns:
      true if unlocked, else false
    • getKey

      @NotNull @NotNull String getKey()
      Fetches the key of this cosmetic location.
      Returns:
      Cosmetic Location Key
    • getDisplayName

      @NotNull @NotNull String getDisplayName()
      Fetches the display name of this cosmetic location.
      Returns:
      Cosmetic Location Display Name
    • getParent

      @NotNull @NotNull Cosmetic getParent()
      Fetches the parent of this cosmetic location.
      Returns:
      Parent Cosmetic
    • getParentClass

      Class<? extends Cosmetic> getParentClass()
      Fetches the class of getParent().
      Returns:
      Parent Cosmetic Class
    • getRarity

      @NotNull @NotNull Rarity getRarity()
      Fetches the rarity of this CosmeticLocation.
      Returns:
      Cosmetic Rarity
    • getCompletionCriteria

      @NotNull @NotNull CompletionCriteria getCompletionCriteria()
      Fetches the criteria required to unlock this CosmeticLocation.
      Returns:
      Completion Criteria
    • getFullKey

      @NotNull default @NotNull String getFullKey()

      Fetches the full key.

      The full key is constructed as "getNamespace():getKey()".

      Returns:
      Full Key
    • getInputType

      @NotNull @NotNull Class<? extends T> getInputType()
      Fetches the input type of this CosmeticLocation.
      Returns:
      Class of Input Type
    • getInput

      @NotNull T getInput()
      Fetches the input used in Cosmetic.run(Location, CosmeticLocation).
      Returns:
      CosmeticLocation Input for Parent Cosmetic
    • getByFullKey

      @Nullable static @Nullable CosmeticLocation<?> getByFullKey(@Nullable @Nullable String fullKey)
      Fetches a CosmeticLocation by getFullKey().
      Parameters:
      fullKey - Full Key
      Returns:
      Cosmetic Location