Почему не появляется модель блока в игре,вот код
Java:
package ru.lnti.tinymod.Main;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod (modid = "tinymod", name="tinymod", version = "1.0")
public class main {
@Instance("tinymod")
public static main instance;
public static final String MODID = "tinymod";
public static final String NAME = "tinymod";
public static final String VERSION = "1.0";
@SidedProxy(clientSide = "ru.lnti.tinymod.Main.ClientProxy", serverSide = "ru.lnti.tinymod.Main.CommonProxy")
public static CommonProxy proxy;
public static CreativeTabs tinytab = new ru.lnti.tinymod.creativetabs.tinytab(12, null);
public static Block Sign_stop;
public void preInit(FMLPreInitializationEvent event) {
Sign_stop = new ru.lnti.tinymod.blocks.Sign_stop();
GameRegistry.registerBlock(Sign_stop, "sign_stop");
GameRegistry.registerTileEntity(TileEntityObj.class, "TileEntityObj");
proxy.preInit();
}
@EventHandler
public void init(FMLInitializationEvent event) {
proxy.init();
}
Java:
package ru.lnti.tinymod.blocks;
import ru.lnti.tinymod.Main.TileEntityObj;
import ru.lnti.tinymod.Main.main;
import net.minecraft.block.Block;
import net.minecraft.block.ITileEntityProvider;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
public class Sign_stop extends Block implements ITileEntityProvider {
public Sign_stop() {
super(Material.circuits);
setCreativeTab(main.tinytab);
setHardness(0.25F);
setStepSound(soundTypeMetal);
setBlockTextureName("iron_block");
setBlockName(main.MODID + ".Sign_stop");
}
@Override
public TileEntity createNewTileEntity(World world, int metadata) {
return new TileEntityObj();
}
public int getRenderType() {
return -1;
}
public boolean isOpaqueCube() {
return false;
}
public boolean renderAsNormalBlock() {
return false;
}
Java:
package ru.lnti.tinymod.Main;
import net.minecraft.client.Minecraft;
import net.minecraft.item.ItemStack;
import net.minecraftforge.client.IItemRenderer;
import org.lwjgl.opengl.GL11;
public class RenderItemBlockObj implements IItemRenderer {
@Override
public boolean handleRenderType(ItemStack is, ItemRenderType type) {
return true;
}
@Override
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack is, ItemRendererHelper helper) {
return true;
}
@Override
public void renderItem(ItemRenderType type, ItemStack is, Object... data) {
GL11.glPushMatrix();
GL11.glTranslatef(0.5F, 0.0F, 0.5F);
Minecraft.getMinecraft().renderEngine.bindTexture(RenderTileEntityObj.texture);
RenderTileEntityObj.model.renderAll();
GL11.glPopMatrix();
}
}
Java:
package ru.lnti.tinymod.Main;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.model.AdvancedModelLoader;
import net.minecraftforge.client.model.IModelCustom;
import org.lwjgl.opengl.GL11;
public class RenderTileEntityObj extends TileEntitySpecialRenderer {
public static final IModelCustom model =
AdvancedModelLoader.loadModel(new ResourceLocation(main.MODID, "obj/Sign_stop.obj"));
public static final ResourceLocation texture = new ResourceLocation(main.MODID, "textures/blocks/Sign_stop.png");
@Override
public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float f) {
render((TileEntityObj)tile, x, y, z, f);
}
private void render(TileEntityObj tile, double x, double y, double z, float f) {
GL11.glPushMatrix();
GL11.glTranslated(x, y, z);
GL11.glTranslatef(0.5F, 0.0F, 0.5F);
bindTexture(texture);
model.renderAll();
GL11.glPopMatrix();
}
}
Java:
package ru.lnti.tinymod.Main;
import net.minecraft.tileentity.TileEntity;
public class TileEntityObj extends TileEntity {
public TileEntityObj() {
}
}
Java:
package ru.lnti.tinymod.Main;
import net.minecraft.item.Item;
import net.minecraftforge.client.MinecraftForgeClient;
import cpw.mods.fml.client.registry.ClientRegistry;
public class ClientProxy extends CommonProxy {
public void preInit() {
super.preInit();
}
public void init() {
super.init();
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityObj.class, new RenderTileEntityObj());
MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(main.Sign_stop), new RenderItemBlockObj());
}
}