当前位置: 首页>>代码示例>>PHP>>正文


PHP CommandSender::teleport方法代码示例

本文整理汇总了PHP中pocketmine\command\CommandSender::teleport方法的典型用法代码示例。如果您正苦于以下问题:PHP CommandSender::teleport方法的具体用法?PHP CommandSender::teleport怎么用?PHP CommandSender::teleport使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pocketmine\command\CommandSender的用法示例。


在下文中一共展示了CommandSender::teleport方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     if ($player->hasPermission("signstats.commands.stats")) {
         switch ($command->getName()) {
             case 'sethouse':
                 $this->config->player[$sender->getName()]['house']['x'] = $sender->x;
                 $this->config->player[$sender->getName()]['house']['y'] = $sender->y;
                 $this->config->player[$sender->getName()]['house']['z'] = $sender->z;
                 $sender->sendMessage(TextFormat::GREEN . '[EasyHouse] House set.');
                 break;
             case 'delhouse':
                 unset($this->config->player[$sender->getName()]['house']);
                 $sender->sendMessage(TextFormat::RED . '[EasyHouse] house Deleted');
                 break;
             case 'house':
                 if (isset($this->config->player[$sender->getName()]['house'])) {
                     $this->viellePosition[$sender->getName()] = array($sender->x, $sender->y, $sender->z);
                     $sender->teleport(new Vector3($this->config->player[$sender->getName()]['house']['x'], $this->config->player[$sender->getName()]['house']['y'], $this->config->player[$sender->getName()]['house']['z']));
                     $sender->sendMessage(TextFormat::GREEN . '[EasyHouse] Teleported.');
                 } else {
                     $sender->sendMessage(TextFormat::RED . 'House is not set.');
                 }
                 break;
         }
     } else {
         $player->sendMessage(TextFormat::RED . "[EasyHouse] You don't have permissions!");
     }
 }
开发者ID:AndreyNazarchuk,项目名称:Collection-Plugins-PocketMine-Prax,代码行数:28,代码来源:EasyHouse.php

示例2: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     if ($sender instanceof Player) {
         if (count($args) == 0) {
             $sender->sendMessage(TextFormat::RED . "Not enough arguments.");
             return;
         }
         if (count($args) == 1) {
             if ($this->getServer()->getPlayer($args[0])) {
                 $location = $this->getServer()->getPlayer($args[0])->getLocation();
                 $sender->teleport($location);
                 $sender->sendMessage(TextFormat::BLUE . "[Server] You have teleported to {$args['0']}");
                 return;
             } else {
                 $sender->sendMessage(TextFormat::RED . "[Server] That player isn't online!");
                 return;
             }
         }
         if (count($args) == 2) {
             if ($this->getServer()->getPlayer($args[0]) & getLocation() && $this->getServer()->getPlayer($args[1])) {
                 $location2 = $this->getServer()->getPlayer($args[1])->getLocation();
                 $player1 = $this->getServer()->getPlayer($args[0]);
                 $player2 = $this->getServer()->getPlayer($args[1]);
                 $player1->teleport($location2);
                 $player1->sendMessage(TextFormat::BLUE . "[Server] You have teleported to {$args['1']}");
                 return;
             }
         }
     }
 }
开发者ID:0-DevMatthew-0,项目名称:RandomCommandsPlugin,代码行数:30,代码来源:teleport.php

示例3: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $sub)
 {
     $mm = "[TeleportView] ";
     if ($sender->getName() == "CONSOLE") {
         $sender->sendMessage($mm . ($this->isKorean() ? "게임내에서만 사용가능합니다." : "Please run this command in-game"));
         return true;
     }
     $yaw = $sender->getYaw();
     $ptch = $sender->getPitch();
     $yawS = -sin($yaw / 180 * M_PI);
     $yawC = cos($yaw / 180 * M_PI);
     $ptchS = -sin($ptch / 180 * M_PI);
     $ptchC = cos($ptch / 180 * M_PI);
     $x = $sender->getX();
     $y = $sender->getY() + $sender->getEyeHeight();
     $z = $sender->getZ();
     $l = $sender->getLevel();
     for ($f = 0; $f < 50; ++$f) {
         $x += $yawS * $ptchC;
         $y += $ptchS;
         $z += $yawC * $ptchC;
         $b = $l->getBlock(new Position($x, $y, $z, $l));
         if ($b->isSolid) {
             $sender->teleport(new Position($x - $yawS * $ptchC, $y - $ptchS + 0.1, $z - $yawC * $ptchC, $l));
             $f = true;
         }
     }
     if (!isset($f)) {
         $sender->sendMessage($mm . ($this->isKorean() ? "타겟 블럭이 너무 멉니다." : "TargetBlock is too far"));
     }
     return true;
 }
