Interface AdvancementProgress


public interface AdvancementProgress
The individual status of an advancement for a player. This class is not reference safe as the underlying advancement may be reloaded.
  • Method Details

    • getAdvancement

      @NotNull Advancement getAdvancement()
      The advancement this progress is concerning.
      Returns:
      the relevant advancement
    • isDone

      boolean isDone()
      Check if all criteria for this advancement have been met.
      Returns:
      true if this advancement is done
    • awardCriteria

      boolean awardCriteria​(@NotNull String criteria)
      Mark the specified criteria as awarded at the current time.
      Parameters:
      criteria - the criteria to mark
      Returns:
      true if awarded, false if criteria does not exist or already awarded.
    • revokeCriteria

      boolean revokeCriteria​(@NotNull String criteria)
      Mark the specified criteria as uncompleted.
      Parameters:
      criteria - the criteria to mark
      Returns:
      true if removed, false if criteria does not exist or not awarded
    • getDateAwarded

      @Nullable Date getDateAwarded​(@NotNull String criteria)
      Get the date the specified criteria was awarded.
      Parameters:
      criteria - the criteria to check
      Returns:
      date awarded or null if unawarded or criteria does not exist
    • getRemainingCriteria

      @NotNull Collection<String> getRemainingCriteria()
      Get the criteria which have not been awarded.
      Returns:
      unmodifiable copy of criteria remaining
    • getAwardedCriteria

      @NotNull Collection<String> getAwardedCriteria()
      Gets the criteria which have been awarded.
      Returns:
      unmodifiable copy of criteria awarded