feat: prevent players from killing themselves to get rewards

This commit is contained in:
HerozDotExe 2026-02-17 08:57:09 +01:00
parent ca1c6f05c7
commit 0509f5c319

View file

@ -37,7 +37,7 @@ public class DeathListener implements Listener {
AtomicBoolean isRevenge = new AtomicBoolean(false);
if (killed != null && killer != null && killer.getType().equals(EntityType.PLAYER)) {
if (killed != null && killer != null && killer.getType().equals(EntityType.PLAYER) && killed.getUniqueId() != killer.getUniqueId()) {
states.killsHistory.forEach((kr, kd) -> {
if(killed.getUniqueId().toString().equals(kr) && killer.getUniqueId().toString().equals(kd)) {
isRevenge.set(true);
@ -46,7 +46,6 @@ public class DeathListener implements Listener {
}
});
logger.info(String.format("Revenge : %s, Same kill: %s", isRevenge.get(), !states.killsHistory.getLastKill(killer.getUniqueId().toString()).equals(killed.getUniqueId().toString())));
if (isRevenge.get() || !states.killsHistory.getLastKill(killer.getUniqueId().toString()).equals(killed.getUniqueId().toString())) {
if (Bukkit.getPluginManager().isPluginEnabled("PlayerPoints")) {
PlayerPointsAPI pointsAPI = PlayerPoints.getInstance().getAPI();