public function broadcast($message, $permissions)
{
/** @var CommandSender[] $recipients */
$recipients = [];
foreach (explode(";", $permissions) as $permission) {
foreach ($this->pluginManager->getPermissionSubscriptions($permission) as $permissible) {
if ($permissible instanceof CommandSender and $permissible->hasPermission($permission)) {
$recipients[spl_object_hash($permissible)] = $permissible;
// do not send messages directly, or some might be repeated
}
}
}
foreach ($recipients as $recipient) {
$recipient->sendMessage($message);
}
return count($recipients);
}