Hello, I'm making a plugin that is like a hub Hotbar plugin for my server. I've got it down where that if a player respawns, and joins the server. I have a SkyWars plugin that at the end of the game, it transfers the player to the Hub, without the hub Hotbar items. I have been looking into some other plugins and other threads, but I need a way that when the player is detected in the hub, it gives them the Hotbar items. The items have a NamedTagEntry with the interaction event. Code: $player = $event->getPlayer(); $player->getInventory()->clearAll(); $player->setGamemode(2); $leap = Item::get(288, 0, 1); $cosmetics = Item::get(399, 0, 1); $gamemenu = Item::get(345, 0, 1); $hideplayers = Item::get(351, 10, 1); $profile = Item::get(397, 3, 1); $leap->setCustomName(TF::RESET . TF::GREEN . "Leap" . TF::GRAY . " (Use)"); $cosmetics->setCustomName(TF::RESET . TF::GREEN . "Cosmetics" . TF::GRAY . " (Use)"); $gamemenu->setCustomName(TF::RESET . TF::GREEN . "Game Menu" . TF::GRAY . " (Use)"); $hideplayers->setCustomName(TF::RESET . TF::WHITE . "Players: " . TF::GREEN . "Visible " . TF::GRAY . "(Use)"); $profile->setCustomName(TF::RESET . TF::GREEN . "Profile" . TF::GRAY . " (Use)"); $leap->setNamedTagEntry(new StringTag("Hotbar", "one")); $cosmetics->setNamedTagEntry(new StringTag("Hotbar", "two")); $gamemenu->setNamedTagEntry(new StringTag("Hotbar", "three")); $hideplayers->setNamedTagEntry(new StringTag("Hotbar", "four")); $profile->setNamedTagEntry(new StringTag("Hotbar", "five")); $player->getInventory()->setItem(0, $leap, true); $player->getInventory()->setItem(1, $cosmetics, true); $player->getInventory()->setItem(4, $gamemenu, true); $player->getInventory()->setItem(7, $hideplayers, true); $player->getInventory()->setItem(8, $profile, true);
PHP: public function onEntityLevelChange(EntityLevelChangeEvent $event) { $player = $event->getEntity(); if (!$player instanceof Player) return; if ($event->getTarget()->getFolderName() === $this->plugin->getServer()->getDefaultLevel()->getFolderName()) { $player->getInventory()->clearAll(); $player->setGamemode(2); $leap = Item::get(288, 0, 1); $cosmetics = Item::get(399, 0, 1); $gamemenu = Item::get(345, 0, 1); $hideplayers = Item::get(351, 10, 1); $profile = Item::get(397, 3, 1); $leap->setCustomName(TF::RESET . TF::GREEN . "Leap" . TF::GRAY . " (Use)"); $cosmetics->setCustomName(TF::RESET . TF::GREEN . "Cosmetics" . TF::GRAY . " (Use)"); $gamemenu->setCustomName(TF::RESET . TF::GREEN . "Game Menu" . TF::GRAY . " (Use)"); $hideplayers->setCustomName(TF::RESET . TF::WHITE . "Players: " . TF::GREEN . "Visible " . TF::GRAY . "(Use)"); $profile->setCustomName(TF::RESET . TF::GREEN . "Profile" . TF::GRAY . " (Use)"); $leap->setNamedTagEntry(new StringTag("Hotbar", "one")); $cosmetics->setNamedTagEntry(new StringTag("Hotbar", "two")); $gamemenu->setNamedTagEntry(new StringTag("Hotbar", "three")); $hideplayers->setNamedTagEntry(new StringTag("Hotbar", "four")); $profile->setNamedTagEntry(new StringTag("Hotbar", "five")); $player->getInventory()->setItem(0, $leap, true); $player->getInventory()->setItem(1, $cosmetics, true); $player->getInventory()->setItem(4, $gamemenu, true); $player->getInventory()->setItem(7, $hideplayers, true); $player->getInventory()->setItem(8, $profile, true); } } This should do it