API: Statistics
Methods for retrieving player order statistics.
Get Statisticsโ
getPlayerStatisticsโ
Get player order statistics.
Signature:
CompletableFuture<PlayerStats> getPlayerStatistics(UUID playerUuid)
Parameters:
playerUuid- UUID of the player
Returns: CompletableFuture<PlayerStats> - Player statistics
PlayerStats fields:
| Method | Returns | Description |
|---|---|---|
getOrdersCreated() | int | Total orders created (all statuses) |
getOrdersFulfilled() | int | Distinct orders player has delivered to |
getItemsDelivered() | int | Total quantity of items delivered |
getTotalSpent() | double | Total money spent creating orders |
getTotalEarned() | double | Total money earned from deliveries |
hasActivity() | boolean | Whether the player has any order activity |
Example:
CompletableFuture<PlayerStats> future = ordersAPI.getPlayerStatistics(
player.getUniqueId()
);
future.thenAccept(stats -> {
if (stats == null || !stats.hasActivity()) {
player.sendMessage("No order activity yet!");
return;
}
player.sendMessage("=== Order Statistics ===");
player.sendMessage("Orders Created: " + stats.getOrdersCreated());
player.sendMessage("Orders Fulfilled: " + stats.getOrdersFulfilled());
player.sendMessage("Items Delivered: " + stats.getItemsDelivered());
player.sendMessage("Total Spent: " + ordersAPI.formatCurrency(stats.getTotalSpent()));
player.sendMessage("Total Earned: " + ordersAPI.formatCurrency(stats.getTotalEarned()));
double profit = stats.getTotalEarned() - stats.getTotalSpent();
player.sendMessage("Net Profit: " + ordersAPI.formatCurrency(profit));
});
Always check hasActivity() before displaying, and use formatCurrency() for any money values.
See Alsoโ
- API Overview - full method index
- Order Management
- Economy Operations