Package net.citizensnpcs.questers.listeners

Source Code of net.citizensnpcs.questers.listeners.QuesterEntityListen

package net.citizensnpcs.questers.listeners;

import net.citizensnpcs.questers.QuestManager;

import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDeathEvent;

public class QuesterEntityListen implements Listener {
    @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
    public void onEntityDeath(EntityDeathEvent ev) {
        if (!(ev.getEntity().getLastDamageCause() instanceof EntityDamageByEntityEvent))
            return;
        EntityDamageByEntityEvent event = (EntityDamageByEntityEvent) ev.getEntity().getLastDamageCause();
        if (event.getDamager() instanceof Projectile) {
            Projectile shot = ((Projectile) event.getDamager());
            if (shot.getShooter() instanceof Player) {
                event = new EntityDamageByEntityEvent(shot.getShooter(), event.getEntity(), event.getCause(),
                        event.getDamage());
            }
        }
        if (event.getDamager() instanceof Player && event.getEntity() instanceof LivingEntity) {
            QuestManager.incrementQuest((Player) event.getDamager(), ev);
        }
    }
}
TOP

Related Classes of net.citizensnpcs.questers.listeners.QuesterEntityListen

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.