开发者ID:stoastye85,项目名称:Plugins,代码行数:32,代码来源:TeleportView.php

示例4: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $sub)
 {
     $mm = "[TeleportView] ";
     if ($sender->getName() == "CONSOLE") {
         $sender->sendMessage($mm . ($this->isKorean() ? "게임내에서만 사용가능합니다." : "Please run this command in-game"));
         return true;
     }
     $yaw = $sender->getYaw();
     $pitch = $sender->getPitch();
     $yawS = -sin($yaw / 180 * M_PI);
     $yawC = cos($yaw / 180 * M_PI);
     $pitchS = -sin($pitch / 180 * M_PI);
     $pitchC = cos($pitch / 180 * M_PI);
     $x = $sender->x;
     $y = $sender->y + $sender->getEyeHeight();
     $z = $sender->z;
     $l = $sender->getLevel();
     $ps = $this->getServer()->getOnlinePlayers();
     for ($f = 0; $f < 50; ++$f) {
         $x += $yawS * $pitchC;
         $y += $pitchS;
         $z += $yawC * $pitchC;
         $b = $l->getBlock(new Position($x, $y, $z, $l));
         if ($b->isSolid()) {
             break;
         }
         if ($f >= 50) {
             $sender->sendMessage($mm . ($this->isKorean() ? "타겟 블럭이 너무 멉니다." : "TargetBlock is too far"));
             return true;
         }
     }
     $sender->teleport(new Position($x, $y, $z, $sender->getLevel()));
     return true;
 }
开发者ID:Skull3x,项目名称:MineBlock,代码行数:34,代码来源:TeleportView.php

示例5: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     if (!$sender instanceof Player) {
         $sender->sendMessage("This command must be used in-game.");
         return true;
     }
     switch (strtolower($command->getName())) {
         case "shop":
             $sender->teleport(new Location(-280.279358, 66.00000300000001, 368.750275, 179, -1, $this->getServer()->getLevelByName("Gorzen")));
             break;
         case "pvp":
             $sender->teleport(new Location(1701.638306, 12.663271, -1027.24585, 179, -1, $this->getServer()->getLevelByName("PvP")));
             break;
         default:
             $sender->sendMessage("Invalid command.");
             break;
     }
     return true;
 }
开发者ID:xHFx,项目名称:TeleHub-custom,代码行数:19,代码来源:Main.php

示例6: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     if (strtolower($command->getName()) === "spawnport") {
         if (!$sender instanceof Player) {
             $sender->sendMessage(TextFormat::AQUA . "Please run this command in game");
             return true;
         }
         $worldspawn = $sender->getLevel()->getSpawnLocation();
         $sender->teleport($worldspawn);
         $sender->sendMessage(TextFormat::AQUA . "Teleported to WorldSpawn");
     }
     return true;
 }
开发者ID:ecoron,项目名称:SpawnPort,代码行数:13,代码来源:SpawnPort.php

示例7: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $args)
 {
     if (strtolower($cmd->getName()) === "spawn" && $this->main->getConfig()->get("Spawn-Command-Enabled") === true) {
         if ($sender instanceof Player) {
             if ($sender->hasPermission("morecommands.command.spawn")) {
                 $sender->sendMessage($this->main->getConfig()->get("Teleport-to-Spawn-Message"));
                 $sender->teleport($this->main->getServer()->getDefaultLevel()->getSpawnLocation());
                 return true;
             } else {
                 $sender->sendMessage(TextFormat::RED . "You don't have permissions to use this command.");
             }
         } else {
             $sender->sendMessage(TextFormat::RED . "Please use this command in-game!");
             return true;
         }
     }
 }
开发者ID:Pocket-GAD,项目名称:PocketMine-MP-Plugins,代码行数:17,代码来源:Spawn.php

