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 guys,

I know how to make a block emit a redstone signal by using

public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, int p_149709_5_) {
        return 15;
}

but that emits a signal from all 6 sides of the block as if it was a redstone block. How do I make it only emit a signal from one side of the block like repeaters do (I have looked through the repeater's code in BlockRedstoneDiode.java and BlockRedstoneRepeater.java and found nothing). There also seems to be nothing online about this topic (no tutorials, etc) or topics asking the same question with no answers.

-Toastrackenigma

I believe the last parameter there is the side being checked. 0: down (your block on top, powering the block below), 1: up, etc.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

Looking more closely at it in Eclipse so do I, but I don't know how to set it because if I do any of the following it doesn't work:

public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, int side 2)

public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, int 2 )

public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, int side) {
side = 2;
return 15;
}

public int side = 2;
public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, side)

public int side = 2;
public int isProvidingStrongPower(IBlockAccess p_149709_1_, int p_149709_2_, int p_149709_3_, int p_149709_4_, int side)

etc.

Any tips or am I just making some noobish mistake :P

-Toastrackenigma

 

*Facepalm*

 

Seriously dude.  Seriously?

 

I...I just can't even.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

  • Author

*Facepalm*

 

Seriously dude.  Seriously?

 

I...I just can't even.

I'm taking that my issue is the the latter (i.e. a noobish mistake). To be honest I'm only "fairly decent" with Java (not with programming, I'm great with Javascript, PHP, Python, etc), I've been learning it over the holidays and part of that is making this mod. What have I done wrong? :P

You last parameter should be an int like "int side".

 

Then you run an if statement checking if thats the side you want and THEN return 15.

 

Eg:

if(side == 3) { //this makes side 3 emit redstone

return 15;

} else {

return 0; }

 

But seriously u need to learn how methods work...

  • Author

Thanks for telling me that, I thought the params at the top of a method were what I was giving IT, rather than what IT was giving ME (big difference).

Although it worked for my other public boolean canConnectRedstone(IBlockAccess world, int x, int y, int z, int side) method, it didn't work for my actual isProvidingStrongPower block. (While it used to provide power to all 6 sides, it now provides power to none). Here's the code:

public int isProvidingStrongPower(IBlockAccess world, int x, int y, int z, int side) {
    	if (side==3) {
    		return 15;
    	}
    	else {
    		return 0;
    	}
}

You need to also return an int after the else statement

No, you don't.

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

Thanks for telling me that, I thought the params at the top of a method were what I was giving IT, rather than what IT was giving ME (big difference).

 

Technically both are true.  You're just not the one calling the function in this case.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

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.