Interface CruxExemptionAPI


public interface CruxExemptionAPI
Exemption API for CruxAC. Allows developers to safely exempt players from checks or track custom movement mechanics.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    exempt(UUID playerUuid, String checkName, int ticks)
    Exempts a player from a specific check by name (e.g.
    void
    exempt(UUID playerUuid, CheckCategory category, int ticks)
    Exempts a player from an entire check category for a specific number of server ticks.
    default void
    exempt(org.bukkit.entity.Player player, String checkName, int ticks)
    Exempts a player from a specific check by name.
    default void
    exempt(org.bukkit.entity.Player player, CheckCategory category, int ticks)
    Exempts a player from an entire check category for a specific number of server ticks.
    boolean
    isExempt(UUID playerUuid, String checkName)
    Checks if a player is currently exempted from a check by name.
    boolean
    isExempt(UUID playerUuid, CheckCategory category)
    Checks if a player is currently exempted from a check category.
    trackCustomVelocity(org.bukkit.entity.Player player, org.bukkit.util.Vector velocity)
    Tracks a custom velocity (e.g.
    void
    unexempt(UUID playerUuid, CheckCategory category)
    Removes all active exemptions for the player in a given category.
  • Method Details

    • exempt

      void exempt(UUID playerUuid, CheckCategory category, int ticks)
      Exempts a player from an entire check category for a specific number of server ticks.
      Parameters:
      playerUuid - Target player UUID
      category - Check category to exempt (e.g. MOVEMENT)
      ticks - Duration in server ticks (20 ticks = 1 second)
    • exempt

      default void exempt(org.bukkit.entity.Player player, CheckCategory category, int ticks)
      Exempts a player from an entire check category for a specific number of server ticks.
    • exempt

      void exempt(UUID playerUuid, String checkName, int ticks)
      Exempts a player from a specific check by name (e.g. "Flight", "Speed", "Step") for a specific duration.
      Parameters:
      playerUuid - Target player UUID
      checkName - Check name
      ticks - Duration in server ticks
    • exempt

      default void exempt(org.bukkit.entity.Player player, String checkName, int ticks)
      Exempts a player from a specific check by name.
    • trackCustomVelocity

      MovementToken trackCustomVelocity(org.bukkit.entity.Player player, org.bukkit.util.Vector velocity)
      Tracks a custom velocity (e.g. Launch Pad, Grappling Hook, Custom Knockback). The player is automatically exempted from movement checks until the velocity is verified.
      Parameters:
      player - Target player
      velocity - Applied 3D velocity vector
      Returns:
      Tracked MovementToken
    • unexempt

      void unexempt(UUID playerUuid, CheckCategory category)
      Removes all active exemptions for the player in a given category.
      Parameters:
      playerUuid - Target player UUID
      category - Check category
    • isExempt

      boolean isExempt(UUID playerUuid, CheckCategory category)
      Checks if a player is currently exempted from a check category.
    • isExempt

      boolean isExempt(UUID playerUuid, String checkName)
      Checks if a player is currently exempted from a check by name.