- 49
- 0
.register(BLOCKTEST,.....
.register(Item.getItemFromBlock(BLOCKTEST),.....
Blocks.java@Vlad89 скинь код главного класса, класса с блоками и с предметами.
package ru.vlad.mmorpg.block;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class Blocks
{
public static BlockTest BLOCKTEST = new BlockTest();
public static void registerBlocks()
{
GameRegistry.register(BLOCKTEST);
GameRegistry.register(new ItemBlock(BLOCKTEST).setRegistryName(BLOCKTEST.getRegistryName()));
}
public static void registerBlocksRender()
{
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(BLOCKTEST), 0, new ModelResourceLocation(BLOCKTEST.getRegistryName(), "inventory"));
}
}
package ru.vlad.mmorpg.item;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraft.item.EnumRarity;
import net.minecraft.util.text.TextFormatting;
import net.minecraftforge.common.util.EnumHelper;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class Items {
public static Item.ToolMaterial DarkIron = EnumHelper.addToolMaterial("DarkIron", 4, 1000, 4, 10, 10);
public static EnumRarity RARITY_LEGENDARY = EnumHelper.addRarity("RARITY_LEGENDARY", TextFormatting.GOLD, "Legendary");
public static ItemTest testItem = new ItemTest();
public static void registerItems() {
GameRegistry.register(testItem);
}
public static void registerItemsRender() {
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(testItem, 0, new ModelResourceLocation(testItem.getRegistryName(), "inventory"));
}
}
package ru.vlad.mmorpg;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import ru.vlad.mmorpg.proxy.CommonProxy;
@Mod(modid = "mmorpg")
public class MmoRpg {
@SidedProxy(clientSide = "ru.vlad.mmorpg.proxy.ClientProxy", serverSide = "ru.vlad.mmorpg.proxy.ServerProxy")
public static CommonProxy proxy;
@EventHandler
public void preInit(FMLPreInitializationEvent event) {
proxy.preInit(event);
}
@EventHandler
public void init(FMLInitializationEvent event) {
proxy.init(event);
}
@EventHandler
public void postInit(FMLPostInitializationEvent event) {
proxy.postInit(event);
}
}
package ru.vlad.mmorpg.proxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import ru.vlad.mmorpg.block.Blocks;
import ru.vlad.mmorpg.item.Items;
public class ClientProxy extends CommonProxy {
@Override
public void preInit(FMLPreInitializationEvent event) {
super.preInit(event);
Blocks.registerBlocks();
}
@Override
public void init(FMLInitializationEvent event) {
super.init(event);
Blocks.registerBlocksRender();
Items.registerItemsRender();
}
@Override
public void postInit(FMLPostInitializationEvent event) {
super.postInit(event);
}
}
package ru.vlad.mmorpg.proxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import ru.vlad.mmorpg.block.Blocks;
import ru.vlad.mmorpg.item.Items;
public class CommonProxy {
public void preInit(FMLPreInitializationEvent event) {
Blocks.registerBlocksRender();
Items.registerItems();
}
public void init(FMLInitializationEvent event) {
}
public void postInit(FMLPostInitializationEvent event) {
}
}
package ru.vlad.mmorpg.block;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
public class BlockTest extends Block
{
public BlockTest()
{
super(Material.WOOD);
this.setRegistryName("block_test");
this.setUnlocalizedName("blockTest");
this.setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
}
}
public void preInit(FMLPreInitializationEvent event) {
Blocks.registerBlocksRender();
А можно подробнее?Код:public void preInit(FMLPreInitializationEvent event) { Blocks.registerBlocksRender();
1) Рендер только на стороне клиента
2) Рендер только после регистрации блоков\предметов
public class CommonProxy {
public void preInit(FMLPreInitializationEvent event) {
Blocks.registerBlocksRender();
Items.registerItems();
}
ClientProxy
. А у тебя рендер есть еще и в CommonProxy
, да еще и в preInit
.Пиши на 1.7.10, тут прощеТак в гайде было написано
public class CommonProxy {
public void preInit(FMLPreInitializationEvent event) {
Blocks.registerBlocksRender();
Items.registerItems();
}