{
"variants":
{
"anormal=true":{"model":"anvil"},
"anormal=false":{"model":"bedrock"}
}
}
Почему не читабельно то? Всё мобильно и ясно. Вообще да, у меня всегда код получается как из ж*пы. Нужны советы по оформлению. Читабельность крайне низкая всегда. На том же js я писал калькулятор. Вышло в итоге 3Мб кода без картинок.оформи код нормально
public AluminBlock(String name){
super(Material.ROCK);
this.setDefaultState(this.blockState.getBaseState().withProperty(anormal, true));
this.setRegistryName(name);
this.setUnlocalizedName(name);
this.setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
}
@Override
public boolean isOpaqueCube(IBlockState state){
return false;
}
@Override
public boolean isFullCube(IBlockState state){
return true;
}
anormal
? Что это где это?Я это решил пропустить.Где ты ему свойства добавляешь
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.properties.PropertyBool;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
public class AluminBlock extends Block {
public static final PropertyBool anormal = PropertyBool.create("anormal");
public AluminBlock(String name){
super(Material.ROCK);
this.setDefaultState(this.blockState.getBaseState().withProperty(anormal, true));
this.setRegistryName(name);
this.setUnlocalizedName(name);
this.setCreativeTab(CreativeTabs.BUILDING_BLOCKS);
}
@Override
public boolean isOpaqueCube(IBlockState state){
return false;
}
@Override
public boolean isFullCube(IBlockState state){
return true;
}
public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos)
{
Block block = worldIn.getBlockState(pos.up()).getBlock();
return state.withProperty(anormal, Boolean.valueOf(block != Blocks.AIR));
}
@Override
public IBlockState getStateFromMeta(int meta)
{
return this.getDefaultState();
}
@Override
public int getMetaFromState(IBlockState state)
{
return 0;
}
@Override
protected BlockStateContainer createBlockState()
{
return new BlockStateContainer(this, new IProperty[] {anormal});
}
}
import developer.modid.blocks.AluminBlock;
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;
public class BlocksRegister {
public static Block alumin_block = new AluminBlock("alumin_block");
public static void register(Block block){
setRegister(block);
}
}
@SideOnly(Side.CLIENT)
public static void registerRender(Block block){
setRender(block);
}
}
private static void setRegister(Block block){
ForgeRegistries.BLOCKS.register(block);
ForgeRegistries.ITEMS.register(new ItemBlock(block).setRegistryName(block.getRegistryName()));
}
@SideOnly(Side.CLIENT)
public static void setRender(Block block){
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));
}
}
import developer.modid.BlocksRegister;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
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) {
BlocksRegister.register(BlocksRegister.alumin_block);
}
public void init(FMLInitializationEvent event) {
}
public void postInit(FMLPostInitializationEvent event) {
}
}
{
"variants":
{
"anormal=true":{"model":"block/anvil"},
"anormal=false":{"model":"block/bedrock"}
}
}
public static Block alumin_block = new AluminBlock("modid:alumin_block");
{
"variants":
{
"anormal=true":{"model":"anvil"},
"anormal=false":{"model":"bedrock"}
}
}