Hey guys,
could some one tell me how I give a block a texture?
Would be nice when you could tell me the "correct" code
(texture file=StarOre.png)
MAIN.java
package yt.main;
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 yt.proxy.CommonProxy;
@Mod(modid=Starcraft.ID, version=Starcraft.VERSION)
public class Starcraft
{
public static final String ID = "StarcraftCore";
public static final String VERSION = "1.0";
@Mod.Instance
public static Starcraft instance;
@SidedProxy(clientSide="yt.proxy.ClientProxy", serverSide=".MDKExample.src.main.java.yt.proxy.CommonProxy")
public static CommonProxy proxy;
public static StarcraftBlocks blocks = new StarcraftBlocks();
@EventHandler
public void preInit(FMLPreInitializationEvent event)
{
blocks.registerBlocks();
}
@EventHandler
public void Init(FMLInitializationEvent event)
{
if (event.getSide().isClient())
{
blocks.setItemModels();
}
}
@EventHandler
public void PostInit(FMLPostInitializationEvent event)
{
}
}
BLOCKS.java
package yt.main;
import java.util.ArrayList;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.item.Item;
import yt.blocks.StarOre;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry;
public class StarcraftBlocks
{
public static Block starcraftblock;
public static List <Block> blockList = new ArrayList<Block>();
public void registerBlocks()
{
GameRegistry.registerBlock(starcraftblock=new StarOre(), StarOre.NAME);
}
public void setItemModels()
{
RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
for(Block block:blockList)
{
renderItem.getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(Starcraft.ID+":"+block.getUnlocalizedName().substring(5)));
ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(Starcraft.ID+":"+block.getUnlocalizedName().substring(5)));
}
}
}
ORE.java
package yt.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.creativetab.CreativeTabs;
import yt.main.Starcraft;
public class StarOre extends Block
{
public static String NAME = "StarOre";
public StarOre()
{
super(Material.rock);
this.setUnlocalizedName(NAME);
this.setCreativeTab(CreativeTabs.tabBlock);
}
}
And the models.json
{
"parent": "block/cube_all"
"textures": {
"all": "StarcraftCore:blocks/StarOre}
}
{
"variants": {
"normal": { "model": "StarcraftCore:starcraftBlock" }
"inventory": { "model": "StarcraftCore:starcraftBlock"}
}
}
{
"parent": "StarcraftCore:block/starcraftBlock",
"display": {
"thirdperson": {
"rotation": [ 10, -45, 170 ],
"translation": [ 0, 1.5, -2.75 ],
"scale": [ 0.375, 0.375, 0.375 ]
}
}
}