40 lines
1.3 KiB
Java
40 lines
1.3 KiB
Java
/*
|
|
* Copyright (c) 2017 univento.eu - All rights reserved
|
|
* You are not allowed to use, distribute or modify this code
|
|
*/
|
|
|
|
package eu.univento.core.antihack.modules;
|
|
|
|
import eu.univento.core.api.player.CustomPlayer;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.entity.Projectile;
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.event.entity.EntityDamageByEntityEvent;
|
|
|
|
/**
|
|
* @author joethei
|
|
* @version 0.1
|
|
*/
|
|
public class SelfHit implements Listener {
|
|
|
|
@EventHandler
|
|
public void onEntityDamageByEntity(EntityDamageByEntityEvent e) {
|
|
if(!e.isCancelled() && e.getEntity() instanceof Player && e.getDamager() instanceof Player) {
|
|
CustomPlayer p = (CustomPlayer) e.getEntity();
|
|
CustomPlayer damager = (CustomPlayer) e.getDamager();
|
|
if(damager.equals(p)) {
|
|
e.setCancelled(true);
|
|
e.setDamage(0.0D);
|
|
}
|
|
}
|
|
if(!e.isCancelled() && e.getEntity() instanceof Player && e.getDamager() instanceof Projectile) {
|
|
CustomPlayer p = (CustomPlayer) e.getEntity();
|
|
Projectile projectile = (Projectile) e.getDamager();
|
|
if(projectile.getShooter().equals(p)) {
|
|
e.setCancelled(true);
|
|
e.setDamage(0.0D);
|
|
}
|
|
}
|
|
}
|
|
} |