ExampleAPI
package me.example;
import net.zbrunoc.api.DeathLogAPI;
import net.zbrunoc.api.model.DeathLogEntry;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import java.util.List;
import java.util.UUID;
public class DeathLogExample {
/**
* Example method to demonstrate how to fetch and display death data.
*/
public void displayDeathStatistics(Player requester, String targetName) {
// 1️⃣ Always check if the API is initialized to avoid IllegalStateException
if (!DeathLogAPI.isAvailable()) {
requester.sendMessage("§cError: DeathLogAPI is not initialized yet.");
return;
}
// 2️⃣ Fetch and display the last 10 global deaths
List<DeathLogEntry> recentDeaths = DeathLogAPI.getRecentDeaths(10);
requester.sendMessage("§6=== Recent Deaths ===");
if (recentDeaths.isEmpty()) {
requester.sendMessage("§7No deaths recorded.");
} else {
for (DeathLogEntry death : recentDeaths) {
requester.sendMessage(String.format("§e%s §7died due to §f%s",
death.getVictimName(), death.getCause()));
}
}
// 3️⃣ Fetch deaths for a specific player by UUID
UUID targetUuid = Bukkit.getOfflinePlayer(targetName).getUniqueId();
List<DeathLogEntry> playerDeaths = DeathLogAPI.getDeathsByPlayer(targetUuid);
requester.sendMessage("§6=== Statistics for " + targetName + " ===");
if (playerDeaths.isEmpty()) {
requester.sendMessage("§7This player has no recorded deaths.");
} else {
for (DeathLogEntry death : playerDeaths) {
String killer = death.getKillerName() != null ? death.getKillerName() : "Environment";
requester.sendMessage(String.format("§eVictim: %s §7| §cKiller: %s",
death.getVictimName(), killer));
}
}
}
}Last updated
