Jump to content

[1.11] Power system not working after optimization.


Awesome_Spider

Recommended Posts

I switched from the RF API to Forges power system recently, that's not a problem anymore. But I was optimizing/fixing errors in my code and I broke it again. I was trying to make a block that grabs power from generator blocks and it worked partially before trying to fix it. Before, in the gui it showed the power rising, but then it stopped gathering power before it was full. After changing the code the power does not rise at all visually.

 

The following are the classes I changed:

 

TileEntity:

http://pastebin.com/RnXveEb8

 

Container:

http://pastebin.com/kkpie1AP

 

MessageHandler:

http://pastebin.com/Q7sctG4C

 

Messge:

http://pastebin.com/JYTnj5QP

 

If you need anything else let me know.

 

Link to comment
Share on other sites

Why are you separating EnumFacing.UP and EnumFacing.DOWN from the horizontals? And in your PurifierMessageHandler handles powerRecieved as the power and not the change in power.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

41 minutes ago, Animefan8888 said:

Why are you separating EnumFacing.UP and EnumFacing.DOWN from the horizontals?

I think I did because I didn't want it to accept power from the bottom or top. Not sure why I would have done that.

 

44 minutes ago, Animefan8888 said:

And in your PurifierMessageHandler handles powerRecieved as the power and not the change in power.

I've looked at that. It is passed to updateProgressBar which calls setField which has this check:

 

if(id == 2) {
	if(value > 0){
		energyStorage.receiveEnergy(value, false);
	} else {
		energyStorage.extractEnergy(Math.abs(value), false);
	}

	markDirty();
}

 

Is this a wrong way of doing it?

Link to comment
Share on other sites

13 minutes ago, Awesome_Spider said:

I've looked at that. It is passed to updateProgressBar which calls setField which has this check:

 


if(id == 2) {
	if(value > 0){
		energyStorage.receiveEnergy(value, false);
	} else {
		energyStorage.extractEnergy(Math.abs(value), false);
	}

	markDirty();
}

 

Is this a wrong way of doing it?

Well it is called setField so I thought it would do energyStored = value. I forgot to clarify this, but is the energy going up server side?

  • Like 1

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

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...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

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