Setting up own playtime calculator
The Custom Playtime Calculator Registration API allows you to integrate your own playtime calculation logic into the UltimateReward plugin.
Usage
Implement Your Playtime Calculator
To create a custom playtime calculator, inherit from the
PlayTimeCalculator
interface and implement thecalculatePlayTime(Player player)
method. This method should contain your custom logic to calculate the playtime of the given player.import org.bukkit.entity.OfflinePlayer; public class MyOwnPlayTimeCalculator implements PlayTimeCalculator { @Override public float calculatePlayTime(OfflinePlayer player) { // Your custom logic to calculate player's playtime } }
Register Your Calculator
After implementing your custom playtime calculator, register it with the UltimateReward plugin using the
registerPlayTimeCalculator()
method. This ensures that your custom logic is integrated into the playtime tracking system.UltimateReward.registerPlayTimeCalculator(new MyOwnPlayTimeCalculator());
Method must return the play-time in minutes
Example
Here's a practical example demonstrating how to register a custom playtime calculator:
import org.bukkit.entity.OfflinePlayer;
public class MyOwnPlayTimeCalculator implements PlayTimeCalculator {
@Override
public float calculatePlayTime(OfflinePlayer player) {
// Example: return playtime in minutes
return player.getStatistic(Statistic.PLAY_ONE_TICK) / 60.0 / 20.0; // Convert ticks to minutes
}
}
// Register the custom playtime calculator
UltimateReward.registerPlayTimeCalculator(new MyOwnPlayTimeCalculator());
In this example, MyOwnPlayTimeCalculator
calculates playtime based on Minecraft's built-in statistics, converting total playtime from ticks to minutes.
Last updated