Jump to content

MairwunNx

Members
  • Posts

    89
  • Joined

  • Last visited

Posts posted by MairwunNx

  1. 1 minute ago, Draco18s said:

    Sorry, yes, LIT_FURNACE, the name has changed a few times and I couldn't recall what it was currently called.

    ok, i change it on KEY5 (emerald_furnace), but when i put eat and coal it change to vanilla

     

    if (active)
    {
        worldIn.setBlockState(pos, KEY5.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
        worldIn.setBlockState(pos, KEY5.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
    }
    else
    {
        worldIn.setBlockState(pos, KEY5.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
        worldIn.setBlockState(pos, KEY5.getDefaultState().withProperty(FACING, iblockstate.getValue(FACING)), 3);
    }
  2. 2 minutes ago, Cadiboo said:

    did you read the article and/or anything you were told? As a general rule, if your item doesn't have subtypes its metadata is 0. Not 1 and definitely not null (Are integers even allowed to be null?)

    I feel a little stupid. :), If it doesn't have subtypes and I return 0, then I shouldn't have the second block?

     

     image.png.5d372567fb34d1e0cb4d4e35fd355712.png

  3. 3 minutes ago, Draco18s said:

    You shouldn't have even needed to try.

    For on, the method parameters are well labled and for two, the third parameter already being passed has a getMetadata() call. GOSH I WONDER WHAT THAT IS FOR.

    Ok, sorry i don't understand it's ?

     

    For on, the method parameters are well labled and for two, the third parameter already being passed has a getMetadata() call.

  4. 1 minute ago, diesieben07 said:

    I have no idea what your question is.

    Sorry, i use google translate. Then how do I make a wall with what I have?

    It is fully working and visible, but I interfere with the extra block.

     

    I also try replace code: 

     

        public void getSubBlocks(CreativeTabs itemIn, NonNullList<ItemStack> items)
        {
            for (BlockWall.EnumType blockwall$enumtype : BlockWall.EnumType.values())
            {
                items.add(new ItemStack(this, 1, blockwall$enumtype.getMetadata()));
            }
        }

     

    on:

     

        public void getSubBlocks(CreativeTabs itemIn, NonNullList<ItemStack> items)
        {
            for (BlockWall.EnumType blockwall$enumtype : BlockWall.EnumType.values())
            {
                items.add(new ItemStack(this, 0, blockwall$enumtype.getMetadata()));
            }
        }

     

    But it remove all my wall blocks of tab. But walls available on game with help recipes or command give.

  5. 15 minutes ago, diesieben07 said:
    • Problematic code, issue 10 and 14.
    • modelBlock tells BlockWall it's properties (like hardness, resistance, etc.), that's all.
    • Show more of your code.

    yes, but what put to modelBlock? BlockWall not work, and other blocks not work. 

     

    in BlockWall class i find it:image.png.77cf6bf1af75b65139d340247d0c9d98.png

     

    But, what is it blockMaterial? It's don't work.

     

    More code:

     

    emeraldwall class:

     

    package com.mairwunnx.mnxemeralds.blocks;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockWall;
    
    public class emeraldwall extends BlockWall
    {
        public emeraldwall(String name, float resistance, float hardness, Block modelBlock)
        {
            super(modelBlock);
            setUnlocalizedName(name);
            setRegistryName(name);
            setResistance(resistance);
            setHardness(hardness);
            this.useNeighborBrightness = true;
            setLightLevel(20.0F);
        }
    }

     

    blockregister class:

     

    package com.mairwunnx.mnxemeralds.registers;
    
    import com.mairwunnx.mnxemeralds.blocks.*;
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockStairs;
    import net.minecraft.block.BlockWall;
    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 static com.mairwunnx.mnxemeralds.mnxemeralds.defaultModTab;
    
    public class blockregister
    {
        public static Block KEY = new emeraldhardblock("emerald_hard_block").setCreativeTab(defaultModTab);
        public static Block KEY1 = new emeraldfence("emerald_fence", 13.5F, 20.0F).setCreativeTab(defaultModTab);
        public static Block KEY2 = new emeraldhalfslab("emerald_slab", 13.5F, 20.0F).setCreativeTab(defaultModTab);
        public static Block KEY3 = new emeraldstairs("emerald_stairs", 13.5F, 20.0F, KEY.getDefaultState()).setCreativeTab(defaultModTab);
        public static Block KEY4 = new emeraldwall("emerald_wall", 13.5F, 20.0F, ???).setCreativeTab(defaultModTab);
    
        public static void register()
        {
            setRegister(KEY);
            setRegister(KEY1);
            setRegister(KEY2);
            setRegister(KEY3);
            setRegister(KEY4);
        }
    
        @SideOnly(Side.CLIENT)
        public static void registerRender()
        {
            setRender(KEY);
            setRender(KEY1);
            setRender(KEY2);
            setRender(KEY3);
            setRender(KEY4);
        }
    
        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"));
        }
    }

     

     

  6. Just now, diesieben07 said:

    Show what you tried.

    package com.mairwunnx.mnxemeralds.blocks;
    
    import net.minecraft.block.Block;
    import net.minecraft.block.BlockWall;
    
    public class emeraldwall extends BlockWall
    {
        public emeraldwall(String name, float resistance, float hardness, Block modelBlock)
        {
            super(modelBlock);
            setUnlocalizedName(name);
            setRegistryName(name);
            setResistance(resistance);
            setHardness(hardness);
            this.useNeighborBrightness = true;
            setLightLevel(20.0F);
        }
    }

     

    it's Emerald Wall class.

     

    But, i don't know as call emeraldwall method.

     

    public static Block KEY4 = new emeraldwall("emerald_wall", 13.5F, 20.0F, ??? ).setCreativeTab(defaultModTab);

     

     ? ? ? - I do not know what argument to put, i try other blocks, e.g KEY1 (is emerald_hardness_block), But then in the tab with the mod, I have two blocks.

  7. 9 hours ago, Animefan8888 said:

    Вы можете взглянуть на мой компрессор Shard, в котором используется пользовательская система рецептов, которую я позже буду использовать для использования формата json. В целом фактический код печи является беспорядком и делается намного проще с помощью кузнечного дополнения, IItemHandler. Это значительно упрощает код, который вы должны записать в методе обновления.

    Okey, i will be see :) thx dude 

  8. 10 hours ago, Cadiboo said:

    Допустим, посмотрите на некоторые мотивы с открытым исходным кодом. Конструкция Тинкеров, мэканизм приходят на ум. Minecraft By Example - отличный ресурс

    thanks :))

  9. 1 hour ago, Draco18s said:

    Step 1: look at what vanilla did

    Step 2: copy what vanilla did

    Step 3: make desired changes

     

    Now, vanilla did do some right dumb shit in a few places (such as using two different blocks for the furnace, while its possible to use only one), but you can get most of the way to what you want with this process. The main issue is that you'll need to override shouldRefresh in your TileEntity class and return true only when your TE should be destroyed/recreated fresh.

    Hi, thx for help, i try make steps 1 - 3. But are there ready-made solutions to the normal (not shit vanilla) stove?

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.