Skip to main content

Developer API

FioAchievements exposes a small Bukkit-facing API through com.itzfabb.fioachievements.api.FioAchievementsAPI.

Scope

This page was scanned from FioAchievementsAPI.java and FioAchievementCompleteEvent.java.

Accessing the API

import com.itzfabb.fioachievements.api.FioAchievementsAPI;

FioAchievementsAPI api = FioAchievementsAPI.get();

FioAchievementsAPI.get() throws an IllegalStateException if the plugin is not enabled.

Achievement Lookup

MethodDescription
getAchievement(String achievementId)Get one loaded achievement by id.
getAchievements()Get currently active achievements.
getAllAchievements()Get all known achievements.
getCategories()Get loaded category ids.
getTotalAchievements()Get total achievement count.
getTotalAchievements(String category)Get total achievement count for one category.
getAchievementPoints(String achievementId)Get point value for one achievement.

Player Progress

MethodDescription
isCompleted(Player player, String achievementId)Check whether a player completed an achievement.
getProgress(Player player, String achievementId)Get saved progress for an achievement.
getCompletedAt(Player player, String achievementId)Get completion timestamp for an achievement.
loadProgress(UUID uuid)Load stored progress asynchronously.
getCompletedCount(Player player)Get completed count.
getCompletedCount(Player player, String category)Get completed count in one category.
getCompletedCountByScope(Player player, String scope)Get completed count for all, season, exclusive, or tier scopes.

Points And Tiers

MethodDescription
getPoints(Player player)Get player points.
getPoints(Player player, String category)Get player points for a category.
getPointsByScope(Player player, String scope)Get player points for an aggregate scope.
getMaxPoints(String category)Get max points for a category.
getMaxPointsByScope(String scope)Get max points for an aggregate scope.
getTier(Player player)Get saved tier value.
getCalculatedTier(Player player)Get calculated tier value.
getUnclaimedTierRewards(Player player)Get unclaimed tier reward count.

Mutations

MethodDescription
setCompleted(Player player, String achievementId, boolean completed)Set completion state.
setState(Player player, String achievementId, String state)Set achievement state such as unlocked, locked, onprogress, deactive, or active.
setPoints(Player player, int points)Set player points.
addPoints(Player player, int amount)Add or remove points.
reset(Player player)Reset a player's progress.
openMainMenu(Player player)Open the main achievement GUI.
openMenu(Player player, String menuId)Open a plugin menu by id.

Completion Event

Listen for FioAchievementCompleteEvent when you need to react to achievement completions.

@EventHandler
public void onAchievementComplete(FioAchievementCompleteEvent event) {
Player player = event.getPlayer();
String achievementId = event.getAchievementId();
long completedAt = event.getCompletedAt();
}