Jump to content

Recommended Posts

Posted

This is probably obvious but i'm missing it.  I want to cancel all things to do with buckets under certain conditions.

 

I see the bucketfill event.

 

What I can't figure out is the empty bucket event and I don't see anything searching.

 

Could someone point me in the right direction?

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Use the PlayerInteractEvent and check if the item held by the player is a bucket. It's the closest you can get.

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Posted

I'll have to play around with that tonight.  That was the event I started with, but I must have done something wrong.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

I figured out the problem.  This was very wierd and maybe it will help others.

 

What I am doing when the PlayerInteractEvent fires is to look for where the block that was impacted is at and determine if it is in a certain region.

 

It worked great for placing blocks, setting things on fire, ect.  It doesn't work for buckets though.

 

Then I noticed when you right click with a bucket, the PlayerInteractEvent fires twice.  The first time, the location is good.  The second time x/y/z are all ZERO!  The first one cancels correctly but doesn't stop the fluid drop dropping or picking up.  The 2nd one is the one that has to be cancelled.

 

To fix this, I looked for the type of click to be right click air and I substitue in the players x/y/z instead of the blocks.  This works great.

 

I wouldn't have kept looking at this without SanAndreasP' pointer to spur me back to that being the right event.  Thanks.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

The second time. where all the coords are 0, that time it's the client version. The server version is the time where the coords are correct. so you may need to check if !world.isRemote.

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/

Posted

I can understand why you would think it is the client.  I did at first.  It isn't.  I tested it.

 

It is on the Server Tab of the debug and it returns from testing that it is the server.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

I can understand why you would think it is the client.  I did at first.  It isn't.  I tested it.

 

It is on the Server Tab of the debug and it returns from testing that it is the server.

 

The call with the 0's in there is probably the action type RIGHT_CLICK_AIR, which is used when an item should be used. Just check for the

event.action == PlayerInteractEvent.Action.RIGHT_CLICK_AIR

Don't ask for support per PM! They'll get ignored! | If a post helped you, click the "Thank You" button at the top right corner of said post! |

mah twitter

This thread makes me sad because people just post copy-paste-ready code when it's obvious that the OP has little to no programming experience. This is not how learning works.

Posted

You could always add your own Bucket "un-fill" Event into Forge if you really wanted to. They might approve your addition sometime in the future, who knows? But the InteractEvent is probably your best shot.

Posted

As mentioned above it works so I don't think we need a new event.  Just have to deal with it firing that 2nd time and realizing it the bucket.

 

Long time Bukkit & Forge Programmer

Happy to try and help

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.

Announcements



×
×
  • Create New...

Important Information

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