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 Detail

      • 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