- 57
- 2
- 0
Здравствуйте, форумчане! Мне нужно сделать блок руды с описанием. Да, я знаю что таких вопросов на форуме куча, и я их просматривал, но к желаемому результату так и не пришел. В общем, я понял следующее: лор нужно давать ItemBlock`у руды и существует два способа задать этот самый лор: addInformation и ItemTooltipEvent. Делал и так и сяк, ошибок нет, игра не жалуется, но есть только название блока. Мне нужна помощь в реализации задуманного, или же, возможно, я просто кое-что не учел?
Класс OreBase:
Класс ItemBlockOreBase:
Класс ItemsRegister:
Класс BlocksRegister:
Класс OreBase:
Java:
package com.sqcode.utech.blocks;
import com.sqcode.utech.Main;
import com.sqcode.utech.items.ItemsRegister;
import com.sqcode.utech.util.IHasModel;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.item.Item;
public class OreBase extends Block implements IHasModel
{
public OreBase(String name, Material material, int picklvl, String f)
{
super(material);
setRegistryName(name);
setUnlocalizedName(name);
setHarvestLevel("pickaxe", picklvl);
setHardness(5.0F);
setCreativeTab(Main.RESTAB);
ItemBlockOreBase ibob = new ItemBlockOreBase(this, f);
BlocksRegister.BLOCKS.add(this);
ItemsRegister.ITEMS.add(ibob);
}
@Override
public void registerModels()
{
Main.proxy.registerItemRenderer(Item.getItemFromBlock(this), 0, "inventory");
}
}
Класс ItemBlockOreBase:
Java:
package com.sqcode.utech.blocks;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
public class ItemBlockOreBase extends ItemBlock
{
public ItemBlockOreBase(Block block, String tt)
{
super(block);
setRegistryName(block.getRegistryName());
ItemStack is = new ItemStack(this);
List<String> list = new ArrayList<String>();
addInformation(is, null, list, ITooltipFlag.TooltipFlags.NORMAL);
}
}
Класс ItemsRegister:
Java:
package com.sqcode.utech.items;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.item.Item;
public class ItemsRegister
{
public static final List<Item> ITEMS = new ArrayList<Item>();
public static final Item INGOTCOPPER = new IngotBase("ingot_copper");
public static final Item INGOTTIN = new IngotBase("ingot_tin");
}
Класс BlocksRegister:
Java:
package com.sqcode.utech.blocks;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class BlocksRegister
{
public static final List<Block> BLOCKS = new ArrayList<Block>();
public static final Block TETRAHEDRITE = new OreBase("tetrahedrite", Material.ROCK, 1, "Cu3SbS3");
}