pocketmine\command\defaults\BanIpCommand::execute PHP Метод

execute() публичный Метод

public execute ( pocketmine\command\CommandSender $sender, $currentAlias, array $args )
$sender pocketmine\command\CommandSender
$args array
    public function execute(CommandSender $sender, $currentAlias, array $args)
    {
        if (!$this->testPermission($sender)) {
            return true;
        }
        if (count($args) === 0) {
            $sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
            return false;
        }
        $value = array_shift($args);
        $reason = implode(" ", $args);
        if (preg_match("/^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\$/", $value)) {
            $this->processIPBan($value, $sender, $reason);
            Command::broadcastCommandMessage($sender, new TranslationContainer("commands.banip.success", [$value]));
        } else {
            if (($player = $sender->getServer()->getPlayer($value)) instanceof Player) {
                $this->processIPBan($player->getAddress(), $sender, $reason);
                Command::broadcastCommandMessage($sender, new TranslationContainer("commands.banip.success.players", [$player->getAddress(), $player->getName()]));
            } else {
                $sender->sendMessage(new TranslationContainer("commands.banip.invalid"));
                return false;
            }
        }
        return true;
    }