示例8: onCommand

 public function onCommand(CommandSender $player, Command $cmd, $label, array $args)
 {
     switch ($cmd->getName()) {
         case "bw":
             if ($player->isOp()) {
                 if ($this->mode == 0 and $args[0] == "addarena") {
                     $this->mode = 1;
                     $player->sendMessage(TextFormat::YELLOW . "Use /bw add [worldname] to add an arena");
                 } elseif ($this->mode == 1 and $args[0] == "add") {
                     if (file_exists($this->getServer()->getDataPath() . "/worlds/" . $args[0])) {
                         if (!$this->getServer()->getLevelByName($args[1]) instanceof Level) {
                             $this->getServer()->loadLevel($args[1]);
                         }
                         $spawn = $this->getServer()->getLevelByName($args[1])->getSafeSpawn();
                         $this->getServer()->getLevelByName($args[1])->loadChunk($spawn->x, $spawn->z);
                         if ($player instanceof Player) {
                             $player->teleport($spawn);
                         }
                         $this->arenaname = $args[1];
                         $player->sendMessage(TextFormat::GREEN . "You have successfully entered the arena! Now you have to set 4 bases");
                         $player->sendMessage(TextFormat::GOLD . "Touch" . TextFormat::BLUE . "Team blue" . TextFormat::GOLD . "'s bed now");
                         $this->mode = 2;
                     } else {
                         $player->sendMessage(TextFormat::RED . "This is not a valid name!");
                     }
                 } elseif ($this->mode == 0 and $args[0] == "regsign" and isset($args[1])) {
                     if (file_exists($this->getDataFolder() . "/arenas/" . $args[1])) {
                         $player->sendMessage(TextFormat::YELLOW . "You are about to register a sign for the arena {$args['1']}. Tap a sign to activate it!");
                         $this->regname = $args[1];
                         $this->mode = 10;
                     } else {
                         $player->sendMessage(TextFormat::RED . "This is not a valid name!");
                     }
                 } elseif ($this->mode == 0 and $args[0] == "regsign") {
                     $player->sendMessage(TextFormat::YELLOW . "Usage: /bw regsign [worldname]");
                 } elseif ($args[0] == "cancel") {
                     $this->mode = 0;
                     $player->sendMessage(TextFormat::GREEN . "Cancelled!");
                 }
             }
             return true;
     }
     return true;
 }
开发者ID:ChiefArtz,项目名称:BedWars,代码行数:44,代码来源:Main.php

示例9: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $args)
 {
     $cfg = $this->getConfig();
     $defgm = $cfg->get("Default-Game-Mode");
     $tptosp = $cfg->get("Teleport-To-Spawn");
     if (isset($args[0])) {
         switch ($args[0]) {
             case "on":
                 $sender->setGamemode(3);
                 $sender->sendMessage(TextFormat::GREEN . "You are now a Spectator!");
                 $this->getLogger()->info($sender->getName() . " Has changed his gamemode to Spectator");
                 return true;
             case "off":
                 $sender->setGamemode($defgm);
                 $sender->sendMessage(TextFormat::YELLOW . "You are no longer Espectator");
                 if ($tptosp === true) {
                     $sender->teleport($this->getServer()->getDefaultLevel()->getSpawn());
                 }
                 return true;
         }
     }
     return false;
 }
开发者ID:TonyDroidd,项目名称:Spectator,代码行数:23,代码来源:Main.php

