How to add command with PlayerItemConsumeEvent that execute when a player eat or drink into a specific item?
PHP: public function onConsume(PlayerItemConsumeEvent $event) { $player = $event->getPlayer(); if($event->getItem()->getId() === 373) { // water bottle $this->getServer()->dispatchCommand(new ConsoleCommandSender(), "Command without slash"); // Execute from console $this->getServer()->dispatchCommand($player, "Command without slash"); // Execute from player } } Might want to research before asking :l
How about giving a player with that 373 with meta and custom name and executing the command after consuming it
This is a code I used to use PHP: public function onConsume(PlayerItemConsumeEvent $event) { $player = $event->getPlayer(); if($event->getItem()->getId() === 373) { $damage = $event->getItem()->getDamage(); switch($damage) { case 100: // You can add multiple according to their meta(damage) // Code return true; break; case 101: // Code return true; break; } } } You can have extra checks like PHP: if ($event->getItem()->getCustomName() === "Biggest Water"){ So in combination, it could be something like this: PHP: public function onConsume(PlayerItemConsumeEvent $event) { $player = $event->getPlayer(); if($event->getItem()->getId() === 373) { if ($event->getItem()->getCustomName() === "Biggest Water"){ $damage = $event->getItem()->getDamage(); switch($damage) { case 100: // You can add multiple according to their meta(damage) // Code return true; break; case 101: // Code return true; break; } } } }