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

So I'm doing a server-side mod,

and I want that when a player right click on block without placing any block , my code does something

but when the player right click and place any block, it does something else.

 

So I guess I have to use the event  : PlayerInteractEvent

But I don't really know how to check if a block  is placed (a block in a player's hand doesn't mean it's placed)

 

Does someone have an idea of how I can achieve what I want ?

Thanks ^^

  • Author
3 hours ago, diesieben07 said:

You can use EntityPlaceEvent to detect a block being placed.

Thanks and how can I detect a right click on any block without a block being placed ? (like opening a chest, or an entity blocking the place where the block is supposed to be placed )

  • Author
16 minutes ago, diesieben07 said:

PlayerInteractEvent.RightClickBlock.

Yes but PlayerInteractEvent.RightClickBlock. is also trigger when a block is placed

 

  • Author
51 minutes ago, diesieben07 said:

Correct. There is no way to know before the block is placed if a block is going to be placed. You have to use BlockEvent.PlaceEvent.

So there is no way when right clicking to know if it's placing a block or not ? :'c ?

So with even it's impossible to send "a" in the chat when a player place a block, and "b" in the chat when a player open a container ?

  • Author
Just now, diesieben07 said:

Yes, that is what I said.

 

You can detect it after the fact. Like I said: BlockEvent.PlaceEvent.

Yes and to detect when a player open a container ? (like a chest, a furnace, etc...)

  • Author
1 minute ago, diesieben07 said:

PlayerEvent.RightClickBlock. 

I am not sure how often I have to say this for you to start reading it.

PlayerEvent.RightClickBlock.  won't work because it's also triggered when a block is placed :/

 

If I use both PlayerEvent.RightClickBlock  and BlockEvent.PlaceEvent, PlayerEvent.RightClickBlock  is also called when BlockEvent.PlaceEvent is triggered and my goal is to find a way around this...

  • Author
1 minute ago, diesieben07 said:

There.

Is.
None.

Well I hope that someone have already encounter the same problem and with a bit chance he founds a solution (and you're not aware),

So I will let this open in a hope that someone has a solution that work because using a combination  of the two event won't work for what I want to do :/

 

And is there any events that is triggered when a item is picked up from an inventory (chest, furnace ?)

  • Author
10 minutes ago, diesieben07 said:

Why not? I do not see anything you've said that cannot be done.

 

When using a combination of the two event, one of them (PlayerEvent.RightClickBlock) will also be called at the same time as BlockEvent.PlaceEvent,

I want to do an action only if a player rightclick on another block without placing a block, and you said there is no way to do what I want :(

  • Author
5 minutes ago, diesieben07 said:

Dude....

RightClickBlock called and then no placeevent => no block was placed.

Oh yes, I didn't think about it ^^ thanks :)

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.