Exemple #1
0
 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     switch (strtolower($command->getName())) {
         case "vote":
             if (isset($args[0]) && strtolower($args[0]) == "reload") {
                 if (Utils::hasPermission($sender, "votereward.command.reload")) {
                     $this->reload();
                     $sender->sendMessage("[VoteReward] All configurations have been reloaded.");
                     break;
                 }
                 $sender->sendMessage("You do not have permission to use this subcommand.");
                 break;
             }
             if (!$sender instanceof Player) {
                 $sender->sendMessage("This command must be used in-game.");
                 break;
             }
             if (!Utils::hasPermission($sender, "votereward.command.vote")) {
                 $sender->sendMessage("You do not have permission to use this command.");
                 break;
             }
             if (in_array(strtolower($sender->getName()), $this->queue)) {
                 $sender->sendMessage("[VoteReward] Slow down! We're already checking lists for you.");
                 break;
             }
             $this->queue[] = strtolower($sender->getName());
             $requests = [];
             foreach ($this->lists as $list) {
                 if (isset($list["check"]) && isset($list["claim"])) {
                     $requests[] = new ServerListQuery($list["check"], $list["claim"]);
                 }
             }
             $query = new RequestThread(strtolower($sender->getName()), $requests);
             $this->getServer()->getScheduler()->scheduleAsyncTask($query);
             break;
         default:
             $sender->sendMessage("Invalid command.");
             break;
     }
     return true;
 }