Перевод c версии на версию

Версия Minecraft
1.12.2
344
1
47
Перевожу пару вещей на новую версию и столкнулся с некоторыми проблемами...
1.11.2 - 1.12.2
Я полный профан в данной версии, так что на костер не сажать.

Код:
    @SubscribeEvent
    public void onEntityDrop(LivingDropsEvent event) {
       
        int loot = event.getLootingLevel();
       
        Entity attacker = event.getSource().getEntity();
//здесь проблема,     Entity attacker = event.getSource().getEntity(); - так нельзя. Как заменить?       

        if(!(event.isRecentlyHit() && (event.getSource().damageType.equals("arrow") || (event.getSource().damageType.equals("player") && attacker.getEyeHeight() > 1.0f)))){
            return;
        }
       
        EntityLivingBase entity = event.getEntityLiving();
       
        if(entity instanceof EntityPlayer) {
            EntityPlayer player = (EntityPlayer) entity;
       if(rand.nextInt(100) < 8 + loot * 2){
                entity.entityDropItem(new ItemStack(goldgoin, (rand.nextInt(4) / 3) + 1, 0), 1.0f);
            }
        }
       }
       
    }

Вообще есть другие варианты, не вижу регистрации предмета
Код:
        @SubscribeEvent
        public static void registerItems() {
            GameRegistry.register(goldcoin);
        }

Код:
    @Override
    public void getSubItems(Item itemIn, CreativeTabs tab, NonNullList<ItemStack> items) {
        for(int i = 0; i < numTypes; i++) {
            items.add(new ItemStack(this, 1, i));
        }
    }
 
Последнее редактирование:
Сверху