setRecipients() public method

public setRecipients ( array $recipients )
$recipients array
Example #1
0
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $chat = $this->chat;
     $p = $event->getPlayer();
     $n = $p->getName();
     if (!isset($chat[$n])) {
         $chat[$n] = true;
     }
     if (!$chat[$n]) {
         $p->sendMessage("[ChatSwitch] " . ($this->isKorean() ? "당신은 채팅을 받지않습니다." : "You are not receive the chat"));
         $event->setCancelled();
         return;
     }
     $recipients = $event->getRecipients();
     foreach ($recipients as $k => $v) {
         $n = $v->getName();
         if (!isset($chat[$n])) {
             $chat[$n] = true;
         }
         if (!$chat[$n]) {
             unset($recipients[$k]);
         }
     }
     if ($this->chat !== $chat) {
         $this->chat = $chat;
         $this->saveYml();
     }
     $event->setRecipients($recipients);
 }
 public function onChat(PlayerChatEvent $event)
 {
     $this->plugin->event = $event;
     $extensions = $this->getAllExtensions();
     foreach ($extensions as $get) {
         if ($this->plugin->getServer()->getPluginManager()->getPlugin($get) && method_exists($this->plugin->getServer()->getPluginManager()->getPlugin($get), "onRegisterPrefix")) {
             $this->plugin->getServer()->getPluginManager()->getPlugin($get)->onRegisterPrefix();
         }
     }
     // ===========
     //	Format
     // ===========
     $this->plugin->replaceTag("{WORLD}", $event->getPlayer()->getLevel()->getName());
     //Level Tag
     $this->plugin->replaceTag("{PLAYER}", $event->getPlayer()->getName());
     //Player Tag
     $this->plugin->replaceTag("{PREFIX}", $this->plugin->getConfig()->get("prefix"));
     //Prefix Tag
     $this->plugin->replaceTag("{SUFFIX}", $this->plugin->getConfig()->get("suffix"));
     //Suffix Tag
     $this->plugin->replaceTag("{MESSAGE}", $event->getMessage());
     //Message Tag
     //Custom tags
     $tags = new Config($this->plugin->getDataFolder() . "tags.yml", Config::YAML);
     foreach ($tags->getAll() as $tag => $value) {
         $this->plugin->replaceTag("{" . strtoupper($tag) . "}", $value);
     }
     $event->setFormat($this->getFormattedMessage($this->plugin->getConfig()->get("chat-format")));
     // ===========
     //	Player Mute
     // ===========
     $mhut = $event->getRecipients();
     for ($lol = 0; $i < count($mhut); $lol++) {
         if (isset($this->leave[$mhut[$lol]->getName()])) {
             unset($mhut[$lol]);
         }
     }
     $event->setRecipients($mhut);
     $allowChat = $this->plugin->getConfig()->get("disablechat");
     if ($allowChat) {
         $event->setCancelled(true);
         return;
     }
     if (!$allowChat || $allowChat == null) {
         $player = $event->getPlayer();
         $perm = "chatmute";
         if ($player->isPermissionSet($perm)) {
             $event->setCancelled(true);
             return;
         }
         $format = $this->getFormattedMessage($player, $event->getMessage());
         $config_node = $this->plugin->getConfig()->get("enable-formatter");
         if (isset($config_node) and $config_node === true) {
             $event->setFormat($format);
         }
         return;
     }
 }
Example #3
0
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $recipients = $event->getRecipients();
     $p = $event->getPlayer();
     foreach ($recipients as $k => $v) {
         if ($v instanceof Player && !$v->hasPermission("debe.localchat.hear")) {
             if ($p->getLevel() !== $v->getLevel() || $p->distance($v) > $this->distanceChat->get("Local")) {
                 unset($recipients[$k]);
             }
         }
     }
     $event->setRecipients($recipients);
 }
Example #4
0
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $recipients = $event->getRecipients();
     foreach ($recipients as $k => $v) {
         $n = $v->getName();
         if (!isset($this->chat[$n])) {
             $this->chat[$n] = true;
         }
         if (!$this->chat[$n]) {
             unset($recipients[$k]);
         }
     }
     $event->setRecipients($recipients);
 }
 /**
  * @param PlayerChatEvent $event
  *
  * @priority        HIGH
  * @ignoreCancelled true
  */
 public function onChat(PlayerChatEvent $event)
 {
     $gamer = $this->hub->getGamerForPlayer($event->getPlayer());
     if ($gamer !== null) {
         $module = $gamer->getModule();
         if ($module === null) {
             $event->setCancelled();
             $gamer->getPlayer()->sendMessage("You cannot chat until your account is loaded!");
             // TODO translate
             return;
         }
         $event->setRecipients(array_filter($event->getRecipients(), function (Player $player) use($module) {
             $gamer = $this->hub->getGamerForPlayer($player);
             return $gamer instanceof Gamer and $gamer->getModule() === $module;
         }));
     }
 }
Example #6
0
 public function onPlayerChat(PlayerChatEvent $ev)
 {
     $p = $ev->getPlayer();
     $recipients = $ev->getRecipients();
     $array = [];
     foreach ($recipients as $m => $t) {
         if ($t instanceof Player) {
             if ($p->getLevel() !== $t->getLevel()) {
                 $array[] = $m;
                 foreach ($array as $messages) {
                     unset($recipients[$m]);
                     $ev->setRecipients(array_values($recipients));
                 }
             }
         }
     }
 }
Example #7
0
 public function onChat(PlayerChatEvent $event)
 {
     if ($this->getPlugin()->enabled === false) {
         return;
     }
     $player = $event->getPlayer();
     $recipients = [];
     $radius = $this->getPlugin()->getRadiusForPlayer($player);
     if ($radius === false) {
         return;
     }
     foreach ($player->getLevel()->getPlayers() as $target) {
         if ($this->getPlugin()->isWithinRadius($player, $target, $radius)) {
             $recipients[] = $target;
         }
     }
     $event->setRecipients($recipients);
 }
Example #8
0
 public function onChat(PlayerChatEvent $event)
 {
     $player = $event->getPlayer();
     if ($this->isMute() and !$player->isOp()) {
         $event->setCancelled();
         $player->sendMessage(TextFormat::RED . "현재 채팅을 할 수 없습니다.");
     }
     $recipients = [new ConsoleCommandSender()];
     if ($player->isOp()) {
         $recipients = $this->getServer()->getOnlinePlayers();
         array_push($recipients, new ConsoleCommandSender());
     } else {
         foreach ($this->getServer()->getOnlinePlayers() as $target) {
             if ($player->distance($target) <= $this->config['chat-distance'] and $player->getLevel() === $target->getLevel() or $target->isOp()) {
                 array_push($recipients, $target);
             }
         }
     }
     $event->setRecipients($recipients);
 }
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $player = $event->getPlayer();
     $message = $event->getMessage();
     if ($this->getBadWordBlocker()->contains($message, $this->getBadWordBlocker()->getList())) {
         $player->sendMessage($this->getBadWordBlocker()->getConfig()->get("blockmessage"));
         $event->setCancelled(true);
         return;
     }
     if (isset($player->lastwritten)) {
         if ($player->lastwritten == $message) {
             $player->sendMessage($this->getBadWordBlocker()->getConfig()->get("lastwritten"));
             $event->setCancelled(true);
             return;
         }
     }
     if (isset($player->timewritten)) {
         if ($player->timewritten > new \DateTime()) {
             $player->sendMessage($this->getBadWordBlocker()->getConfig()->get("timewritten"));
             $event->setCancelled(true);
             return;
         }
     }
     if (ctype_upper($message)) {
         $player->sendMessage($this->getBadWordBlocker()->getConfig()->get("caps"));
         $event->setCancelled(true);
         return;
     }
     $player->timewritten = new \DateTime();
     $player->timewritten = $player->timewritten->add(new \DateInterval("PT" . $this->getBadWordBlocker()->getConfig()->get("waitingtime") . "S"));
     $player->lastwritten = $message;
     $recipients = $event->getRecipients();
     $newrecipients = array();
     foreach ($recipients as $recipient) {
         if (!isset($recipient->nochat)) {
             $newrecipients[] = $recipient;
         }
     }
     $event->setRecipients($newrecipients);
 }
 public function onPlayerChat(PlayerChatEvent $event)
 {
     if ($this->plugin->getConfig()->getAll()["block-chat"]) {
         if (!ServerAuth::getAPI()->isPlayerRegistered($event->getPlayer()->getName()) || !ServerAuth::getAPI()->isPlayerAuthenticated($event->getPlayer())) {
             $event->setCancelled(true);
             //Cancel message
         }
         $recipients = $event->getRecipients();
         for ($i = 0; $i < count($recipients); $i++) {
             $player = $recipients[$i];
             if ($player instanceof Player) {
                 if (!ServerAuth::getAPI()->isPlayerAuthenticated($player)) {
                     $message[] = $i;
                     foreach ($message as $messages) {
                         unset($recipients[$i]);
                         $event->setRecipients(array_values($recipients));
                     }
                 }
             }
         }
     }
 }
Example #11
0
 public function onChat(PlayerChatEvent $ev)
 {
     if ($ev->isCancelled()) {
         return;
     }
     $player = $ev->getPlayer();
     if (!$this->cfg["settings"]["chat"]) {
         $ev->setCancelled();
         $player->sendMessage(TextFormat::RED . "[YouChat] Chat has been disabled!");
         return;
     }
     $n = trim(strtolower($player->getName()));
     $prefix = $this->cfg["settings"]["prefix"];
     if (isset($this->players[$n])) {
         if ($this->players[$n]["prefix"]) {
             $prefix = $this->players[$n]["prefix"];
         }
         if ($this->players[$n]["mute"]) {
             $ev->setCancelled();
             $player->sendMessage(TextFormat::RED . "[YouChat] You have been muted from chat!");
             return;
         }
         if ($this->players[$n]["pause"]) {
             $ev->setCancelled();
             $player->sendMessage(TextFormat::RED . "[YouChat] You have paused chat!");
             return;
         }
     }
     $recvr = [];
     foreach ($ev->getRecipients() as $to) {
         $m = strtolower($to->getName());
         if (isset($this->players[$m])) {
             if ($this->players[$m]["pause"]) {
                 continue;
             }
         }
         $recvr[] = $to;
     }
     $ev->setRecipients($recvr);
     $vars = ["{YouChat}" => $this->getDescription()->getFullName(), "{player}" => $player->getName(), "{displayname}" => "{%0}", "{nick}" => $player->getDisplayName(), "{world}" => $player->getLevel()->getName(), "{message}" => "{%1}", "{prefix}" => $prefix, "{BLACK}" => TextFormat::BLACK, "{DARK_BLUE}" => TextFormat::DARK_BLUE, "{DARK_GREEN}" => TextFormat::DARK_GREEN, "{DARK_AQUA}" => TextFormat::DARK_AQUA, "{DARK_RED}" => TextFormat::DARK_RED, "{DARK_PURPLE}" => TextFormat::DARK_PURPLE, "{GOLD}" => TextFormat::GOLD, "{GRAY}" => TextFormat::GRAY, "{DARK_GRAY}" => TextFormat::DARK_GRAY, "{BLUE}" => TextFormat::BLUE, "{GREEN}" => TextFormat::GREEN, "{AQUA}" => TextFormat::AQUA, "{RED}" => TextFormat::RED, "{LIGHT_PURPLE}" => TextFormat::LIGHT_PURPLE, "{YELLOW}" => TextFormat::YELLOW, "{WHITE}" => TextFormat::WHITE, "{OBFUSCATED}" => TextFormat::OBFUSCATED, "{BOLD}" => TextFormat::BOLD, "{STRIKETHROUGH}" => TextFormat::STRIKETHROUGH, "{UNDERLINE}" => TextFormat::UNDERLINE, "{ITALIC}" => TextFormat::ITALIC, "{RESET}" => TextFormat::RESET];
     if (($kr = $this->getServer()->getPluginManager()->getPlugin("KillRate")) !== null) {
         $vars["{kills}"] = $kr->getScore($player, "player");
         $vars["{points}"] = $kr->getScore($player, "points");
     }
     $ev->setFormat(strtr($this->cfg["settings"]["chat-format"], $vars));
 }
Example #12
0
 /**
  * @param PlayerChatEvent $e
  *
  * @priority LOW
  */
 public function onChat(PlayerChatEvent $e)
 {
     $p = $e->getPlayer();
     if ($this->inArena($p)) {
         $e->setMessage(str_replace(["%PLAYER", "%MESSAGE"], [$p->getDisplayName(), $e->getMessage()], SurvivalGames::$cfg["chat_format"]));
         $e->setRecipients($this->getPlayers());
     } else {
         $e->setRecipients(array_diff($this->getPlayers(), $e->getRecipients()));
     }
 }
Example #13
0
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $playerInGame = false;
     $InGamePlayers = [];
     $msg = $event->getMessage();
     $player = $event->getPlayer();
     //$this->plugin->log ( " handlePlayerInGameChat - | " . $player->getName () . "| msg: " . $msg );
     if (!empty($player) && !empty($msg)) {
         foreach ($this->plugin->gameLevelManager->levels as &$lv) {
             if ($lv instanceof GameLevelModel) {
                 if (isset($lv->joinedPlayers[$player->getName()])) {
                     $message = TextFormat::GRAY . "[HG-" . TextFormat::RED . $lv->type . TextFormat::GRAY . "]" . TextFormat::YELLOW . " > " . TextFormat::WHITE . $msg;
                     $event->setMessage($message);
                     $event->setRecipients($lv->joinedPlayers);
                     $playerInGame = true;
                     $this->plugin->log(" handlePlayerInGameChat - in-game-message " . $msg . " send to " . count($lv->joinedPlayers));
                 }
                 if (count($lv->joinedPlayers) > 0) {
                     $InGamePlayers = array_merge($lv->joinedPlayers, $InGamePlayers);
                     $this->plugin->log(" handlePlayerInGameChat - merged " . $lv->name . " players " . count($lv->joinedPlayers));
                 }
             }
         }
         if (!$playerInGame) {
             $filteredplayers = array_diff($this->plugin->getServer()->getOnlinePlayers(), $InGamePlayers);
             $this->plugin->log(" handlePlayerInGameChat - not-in-game-message " . $msg . " send to " . count($filteredplayers));
             $event->setRecipients($filteredplayers);
         }
     }
 }
Example #14
0
 public function onPlayerChat(PlayerChatEvent $event)
 {
     if ($this->plugin->getConfig()->getAll()["block-chat"]) {
         if (!ServerAuth::getAPI()->isPlayerAuthenticated($event->getPlayer())) {
             $event->setCancelled(true);
             //Cancel message
         }
         $recipients = $event->getRecipients();
         foreach ($recipients as $key => $recipient) {
             if ($recipient instanceof Player) {
                 if (!ServerAuth::getAPI()->isPlayerAuthenticated($recipient)) {
                     unset($recipients[$key]);
                 }
             }
         }
         $event->setRecipients($recipients);
     }
 }
 public function onChat(PlayerChatEvent $ev)
 {
     //echo __METHOD__.",".__LINE__."\n";//##DEBUG
     if ($ev->isCancelled()) {
         return;
     }
     $p = $ev->getPlayer();
     if ($p->hasPermission("gb.cmd.togglechat.excempt")) {
         return;
     }
     // Can always chat!
     if (!$this->chat) {
         $p->sendMessage(mc::_("Chat has been globally disabled!"));
         $ev->setCancelled();
         return;
     }
     if ($this->getState($p, false)) {
         $p->sendMessage(mc::_("You have chat disabled!  Use /chat-on"));
         $ev->setCancelled();
         return;
     }
     $recvr = [];
     foreach ($ev->getRecipients() as $to) {
         if ($this->getState($to, false)) {
             continue;
         }
         $recvr[] = $to;
     }
     $ev->setRecipients($recvr);
 }
Example #16
0
 public function onChat(PlayerChatEvent $e)
 {
     if ($e->isCancelled()) {
         return;
     }
     $pw = $e->getPlayer();
     // Non players are handled normally
     if (!$pw instanceof Player) {
         return;
     }
     $msg = $e->getMessage();
     if (substr($msg, 0, 1) == ":") {
         // This messages goes to everybody on the server...
         // no need to do much...
         if (!$this->access($pw, "floatchat.broadcast.server")) {
             $e->setCancelled();
             return;
         }
         $e->setMessage(substr($msg, 1));
         return;
     }
     if (substr($msg, 0, 1) == ".") {
         $target = [];
         if (!$this->access($pw, "floatchat.broadcast.level")) {
             $e->setCancelled();
             return;
         }
         // Send this message to everybody on this level
         $e->setMessage(substr($msg, 1));
         foreach ($e->getRecipients() as $pr) {
             if ($pr instanceof Player) {
                 if (!$pr->hasPermission("floatchat.spy") && $pr->getLevel() != $pw->getLevel()) {
                     continue;
                 }
             }
             $target[] = $pr;
         }
         $e->setRecipients($target);
         return;
     }
     $target = [];
     foreach ($e->getRecipients() as $pr) {
         if ($pr instanceof Player) {
             if (!$pr->hasPermission("floatchat.spy") && $pr != $pw) {
                 continue;
             }
         }
         $target[] = $pr;
     }
     $e->setRecipients($target);
     echo __METHOD__ . "," . __LINE__ . "\n";
     //##DEBUG
     $n = self::iName($pw);
     if (!isset($this->particles[$n])) {
         $this->particles[$n] = [new FloatingTextParticle($pw, ""), null, 0, ""];
     }
     $p = $this->particles[$n][0];
     $msg = $e->getMessage();
     if ($p->isInvisible()) {
         $this->particles[$n][3] = [$msg];
         $p->setText(TextFormat::YELLOW . $msg);
         $p->setInvisible(false);
     } else {
         $this->particles[$n][3][] = $msg;
         while (count($this->particles[$n][3]) > 3) {
             array_shift($this->particles[$n][3]);
         }
         $p->setText(TextFormat::YELLOW . implode("\n", $this->particles[$n][3]));
     }
     $p->x = $pw->getX();
     $p->y = $pw->getY() + 2 + count($this->particles[$n][3]) * 0.5;
     $p->z = $pw->getZ();
     $this->particles[$n][1] = $pw->getLevel();
     $this->particles[$n][2] = time() + $this->timeout;
     $pw->getLevel()->addParticle($p);
 }
 public function onPlayerChat(PlayerChatEvent $event)
 {
     $Player = $event->getPlayer();
     $Level = $Player->getLevel();
     $Message = $event->getMessage();
     if (!$this->plugin->game || $this->plugin->game->level_name != $Level->getFolderName()) {
         return;
     }
     if ($Team = $this->plugin->game->getTeamByPlayer($Player)) {
         $event->setFormat("BedWars: <" . $this->plugin->teamColor($Team->name) . "%s" . TextFormat::RESET . ">: %s");
         $prefix = mb_strtolower($this->plugin->getMessage("bedwars.sayall.prefix"));
         if (mb_substr(mb_strtolower($Message), 0, mb_strlen($prefix)) == $prefix) {
             $event->setMessage(mb_substr($Message, mb_strlen($prefix)));
             return;
         }
         $Players = $Level->getPlayers();
         foreach ($this->plugin->game->Teams as $Team2) {
             if ($Team->name != $Team2->name) {
                 foreach ($Team2->Players as $Player2) {
                     foreach ($Players as $i => $Player3) {
                         if ($Player2->getName() == $Player3->getName()) {
                             array_splice($Players, $i, 1);
                         }
                     }
                 }
             }
         }
         $event->setRecipients($Players);
     }
 }
Example #18
0
 public function h_onChat(PlayerChatEvent $event)
 {
     $event->setRecipients([]);
     if ($this->spamDetector->onMessage($event->getMessage())) {
         if ($this->isChatOn() and !$this->isIgnoringChannel($this->writeToChannel->getLowName())) {
             $this->writeToChannel->send($this, $event->getMessage());
         } else {
             $this->tell("You cannot send chat to a channel you are ignoring or with chat turned off!");
         }
     }
 }
Example #19
0
 public function onChat(PlayerChatEvent $ev)
 {
     //echo __METHOD__.",".__LINE__."\n";//##DEBUG
     if ($ev->isCancelled()) {
         return;
     }
     $p = $ev->getPlayer();
     if (!$this->chat) {
         $p->sendMessage(mc::_("Chat has been globally disabled!"));
         $ev->setCancelled();
         return;
     }
     if ($this->getState("muted", $p, false)) {
         $p->sendMessage(mc::_("You have been muted!"));
         $ev->setCancelled();
         return;
     }
     if (!$this->getState("chat", $p, true)) {
         $p->sendMessage(mc::_("Chat is disabled for you"));
         $ev->setCancelled();
         return;
     }
     $recvr = [];
     foreach ($ev->getRecipients() as $to) {
         if ($this->getState("chat", $to, true)) {
             $recvr[] = $to;
         }
     }
     $ev->setRecipients($recvr);
 }