本文整理汇总了PHP中pocketmine\command\CommandSender::distanceSquared方法的典型用法代码示例。如果您正苦于以下问题:PHP CommandSender::distanceSquared方法的具体用法?PHP CommandSender::distanceSquared怎么用?PHP CommandSender::distanceSquared使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pocketmine\command\CommandSender
的用法示例。
在下文中一共展示了CommandSender::distanceSquared方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: onCommand
public function onCommand(CommandSender $sender, Command $command, $label, array $args)
{
if (strtolower($command->{$getName}()) == "closest") {
if ($sender instanceof Position) {
// if the sender is a position, for example a player
$closest = null;
$lastSquare = -1;
foreach ($sender->getLevel()->getPlayers() as $p) {
// for every player in the sender's world
if ($p !== $sender) {
$square = $sender->distanceSquared($p);
// get the square of the distance between the sender and the currently checking player
// use distanceSquared() because it is faster than distance()
if ($lastSquare === -1 or $lastSquare > $square) {
// this is the so far closest player
$closest = $p;
$lastSquare = $square;
}
}
}
if ($sender instanceof Player) {
$sender->sendMessage("The closest player to you is" . $closest);
}
}
}
}