Дроп моего предмета с моего блока

Статус
В этой теме нельзя размещать новые ответы.
252
0
Сделал все как надо но вот не задача! 
Код:
@Override
            public Item getItemDropped(int par1, Random par2Random, int par3)
            {
             return ItemBlorock;
            }
Это у меня в классе блока, там где ItemBlorock должен выпадать мой предмет, но eclipse вызывает ошибку, как мне ее устранить?
 
167
3
23
Какую ошибку то хоть? откуда итем берешь? =_=
 
252
0
Вот 
u0WxPI10lck.jpg



Класс Item'а
Код:
package ru.rockmod;

import net.minecraft.item.Item;

public class ItemBlorock extends Item {
 
252
0
Класс Item'a исправил..
Код:
package ru.rockmod;

import java.util.List;

import net.minecraft.block.Block;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraft.world.World;


public class ItemBlorock extends Item {

    private float damage_vs_entity = 0F;

    public ItemBlorock() {
        super();
    }

    public ItemBlorock setDamageVsEntity(float damage) {
        damage_vs_entity = damage;
        return this;
    }

    public float getDamageVsEntity() {
        return damage_vs_entity;
    }

    @Override
    public boolean hitEntity(ItemStack is, EntityLivingBase entity1, EntityLivingBase entity2) {
        DamageSource dmgSrc = null;
        if (entity2 instanceof EntityPlayer)
            dmgSrc = DamageSource.causePlayerDamage((EntityPlayer)entity2);
        else
            dmgSrc = DamageSource.causeMobDamage(entity2);
        if (dmgSrc != null) entity1.attackEntityFrom(dmgSrc, getDamageVsEntity());
        is.damageItem(1, entity2);
        return true;
    }

    @Override
    public boolean onBlockDestroyed(ItemStack is, World world, Block block, int x, int y, int z, EntityLivingBase entity) {
        if (block.getBlockHardness(world, x, y, z) != 0.0F) {
            is.damageItem(2, entity);
        }
        return true;
    }

    @Override
    public void onPlayerStoppedUsing(ItemStack is, World world, EntityPlayer player, int tick) {
        int j = this.getMaxItemUseDuration(is) - tick;

        boolean flag = player.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, is) > 0;

        if (flag || player.inventory.hasItem(this)) {
            float f = (float)j / 20.0F;
            f = (f * f + f * 2.0F) / 3.0F;
            if ((double)f < 0.1D) return;
            if (f > 1.0F) f = 1.0F;

            EntityItemBlorock entity_spear = new EntityItemBlorock(world, player, f * 2.0F);
            entity_spear.setDamage(getDamageVsEntity());

            if (f == 1.0F) {
                entity_spear.setIsCritical(true);
            }

            int k = EnchantmentHelper.getEnchantmentLevel(Enchantment.power.effectId, is);

            if (k > 0) {
                entity_spear.setDamage(entity_spear.getDamage() + (double)k * 0.5D + 0.5D);
            }

            int l = EnchantmentHelper.getEnchantmentLevel(Enchantment.punch.effectId, is);

            if (l > 0) {
                entity_spear.setKnockbackStrength(l);
            }

            if (EnchantmentHelper.getEnchantmentLevel(Enchantment.flame.effectId, is) > 0) {
                entity_spear.setFire(100);
            }

            if (flag) {
                entity_spear.canBePickedUp = 2;
            } else {
                //player.inventory.consumeInventoryItem(this);
            }

            ItemStack new_item_spear = is.copy();
            new_item_spear.stackSize = 1;
            new_item_spear.damageItem(1, player);
            entity_spear.setItemStack(new_item_spear);

            world.playSoundAtEntity(player, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F);
            if (!world.isRemote) world.spawnEntityInWorld(entity_spear);

            if (!flag) {
                --is.stackSize;
                if (is.stackSize <= 0) {
                    if (player.getCurrentEquippedItem() == is) {
                        player.setCurrentItemOrArmor(0, null);
                    } else is = null;
                }
            }

        }
    }

    @Override
    public ItemStack onEaten(ItemStack is, World world, EntityPlayer player) {
        return is;
    }

    @Override
    public int getMaxItemUseDuration(ItemStack is) {
        return 72000;
    }

    @Override
    public EnumAction getItemUseAction(ItemStack is) {
        return EnumAction.bow;
    }

    @Override
    public ItemStack onItemRightClick(ItemStack is, World world, EntityPlayer player) {
        if (player.capabilities.isCreativeMode || player.inventory.hasItem(this)) {
            player.setItemInUse(is, this.getMaxItemUseDuration(is));
        }
        return is;
    }

    @Override
    public int getItemEnchantability() {
        return 1;
    }
    public void addInformation(ItemStack is, EntityPlayer player, List list, boolean bool) {
         list.add("2 Attack Damage");
}
}
[merge_posts_bbcode]Добавлено: 27.05.2016 13:20:40[/merge_posts_bbcode]

nickita45 написал(а):
Берёшь там где ты его регал.
Регал.ItemBrorock
И ...
Блин точно!))) В моем случае это Main.ItemBlorock

[merge_posts_bbcode]Добавлено: 27.05.2016 13:21:06[/merge_posts_bbcode]

Вопрос решен, Закрывайте тему
 
586
1
2
Ну там я ещё и getItemFromBlock использовать бы пришлось...
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху