mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-21 00:07:30 +00:00
Fixed /tp
This commit is contained in:
parent
327d183bed
commit
fb6cd22c83
@ -51,6 +51,7 @@ class TeleportCommand extends VanillaCommand{
|
||||
}
|
||||
|
||||
$target = null;
|
||||
$origin = $sender;
|
||||
|
||||
if(count($args) === 1 or count($args) === 3){
|
||||
if($sender instanceof Player){
|
||||
@ -65,30 +66,20 @@ class TeleportCommand extends VanillaCommand{
|
||||
$sender->sendMessage(TextFormat::RED . "Can't find player ".$args[0]);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if(count($args) === 2){
|
||||
$sourcePlayer = Server::getInstance()->getPlayer($args[0]);
|
||||
$targetPlayer = Server::getInstance()->getPlayer($args[1]);
|
||||
if($sourcePlayer === null){
|
||||
$sender->sendMessage(TextFormat::RED . "Can't find player ".$args[0]);
|
||||
return true;
|
||||
} elseif($targetPlayer === null){
|
||||
$sender->sendMessage(TextFormat::RED . "Can't find player ".$args[1]);
|
||||
return true;
|
||||
if(count($args) === 2){
|
||||
$origin = $target;
|
||||
$target = Server::getInstance()->getPlayer($args[1]);
|
||||
if($target === null){
|
||||
$sender->sendMessage(TextFormat::RED . "Can't find player ".$args[1]);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if($targetPlayer->getLevel() === null){
|
||||
$sender->sendMessage(TextFormat::RED . "Teleport failed.");
|
||||
return true;
|
||||
}
|
||||
$sourcePlayer->teleport(new Position($targetPlayer->x,$targetPlayer->y,$targetPlayer->z, $targetPlayer->getLevel()));
|
||||
Command::broadcastCommandMessage($sender, "Teleported ".$sourcePlayer->getName()." to ".$targetPlayer->getName());
|
||||
}
|
||||
|
||||
if(count($args) < 3){
|
||||
$pos = new Position((int) $sender->x, (int) $sender->y, (int) $sender->z, $sender->getLevel());
|
||||
$target->setSpawn($pos);
|
||||
Command::broadcastCommandMessage($sender, "Set ".$target->getName()."'s spawnpoint to ".$pos->x.", ".$pos->y.", ".$pos->z);
|
||||
$pos = new Position($target->x, $target->y, $target->z, $target->getLevel());
|
||||
$origin->teleport($pos);
|
||||
Command::broadcastCommandMessage($sender, "Teleported ".$origin->getName()." to ".$target->getName());
|
||||
return true;
|
||||
}elseif($target->getLevel() !== null){
|
||||
$pos = count($args) === 4 ? 1:0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user