Не могу нацепить текстуру на блок. Вроде делаю все по гайду.
2 = скрин в blocksInit/setrender
3скрин - blockstates
4 - models/block
5 - models/items
2 = скрин в blocksInit/setrender
3скрин - blockstates
4 - models/block
5 - models/items
cube_all
, а текстуры к ней прописываешь как к cube
. В cube_all
нет таких текстур. Есть одна текстура all
.cube_column
. Тогда ты сможешь использовать всего две текстуры...cube_botton_top
будет для тебя как раз то, что нужно Выше кинул скрин, вроде бы все поменял на admin_workbenchА имя при регистрации осталось старое
"AdminWorkbench".
Не работает? Кинь логи
Я говорю в общем. Сейчас решится эта проблема (и то не факт), а в следующей теме ты спросишь про следующий блокДля admin_workbench нигде и нет пробелов,
package com.Rikog.CustomWorkbenches;
import com.Rikog.CustomWorkbenches.proxy.*;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.Mod.Instance;
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;
@Mod(modid = "cw")
public class Main {
@Instance
public static Main instance;
@SidedProxy(clientSide = "com.Rikog.CustomWorkbenches.proxy.ClientProxy", serverSide = "com.Rikog.CustomWorkbenches.proxy.CommonProxy")
public static CommonProxy proxy;
public static final CreativeTabs tabCW = new CreativeTabs("cw")
{
@Override
public ItemStack getTabIconItem()
{
return new ItemStack(Blocks.COMMAND_BLOCK);
}
};
@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 com.Rikog.CustomWorkbenches.blocks;
import com.Rikog.CustomWorkbenches.Main;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class AdminWorkbench extends Block {
public AdminWorkbench(String name) {
super(Material.WOOD);
this.setCreativeTab(Main.tabCW);
this.setRegistryName(name);
this.setUnlocalizedName(name);
}
}
package com.Rikog.CustomWorkbenches.blocks;
import com.Rikog.CustomWorkbenches.Main;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class Workbench3x3 extends Block {
public Workbench3x3(String name) {
super(Material.WOOD);
this.setCreativeTab(Main.tabCW);
this.setRegistryName(name);
this.setUnlocalizedName(name);
}
}
package com.Rikog.CustomWorkbenches.blocks;
import com.Rikog.CustomWorkbenches.Main;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class Workbench5x5 extends Block {
public Workbench5x5(String name) {
super(Material.WOOD);
this.setCreativeTab(Main.tabCW);
this.setRegistryName(name);
this.setUnlocalizedName(name);
}
}
package com.Rikog.CustomWorkbenches.blocks;
import com.Rikog.CustomWorkbenches.Main;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class Workbench7x7 extends Block {
public Workbench7x7(String name) {
super(Material.WOOD);
this.setCreativeTab(Main.tabCW);
this.setRegistryName(name);
this.setUnlocalizedName(name);
}
}
package com.Rikog.CustomWorkbenches.blocks;
import com.Rikog.CustomWorkbenches.Main;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
public class Workbench9x9 extends Block {
public Workbench9x9(String name) {
super(Material.WOOD);
this.setCreativeTab(Main.tabCW);
this.setRegistryName(name);
this.setUnlocalizedName(name);
}
}
package com.Rikog.CustomWorkbenches.init;
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.ForgeRegistries;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import com.Rikog.CustomWorkbenches.blocks.*;
public class BlocksInit {
public static Block admin_workbench = new AdminWorkbench("AdminWorkbench");
public static Block workbench3x3 = new Workbench3x3("Beginner's Workbench");
public static Block workbench5x5 = new Workbench5x5("Adepts's Workbench");
public static Block workbench7x7 = new Workbench7x7("Expert's Workbench");
public static Block workbench9x9 = new Workbench9x9("Masters's Workbench");
public static void registerBlocks() {
setRegister(admin_workbench);
setRegister(workbench3x3);
setRegister(workbench5x5);
setRegister(workbench7x7);
setRegister(workbench9x9);
}
@SideOnly(Side.CLIENT)
public static void registerBlocksRender() {
setRender(admin_workbench);
setRender(workbench3x3);
setRender(workbench5x5);
setRender(workbench7x7);
setRender(workbench9x9);
}
private static void setRegister(Block block) {
ForgeRegistries.BLOCKS.register(block);
ForgeRegistries.ITEMS.register(new ItemBlock(block).setRegistryName(block.getRegistryName()));
}
@SideOnly(Side.CLIENT)
private static void setRender(Block block) {
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
}
}
package com.Rikog.CustomWorkbenches.proxy;
import com.Rikog.CustomWorkbenches.init.BlocksInit;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
public class ClientProxy extends CommonProxy{
@Override
public void preInit(FMLPreInitializationEvent event)
{
super.preInit(event);
}
@Override
public void init(FMLInitializationEvent event)
{
super.init(event);
BlocksInit.registerBlocksRender();
}
@Override
public void postInit(FMLPostInitializationEvent event)
{
super.postInit(event);
}
}
package com.Rikog.CustomWorkbenches.proxy;
import com.Rikog.CustomWorkbenches.init.BlocksInit;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
public class CommonProxy {
public void preInit(FMLPreInitializationEvent event)
{
BlocksInit.registerBlocks();
}
public void init(FMLInitializationEvent event)
{
BlocksInit.registerBlocksRender();
}
public void postInit(FMLPostInitializationEvent event) {
}
}