pocketmine\command\Command::broadcastCommandMessage PHP Méthode

broadcastCommandMessage() public static méthode

public static broadcastCommandMessage ( pocketmine\command\CommandSender $source, string $message, boolean $sendToSource = true )
$source pocketmine\command\CommandSender
$message string
$sendToSource boolean
    public static function broadcastCommandMessage(CommandSender $source, $message, $sendToSource = true)
    {
        if ($message instanceof TextContainer) {
            $m = clone $message;
            $result = "[" . $source->getName() . ": " . ($source->getServer()->getLanguage()->get($m->getText()) !== $m->getText() ? "%" : "") . $m->getText() . "]";
            $users = $source->getServer()->getPluginManager()->getPermissionSubscriptions(Server::BROADCAST_CHANNEL_ADMINISTRATIVE);
            $colored = TextFormat::GRAY . TextFormat::ITALIC . $result;
            $m->setText($result);
            $result = clone $m;
            $m->setText($colored);
            $colored = clone $m;
        } else {
            $users = $source->getServer()->getPluginManager()->getPermissionSubscriptions(Server::BROADCAST_CHANNEL_ADMINISTRATIVE);
            $result = new TranslationContainer("chat.type.admin", [$source->getName(), $message]);
            $colored = new TranslationContainer(TextFormat::GRAY . TextFormat::ITALIC . "%chat.type.admin", [$source->getName(), $message]);
        }
        if ($sendToSource === true and !$source instanceof ConsoleCommandSender) {
            $source->sendMessage($message);
        }
        foreach ($users as $user) {
            if ($user instanceof CommandSender) {
                if ($user instanceof ConsoleCommandSender) {
                    $user->sendMessage($result);
                } elseif ($user !== $source) {
                    $user->sendMessage($colored);
                }
            }
        }
    }

Usage Example

 public function execute(CommandSender $sender, $currentAlias, array $args)
 {
     if (!$this->testPermission($sender)) {
         return true;
     }
     if (count($args) < 2) {
         $sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
         return true;
     }
     $player = $sender->getServer()->getPlayer($args[0]);
     $item = Item::fromString($args[1]);
     if (!isset($args[2])) {
         $item->setCount($item->getMaxStackSize());
     } else {
         $item->setCount((int) $args[2]);
     }
     if ($player instanceof Player) {
         if ($item->getId() === 0) {
             $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%commands.give.item.notFound", [$args[1]]));
             return true;
         }
         //TODO: overflow
         $player->getInventory()->addItem(clone $item);
     } else {
         $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%commands.generic.player.notFound"));
         return true;
     }
     Command::broadcastCommandMessage($sender, new TranslationContainer("%commands.give.success", [$item->getName() . " (" . $item->getId() . ":" . $item->getDamage() . ")", (string) $item->getCount(), $player->getName()]));
     return true;
 }
All Usage Examples Of pocketmine\command\Command::broadcastCommandMessage