示例10: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $args)
 {
     switch ($cmd->getName()) {
         case "skywarshowto":
             if ($sender->hasPermission("skywars.command.howto") or $sender->hasPermission("skywars.command") or $sender->hasPermission("skywars")) {
                 $sender->sendMessage("----How To Play skywars----");
                 $sender->sendMessage("/sk play = start a game");
                 $sender->sendMessage("/sk exit = exit from a game");
                 $sender->sendMessage("/sk stat [player] = get a player stats");
                 $sender->sendMessage("/sk skiptime = skip the waiting time");
                 return true;
             } else {
                 $sender->sendMessage("You haven't the permission to run this command");
             }
         case "skywars":
         case "sw":
             //same as setting aliases in plugin.yml, both cmds (skywars & sw) are usable
         //same as setting aliases in plugin.yml, both cmds (skywars & sw) are usable
         case "sk":
             switch ($args[0]) {
                 case "play":
                     if ($sender->hasPermission("skywars.command.play") or $sender->hasPermission("skywars.command") or $sender->hasPermission("skywars")) {
                         if ($this->aplayers >= $this->getConfig()->get('neededplayers') and $this->skywarsstarted == false) {
                             //if players in the world are more or equal as the max players
                             $sender->sendMessage("The game is full");
                             // game full
                             return true;
                         } elseif ($this->aplayers < $this->getConfig()->get('neededplayers') and $this->skywarsstarted == false) {
                             //if player number is less than the max.
                             $spawn = $this->getConfig()->get('spawns')[$this->aplayers];
                             //no need to do + 1 on this, because arrays start counting form 0 // get the correct spawn place
                             $sender->teleport(new Position($spawn[0], $spawn[1], $spawn[2], $this->getServer()->getLevelByName($this->getConfig()->get('aworld'))));
                             //teleport to it
                             $this->aplayers = $this->aplayers + 1;
                             //then add a player to the array
                             $sender->sendMessage("You have been teleported to the game world.");
                             if ($this->aplayers == $this->getConfig()->get('neededplayers')) {
                                 //if the players became the same as neededplayers
                                 $this->startGame($this->getConfig() > get('aworld'));
                                 //start the game
                             }
                             return true;
                         } elseif ($this->skywarsstarted == true) {
                             //if the game is already started
                             $sender->sendMessage("The game is already started");
                             return true;
                         }
                     } else {
                         $sender->sendMessage("You haven't the permission to run this command.");
                         return true;
                     }
                     break;
                 case "exit":
                     if ($sender->hasPermission("skywars.command.exit") or $sender->hasPermission("skywars.command") or $sender->hasPermission("skywars")) {
                         if ($sender->getLevel()->getName() == $this->getConfig()->get('aworld')) {
                             //if the level of the sender is a skywars one
                             $this->aplayers = $this->aplayers - 1;
                             //remove 1 to the array
                             $sender->teleport($this->getServer()->getLevelByName($this->getConfig() > get('lobby'))->getSafeSpawn());
                             //teleport to the lobby
                             $sender->sendMessage("You left the game.");
                             if ($this->aplayers <= 1) {
                                 //if only 1 player is left
                                 foreach ($this->getServer()->getLevelByName($this->getConfig()->get('aworld'))->getPlayers() as $p) {
                                     //detects the winner
                                     if ($p->getGameMode() == 0) {
                                         $p->sendMessage("You won the match!");
                                         $p->sendMessage("The game has finished, you will be teleported to the lobby.");
                                         $p->teleport($this->getServer()->getLevelByName($this->config->get('lobby'))->getSafeSpawn());
                                         //teleport to the lobby
                                         $points = $this->points->get($p)[2] + $this->getConfig()->get('points-per-match');
                                         //get points and add
                                         $deaths = $this->points->get($player)[0];
                                         //get the victim's deaths, add one and store in a variable
                                         $kills = $this->points->get($player)[1];
                                         //get the players kills and store in a var
                                         $this->getConfig()->set($p, array($deaths, $kills, $points));
                                     } else {
                                         $p->sendMessage("The match has finished, thanks for watching.");
                                         $p->teleport($this->getServer()->getLevelByName($this->getConfig()->get('lobby'))->getSafeSpawn());
                                         $p->setGameMode(0);
                                     }
                                     $this->stopGame($this->getConfig()->get('aworld'));
                                     //stop the game
                                 }
                             }
                             return true;
                         } else {
                             $sender->sendMessage("You are not in the SkyWars world.");
                             return true;
                         }
                     } else {
                         $sender->sendMessage("You haven't the permission to run this command.");
                         return true;
                     }
                     break;
                 case "stat":
                     if ($sender->hasPermission("skywars.command.stat") or $sender->hasPermission("skywars.command") or $sender->hasPermission("skywars")) {
                         if (!isset($args[1])) {
                             $player = $sender->getName();
//.........这里部分代码省略.........
开发者ID:EmreTr1,项目名称:SkyWarsForPE,代码行数:101,代码来源:Main.php

示例11: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     $this->getLogger()->info("test");
     if ($command->getName() == "pk") {
         if ($args[0] == "join") {
             if (isset($args[1])) {
                 if (isset($this->arenas[strtolower($args[1])]) and substr(strtolower($args[1]), -5) != "_race") {
                     if (!isset($this->activeplayers[$sender->getName()])) {
                         $this->activeplayers[$sender->getName()] = array("current-map" => strtolower($args[1]), "last-set" => 0, "micro-seconds" => 0, "active" => false, "current-checkpoint" => 0);
                         $sender->teleport($this->arenas[strtolower($args[1])]->getStartPosition());
                         $sender->setRotation($this->arenas[strtolower($args[1])]->getStartYaw(), $sender->getPitch());
                         $sender->sendMessage("§cYou have started the map '§b" . $this->arenas[strtolower($args[1])]->getMapName() . "§c'.");
                     } else {
                         $sender->sendMessage("§cYou are currently still playing a different map\n§cUse §b/pk leave§c to leave this map.");
                     }
                 } else {
                     $sender->sendMessage("§cThe map '§b" . strtolower($args[1]) . "§c' doesn't exist.");
                 }
             } else {
                 $sender->sendMessage("§cUsage: §b/pk join [map name]");
             }
         } else {
             if ($args[0] == "leave") {
                 if (isset($this->activeplayers[$sender->getName()])) {
                     unset($this->activeplayers[$sender->getName()]);
                     $sender->sendMessage("§cYou have left your current map.");
                 } else {
                     $sender->sendMessage("§cYou aren't currently playing any maps.");
                 }
             } else {
                 if ($args[0] == "info") {
                     if (isset($args[1])) {
                         if (isset($this->arenas[strtolower($args[1])])) {
                             $map = $this->arenas[strtolower($args[1])];
                             $currentlyplaying = array();
                             foreach ($this->activeplayers as $player => $name) {
                                 if ($name['current-map'] == strtolower($args[1])) {
                                     array_push($currentlyplaying, $player);
                                 }
                             }
                             $sender->sendMessage("§cMap info:\n§cMap name: §b" . $map->getMapName() . "\n§cMap maker: §b" . $map->getMapMaker() . "\n§cDate of creation: §b" . $map->getDateOfCreation() . "\n§cMap world name: §b" . $map->getMapLevel()->getName() . "\n§cYour current highscore: §b" . ($map->getTime($sender) === null ? "none" : $map->getTime($sender)) . "\n§cCurrently playing: §b" . implode(", ", $currentlyplaying) . "\n§cFor leaderboards, please type §b/pk topten " . strtolower($args[1]));
                         } else {
                             $sender->sendMessage("§cThis map doesn't exist.");
                         }
                     } else {
                         $sender->sendMessage("§cUsage: §b/pk info [map name]");
                     }
                 } else {
                     if ($args[0] == "topten") {
                         if (isset($args[1])) {
                             if (isset($this->arenas[strtolower($args[1])])) {
                                 $sender->sendMessage("§cTop ten laps of the map §b" . $this->arenas[strtolower($args[1])]->getMapName() . "§c:");
                                 $count = 0;
                                 foreach ($this->arenas[strtolower($args[1])]->getTopTen() as $player) {
                                     $count++;
                                     $sender->sendMessage("§c" . $count . ") §b" . $player['username'] . "§c with §b" . $player['highscore']);
                                 }
                             } else {
                                 $sender->sendMessage("§cThis map doesn't exist.");
                             }
                         } else {
                             $sender->sendMessage("§cUsage: §b/pk topten [map name]");
                         }
                     }
                 }
             }
         }
         if ($args[0] == "create") {
             if (isset($args[1])) {
                 $this->arenaconf->set($args[1], array("date-of-creation" => date("d/m/Y"), "map-maker" => $sender->getName(), "level" => $sender->getLevel()->getName(), "floor-y" => 0, "start-position" => array("x" => 0, "y" => 0, "z" => 0, "yaw" => 360), "timer-block" => array("x" => 0, "y" => 0, "z" => 0), "end-block" => array("x" => 0, "y" => 0, "z" => 0)));
                 $sender->sendMessage("§cNew map '§b" . $args[1] . "§c' has been created.\n§cPlease use the follwing command to set the start position:\n§b/pk setstart " . strtolower($args[1]));
             } else {
                 $sender->sendMessage("§cUsage: §b/pk create [map name]");
             }
         } else {
             if ($args[0] == "setstart") {
                 if (isset($args[1])) {
                     if ($this->arenaconf->exists($args[1])) {
                         $newmap = $this->arenaconf->get($args[1]);
                         $newmap['start-position'] = array("x" => $sender->getFloorX(), "y" => $sender->getFloorY(), "z" => $sender->getFloorZ(), $sender->getYaw());
                         $this->arenaconf->set($args[1], $newmap);
                         $sender->sendMessage("§cAwesome! Now use the follwing command to set the floor that will reset you once you fall below/on it.\n§b/pk setfloor " . strtolower($args[1]));
                     } else {
                         $sender->sendMessage("§cThis map doesn't exist.");
                     }
                 } else {
                     $sender->sendMessage("§cUsage: §b/pk setfloor [map name]");
                 }
             } else {
                 if ($args[0] == "setfloor") {
                     if (isset($args[1])) {
                         if ($this->arenaconf->exists($args[1])) {
                             $newmap = $this->arenaconf->get($args[1]);
                             $newmap['floor-y'] = $sender->getFloorY();
                             $this->arenaconf->set($args[1], $newmap);
                             $sender->sendMessage("§cGreat! Now use the follwing command to set the timer start position.\n§b/pk settimer " . strtolower($args[1]));
                         } else {
                             $sender->sendMessage("§cThis map doesn't exist.");
                         }
                     } else {
//.........这里部分代码省略.........
开发者ID:SirGamer,项目名称:ParkourRunner,代码行数:101,代码来源:Runner.php

示例12: onCommand

 public function onCommand(CommandSender $sender, Command $command, $label, array $args)
 {
     if ($command->getName() == "lobby") {
         if ($this->gameStatus >= 2) {
             $sender->sendMessage("[{$this->getConfig()->get("prefix")}] {$Already_Playing}");
             return;
         }
         if (isset($this->players[$sender->getName()])) {
             unset($this->players[$sender->getName()]);
             $sender->setLevel($this->signlevel);
             $sender->teleport($this->signlevel->getSpawnLocation());
             $sender->sendMessage(TextFormat::GREEN . "[{$this->getConfig()->get("prefix")}] Teleporting to lobby...");
             $this->getServer()->broadcastMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}]Player " . $sender->getName() . " left the match.");
             $this->changeStatusSign();
             if ($this->gameStatus == 1 && count($this->players) < 2) {
                 $this->gameStatus = 0;
                 $this->lastTime = 0;
                 $event->getPlayer()->sendMessage("[{$this->getConfig()->get("prefix")}] {$Arena}");
                 /*foreach($this->players as $pl)
                 		{
                 			$p=$this->getServer()->getPlayer($pl["id"]);
                 			$p->setLevel($this->signlevel);
                 			$p->teleport($this->signlevel->getSpawnLocation());
                 			unset($p,$pl);
                 		}*/
             }
         } else {
             $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] {$Not_In_Match}");
         }
         return true;
     }
     if (!isset($args[0])) {
         unset($sender, $cmd, $label, $args);
         return false;
     }
     switch ($args[0]) {
         case "help":
             if ($sender->hasPermission("sg.command.help") or $sender->hasPermission("sg.command") or $sender->hasPermission("sg")) {
                 $sender->sendMessage("§d§o-------SurvivalGames Help-------");
                 $sender->sendMessage("§d§oUse §e/sg stats - View your stats");
                 $sender->sendMessage("§d§oUse §e/sg set - Set up an arena");
                 $sender->sendMessage("§d§oUse §e/sg remove - Remove a arena");
                 $sender->sendMessage("§d§oUse §e/sg start - Force start a match");
                 $sender->sendMessage("§d§oUse §e/sg reload - Reload the spawn positions");
                 $sender->sendMessage("§d§o--------------------------------");
                 return true;
             }
             break;
         case "stats":
             if ($sender instanceof Player) {
                 if ($sender->hasPermission("sg.command.stats") or $sender->hasPermission("sg.command") or $sender->hasPermission("sg")) {
                     if (!isset($args[1])) {
                         $player = $sender->getName();
                         $deaths = $this->points->get($player)[0];
                         $kills = $this->points->get($player)[1];
                         $points = $this->points->get($player)[2];
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] ---------------");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §bYou're stats");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §lDeaths: §9{$deaths}");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §lKills: §9{$kills}");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] ---------------");
                         return true;
                     } else {
                         $player = $args[1];
                         $deaths = $this->points->get($player)[0];
                         $kills = $this->points->get($player)[1];
                         $points = $this->points->get($player)[2];
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] ---------------");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §bPlayer: §9{$player} Stats");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §lDeaths: §9{$deaths}");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] §lKills: §9{$kills}");
                         $sender->sendMessage(TextFormat::RED . "[{$this->getConfig()->get("prefix")}] ---------------");
                         return true;
                     }
                 } else {
                     $sender->sendMessage("{$No_Permission}");
                     return true;
                 }
             } else {
                 $sender->sendMessage(TextFormat::RED . "That command can only be used in-game!");
                 return true;
             }
             break;
         case "set":
             if ($sender instanceof Player) {
                 if ($this->config->exists("lastpos")) {
                     $sender->sendMessage("Seems like you have already setup an arena");
                 } else {
                     $name = $sender->getName();
                     $this->SetStatus[$name] = 0;
                     $sender->sendMessage("Tap a sign to set it as join sign!");
                 }
             } else {
                 $sender->sendMessage(TextFormat::RED . "You may only use ths command in-game!");
                 return true;
             }
             break;
         case "remove":
             $this->config->remove("sign");
             $this->config->remove("pos1");
//.........这里部分代码省略.........
开发者ID:xZeroMCPE,项目名称:SurvivalGames,代码行数:101,代码来源:Main.php

示例13: onCommand

 public function onCommand(CommandSender $runner, Command $call, $alia, array $arg)
 {
     switch (strtolower($call->getName())) {
         case 'brawl':
             if (empty($arg) && $runner instanceof Player) {
                 $runner->sendMessage(TextFormat::RED . "Usage: /brawl <join|quit>");
             }
             if ($runner->hasPermission("brawl.cmd") && $runner instanceof Player && isset($arg[0])) {
                 switch (strtolower($arg[0])) {
                     case 'join':
                         if (!isset($this->brawl[$runner->getName()])) {
                             $this->cnt[$runner->getName()] = 0;
                             $this->brawl[$runner->getName()] = $runner;
                             $runner->teleport(new Position($this->wx, $this->wy, $this->wz, $this->wlvl), 0, 0);
                             foreach ($this->brawl as $pl) {
                                 $pl->sendMessage(TextFormat::GOLD . "[CL-BrawlArena] " . $runner->getName() . " joined the match.");
                             }
                             if (count($this->brawl) >= $this->min) {
                                 $t = new WaitTask($this);
                                 $h = $this->getServer()->getScheduler()->scheduleDelayedTask($t, 20 * $this->wait_time);
                                 $t->setHandler($h);
                                 foreach ($this->brawl as $pl) {
                                     $min = $this->wait_time / 60;
                                     $pl->sendMessage(TextFormat::GOLD . "[CL-BrawlArena] Game starting in " . ($this->wait_time <= 60 ? "{$this->wait_time} seconds" : "{$min} minutes."));
                                     break;
                                 }
                             }
                         } else {
                             $runner->sendMessage(TextFormat::RED . "[CL-BrawlArena] You already joined.");
                         }
                         if (count($this->brawl) >= $this->max) {
                             $runner->sendMessage(TextFormat::RED . "[CL-BrawlArena] Game full.");
                         }
                         if ($this->running) {
                             $runner->sendMessage(TextFormat::RED . "[CL-BrawlArena] Game already running.");
                         }
                         break;
                     case 'quit':
                         if (isset($this->brawl[$runner->getName()])) {
                             $runner->teleport(new Position($this->lx, $this->ly, $this->lz, $this->llvl), 0, 0);
                             $runner->sendMessage(TextFormat::GREEN . "[CL-BrawlArena] Teleporting...");
                             unset($this->brawl[$runner->getName()]);
                             unset($this->cnt[$runner->getName()]);
                             if (count($this->brawl) <= 0) {
                                 $this->getServer()->broadcastMessage(TextFormat::GREEN . "[CL-BrawlArena] Game is open.");
                                 $this->running = false;
                                 unset($this->brawl);
                                 unset($this->cnt);
                             }
                         }
                         break;
                 }
             }
             break;
     }
 }
开发者ID:ChiefArtz,项目名称:CL-Brawl-Arena,代码行数:56,代码来源:Main.php

示例14: onCommand

 public function onCommand(CommandSender $sender, Command $cmd, $label, array $args)
 {
     $name = $sender->getName();
     switch ($cmd->getName()) {
         case "vote":
             if (!isset($args[0])) {
                 $sender->sendMessage(MT::RED . 'Vote with /vote *arenanumber* (1-5)');
                 $this->getLogger()->info("{$name} benutzt vote befehl");
                 return true;
             } else {
                 if ($args[0] == 1 || $args[0] == 2 || $args[0] == 3 || $args[0] == 4 || $args[0] == 5) {
                     $sender->sendMessage(MT::RED . 'Thank u for voting the arena ' . MT::GREEN . $args[0]);
                     $this->getLogger()->info("{$name} hat gevotet Arena {$args['0']}");
                     if ($args[0] == 1) {
                         $this->arena1[$name] = 1;
                     }
                     if ($args[0] == 2) {
                         $this->arena2[$name] = 1;
                     }
                     if ($args[0] == 3) {
                         $this->arena3[$name] = 1;
                     }
                     if ($args[0] == 4) {
                         $this->arena4[$name] = 1;
                     }
                     if ($args[0] == 5) {
                         $this->arena5[$name] = 1;
                     }
                     return true;
                 } else {
                     $sender->sendMessage(MT::RED . 'Wrong arena number or arena not loaded');
                     return false;
                 }
             }
             break;
         case "watch":
             $level = $sender->getLevel()->getName();
             if ($level == $this->lobbyname) {
                 if (isset($this->selectarena)) {
                     $arenaname = $this->selectarena;
                     if ($this->arena1name == $arenaname) {
                         $pos111 = explode(",", $this->arena1areapos1);
                         $pos222 = explode(",", $this->arena1areapos2);
                     }
                     if ($this->arena2name == $arenaname) {
                         $pos111 = explode(",", $this->arena2areapos1);
                         $pos222 = explode(",", $this->arena2areapos2);
                     }
                     if ($this->arena3name == $arenaname) {
                         $pos111 = explode(",", $this->arena3areapos1);
                         $pos222 = explode(",", $this->arena3areapos2);
                     }
                     if ($this->arena4name == $arenaname) {
                         $pos111 = explode(",", $this->arena4areapos1);
                         $pos222 = explode(",", $this->arena4areapos2);
                     }
                     if ($this->arena5name == $arenaname) {
                         $pos111 = explode(",", $this->arena5areapos1);
                         $pos222 = explode(",", $this->arena5areapos2);
                     }
                     $randx = rand($pos111[0], $pos222[0]);
                     $randz = rand($pos111[2], $pos222[2]);
                     $randy = rand($pos111[1], $pos222[1]);
                     $sender->teleport($this->getServer()->getLevelByName($this->selectarena)->getSafeSpawn(new Position($randx, $randy, $randz)));
                     $sender->setGamemode(3);
                     return true;
                 } else {
                     $sender->sendMessage(MT::RED . 'Round isnt started yet!');
                     return false;
                 }
             } else {
                 $name = $sender->getName();
                 if (in_array($name, $this->players)) {
                     $sender->sendMessage(MT::RED . 'Your are not in Lobby and playing!');
                 } else {
                     $sender->teleport($this->getServer()->getLevelByName($this->lobbyname)->getSafeSpawn());
                     $sender->setGamemode(0);
                 }
                 return false;
             }
             break;
         case "playerspawn":
             $level = $sender->getLevel()->getName();
             if ($sender->isOp()) {
                 if (isset($args[0])) {
                     $config = $this->config->getAll();
                     $ppos = $config["PlayerspawnPos"];
                     $ppos2 = $config["PlayerspawnPos2"];
                     $ppos3 = $config["PlayerspawnPos3"];
                     $ppos4 = $config["PlayerspawnPos4"];
                     $ppos5 = $config["PlayerspawnPos5"];
                     if ($args[0] == "add") {
                         if (isset($args[1])) {
                             if ($this->arena1name == $level) {
                                 $commandpos = $args[1];
                                 if (!in_array($commandpos, $ppos)) {
                                     if (!is_array($ppos)) {
                                         $ppos = array($commandpos);
                                         return true;
                                     } else {
//.........这里部分代码省略.........
开发者ID:100henrik100,项目名称:Minecraft-Pocket-Edition,代码行数:101,代码来源:minigame.php

示例15: tpCommand

 function tpCommand(CommandSender $sender, array $args)
 {
     if (count($args) !== 0) {
         $sender->sendMessage($this->getMessage("l.tp.usage"));
         return true;
     }
     if (($pair = $this->provider->getPair($sender->getName())) === null) {
         $sender->sendMessage($this->getMessage("l.no-married"));
         return true;
     }
     if (!($Player = $this->getServer()->getPlayer($pair))) {
         $sender->sendMessage($this->getMessage("l.pair-offline"));
         return true;
     }
     $sender->teleport($Player);
     return true;
 }
开发者ID:GracieWargo,项目名称:PocketMine,代码行数:17,代码来源:Love.php


注:本文中的pocketmine\command\CommandSender::teleport方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。