Reworked pvp permission

This commit is contained in:
Fabrizio La Rosa 2020-06-18 16:17:55 +02:00
parent 54aaed3fd6
commit d94d7923b8

View File

@ -28,26 +28,27 @@ public class PvpPermission extends ListeningPermission {
@PermissionHandler @PermissionHandler
public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
Entity entity = event.getEntity(); Player attacker = null;
Player player;
if (event.getDamager() instanceof Player) if (event.getDamager() instanceof Player)
player = (Player) event.getDamager(); attacker = (Player) event.getDamager();
else if (event.getDamager() instanceof Projectile && ((Projectile) event.getDamager()).getShooter() instanceof Player) else if (event.getDamager() instanceof Projectile && ((Projectile) event.getDamager()).getShooter() instanceof Player)
player = (Player) ((Projectile) event.getDamager()).getShooter(); attacker = (Player) ((Projectile) event.getDamager()).getShooter();
else return;
FileManager.Config config = fileManager.getConfig(new File(plugin.getDataFolder(), "config.yml")); if(attacker instanceof Player
FileConfiguration configLoad = config.getFileConfiguration(); && event.getEntity() instanceof Player){
Player victim = (Player) event.getEntity();
if (configLoad.getBoolean("Island.Settings.PvP.Enable")) { FileManager.Config config = fileManager.getConfig(new File(plugin.getDataFolder(), "config.yml"));
event.setCancelled(true); FileConfiguration configLoad = config.getFileConfiguration();
} else if (!configLoad.getBoolean("Island.PvP.Enable")) {
event.setCancelled(true); if (configLoad.getBoolean("Island.Settings.PvP.Enable")) {
event.setCancelled(true);
} else if (!configLoad.getBoolean("Island.PvP.Enable")) {
event.setCancelled(true);
}
cancelAndMessage(event, victim, plugin, messageManager);
} }
if (entity.getType() == EntityType.ARMOR_STAND || !(entity instanceof Monster)) return;
cancelAndMessage(event, player, plugin, messageManager);
} }
} }