Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

Hey so I am now working on a mod that adds some new blocks to minecraft, and I figured out how to make normal blocks and slabs but I cant get stairs working. It seems that to add stairs it is a little different than adding other blocks and I need some help with it.

or if you'd like to write your own class for it, its basically a map of multiple collision boxes that provide the "step up" for the player.

  • Author

No. You see the way I have been adding my other blocks is first in my classicBlocks.java I add Public static Block blockname

so for the stairs I do Public static Block blockClassicStairs then I go under the preInit event and add blockClassicBrickStairs = new ClassicBrickStairs(Material.rock).setBlockName("classicBrickStairs") and then I register the block GameRegistry.registerBlock(blockClassicBrickStairs, "classicBrickStairs"). Then I must make the ClassicBrickStaris.java and it wants me to make it like this.

 

package net.classicBlocks.mod;

 

import cpw.mods.fml.relauncher.Side;

import cpw.mods.fml.relauncher.SideOnly;

import net.minecraft.block.Block;

import net.minecraft.block.BlockStairs;

import net.minecraft.client.renderer.texture.IIconRegister;

import net.minecraft.creativetab.CreativeTabs;

 

public class ClassicBrickStairs extends BlockStairs {

 

public ClassicBrickStairs(Block p_i45428_1_, int p_i45428_2_) {

super(p_i45428_1_, p_i45428_2_);

 

this.setHardness(2.0F);

this.setResistance(10.0F);

this.setStepSound(soundTypePiston);

this.setCreativeTab(CreativeTabs.tabBlock);

 

 

}

 

@SideOnly(Side.CLIENT)

public void registerBlockIcons(IIconRegister iconRegister){

this.blockIcon = iconRegister.registerIcon(classicBlock.modid + ":" + this.getUnlocalizedName().substring(5));

 

}

 

}

 

 

However then in the classicBlocks.java it gives me an error with  blockClassicBrickStairs = new ClassicBrickStairs(Material.rock).setBlockName("classicBrickStairs"). The error is with ClassicBrickStairs(Material.rock) and I don't know how to fix it. I have tried to add Material material to  public ClassicBrickStairs(Block p_i45428_1_, int p_i45428_2_) but that does nothing because I also have to add material to super(p_i45428_1_, p_i45428_2_) which it will not let me do. And none of the quick fixes will help me.

All I can tell you is the same thing I did with my custom door!

N steps!

1: copy the whole BlockStairClass.

2: deobfuscate it as much as you can if it's not already deobfuscated

3: do one and 2 for all classes it needs to function properly ( for me it was ItemDoor)

4: repeat 1 and 2 for those classes (if any)

5: remove unnecessary things

6: profit???

The solution to your problem is so incredibly simple. It's seriously part of basic Java knowledge.

 

ClassicBrickStairs does not have a constructor that takes a Material. It takes a Block and an int.

The Block it takes in is the "material" it is made of, so if I wanted to make grass stairs I would put a grass block in there.

  • Author

Thank you I am new to all this, and the videos I am using to help me did not show how to add stairs. One more thing though. How do I fix the lighting bug. I found on someone else's topic to add this in my stairs class this.useNeighborBrightness[id] = true; but it is telling me The type of expression must be an array type but it resolved to a boolean.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.