001 package net.minecraftforge.event.entity.player; 002 003 import java.util.ArrayList; 004 005 import net.minecraft.enchantment.EnchantmentHelper; 006 import net.minecraft.entity.item.EntityItem; 007 import net.minecraft.entity.player.EntityPlayer; 008 import net.minecraft.util.DamageSource; 009 import net.minecraftforge.event.Cancelable; 010 import net.minecraftforge.event.entity.living.LivingDropsEvent; 011 012 /** 013 * Child class of LivingDropEvent that is fired specifically when a 014 * player dies. Canceling the event will prevent ALL drops from entering the 015 * world. 016 */ 017 @Cancelable 018 public class PlayerDropsEvent extends LivingDropsEvent 019 { 020 public final EntityPlayer entityPlayer; 021 022 /** 023 * Creates a new event containing all the items that will drop into the 024 * world when a player dies. 025 * @param entity The dying player. 026 * @param source The source of the damage which is killing the player. 027 * @param drops List of all drops entering the world. 028 */ 029 public PlayerDropsEvent(EntityPlayer entity, DamageSource source, ArrayList<EntityItem> drops, boolean recentlyHit) 030 { 031 super(entity, source, drops, 032 (source.getEntity() instanceof EntityPlayer) ? 033 EnchantmentHelper.getLootingModifier(((EntityPlayer)source.getEntity())) : 0, 034 recentlyHit, 0); 035 036 this.entityPlayer = entity; 037 } 038 }