Interface EzCratesAPI

All Known Implementing Classes:
EzCratesAPIProvider

public interface EzCratesAPI
Public interface to interact with the EzCrates service layer.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addKeys(UUID playerUuid, String crateType, int amount)
    Increments key balance for a user.
    Lists all loaded language codes configured in EzCrates.
    org.bukkit.inventory.ItemStack
    Retrieves the display item representation of a crate type.
    Lists all loaded crate IDs.
    Gets the server-wide default language.
    Static instance accessor pattern for other plugins.
    int
    getKeys(UUID playerUuid, String crateType)
    Gets total keys available for a user for a specific crate.
    getPlayerLanguage(UUID playerUuid)
    Gets the persistent language code of a player (e.g., "en", "fr").
    boolean
    giftKeys(UUID senderUuid, UUID receiverUuid, String crateType, int amount)
    Gifts a specific quantity of keys from a sender to a receiver.
    void
    giveRandomReward(org.bukkit.entity.Player player, String crateType)
    Awards a randomly rolled prize to a player and sends appropriate events/animations.
    void
    openPreviewGUI(org.bukkit.entity.Player player, String crateType)
    Displays the graphical interface showing potential crate outcomes.
    void
    removeKeys(UUID playerUuid, String crateType, int amount)
    Decrements key balance for a user, not falling below zero.
    void
    setKeys(UUID playerUuid, String crateType, int amount)
    Sets the key balance for a user.
    void
    setPlayerLanguage(UUID playerUuid, String languageCode)
    Sets the persistent language code for a player.
    boolean
    takeKey(UUID playerUuid, String crateType)
    Attempts to subtract a single key.
    translate(org.bukkit.entity.Player player, String messageKey, boolean usePrefix, Object... placeholders)
    Translates a message code using the player's set language.
  • Method Details

    • getInstance

      static EzCratesAPI getInstance()
      Static instance accessor pattern for other plugins.
    • getPlayerLanguage

      String getPlayerLanguage(UUID playerUuid)
      Gets the persistent language code of a player (e.g., "en", "fr").
    • setPlayerLanguage

      void setPlayerLanguage(UUID playerUuid, String languageCode)
      Sets the persistent language code for a player.
    • getDefaultLanguage

      String getDefaultLanguage()
      Gets the server-wide default language.
    • getAvailableLanguages

      List<String> getAvailableLanguages()
      Lists all loaded language codes configured in EzCrates.
    • translate

      String translate(org.bukkit.entity.Player player, String messageKey, boolean usePrefix, Object... placeholders)
      Translates a message code using the player's set language.
    • getKeys

      int getKeys(UUID playerUuid, String crateType)
      Gets total keys available for a user for a specific crate.
    • setKeys

      void setKeys(UUID playerUuid, String crateType, int amount)
      Sets the key balance for a user.
    • addKeys

      void addKeys(UUID playerUuid, String crateType, int amount)
      Increments key balance for a user.
    • removeKeys

      void removeKeys(UUID playerUuid, String crateType, int amount)
      Decrements key balance for a user, not falling below zero.
    • takeKey

      boolean takeKey(UUID playerUuid, String crateType)
      Attempts to subtract a single key. Returns true if success, false if none available.
    • giftKeys

      boolean giftKeys(UUID senderUuid, UUID receiverUuid, String crateType, int amount)
      Gifts a specific quantity of keys from a sender to a receiver.
    • getCrateTypes

      Set<String> getCrateTypes()
      Lists all loaded crate IDs.
    • getCrateDisplayItem

      org.bukkit.inventory.ItemStack getCrateDisplayItem(String crateType)
      Retrieves the display item representation of a crate type.
    • giveRandomReward

      void giveRandomReward(org.bukkit.entity.Player player, String crateType)
      Awards a randomly rolled prize to a player and sends appropriate events/animations.
    • openPreviewGUI

      void openPreviewGUI(org.bukkit.entity.Player player, String crateType)
      Displays the graphical interface showing potential crate outcomes.