ResExtras/src/main/java/cn/citycraft/ResExtras/flags/FallDamage.java

28 lines
997 B
Java

package cn.citycraft.ResExtras.flags;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import com.bekvon.bukkit.residence.Residence;
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
public class FallDamage implements Listener {
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onFallDamage(final EntityDamageEvent event) {
final Entity entity = event.getEntity();
final ClaimedResidence res = Residence.getResidenceManager().getByLoc(entity.getLocation());
if (event.getCause() == DamageCause.FALL && event.getEntity() instanceof Player) {
if (res != null) {
if (!res.getPermissions().has("falldamage", true)) {
event.setCancelled(true);
}
}
}
}
}