Overview

Namespaces

  • aliuly
    • common
      • selectors
    • loader
  • xPaw

Classes

  • aliuly\common\ArmorItems
  • aliuly\common\BasicCli
  • aliuly\common\BasicHelp
  • aliuly\common\BasicPlugin
  • aliuly\common\ChatSession
  • aliuly\common\Cmd
  • aliuly\common\CmdSelector
  • aliuly\common\ExpandVars
  • aliuly\common\FastTransfer
  • aliuly\common\FileUtils
  • aliuly\common\FreezeSession
  • aliuly\common\GetMotd
  • aliuly\common\GetMotdAsyncTask
  • aliuly\common\InvisibleSession
  • aliuly\common\InvUtils
  • aliuly\common\ItemName
  • aliuly\common\mc
  • aliuly\common\mc2
  • aliuly\common\MoneyAPI
  • aliuly\common\MPMU
  • aliuly\common\Npc
  • aliuly\common\PermUtils
  • aliuly\common\PluginAsyncTask
  • aliuly\common\PluginCallbackTask
  • aliuly\common\PMScript
  • aliuly\common\QueryAsyncTask
  • aliuly\common\Rcon
  • aliuly\common\RconTask
  • aliuly\common\selectors\All
  • aliuly\common\selectors\AllEntity
  • aliuly\common\selectors\BaseSelector
  • aliuly\common\selectors\Random
  • aliuly\common\Session
  • aliuly\common\ShieldSession
  • aliuly\common\ShoppingCart
  • aliuly\common\SignUtils
  • aliuly\common\SkinUtils
  • aliuly\common\SpySession
  • aliuly\common\SubCommandMap
  • aliuly\common\TPUtils
  • aliuly\loader\Main
  • xPaw\MinecraftQuery

Exceptions

  • xPaw\MinecraftQueryException
  • Overview
  • Namespace
  • Class
 1: <?php
 2: //= api-features
 3: //: - Teleport wrappers
 4: 
 5: namespace aliuly\common;
 6: 
 7: use pocketmine\Player;
 8: use pocketmine\level\Position;
 9: use pocketmine\Server;
10: 
11: use pocketmine\math\Vector3;
12: 
13: /**
14:  * Telepoert Utilities
15:  */
16: abstract class TPUtils {
17:     /**
18:      * Teleport a player near a location
19:      * @param Player $player - player to be teleported
20:      * @param Position $target - location to teleport nearby
21:      * @param int $rand - how far to randomize positions
22:      * @param int|null $dist - if not null it will make sure that new location is upto $dist
23:      * @return bool - true on success, false on failure
24:      */
25:     static public function tpNearBy(Player $player,Position $target,$rand = 3,$dist = null) {
26:     $mv = new Vector3($target->getX()+mt_rand(-$rand,$rand),
27:                       $target->getY(),
28:                       $target->getZ()+mt_rand(-$rand,$rand));
29:         $pos = $target->getLevel()->getSafeSpawn($mv);
30:         if ($dist !== null) {
31:             $newdist = $pos->distance($target);
32:             if ($newdist > $dist) return false;// Will not get close enough!
33:         }
34:     $player->teleport($pos);
35:         return true;
36:   }
37:     /**
38:      * Get a world name and return a level object.  Loads levels as needed
39:      *
40:      * @param Server $server
41:      * @param str $world
42:      * @return Level|null
43:      */
44:     static public function getLevelByName(Server $server, $world) {
45:         if (!$server->isLevelGenerated($world)) return null;
46:         if (!$server->isLevelLoaded($world)) $server->loadLevel($world);
47:         return $server->getLevelByName($world);
48:     }
49: 
50: }
51: 
API documentation generated by ApiGen