Hi, im again here with my plugin "NaviUI" and FormAPI... Id write some Message to the cmd sender, but now FormAPI dont load the functions for the 1st buttons in every UI of the Plugin (one UI still load the 1st button)... What can i do? My code should be right, but here it is: PHP: public function onCommand(CommandSender $sender, Command $command, string $label, array $args): bool{ $this->Load("Farmwelt"); $this->Load("Citybuild"); if(!($sender instanceof Player)){ $sender->sendMessage("§a§lLobby§r §8» §cFühre diesen Command bitte im Spiel aus!"); }else{ switch($command->getName()){ case "navi": $this->Main($sender); break; case "menu": $this->Menu($sender); } } return true;}public function Menu(Player $player){ $form = new SimpleForm(function (Player $player, $data){ if($data === null){ return; } if($data === 0){ $this->Main($player); } if($data === 1){ $player->sendMessage("§a§lLobby§r §8» §cDieses Feature ist noch in der Dev-Phase!"); } }); $form->setTitle("Menü"); $form->setContent("Was möchtest du machen?"); $form->addButton("Navi"); $form->addButton("Info"); $form->sendToPlayer($player);}public function Main(Player $player){ $form = new SimpleForm(function (Player $player, $data){ switch($data) { case null: return; break; case 0: $this->Citybuild($player); break; case 1: $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'warp Lobby ' . $player->getName()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest in die Lobby teleportiert!"); break; case 2: $this->Maps($player); break; } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eWeitere Spielmodi kommen!"); $form->addButton("§a§lCitybuild"); $form->addButton("§lLobby"); if($player->hasPermission("lobby.navi.leitung") || $player->hasPermission("lobby.navi.builder")){ $form->addButton("§b§lWeitere Welten§r"); } $form->sendToPlayer($player);}public function Maps(Player $player){ $form = new SimpleForm(function (Player $player, $data){ if($player->hasPermission("lobby.navi.leitung")) { switch ($data) { case null: return; break; case 0: $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'mw teleport BUW '.$player->getName()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "BUW"!'); break; case 1: $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'mw teleport LobbyAlt '.$player->getName()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyAlt"!'); break; case 2: $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'mw teleport LobbyBeta '.$player->getName()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyBeta"!'); break; case 3: $this->Main($player); break; } }else{ switch($data){ case null: return; break; case 0: $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'mw teleport LobbyBeta'.$player->getName()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyBeta"!'); break; case 1: $this->Main($player); break; } } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eHier kannst du die in die §bDev-§3Welten§e joinen!"); if($player->hasPermission("lobby.navi.leitung")){ $form->addButton("§4§lBUW§r"); $form->addButton("§4§lLobbyAlt§r"); } $form->addButton("§a§lLobbyIdee§r"); $form->addButton("§l<- Zurück"); $form->sendToPlayer($player);}public function Citybuild($player){ $form = new SimpleForm(function (Player $player, $data){ if($data === null){ return; } if($data === 0){ $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'warp Citybuild '.$player->getName()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest zum Citybuild-Spawn teleportiert!"); } if($data === 1){ $this->getServer()->dispatchCommand(new ConsoleCommandSender(), 'warp Farmwelt '.$player->getName()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest zum in die Farmwelt teleportiert!"); } if($data === 2) { $this->Main($player); } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eHier kannst du die in die §3Welten§e, die zu §aCitybuild §egehören joinen!"); $form->addButton("§a§lCitybuild"); $form->addButton("§2§lFarmwelt"); $form->addButton("§l<- Zurück"); $form->sendToPlayer($player);} The Menu function still load the 1st button... Is the UI overloaded (too many functions behind one button) or what i have to do to fix this issue? Edit: Should I finally use the PMMP World functions?
What do you mean by "not load function", does it not display the button or does the button not do anything at all? (you can DM me in German if you have problems finding the right terms) Yes, if you don't, I'm not going to birthday-greet you.
I did it: PHP: public function LoginEvent(PlayerLoginEvent $event){ $event->getPlayer()->teleport($this->getServer()->getDefaultLevel()->getSafeSpawn()); } PHP: public function onCommand(CommandSender $sender, Command $command, string $label, array $args): bool{ $this->Load("Farmwelt"); $this->Load("Citybuild"); if(!($sender instanceof Player)){ $sender->sendMessage("§a§lLobby§r §8» §cFühre diesen Command bitte im Spiel aus!"); }else{ switch($command->getName()){ case "navi": $this->Main($sender); break; case "menu": $this->Menu($sender); } } return true; } public function Menu(Player $player){ $form = new SimpleForm(function (Player $player, $data){ if($data === null){ return; } if($data === 0){ $this->Main($player); } if($data === 1){ $player->sendMessage("§a§lLobby§r §8» §cDieses Feature ist noch in der Dev-Phase!"); } }); $form->setTitle("Menü"); $form->setContent("Was möchtest du machen?"); $form->addButton("Navi"); $form->addButton("Info"); $player->sendForm($form); } public function Main(Player $player){ $form = new SimpleForm(function (Player $player, $data){ switch($data) { case null: return; break; case 0: $this->Citybuild($player); break; case 1: $player->teleport($this->getServer()->getLevelByName("Lobby")->getSafeSpawn()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest in die Lobby teleportiert!"); break; case 2: $this->Maps($player); break; } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eWeitere Spielmodi kommen!"); $form->addButton("§a§lCitybuild"); $form->addButton("§lLobby"); if($player->hasPermission("lobby.navi.leitung") || $player->hasPermission("lobby.navi.builder")){ $form->addButton("§b§lWeitere Welten§r"); } $player->sendForm($form); } public function Maps(Player $player){ $form = new SimpleForm(function (Player $player, $data){ if($player->hasPermission("lobby.navi.leitung")) { switch ($data) { case null: return; break; case 0: $player->teleport($this->getServer()->getLevelByName("BUW")->getSafeSpawn()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "BUW"!'); break; case 1: $player->teleport($this->getServer()->getLevelByName("LobbyAlt")->getSafeSpawn()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyAlt"!'); break; case 2: $player->teleport($this->getServer()->getLevelByName("LobbyBeta")->getSafeSpawn()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyBeta"!'); break; case 3: $this->Main($player); break; } }else{ switch($data){ case null: return; break; case 0: $player->teleport($this->getServer()->getLevelByName("LobbyBeta")->getSafeSpawn()); $player->sendMessage('§a§lLobby§r §8» §aYou should be teleported to Level "LobbyBeta"!'); break; case 1: $this->Main($player); break; } } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eHier kannst du die in die §bDev-§3Welten§e joinen!"); if($player->hasPermission("lobby.navi.leitung")){ $form->addButton("§4§lBUW§r"); $form->addButton("§4§lLobbyAlt§r"); } $form->addButton("§a§lLobbyIdee§r"); $form->addButton("§l<- Zurück"); $player->sendForm($form); } public function Citybuild($player){ $form = new SimpleForm(function (Player $player, $data){ switch($data){ case null: return; break; case 0: $player->teleport($this->getServer()->getLevelByName("Citybuild")->getSafeSpawn()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest zum Citybuild-Spawn teleportiert!"); break; case 1: $player->teleport($this->getServer()->getLevelByName("Farmwelt")->getSafeSpawn()); $player->sendMessage("§a§lLobby§r §8» §aDu wurdest zum in die Farmwelt teleportiert!"); break; case 2: $this->Main($player); break; } }); $form->setTitle("-=- §6§lNavigationsmenü§r -=-"); $form->setContent("§eHier kannst du die in die §3Welten§e, die zu §aCitybuild §egehören joinen!"); $form->addButton("§a§lCitybuild"); $form->addButton("§2§lFarmwelt"); $form->addButton("§l<- Zurück"); $player->sendForm($form); }} But my issue is not fixed D: