本文整理汇总了PHP中pocketmine\Player::distance方法的典型用法代码示例。如果您正苦于以下问题:PHP Player::distance方法的具体用法?PHP Player::distance怎么用?PHP Player::distance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pocketmine\Player
的用法示例。
在下文中一共展示了Player::distance方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: broadcastMessage
/**
*
* @param string $message
* @param Player $sender
*/
public function broadcastMessage($message, $sender = null)
{
//콘솔에 메세지 출력
$this->getLogger()->info($message);
//접속한 플레이어들에게 전달
foreach ($this->getServer()->getOnlinePlayers() as $player) {
//강제 근거리 채팅 모드이거나 해당 플레이어가 근거리 채팅 모드를 켠 경우
if ($this->getConfig()->get("local-chat-only", false) or isset($this->db[$player->getName()]["local-chat"]) and $this->db[$player->getName()]["local-chat"] == true) {
//@all을 넣어서 확성기를 쓴 경우나 해당 플레이어를 호명한 경우는 멀거나 다른 서버에서 말했어도 반드시 전달됨
if (strpos($message, "@" . $player->getName()) === false and strpos($message, "@all") !== 0) {
//멀거나 다른 서버에서 말한 경우
if ($sender === null or $sender->distance($player) > intval($this->getConfig()->get("local-chat-distance", 50))) {
continue;
}
}
}
//받아라 얍
$player->sendMessage($message);
}
}
示例2: broadcastMessage
/**
*
* @param string $message
* @param Player $sender
*/
public function broadcastMessage($message, $sender = null)
{
$this->getLogger()->info($message);
foreach ($this->getServer()->getOnlinePlayers() as $player) {
if (isset($this->db[$player->getName()]["local-chat"]) and $this->db[$player->getName()]["local-chat"] == true) {
if ($sender === null or $sender->distance($player) > self::LOCAL_CHAT_DISTANCE) {
if (!isset(explode($player->getName(), $message)[1])) {
continue;
}
}
}
$player->sendMessage($message);
}
}