package joshie.progression.criteria.triggers; import joshie.progression.api.ProgressionAPI; import joshie.progression.api.criteria.ITrigger; import joshie.progression.api.criteria.ProgressionRule; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.event.entity.living.LivingDeathEvent; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @ProgressionRule(name="kill", color=0xFF000000) public class TriggerKill extends TriggerBaseEntity { @Override public ITrigger copy() { return copyEntity(new TriggerKill()); } @SubscribeEvent(priority = EventPriority.LOWEST) public void onEvent(LivingDeathEvent event) { Entity source = event.getSource().getSourceOfDamage(); if (!(source instanceof EntityPlayer)) { source = event.getSource().getEntity(); } if (source instanceof EntityPlayer) { ProgressionAPI.registry.fireTrigger((EntityPlayer) source, getProvider().getUnlocalisedName(), event.getEntityLiving()); } } }