uiytt Posted November 20, 2019 Posted November 20, 2019 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 ^^ Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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 ) Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 16 minutes ago, diesieben07 said: PlayerInteractEvent.RightClickBlock. Yes but PlayerInteractEvent.RightClickBlock. is also trigger when a block is placed Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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 ? Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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...) Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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... Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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 ?) Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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 Quote
uiytt Posted November 20, 2019 Author Posted November 20, 2019 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 Quote
Recommended Posts
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.