001 package net.minecraftforge.common; 002 003 import net.minecraft.src.*; 004 import net.minecraftforge.event.*; 005 import net.minecraftforge.event.entity.*; 006 007 public class ForgeInternalHandler 008 { 009 @ForgeSubscribe(priority = EventPriority.HIGHEST) 010 public void onEntityJoinWorld(EntityJoinWorldEvent event) 011 { 012 Entity entity = event.entity; 013 if (entity instanceof EntityItem) 014 { 015 ItemStack item = ((EntityItem)entity).item; 016 if (item.getItem().hasCustomEntity(item)) 017 { 018 Entity newEntity = item.getItem().createEntity(event.world, entity, item); 019 if (newEntity != null) 020 { 021 entity.setDead(); 022 event.setCanceled(true); 023 event.world.spawnEntityInWorld(newEntity); 024 } 025 } 026 } 027 } 028 }