├── .gitignore ├── SimpleHome ├── phpstan.neon ├── icon.png ├── composer.json ├── plugin.yml ├── resources │ └── config.yml ├── README.md ├── src │ └── czechpmdevs │ │ └── simplehome │ │ ├── event │ │ └── PlayerHomeTeleportEvent.php │ │ ├── commands │ │ ├── SethomeCommand.php │ │ ├── HomeCommand.php │ │ └── RemovehomeCommand.php │ │ ├── Home.php │ │ └── SimpleHome.php └── composer.lock ├── Snow ├── icon.png ├── README.md ├── plugin.yml ├── composer.json ├── src │ └── czechpmdevs │ │ └── snow │ │ └── Snow.php └── composer.lock ├── VoidTP ├── plugin.yml └── src │ └── VoidTP │ └── Main.php ├── BankPlugin ├── plugin.yml └── src │ └── bank │ └── BankPlugin.php ├── ServerTransfer ├── resources │ └── config.yml ├── plugin.yml └── src │ └── ServerTransfer │ ├── Main.php │ └── EventListener.php ├── UnlimitedSlots ├── plugin.yml └── src │ └── UnlimitedSlots │ └── Main.php ├── WelcomeMessage ├── plugin.yml └── src │ └── WelcomeMessage │ └── Main.php ├── BlockInfo ├── plugin.yml └── src │ └── BlockInfo │ └── Main.php ├── .poggit.yml ├── README.md └── LICENSE /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | vendor -------------------------------------------------------------------------------- /SimpleHome/phpstan.neon: -------------------------------------------------------------------------------- 1 | parameters: 2 | level: 9 3 | paths: 4 | - src -------------------------------------------------------------------------------- /Snow/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CzechPMDevs/SmallPlugins/HEAD/Snow/icon.png -------------------------------------------------------------------------------- /SimpleHome/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CzechPMDevs/SmallPlugins/HEAD/SimpleHome/icon.png -------------------------------------------------------------------------------- /Snow/README.md: -------------------------------------------------------------------------------- 1 | # Snow 2 | 3 | 4 | 5 | - Doesn't work in y < 80 (client side) 6 | -------------------------------------------------------------------------------- /VoidTP/plugin.yml: -------------------------------------------------------------------------------- 1 | name: VoidTP 2 | api: [3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12] 3 | version: 1.0.1 4 | author: VixikHD 5 | main: VoidTP\Main -------------------------------------------------------------------------------- /BankPlugin/plugin.yml: -------------------------------------------------------------------------------- 1 | name: BankPlugin 2 | api: [3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALHPA11, 3.0.0-ALPHA12] 3 | version: 1.0.1 4 | main: bank\BankPlugin 5 | author: CzechPMDevs 6 | authors: [VixikCZ] -------------------------------------------------------------------------------- /ServerTransfer/resources/config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | #Plugin transfer all players to this server on server disable 3 | disable-server-ip: play.yourserveradress.com 4 | disable-server-port: 19132 5 | ... 6 | -------------------------------------------------------------------------------- /Snow/plugin.yml: -------------------------------------------------------------------------------- 1 | name: Snow 2 | author: VixikCZ 3 | api: 4.0.0 4 | version: 1.1.0 5 | main: czechpmdevs\snow\Snow 6 | description: Plugin which adds falling snow to your PocketMine server 7 | 8 | mcpe-protocols: 9 | - 475 -------------------------------------------------------------------------------- /UnlimitedSlots/plugin.yml: -------------------------------------------------------------------------------- 1 | name: UnlimitedSlots 2 | api: [3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12] 3 | version: 1.0.1 4 | author: GamakCZ 5 | main: UnlimitedSlots\Main 6 | -------------------------------------------------------------------------------- /WelcomeMessage/plugin.yml: -------------------------------------------------------------------------------- 1 | name: WelcomeMessage 2 | api: [3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-APLHA12] 3 | version: 1.0.1 4 | author: GamakCZ 5 | main: WelcomeMessage\Main 6 | -------------------------------------------------------------------------------- /BlockInfo/plugin.yml: -------------------------------------------------------------------------------- 1 | name: BlockInfo 2 | api: [3.0.0, 3.0.0-ALPHA5, 3.0.0-ALPHA6, 3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-ALPHA12] 3 | author: GamakCZ 4 | version: 1.0.1 5 | main: BlockInfo\Main 6 | 7 | commands: 8 | bi: 9 | description: Informations about blocks 10 | -------------------------------------------------------------------------------- /.poggit.yml: -------------------------------------------------------------------------------- 1 | --- # Poggit-CI Manifest. Open the CI at https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins 2 | branches: 3 | - master 4 | projects: 5 | ServerTransfer: 6 | path: ServerTransfer/ 7 | WelcomeMessage: 8 | path: WelcomeMessage/ 9 | UnlimitedSlots: 10 | path: UnlimitedSlots/ 11 | BlockInfo: 12 | path: BlockInfo/ 13 | SimpleHome: 14 | path: SimpleHome/ 15 | BankPlugin: 16 | path: BankPlugin/ 17 | Snow: 18 | path: Snow/ 19 | ... 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SmallPlugins 2 | Repository for small pmmp plugins 3 | 4 | - ServerTransfer: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/ServerTransfer 5 | 6 | - WelcomeMessage: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/WelcomeMessage 7 | 8 | - UnlimitedSlots: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/UnlimitedSlots 9 | 10 | - BlockInfo: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/BlockInfo 11 | 12 | - SimpleHome: https://poggit.pmmp.io/ci/CzechPMDevs/SmallPlugins/SimpleHome 13 | -------------------------------------------------------------------------------- /SimpleHome/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "czechpmdevs/simplehome", 3 | "description": "Simple plugin to manage in-game homes.", 4 | "minimum-stability": "dev", 5 | "license": "Apache-2.0", 6 | "require": { 7 | "php": "^8.0", 8 | "ext-yaml": "*", 9 | "ext-pthreads": "*", 10 | "ext-zlib": "*", 11 | "ext-json": "*", 12 | "pocketmine/pocketmine-mp": "4.0.0" 13 | }, 14 | "require-dev": { 15 | "phpstan/phpstan": "1.2.0" 16 | }, 17 | "autoload": { 18 | "psr-4": { 19 | "": ["src"] 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /Snow/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "czechpmdevs/snow", 3 | "description": "Plugin which adds falling snow to your PocketMine server", 4 | "minimum-stability": "dev", 5 | "license": "Apache-2.0", 6 | "require": { 7 | "php": "^8.0", 8 | "ext-yaml": "*", 9 | "ext-pthreads": "*", 10 | "ext-zlib": "*", 11 | "ext-json": "*", 12 | "pocketmine/pocketmine-mp": "4.0.0" 13 | }, 14 | "require-dev": { 15 | "phpstan/phpstan": "1.2.0" 16 | }, 17 | "autoload": { 18 | "psr-4": { 19 | "": ["src"] 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /UnlimitedSlots/src/UnlimitedSlots/Main.php: -------------------------------------------------------------------------------- 1 | getServer()->getPluginManager()->registerEvents($this,$this); 13 | } 14 | 15 | public function onQuery(QueryRegenerateEvent $event) { 16 | $event->setMaxPlayerCount(intval(count($this->getServer()->getOnlinePlayers())+1)); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ServerTransfer/plugin.yml: -------------------------------------------------------------------------------- 1 | name: ServerTransfer 2 | api: [3.0.0-ALPHA7, 3.0.0-ALPHA8, 3.0.0-ALPHA9, 3.0.0-ALPHA10, 3.0.0-ALPHA11, 3.0.0-ALPHA12] 3 | version: 1.0.1 4 | author: GamakCZ 5 | main: ServerTransfer\Main 6 | description: Simple Transfer plugin 7 | 8 | commands: 9 | transfer: 10 | description: Transfer player to another server 11 | aliases: 12 | - servertransfer 13 | 14 | permissions: 15 | st.transfer: 16 | description: transfer to other servers 17 | default: op 18 | st.transfer.other: 19 | description: transferother players to other servers 20 | default: op 21 | -------------------------------------------------------------------------------- /SimpleHome/plugin.yml: -------------------------------------------------------------------------------- 1 | name: SimpleHome 2 | api: [4.0.0] 3 | version: 1.1.0 4 | main: czechpmdevs\simplehome\SimpleHome 5 | author: CzechPMDevs 6 | authors: [VixikCZ] 7 | description: Simple home plugin 8 | website: https://github.com/CzechPMDevs/SmallPlugins/SimpleHome 9 | 10 | permissions: 11 | simplehome.limit: 12 | default: op 13 | description: Allows player to have unlimited count of homes 14 | simplehome.command.sethome: 15 | default: true 16 | description: Permission for /sethome 17 | simplehome.command.home: 18 | default: true 19 | description: Permission for /home 20 | simplehome.command.delhome: 21 | default: true 22 | description: Permission for /delhome 23 | -------------------------------------------------------------------------------- /SimpleHome/resources/config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # 3 | # CzechPMDevs >>> SimpleHome 4 | # - Main configuration file 5 | # 6 | 7 | # Prefix 8 | prefix: '§3[SimpleHome]§e' 9 | 10 | # Limit of homes per player (-1 = no limit) 11 | limit: -1 12 | 13 | # Messages: 14 | sethome-message: '§aHome %1 has been successfully set.' 15 | sethome-usage: '§cUsage: §7/sethome ' 16 | sethome-max: '§cHome %1 can be set. You have reached the maximum number of homes.' 17 | delhome-message: '§aHome %1 has been successfully deleted.' 18 | delhome-usage: '§cUsage: §7/delhome ' 19 | home-message: '§aYou are successfully teleported to home %1.' 20 | home-notexists: '§cHome %1 does not exists!' 21 | home-list: '§bHomes (%1): §7%2' 22 | no-home: '§cYou have not homes' 23 | ... -------------------------------------------------------------------------------- /VoidTP/src/VoidTP/Main.php: -------------------------------------------------------------------------------- 1 | getServer()->getPluginManager()->registerEvents($this, $this); 18 | } 19 | 20 | /** 21 | * @param EntityDamageEvent $event 22 | */ 23 | public function onFall(EntityDamageEvent $event) { 24 | $entity = $event->getEntity(); 25 | if($entity instanceof Player) { 26 | if($entity->getLevel()->getName() == $this->getServer()->getDefaultLevel()->getName()) { 27 | if($entity->getY() <= 0) { 28 | $entity->teleport($this->getServer()->getDefaultLevel()->getSpawnLocation()); 29 | $event->setCancelled(); 30 | } 31 | } 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /WelcomeMessage/src/WelcomeMessage/Main.php: -------------------------------------------------------------------------------- 1 | getServer()->getPluginManager()->registerEvents($this,$this); 13 | if(!file_exists($this->getDataFolder())) { 14 | @mkdir($this->getDataFolder()); 15 | $this->getConfig()->set("welcome-message", "Welcome @player on my server...{LINE}- plugin WelcomeMessage by CzechPMDevs"); 16 | $this->getConfig()->save(); 17 | } 18 | 19 | } 20 | public function onJoin(PlayerJoinEvent $event) { 21 | $player = $event->getPlayer(); 22 | $event->setJoinMessage(""); 23 | $msg = $this->getConfig()->get("welcome-message"); 24 | $msg = str_replace("{LINE}", "\n", $msg); 25 | $msg = str_replace("@player", $player->getName(), $msg); 26 | $player->sendMessage($msg); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /SimpleHome/README.md: -------------------------------------------------------------------------------- 1 | # SimpleHome 2 | 3 | _**The easiest plugin to create and edit virtual homes.**_ 4 | 5 | ### Commands: 6 | 7 | - Sethome Command: 8 | - Create home 9 | - permission: sh.cmd.sethome (no-op) 10 | - usage: /sethome 11 | - Home Command: 12 | - Displays list of homes or teleport to home 13 | - permission: sh.cmd.home (no-op) 14 | - usage: /home or /home 15 | - Delhome Command: 16 | - Remove home 17 | - permission: sh.cmd.delhome (no-op) 18 | - usage: /delhome 19 | 20 | ### Permissions: 21 | 22 | - sh.cmd: 23 | - permission for all commands 24 | - default: TRUE 25 | 26 | ### API: 27 | 28 | - get SimpleHome instance 29 | 30 | `$simpleHome = SimpleHome::getInstance();` 31 | 32 | 33 | - get the player's home 34 | 35 | `$home = $simpleHome->getPlayerHome(Player $player, string $homeName);` 36 | 37 | - teleport player to his home 38 | 39 | `$home->teleport($player);` 40 | 41 | - create new home 42 | 43 | `$simpleHome->setPlayerHome($player, $newHome = new Home($player, [$x, $y, $z, $levelName], $homeName));` 44 | 45 | - delete home 46 | 47 | `$simpleHome->deleteHome($player, $newHome);` 48 | 49 | - get home list 50 | 51 | `$simpleHome->getHomeList();` -------------------------------------------------------------------------------- /ServerTransfer/src/ServerTransfer/Main.php: -------------------------------------------------------------------------------- 1 | listener = new EventListener($this); 17 | $this->getServer()->getPluginManager()->registerEvents($this->listener, $this); 18 | if(!file_exists($this->getDataFolder())) { 19 | @mkdir($this->getDataFolder()); 20 | } 21 | if(!is_file($this->getDataFolder()."/config.yml")) { 22 | $this->saveResource("/config.yml"); 23 | } 24 | } 25 | 26 | public function transfer(Player $player, $ip, $port = 19132) { 27 | $pk = new TransferPacket(); 28 | $pk->address = $ip; 29 | $pk->port = $port; 30 | $player->dataPacket($pk); 31 | } 32 | 33 | public function onDisable() { 34 | $players = Server::getInstance()->getOnlinePlayers(); 35 | if ($this->getServer()->isRunning() == false) { 36 | foreach ($players as $p) { 37 | $this->transfer($p, $this->getConfig()->get("disable-server-ip"), intval($this->getConfig()->get("disable-server-port"))); 38 | } 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /BlockInfo/src/BlockInfo/Main.php: -------------------------------------------------------------------------------- 1 | getServer()->getPluginManager()->registerEvents($this,$this); 18 | } 19 | 20 | public function onCommand(CommandSender $s, Command $cmd, string $label, array $args):bool { 21 | if($s instanceof Player && $s->isOp()) { 22 | if($cmd->getName() == "bi" && $args[0] == "add") { 23 | $s->sendMessage("§aSuccessfully added to list."); 24 | $this->player[$s->getName()] = 1; 25 | } 26 | } 27 | else { 28 | $s->sendMessage("§cYou does not have permissions to use this command!"); 29 | } 30 | } 31 | 32 | public function onTouch(PlayerInteractEvent $e) { 33 | if(isset($this->player[$e->getPlayer()->getName()])) { 34 | $e->getPlayer()->sendMessage("§5X: §6{$e->getBlock()->getX()}\n". 35 | "§5Y: §6{$e->getBlock()->getY()}\n". 36 | "§5Z: §6{$e->getBlock()->getZ()}\n". 37 | "§5ID: §6{$e->getBlock()->getId()}\n". 38 | "§5NAME: §6{$e->getBlock()->getName()}"); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/event/PlayerHomeTeleportEvent.php: -------------------------------------------------------------------------------- 1 | owner = $owner; 37 | $this->home = $home; 38 | } 39 | 40 | /** 41 | * @return Player Returns owner of the home 42 | */ 43 | public function getPlayer(): Player { 44 | return $this->owner; 45 | } 46 | 47 | /** 48 | * @return Home Returns Home player was teleported to 49 | */ 50 | public function getHome(): Home { 51 | return $this->home; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /ServerTransfer/src/ServerTransfer/EventListener.php: -------------------------------------------------------------------------------- 1 | plugin = $plugin; 15 | } 16 | 17 | public function onCommand(PlayerCommandPreprocessEvent $event) { 18 | $player = $event->getPlayer(); 19 | $cmd = explode(" ", strtolower($event->getMessage())); 20 | if($cmd[0] == "/transfer" || $cmd[0] == "/transferserver") { 21 | 22 | if(isset($cmd[1]) && isset($cmd[2])) { 23 | if($player->hasPermission("st.transfer")) { 24 | $this->plugin->transfer($player,$cmd[1], $cmd[2]); 25 | $this->plugin->getServer()->broadcastMessage(str_replace(":19132","","[Transfer] Player {$player->getName()} is transfered to {$cmd[1]}:{$cmd[2]}")); 26 | } 27 | } 28 | elseif (isset($cmd[1]) && isset($cmd[2]) && isset($cmd[3])) { 29 | if($player->hasPermission("st.transfer.other")) { 30 | $pl = $this->plugin->getServer()->getPlayer($cmd[3]); 31 | if($pl->isOnline()) { 32 | $this->plugin->transfer($pl, $cmd[1], $cmd[2]); 33 | $this->plugin->getServer()->broadcastMessage(str_replace(":19132","","[Transfer] Player {$pl->getName()} is transfered to {$cmd[1]}:{$cmd[2]}")); 34 | } 35 | } 36 | else { 37 | $player->sendMessage("[Transfer] use /transfer (player)"); 38 | } 39 | } 40 | else { 41 | $player->sendMessage("[Transfer] use /transfer (player)"); 42 | } 43 | $event->setCancelled(true); 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/commands/SethomeCommand.php: -------------------------------------------------------------------------------- 1 | setPermission("simplehome.command.sethome"); 39 | $this->plugin = $plugin; 40 | } 41 | 42 | public function execute(CommandSender $sender, string $commandLabel, array $args) { 43 | if(!$sender instanceof Player) { 44 | $sender->sendMessage("This command can be used only in-game!"); 45 | return false; 46 | } 47 | if(empty($args[0])) { 48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->messages["sethome-usage"]); 49 | return false; 50 | } 51 | $this->plugin->setPlayerHome($sender, Home::fromPosition($sender->getPosition(), $args[0], $sender)); 52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["sethome-message"])); 53 | return false; 54 | } 55 | 56 | public function getOwningPlugin(): Plugin { 57 | return $this->plugin; 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/Home.php: -------------------------------------------------------------------------------- 1 | getServer()->getWorldManager()->isWorldLoaded((string)$data[3])) { 38 | $player->getServer()->getWorldManager()->loadWorld((string)$data[3]); 39 | } 40 | parent::__construct((int)$data[0], (int)$data[1], (int)$data[2], Server::getInstance()->getWorldManager()->getWorldByName((string)$data[3])); 41 | $this->owner = $player; 42 | $this->name = $name; 43 | } 44 | 45 | public static function fromPosition(Position $position, string $name, Player $player): Home { 46 | return new Home($player, [(int)$position->getX(), (int)$position->getY(), (int)$position->getZ(), $position->getWorld()->getFolderName()], $name); 47 | 48 | } 49 | 50 | public final function getName(): string { 51 | return $this->name; 52 | } 53 | 54 | public final function teleport(Player $player): void { 55 | $event = new PlayerHomeTeleportEvent($player, $this); 56 | 57 | $event->call(); 58 | 59 | if(!$event->isCancelled()) { 60 | $player->teleport($this->asPosition()); 61 | } 62 | } 63 | 64 | public final function getOwner(): Player { 65 | return $this->owner; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/commands/HomeCommand.php: -------------------------------------------------------------------------------- 1 | setPermission("simplehome.command.home"); 38 | 39 | $this->plugin = $plugin; 40 | } 41 | 42 | public function execute(CommandSender $sender, string $commandLabel, array $args) { 43 | if(!$sender instanceof Player) { 44 | $sender->sendMessage("This command can be used only in-game!"); 45 | return false; 46 | } 47 | if(!isset($args[0])) { 48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->getDisplayHomeList($sender)); 49 | return false; 50 | } 51 | if(!$this->plugin->getPlayerHome($sender, $args[0])) { 52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-notexists"])); 53 | return false; 54 | } 55 | $this->plugin->getPlayerHome($sender, $args[0])->teleport($sender); 56 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-message"])); 57 | return false; 58 | } 59 | 60 | public function getOwningPlugin(): Plugin { 61 | return $this->plugin; 62 | } 63 | } -------------------------------------------------------------------------------- /BankPlugin/src/bank/BankPlugin.php: -------------------------------------------------------------------------------- 1 | getLogger()->critical("EconomyAPI plugin does not found!"); 32 | $this->getServer()->getPluginManager()->disablePlugin($this); 33 | return; 34 | } 35 | self::$instance = $this; 36 | $this->refreshTask = new class extends Task { 37 | public function onRun(int $currentTick){ 38 | BankPlugin::$instance->check(); 39 | } 40 | }; 41 | $this->getServer()->getScheduler()->scheduleRepeatingTask($this->refreshTask, 20*10*60); 42 | $this->getServer()->getPluginManager()->registerEvents($this, $this); 43 | } 44 | 45 | /** 46 | * @param PlayerJoinEvent $event 47 | */ 48 | public function onJoin(PlayerJoinEvent $event) { 49 | $this->players[$event->getPlayer()->getName()] = $event->getPlayer(); 50 | } 51 | 52 | public function check() { 53 | foreach ($this->players as $name => $player) { 54 | if (!$player instanceof Player || !$player->isOnline()) { 55 | unset($this->players[$name]); 56 | return; 57 | } 58 | $this->addMoney($player, $this->getMoney($player) / 100); 59 | } 60 | } 61 | 62 | /** 63 | * @param Player $player 64 | * @param int $money 65 | */ 66 | private function addMoney(Player $player, int $money) { 67 | return EconomyAPI::getInstance()->addMoney($player, $money); 68 | } 69 | 70 | /** 71 | * @param Player $player 72 | */ 73 | private function getMoney(Player $player) { 74 | return EconomyAPI::getInstance()->myMoney($player); 75 | } 76 | 77 | } -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/commands/RemovehomeCommand.php: -------------------------------------------------------------------------------- 1 | setPermission("simplehome.command.delhome"); 39 | $this->plugin = $plugin; 40 | } 41 | 42 | public function execute(CommandSender $sender, string $commandLabel, array $args) { 43 | if(!$sender instanceof Player) { 44 | $sender->sendMessage("This command can be used only in-game!"); 45 | return false; 46 | } 47 | if(!isset($args[0])) { 48 | $sender->sendMessage($this->plugin->getPrefix() . $this->plugin->messages["delhome-usage"]); 49 | return false; 50 | } 51 | if(!in_array($args[0], $this->plugin->getHomeList($sender))) { 52 | $sender->sendMessage($this->plugin->getPrefix() . str_replace("%1", $args[0], $this->plugin->messages["home-notexists"])); 53 | return false; 54 | } 55 | $this->plugin->removeHome($sender, Home::fromPosition($sender->getPosition(), $args[0], $sender)); 56 | $sender->sendMessage(str_replace("%1", $args[0], $this->plugin->getPrefix() . $this->plugin->messages["delhome-message"])); 57 | return false; 58 | } 59 | 60 | public function getOwningPlugin(): Plugin { 61 | return $this->plugin; 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /Snow/src/czechpmdevs/snow/Snow.php: -------------------------------------------------------------------------------- 1 | getServer()->getPluginManager()->registerEvents($this, $this); 30 | 31 | $compressedBiomeData = @file_get_contents($path = Path::join(BEDROCK_DATA_PATH, self::LOCAL_DEFINITIONS_PATH)); 32 | if(!$compressedBiomeData) { 33 | throw new RuntimeException("Failed to read a file $path"); 34 | } 35 | 36 | $nbt = (new NetworkNbtSerializer())->read($compressedBiomeData)->mustGetCompoundTag(); 37 | foreach ($nbt->getValue() as $biomeName => $biomeCompound) { 38 | if(!$biomeCompound instanceof CompoundTag) { 39 | throw new AssumptionFailedError("Received invalid or corrupted biome data. Try looking for a new plugin version at poggit"); 40 | } 41 | 42 | foreach ($biomeCompound as $index => $value) { 43 | if($index === "temperature") { 44 | $value = new FloatTag(-3 * lcg_value()); 45 | } 46 | 47 | $biomeCompound->setTag($index, $value); 48 | } 49 | 50 | $nbt->setTag($biomeName, $biomeCompound); 51 | } 52 | 53 | try { 54 | StaticPacketCache::getInstance()->getBiomeDefs()->definitions = new CacheableNbt($nbt); 55 | } catch(Throwable) { 56 | throw new AssumptionFailedError("There were some changes in protocol library independent on protocol change. Try looking for a new plugin version at poggit"); 57 | } 58 | } 59 | 60 | public function onJoin(PlayerJoinEvent $event): void { 61 | $event->getPlayer()->getNetworkSession()->sendDataPacket(LevelEventPacket::create( 62 | eventId: LevelEvent::START_RAIN, 63 | eventData: 100000, // Around 24 hours of snowing, hope player won't be afking that long time 64 | position: null 65 | )); 66 | } 67 | } -------------------------------------------------------------------------------- /SimpleHome/src/czechpmdevs/simplehome/SimpleHome.php: -------------------------------------------------------------------------------- 1 | */ 51 | public array $messages = []; 52 | /** @phpstan-var array> $homes */ 53 | public array $homes = []; 54 | /** @var Command[] $commands */ 55 | private array $commands = []; 56 | 57 | public function onEnable(): void { 58 | self::$instance = $this; 59 | $this->registerCommands(); 60 | $this->loadData(); 61 | } 62 | 63 | public function onDisable(): void { 64 | $this->saveData(); 65 | } 66 | 67 | /** 68 | * @return string[] 69 | */ 70 | public function getHomeList(Player $player): array { 71 | $list = []; 72 | 73 | if(!isset($this->homes[$player->getName()])) { 74 | $this->homes[$player->getName()] = []; 75 | } 76 | 77 | foreach($this->homes[$player->getName()] as $homeName => $homeData) { 78 | $list[] = $homeName; 79 | } 80 | 81 | return $list; 82 | } 83 | 84 | public function getDisplayHomeList(Player $player): string { 85 | $list = $this->getHomeList($player); 86 | 87 | if(count($list) == 0) { 88 | return $this->messages["no-home"]; 89 | } 90 | 91 | return str_replace( 92 | ["%1", "%2"], 93 | [(string)count($list), implode(", ", $list)], 94 | $this->messages["home-list"] 95 | ); 96 | } 97 | 98 | public function removeHome(Player $player, Home $home): void { 99 | unset($this->homes[$player->getName()][$home->getName()]); 100 | } 101 | 102 | public function setPlayerHome(Player $player, Home $home): void { 103 | if($this->messages["limit"] != -1 && !$player->hasPermission("simplehome.limit")) { 104 | if(count($this->getHomeList($player)) > $this->messages["limit"]) { 105 | $player->sendMessage(str_replace("%1", $home->getName(), $this->messages["sethome-max"])); 106 | return; 107 | } 108 | } 109 | $this->homes[$player->getName()][$home->getName()] = [$home->getX(), $home->getY(), $home->getZ(), $home->getWorld()->getFolderName()]; 110 | } 111 | 112 | public function getPlayerHome(Player $player, string $home): ?Home { 113 | if(isset($this->homes[$player->getName()][$home])) { 114 | return new Home($player, $this->homes[$player->getName()][$home], $home); 115 | } else { 116 | return null; 117 | } 118 | } 119 | 120 | private function registerCommands(): void { 121 | $this->commands["delhome"] = new RemovehomeCommand($this); 122 | $this->commands["home"] = new HomeCommand($this); 123 | $this->commands["sethome"] = new SethomeCommand($this); 124 | foreach($this->commands as $command) { 125 | $this->getServer()->getCommandMap()->register("simplehome", $command); 126 | } 127 | } 128 | 129 | 130 | private function saveData(): void { 131 | foreach($this->homes as $name => $data) { 132 | $config = new Config($this->getDataFolder() . "players/$name.yml", Config::YAML); 133 | $config->set("homes", $data); 134 | $config->save(); 135 | } 136 | } 137 | 138 | private function loadData(): void { 139 | if(!is_dir($this->getDataFolder())) { 140 | @mkdir($this->getDataFolder()); 141 | } 142 | if(!is_dir($this->getDataFolder() . "players")) { 143 | @mkdir($this->getDataFolder() . "players"); 144 | } else { 145 | $files = glob($this->getDataFolder() . "players/*.yml"); 146 | if(!$files) { 147 | $files = []; 148 | } 149 | foreach($files as $file) { 150 | $config = yaml_parse_file($file); 151 | if(!is_array($config)) { 152 | continue; 153 | } 154 | 155 | $homes = $config["homes"] ?? []; 156 | $this->homes[basename($file, ".yml")] = array_map([$this, 'loadHome'], is_array($homes) ? $homes : []); 157 | } 158 | } 159 | if(!is_file($this->getDataFolder() . "/config.yml")) { 160 | $this->saveResource("/config.yml"); 161 | } 162 | 163 | $messages = yaml_parse_file($this->getDataFolder() . "/config.yml"); 164 | if(!is_array($messages)) { 165 | throw new AssumptionFailedError("Invalid or corrupted file with messages"); 166 | } 167 | 168 | foreach(Utils::stringifyKeys($messages) as $key => $value) { 169 | $this->messages[$key] = $value; 170 | } 171 | } 172 | 173 | /** 174 | * @phpstan-return array{0: int, 1: int, 2: int, 3: string} 175 | */ 176 | private function loadHome(mixed $configData): array { 177 | if( 178 | !is_array($configData) || 179 | !isset($configData[0]) || !isset($configData[1]) || !isset($configData[2]) || !isset($configData[3]) || 180 | !is_int($configData[0]) || !is_int($configData[1]) || !is_int($configData[2]) || 181 | !is_string($configData[3]) 182 | ) { 183 | throw new AssumptionFailedError("Invalid or corrupted data received"); 184 | } 185 | 186 | return $configData; 187 | } 188 | 189 | public function getPrefix(): string { 190 | return $this->messages["prefix"] . " "; 191 | } 192 | 193 | public static function getInstance(): SimpleHome { 194 | return self::$instance; 195 | } 196 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /SimpleHome/composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "a60c95fce15be7ea9dfb46969e57ef60", 8 | "packages": [ 9 | { 10 | "name": "adhocore/json-comment", 11 | "version": "1.1.2", 12 | "source": { 13 | "type": "git", 14 | "url": "https://github.com/adhocore/php-json-comment.git", 15 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7" 16 | }, 17 | "dist": { 18 | "type": "zip", 19 | "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7", 20 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7", 21 | "shasum": "" 22 | }, 23 | "require": { 24 | "ext-ctype": "*", 25 | "php": ">=7.0" 26 | }, 27 | "require-dev": { 28 | "phpunit/phpunit": "^6.5 || ^7.5 || ^8.5" 29 | }, 30 | "type": "library", 31 | "autoload": { 32 | "psr-4": { 33 | "Ahc\\Json\\": "src/" 34 | } 35 | }, 36 | "notification-url": "https://packagist.org/downloads/", 37 | "license": [ 38 | "MIT" 39 | ], 40 | "authors": [ 41 | { 42 | "name": "Jitendra Adhikari", 43 | "email": "jiten.adhikary@gmail.com" 44 | } 45 | ], 46 | "description": "Lightweight JSON comment stripper library for PHP", 47 | "keywords": [ 48 | "comment", 49 | "json", 50 | "strip-comment" 51 | ], 52 | "support": { 53 | "issues": "https://github.com/adhocore/php-json-comment/issues", 54 | "source": "https://github.com/adhocore/php-json-comment/tree/1.1.2" 55 | }, 56 | "funding": [ 57 | { 58 | "url": "https://paypal.me/ji10", 59 | "type": "custom" 60 | } 61 | ], 62 | "time": "2021-04-09T03:06:06+00:00" 63 | }, 64 | { 65 | "name": "brick/math", 66 | "version": "0.9.3", 67 | "source": { 68 | "type": "git", 69 | "url": "https://github.com/brick/math.git", 70 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae" 71 | }, 72 | "dist": { 73 | "type": "zip", 74 | "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae", 75 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae", 76 | "shasum": "" 77 | }, 78 | "require": { 79 | "ext-json": "*", 80 | "php": "^7.1 || ^8.0" 81 | }, 82 | "require-dev": { 83 | "php-coveralls/php-coveralls": "^2.2", 84 | "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0", 85 | "vimeo/psalm": "4.9.2" 86 | }, 87 | "type": "library", 88 | "autoload": { 89 | "psr-4": { 90 | "Brick\\Math\\": "src/" 91 | } 92 | }, 93 | "notification-url": "https://packagist.org/downloads/", 94 | "license": [ 95 | "MIT" 96 | ], 97 | "description": "Arbitrary-precision arithmetic library", 98 | "keywords": [ 99 | "Arbitrary-precision", 100 | "BigInteger", 101 | "BigRational", 102 | "arithmetic", 103 | "bigdecimal", 104 | "bignum", 105 | "brick", 106 | "math" 107 | ], 108 | "support": { 109 | "issues": "https://github.com/brick/math/issues", 110 | "source": "https://github.com/brick/math/tree/0.9.3" 111 | }, 112 | "funding": [ 113 | { 114 | "url": "https://github.com/BenMorel", 115 | "type": "github" 116 | }, 117 | { 118 | "url": "https://tidelift.com/funding/github/packagist/brick/math", 119 | "type": "tidelift" 120 | } 121 | ], 122 | "time": "2021-08-15T20:50:18+00:00" 123 | }, 124 | { 125 | "name": "fgrosse/phpasn1", 126 | "version": "v2.3.0", 127 | "source": { 128 | "type": "git", 129 | "url": "https://github.com/fgrosse/PHPASN1.git", 130 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e" 131 | }, 132 | "dist": { 133 | "type": "zip", 134 | "url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/20299033c35f4300eb656e7e8e88cf52d1d6694e", 135 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e", 136 | "shasum": "" 137 | }, 138 | "require": { 139 | "php": ">=7.0.0" 140 | }, 141 | "require-dev": { 142 | "phpunit/phpunit": "~6.3", 143 | "satooshi/php-coveralls": "~2.0" 144 | }, 145 | "suggest": { 146 | "ext-bcmath": "BCmath is the fallback extension for big integer calculations", 147 | "ext-curl": "For loading OID information from the web if they have not bee defined statically", 148 | "ext-gmp": "GMP is the preferred extension for big integer calculations", 149 | "phpseclib/bcmath_compat": "BCmath polyfill for servers where neither GMP nor BCmath is available" 150 | }, 151 | "type": "library", 152 | "extra": { 153 | "branch-alias": { 154 | "dev-master": "2.0.x-dev" 155 | } 156 | }, 157 | "autoload": { 158 | "psr-4": { 159 | "FG\\": "lib/" 160 | } 161 | }, 162 | "notification-url": "https://packagist.org/downloads/", 163 | "license": [ 164 | "MIT" 165 | ], 166 | "authors": [ 167 | { 168 | "name": "Friedrich Große", 169 | "email": "friedrich.grosse@gmail.com", 170 | "homepage": "https://github.com/FGrosse", 171 | "role": "Author" 172 | }, 173 | { 174 | "name": "All contributors", 175 | "homepage": "https://github.com/FGrosse/PHPASN1/contributors" 176 | } 177 | ], 178 | "description": "A PHP Framework that allows you to encode and decode arbitrary ASN.1 structures using the ITU-T X.690 Encoding Rules.", 179 | "homepage": "https://github.com/FGrosse/PHPASN1", 180 | "keywords": [ 181 | "DER", 182 | "asn.1", 183 | "asn1", 184 | "ber", 185 | "binary", 186 | "decoding", 187 | "encoding", 188 | "x.509", 189 | "x.690", 190 | "x509", 191 | "x690" 192 | ], 193 | "support": { 194 | "issues": "https://github.com/fgrosse/PHPASN1/issues", 195 | "source": "https://github.com/fgrosse/PHPASN1/tree/v2.3.0" 196 | }, 197 | "time": "2021-04-24T19:01:55+00:00" 198 | }, 199 | { 200 | "name": "netresearch/jsonmapper", 201 | "version": "v4.0.0", 202 | "source": { 203 | "type": "git", 204 | "url": "https://github.com/cweiske/jsonmapper.git", 205 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" 206 | }, 207 | "dist": { 208 | "type": "zip", 209 | "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", 210 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", 211 | "shasum": "" 212 | }, 213 | "require": { 214 | "ext-json": "*", 215 | "ext-pcre": "*", 216 | "ext-reflection": "*", 217 | "ext-spl": "*", 218 | "php": ">=7.1" 219 | }, 220 | "require-dev": { 221 | "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0", 222 | "squizlabs/php_codesniffer": "~3.5" 223 | }, 224 | "type": "library", 225 | "autoload": { 226 | "psr-0": { 227 | "JsonMapper": "src/" 228 | } 229 | }, 230 | "notification-url": "https://packagist.org/downloads/", 231 | "license": [ 232 | "OSL-3.0" 233 | ], 234 | "authors": [ 235 | { 236 | "name": "Christian Weiske", 237 | "email": "cweiske@cweiske.de", 238 | "homepage": "http://github.com/cweiske/jsonmapper/", 239 | "role": "Developer" 240 | } 241 | ], 242 | "description": "Map nested JSON structures onto PHP classes", 243 | "support": { 244 | "email": "cweiske@cweiske.de", 245 | "issues": "https://github.com/cweiske/jsonmapper/issues", 246 | "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" 247 | }, 248 | "time": "2020-12-01T19:48:11+00:00" 249 | }, 250 | { 251 | "name": "pocketmine/bedrock-data", 252 | "version": "1.5.0+bedrock-1.18.0", 253 | "source": { 254 | "type": "git", 255 | "url": "https://github.com/pmmp/BedrockData.git", 256 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c" 257 | }, 258 | "dist": { 259 | "type": "zip", 260 | "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c", 261 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c", 262 | "shasum": "" 263 | }, 264 | "type": "library", 265 | "notification-url": "https://packagist.org/downloads/", 266 | "license": [ 267 | "LGPL-3.0" 268 | ], 269 | "description": "Blobs of data generated from Minecraft: Bedrock Edition, used by PocketMine-MP", 270 | "support": { 271 | "issues": "https://github.com/pmmp/BedrockData/issues", 272 | "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.18.0" 273 | }, 274 | "time": "2021-11-30T18:30:46+00:00" 275 | }, 276 | { 277 | "name": "pocketmine/bedrock-protocol", 278 | "version": "7.0.0+bedrock-1.18.0", 279 | "source": { 280 | "type": "git", 281 | "url": "https://github.com/pmmp/BedrockProtocol.git", 282 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82" 283 | }, 284 | "dist": { 285 | "type": "zip", 286 | "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/040a883a4abb8c9b93114d5278cb5fecc635da82", 287 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82", 288 | "shasum": "" 289 | }, 290 | "require": { 291 | "ext-json": "*", 292 | "netresearch/jsonmapper": "^4.0", 293 | "php": "^8.0", 294 | "pocketmine/binaryutils": "^0.2.0", 295 | "pocketmine/color": "^0.2.0", 296 | "pocketmine/math": "^0.3.0 || ^0.4.0", 297 | "pocketmine/nbt": "^0.3.0", 298 | "ramsey/uuid": "^4.1" 299 | }, 300 | "require-dev": { 301 | "phpstan/phpstan": "1.2.0", 302 | "phpstan/phpstan-phpunit": "^1.0.0", 303 | "phpstan/phpstan-strict-rules": "^1.0.0", 304 | "phpunit/phpunit": "^9.5" 305 | }, 306 | "type": "library", 307 | "autoload": { 308 | "psr-4": { 309 | "pocketmine\\network\\mcpe\\protocol\\": "src/" 310 | } 311 | }, 312 | "notification-url": "https://packagist.org/downloads/", 313 | "license": [ 314 | "LGPL-3.0" 315 | ], 316 | "description": "An implementation of the Minecraft: Bedrock Edition protocol in PHP", 317 | "support": { 318 | "issues": "https://github.com/pmmp/BedrockProtocol/issues", 319 | "source": "https://github.com/pmmp/BedrockProtocol/tree/7.0.0+bedrock-1.18.0" 320 | }, 321 | "time": "2021-11-30T19:02:41+00:00" 322 | }, 323 | { 324 | "name": "pocketmine/binaryutils", 325 | "version": "0.2.2", 326 | "source": { 327 | "type": "git", 328 | "url": "https://github.com/pmmp/BinaryUtils.git", 329 | "reference": "f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9" 330 | }, 331 | "dist": { 332 | "type": "zip", 333 | "url": "https://api.github.com/repos/pmmp/BinaryUtils/zipball/f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9", 334 | "reference": "f883e1cf9099ed6a757a10a2f75b3333eeb2cdf9", 335 | "shasum": "" 336 | }, 337 | "require": { 338 | "php": "^7.4 || ^8.0", 339 | "php-64bit": "*" 340 | }, 341 | "require-dev": { 342 | "phpstan/extension-installer": "^1.0", 343 | "phpstan/phpstan": "0.12.99", 344 | "phpstan/phpstan-strict-rules": "^0.12.4" 345 | }, 346 | "type": "library", 347 | "autoload": { 348 | "psr-4": { 349 | "pocketmine\\utils\\": "src/" 350 | } 351 | }, 352 | "notification-url": "https://packagist.org/downloads/", 353 | "license": [ 354 | "LGPL-3.0" 355 | ], 356 | "description": "Classes and methods for conveniently handling binary data", 357 | "support": { 358 | "issues": "https://github.com/pmmp/BinaryUtils/issues", 359 | "source": "https://github.com/pmmp/BinaryUtils/tree/0.2.2" 360 | }, 361 | "time": "2021-10-22T19:54:16+00:00" 362 | }, 363 | { 364 | "name": "pocketmine/callback-validator", 365 | "version": "1.0.3", 366 | "source": { 367 | "type": "git", 368 | "url": "https://github.com/pmmp/CallbackValidator.git", 369 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2" 370 | }, 371 | "dist": { 372 | "type": "zip", 373 | "url": "https://api.github.com/repos/pmmp/CallbackValidator/zipball/64787469766bcaa7e5885242e85c23c25e8c55a2", 374 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2", 375 | "shasum": "" 376 | }, 377 | "require": { 378 | "ext-reflection": "*", 379 | "php": "^7.1 || ^8.0" 380 | }, 381 | "replace": { 382 | "daverandom/callback-validator": "*" 383 | }, 384 | "require-dev": { 385 | "phpstan/extension-installer": "^1.0", 386 | "phpstan/phpstan": "0.12.59", 387 | "phpstan/phpstan-strict-rules": "^0.12.4", 388 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0" 389 | }, 390 | "type": "library", 391 | "autoload": { 392 | "psr-4": { 393 | "DaveRandom\\CallbackValidator\\": "src/" 394 | } 395 | }, 396 | "notification-url": "https://packagist.org/downloads/", 397 | "license": [ 398 | "MIT" 399 | ], 400 | "authors": [ 401 | { 402 | "name": "Chris Wright", 403 | "email": "cw@daverandom.com" 404 | } 405 | ], 406 | "description": "Fork of daverandom/callback-validator - Tools for validating callback signatures", 407 | "support": { 408 | "issues": "https://github.com/pmmp/CallbackValidator/issues", 409 | "source": "https://github.com/pmmp/CallbackValidator/tree/1.0.3" 410 | }, 411 | "time": "2020-12-11T01:45:37+00:00" 412 | }, 413 | { 414 | "name": "pocketmine/classloader", 415 | "version": "0.2.0", 416 | "source": { 417 | "type": "git", 418 | "url": "https://github.com/pmmp/ClassLoader.git", 419 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78" 420 | }, 421 | "dist": { 422 | "type": "zip", 423 | "url": "https://api.github.com/repos/pmmp/ClassLoader/zipball/49ea303993efdfb39cd302e2156d50aa78209e78", 424 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78", 425 | "shasum": "" 426 | }, 427 | "require": { 428 | "ext-pthreads": "~3.2.0 || ^4.0", 429 | "ext-reflection": "*", 430 | "php": "^8.0" 431 | }, 432 | "conflict": { 433 | "pocketmine/spl": "<0.4" 434 | }, 435 | "require-dev": { 436 | "phpstan/extension-installer": "^1.0", 437 | "phpstan/phpstan": "0.12.99", 438 | "phpstan/phpstan-strict-rules": "^0.12.4", 439 | "phpunit/phpunit": "^9.5" 440 | }, 441 | "type": "library", 442 | "autoload": { 443 | "classmap": [ 444 | "./src" 445 | ] 446 | }, 447 | "notification-url": "https://packagist.org/downloads/", 448 | "license": [ 449 | "LGPL-3.0" 450 | ], 451 | "description": "Ad-hoc autoloading components used by PocketMine-MP", 452 | "support": { 453 | "issues": "https://github.com/pmmp/ClassLoader/issues", 454 | "source": "https://github.com/pmmp/ClassLoader/tree/0.2.0" 455 | }, 456 | "time": "2021-11-01T20:17:27+00:00" 457 | }, 458 | { 459 | "name": "pocketmine/color", 460 | "version": "0.2.0", 461 | "source": { 462 | "type": "git", 463 | "url": "https://github.com/pmmp/Color.git", 464 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2" 465 | }, 466 | "dist": { 467 | "type": "zip", 468 | "url": "https://api.github.com/repos/pmmp/Color/zipball/09be6ea6d76f2e33d6813c39d29c22c46c17e1d2", 469 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2", 470 | "shasum": "" 471 | }, 472 | "require": { 473 | "php": "^7.2 || ^8.0" 474 | }, 475 | "require-dev": { 476 | "phpstan/phpstan": "0.12.59", 477 | "phpstan/phpstan-strict-rules": "^0.12.2" 478 | }, 479 | "type": "library", 480 | "autoload": { 481 | "psr-4": { 482 | "pocketmine\\color\\": "src/" 483 | } 484 | }, 485 | "notification-url": "https://packagist.org/downloads/", 486 | "license": [ 487 | "LGPL-3.0" 488 | ], 489 | "description": "Color handling library used by PocketMine-MP and related projects", 490 | "support": { 491 | "issues": "https://github.com/pmmp/Color/issues", 492 | "source": "https://github.com/pmmp/Color/tree/0.2.0" 493 | }, 494 | "time": "2020-12-11T01:24:32+00:00" 495 | }, 496 | { 497 | "name": "pocketmine/errorhandler", 498 | "version": "0.3.0", 499 | "source": { 500 | "type": "git", 501 | "url": "https://github.com/pmmp/ErrorHandler.git", 502 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b" 503 | }, 504 | "dist": { 505 | "type": "zip", 506 | "url": "https://api.github.com/repos/pmmp/ErrorHandler/zipball/ec742b209e8056bbe855069c4eff94c9734ea19b", 507 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b", 508 | "shasum": "" 509 | }, 510 | "require": { 511 | "php": "^7.2 || ^8.0" 512 | }, 513 | "require-dev": { 514 | "phpstan/phpstan": "0.12.75", 515 | "phpstan/phpstan-strict-rules": "^0.12.2" 516 | }, 517 | "type": "library", 518 | "autoload": { 519 | "psr-4": { 520 | "pocketmine\\errorhandler\\": "src/" 521 | } 522 | }, 523 | "notification-url": "https://packagist.org/downloads/", 524 | "license": [ 525 | "LGPL-3.0" 526 | ], 527 | "description": "Utilities to handle nasty PHP E_* errors in a usable way", 528 | "support": { 529 | "issues": "https://github.com/pmmp/ErrorHandler/issues", 530 | "source": "https://github.com/pmmp/ErrorHandler/tree/0.3.0" 531 | }, 532 | "time": "2021-02-12T18:56:22+00:00" 533 | }, 534 | { 535 | "name": "pocketmine/locale-data", 536 | "version": "2.0.21", 537 | "source": { 538 | "type": "git", 539 | "url": "https://github.com/pmmp/Language.git", 540 | "reference": "0331388b72690261e1aec0f90c88f405da98a402" 541 | }, 542 | "dist": { 543 | "type": "zip", 544 | "url": "https://api.github.com/repos/pmmp/Language/zipball/0331388b72690261e1aec0f90c88f405da98a402", 545 | "reference": "0331388b72690261e1aec0f90c88f405da98a402", 546 | "shasum": "" 547 | }, 548 | "type": "library", 549 | "notification-url": "https://packagist.org/downloads/", 550 | "description": "Language resources used by PocketMine-MP", 551 | "support": { 552 | "issues": "https://github.com/pmmp/Language/issues", 553 | "source": "https://github.com/pmmp/Language/tree/2.0.21" 554 | }, 555 | "time": "2021-12-03T20:25:13+00:00" 556 | }, 557 | { 558 | "name": "pocketmine/log", 559 | "version": "0.4.0", 560 | "source": { 561 | "type": "git", 562 | "url": "https://github.com/pmmp/Log.git", 563 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043" 564 | }, 565 | "dist": { 566 | "type": "zip", 567 | "url": "https://api.github.com/repos/pmmp/Log/zipball/e6c912c0f9055c81d23108ec2d179b96f404c043", 568 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043", 569 | "shasum": "" 570 | }, 571 | "require": { 572 | "php": "^7.4 || ^8.0" 573 | }, 574 | "conflict": { 575 | "pocketmine/spl": "<0.4" 576 | }, 577 | "require-dev": { 578 | "phpstan/phpstan": "0.12.88", 579 | "phpstan/phpstan-strict-rules": "^0.12.2" 580 | }, 581 | "type": "library", 582 | "autoload": { 583 | "classmap": [ 584 | "./src" 585 | ] 586 | }, 587 | "notification-url": "https://packagist.org/downloads/", 588 | "license": [ 589 | "LGPL-3.0" 590 | ], 591 | "description": "Logging components used by PocketMine-MP and related projects", 592 | "support": { 593 | "issues": "https://github.com/pmmp/Log/issues", 594 | "source": "https://github.com/pmmp/Log/tree/0.4.0" 595 | }, 596 | "time": "2021-06-18T19:08:09+00:00" 597 | }, 598 | { 599 | "name": "pocketmine/log-pthreads", 600 | "version": "0.4.0", 601 | "source": { 602 | "type": "git", 603 | "url": "https://github.com/pmmp/LogPthreads.git", 604 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd" 605 | }, 606 | "dist": { 607 | "type": "zip", 608 | "url": "https://api.github.com/repos/pmmp/LogPthreads/zipball/61f709e8cf36bcc24e4efe02acded680a1ce23cd", 609 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd", 610 | "shasum": "" 611 | }, 612 | "require": { 613 | "ext-pthreads": "~3.2.0 || ^4.0", 614 | "php": "^7.4 || ^8.0", 615 | "pocketmine/log": "^0.4.0" 616 | }, 617 | "conflict": { 618 | "pocketmine/spl": "<0.4" 619 | }, 620 | "require-dev": { 621 | "phpstan/extension-installer": "^1.0", 622 | "phpstan/phpstan": "0.12.88", 623 | "phpstan/phpstan-strict-rules": "^0.12.4" 624 | }, 625 | "type": "library", 626 | "autoload": { 627 | "classmap": [ 628 | "./src" 629 | ] 630 | }, 631 | "notification-url": "https://packagist.org/downloads/", 632 | "license": [ 633 | "LGPL-3.0" 634 | ], 635 | "description": "Logging components specialized for pthreads used by PocketMine-MP and related projects", 636 | "support": { 637 | "issues": "https://github.com/pmmp/LogPthreads/issues", 638 | "source": "https://github.com/pmmp/LogPthreads/tree/0.4.0" 639 | }, 640 | "time": "2021-11-01T21:42:09+00:00" 641 | }, 642 | { 643 | "name": "pocketmine/math", 644 | "version": "0.4.1", 645 | "source": { 646 | "type": "git", 647 | "url": "https://github.com/pmmp/Math.git", 648 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac" 649 | }, 650 | "dist": { 651 | "type": "zip", 652 | "url": "https://api.github.com/repos/pmmp/Math/zipball/9504957e90415ee1b33cbc13e622c6c5be88e5ac", 653 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac", 654 | "shasum": "" 655 | }, 656 | "require": { 657 | "php": "^8.0", 658 | "php-64bit": "*" 659 | }, 660 | "require-dev": { 661 | "phpstan/extension-installer": "^1.0", 662 | "phpstan/phpstan": "1.2.0", 663 | "phpstan/phpstan-strict-rules": "^1.0", 664 | "phpunit/phpunit": "^8.5 || ^9.5" 665 | }, 666 | "type": "library", 667 | "autoload": { 668 | "psr-4": { 669 | "pocketmine\\math\\": "src/" 670 | } 671 | }, 672 | "notification-url": "https://packagist.org/downloads/", 673 | "license": [ 674 | "LGPL-3.0" 675 | ], 676 | "description": "PHP library containing math related code used in PocketMine-MP", 677 | "support": { 678 | "issues": "https://github.com/pmmp/Math/issues", 679 | "source": "https://github.com/pmmp/Math/tree/0.4.1" 680 | }, 681 | "time": "2021-12-03T14:28:34+00:00" 682 | }, 683 | { 684 | "name": "pocketmine/nbt", 685 | "version": "0.3.0", 686 | "source": { 687 | "type": "git", 688 | "url": "https://github.com/pmmp/NBT.git", 689 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31" 690 | }, 691 | "dist": { 692 | "type": "zip", 693 | "url": "https://api.github.com/repos/pmmp/NBT/zipball/98c4a04b55a915e18f83d3b0c9beb24a71abcd31", 694 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31", 695 | "shasum": "" 696 | }, 697 | "require": { 698 | "php": "^7.4 || ^8.0", 699 | "php-64bit": "*", 700 | "pocketmine/binaryutils": "^0.2.0" 701 | }, 702 | "require-dev": { 703 | "irstea/phpunit-shim": "^9.5", 704 | "phpstan/extension-installer": "^1.0", 705 | "phpstan/phpstan": "0.12.85", 706 | "phpstan/phpstan-strict-rules": "^0.12.4" 707 | }, 708 | "type": "library", 709 | "autoload": { 710 | "psr-4": { 711 | "pocketmine\\nbt\\": "src/" 712 | } 713 | }, 714 | "notification-url": "https://packagist.org/downloads/", 715 | "license": [ 716 | "LGPL-3.0" 717 | ], 718 | "description": "PHP library for working with Named Binary Tags", 719 | "support": { 720 | "issues": "https://github.com/pmmp/NBT/issues", 721 | "source": "https://github.com/pmmp/NBT/tree/0.3.0" 722 | }, 723 | "time": "2021-05-18T15:46:33+00:00" 724 | }, 725 | { 726 | "name": "pocketmine/pocketmine-mp", 727 | "version": "4.0.0", 728 | "source": { 729 | "type": "git", 730 | "url": "https://github.com/pmmp/PocketMine-MP.git", 731 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218" 732 | }, 733 | "dist": { 734 | "type": "zip", 735 | "url": "https://api.github.com/repos/pmmp/PocketMine-MP/zipball/468faa464b2bc5c97f23fafbb71ea61035f6f218", 736 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218", 737 | "shasum": "" 738 | }, 739 | "require": { 740 | "adhocore/json-comment": "^1.1", 741 | "composer-runtime-api": "^2.0", 742 | "ext-chunkutils2": "^0.3.1", 743 | "ext-crypto": "^0.3.1", 744 | "ext-ctype": "*", 745 | "ext-curl": "*", 746 | "ext-date": "*", 747 | "ext-gmp": "*", 748 | "ext-hash": "*", 749 | "ext-igbinary": "^3.0.1", 750 | "ext-json": "*", 751 | "ext-leveldb": "^0.2.1 || ^0.3.0", 752 | "ext-mbstring": "*", 753 | "ext-morton": "^0.1.0", 754 | "ext-openssl": "*", 755 | "ext-pcre": "*", 756 | "ext-phar": "*", 757 | "ext-pthreads": "^4.0", 758 | "ext-reflection": "*", 759 | "ext-simplexml": "*", 760 | "ext-sockets": "*", 761 | "ext-spl": "*", 762 | "ext-yaml": ">=2.0.0", 763 | "ext-zip": "*", 764 | "ext-zlib": ">=1.2.11", 765 | "fgrosse/phpasn1": "^2.3", 766 | "netresearch/jsonmapper": "^4.0", 767 | "php": "^8.0", 768 | "php-64bit": "*", 769 | "pocketmine/bedrock-data": "^1.5.0+bedrock-1.18.0", 770 | "pocketmine/bedrock-protocol": "^7.0.0+bedrock-1.18.0", 771 | "pocketmine/binaryutils": "^0.2.1", 772 | "pocketmine/callback-validator": "^1.0.2", 773 | "pocketmine/classloader": "^0.2.0", 774 | "pocketmine/color": "^0.2.0", 775 | "pocketmine/errorhandler": "^0.3.0", 776 | "pocketmine/locale-data": "^2.0.16", 777 | "pocketmine/log": "^0.4.0", 778 | "pocketmine/log-pthreads": "^0.4.0", 779 | "pocketmine/math": "^0.4.0", 780 | "pocketmine/nbt": "^0.3.0", 781 | "pocketmine/raklib": "^0.14.2", 782 | "pocketmine/raklib-ipc": "^0.1.0", 783 | "pocketmine/snooze": "^0.3.0", 784 | "ramsey/uuid": "^4.1", 785 | "webmozart/path-util": "^2.3" 786 | }, 787 | "require-dev": { 788 | "phpstan/phpstan": "1.2.0", 789 | "phpstan/phpstan-phpunit": "^1.0.0", 790 | "phpstan/phpstan-strict-rules": "^1.0.0", 791 | "phpunit/phpunit": "^9.2" 792 | }, 793 | "type": "project", 794 | "autoload": { 795 | "psr-4": { 796 | "pocketmine\\": "src/" 797 | }, 798 | "files": [ 799 | "src/CoreConstants.php" 800 | ] 801 | }, 802 | "notification-url": "https://packagist.org/downloads/", 803 | "license": [ 804 | "LGPL-3.0" 805 | ], 806 | "description": "A server software for Minecraft: Bedrock Edition written in PHP", 807 | "homepage": "https://pmmp.io", 808 | "support": { 809 | "issues": "https://github.com/pmmp/PocketMine-MP/issues", 810 | "source": "https://github.com/pmmp/PocketMine-MP/tree/4.0.0" 811 | }, 812 | "funding": [ 813 | { 814 | "url": "https://github.com/pmmp/PocketMine-MP#donate", 815 | "type": "custom" 816 | }, 817 | { 818 | "url": "https://www.patreon.com/pocketminemp", 819 | "type": "patreon" 820 | } 821 | ], 822 | "time": "2021-12-01T22:33:52+00:00" 823 | }, 824 | { 825 | "name": "pocketmine/raklib", 826 | "version": "0.14.2", 827 | "source": { 828 | "type": "git", 829 | "url": "https://github.com/pmmp/RakLib.git", 830 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec" 831 | }, 832 | "dist": { 833 | "type": "zip", 834 | "url": "https://api.github.com/repos/pmmp/RakLib/zipball/e3a861187470e1facc6625040128f447ebbcbaec", 835 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec", 836 | "shasum": "" 837 | }, 838 | "require": { 839 | "ext-sockets": "*", 840 | "php": "^8.0", 841 | "php-64bit": "*", 842 | "php-ipv6": "*", 843 | "pocketmine/binaryutils": "^0.2.0", 844 | "pocketmine/log": "^0.3.0 || ^0.4.0" 845 | }, 846 | "require-dev": { 847 | "phpstan/phpstan": "0.12.99", 848 | "phpstan/phpstan-strict-rules": "^0.12.2" 849 | }, 850 | "type": "library", 851 | "autoload": { 852 | "psr-4": { 853 | "raklib\\": "src/" 854 | } 855 | }, 856 | "notification-url": "https://packagist.org/downloads/", 857 | "license": [ 858 | "GPL-3.0" 859 | ], 860 | "description": "A RakNet server implementation written in PHP", 861 | "support": { 862 | "issues": "https://github.com/pmmp/RakLib/issues", 863 | "source": "https://github.com/pmmp/RakLib/tree/0.14.2" 864 | }, 865 | "time": "2021-10-04T20:39:11+00:00" 866 | }, 867 | { 868 | "name": "pocketmine/raklib-ipc", 869 | "version": "0.1.1", 870 | "source": { 871 | "type": "git", 872 | "url": "https://github.com/pmmp/RakLibIpc.git", 873 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed" 874 | }, 875 | "dist": { 876 | "type": "zip", 877 | "url": "https://api.github.com/repos/pmmp/RakLibIpc/zipball/922a6444b0c6c7daaa5aa5a832107e1ec4738aed", 878 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed", 879 | "shasum": "" 880 | }, 881 | "require": { 882 | "php": "^7.4 || ^8.0", 883 | "php-64bit": "*", 884 | "pocketmine/binaryutils": "^0.2.0", 885 | "pocketmine/raklib": "^0.13.1 || ^0.14.0" 886 | }, 887 | "require-dev": { 888 | "phpstan/phpstan": "0.12.81", 889 | "phpstan/phpstan-strict-rules": "^0.12.2" 890 | }, 891 | "type": "library", 892 | "autoload": { 893 | "psr-4": { 894 | "raklib\\server\\ipc\\": "src/" 895 | } 896 | }, 897 | "notification-url": "https://packagist.org/downloads/", 898 | "license": [ 899 | "GPL-3.0" 900 | ], 901 | "description": "Channel-based protocols for inter-thread/inter-process communication with RakLib", 902 | "support": { 903 | "issues": "https://github.com/pmmp/RakLibIpc/issues", 904 | "source": "https://github.com/pmmp/RakLibIpc/tree/0.1.1" 905 | }, 906 | "time": "2021-09-22T17:01:12+00:00" 907 | }, 908 | { 909 | "name": "pocketmine/snooze", 910 | "version": "0.3.1", 911 | "source": { 912 | "type": "git", 913 | "url": "https://github.com/pmmp/Snooze.git", 914 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b" 915 | }, 916 | "dist": { 917 | "type": "zip", 918 | "url": "https://api.github.com/repos/pmmp/Snooze/zipball/0ac8fc2a781c419a1f64ebca4d5835028f59e29b", 919 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b", 920 | "shasum": "" 921 | }, 922 | "require": { 923 | "ext-pthreads": "~3.2.0 || ^4.0", 924 | "php-64bit": "^7.3 || ^8.0" 925 | }, 926 | "require-dev": { 927 | "phpstan/extension-installer": "^1.0", 928 | "phpstan/phpstan": "0.12.99", 929 | "phpstan/phpstan-strict-rules": "^0.12.4" 930 | }, 931 | "type": "library", 932 | "autoload": { 933 | "psr-4": { 934 | "pocketmine\\snooze\\": "src/" 935 | } 936 | }, 937 | "notification-url": "https://packagist.org/downloads/", 938 | "license": [ 939 | "LGPL-3.0" 940 | ], 941 | "description": "Thread notification management library for code using the pthreads extension", 942 | "support": { 943 | "issues": "https://github.com/pmmp/Snooze/issues", 944 | "source": "https://github.com/pmmp/Snooze/tree/0.3.1" 945 | }, 946 | "time": "2021-11-01T20:50:08+00:00" 947 | }, 948 | { 949 | "name": "ramsey/collection", 950 | "version": "1.2.2", 951 | "source": { 952 | "type": "git", 953 | "url": "https://github.com/ramsey/collection.git", 954 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a" 955 | }, 956 | "dist": { 957 | "type": "zip", 958 | "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a", 959 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a", 960 | "shasum": "" 961 | }, 962 | "require": { 963 | "php": "^7.3 || ^8", 964 | "symfony/polyfill-php81": "^1.23" 965 | }, 966 | "require-dev": { 967 | "captainhook/captainhook": "^5.3", 968 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", 969 | "ergebnis/composer-normalize": "^2.6", 970 | "fakerphp/faker": "^1.5", 971 | "hamcrest/hamcrest-php": "^2", 972 | "jangregor/phpstan-prophecy": "^0.8", 973 | "mockery/mockery": "^1.3", 974 | "phpspec/prophecy-phpunit": "^2.0", 975 | "phpstan/extension-installer": "^1", 976 | "phpstan/phpstan": "^0.12.32", 977 | "phpstan/phpstan-mockery": "^0.12.5", 978 | "phpstan/phpstan-phpunit": "^0.12.11", 979 | "phpunit/phpunit": "^8.5 || ^9", 980 | "psy/psysh": "^0.10.4", 981 | "slevomat/coding-standard": "^6.3", 982 | "squizlabs/php_codesniffer": "^3.5", 983 | "vimeo/psalm": "^4.4" 984 | }, 985 | "type": "library", 986 | "autoload": { 987 | "psr-4": { 988 | "Ramsey\\Collection\\": "src/" 989 | } 990 | }, 991 | "notification-url": "https://packagist.org/downloads/", 992 | "license": [ 993 | "MIT" 994 | ], 995 | "authors": [ 996 | { 997 | "name": "Ben Ramsey", 998 | "email": "ben@benramsey.com", 999 | "homepage": "https://benramsey.com" 1000 | } 1001 | ], 1002 | "description": "A PHP library for representing and manipulating collections.", 1003 | "keywords": [ 1004 | "array", 1005 | "collection", 1006 | "hash", 1007 | "map", 1008 | "queue", 1009 | "set" 1010 | ], 1011 | "support": { 1012 | "issues": "https://github.com/ramsey/collection/issues", 1013 | "source": "https://github.com/ramsey/collection/tree/1.2.2" 1014 | }, 1015 | "funding": [ 1016 | { 1017 | "url": "https://github.com/ramsey", 1018 | "type": "github" 1019 | }, 1020 | { 1021 | "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", 1022 | "type": "tidelift" 1023 | } 1024 | ], 1025 | "time": "2021-10-10T03:01:02+00:00" 1026 | }, 1027 | { 1028 | "name": "ramsey/uuid", 1029 | "version": "dev-main", 1030 | "source": { 1031 | "type": "git", 1032 | "url": "https://github.com/ramsey/uuid.git", 1033 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374" 1034 | }, 1035 | "dist": { 1036 | "type": "zip", 1037 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd372a7b47a54734cbd491df40b5a48614d8d374", 1038 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374", 1039 | "shasum": "" 1040 | }, 1041 | "require": { 1042 | "brick/math": "^0.8 || ^0.9", 1043 | "ext-json": "*", 1044 | "php": "^7.2 || ^8.0", 1045 | "ramsey/collection": "^1.0", 1046 | "symfony/polyfill-ctype": "^1.8", 1047 | "symfony/polyfill-php80": "^1.14" 1048 | }, 1049 | "replace": { 1050 | "rhumsaa/uuid": "self.version" 1051 | }, 1052 | "require-dev": { 1053 | "captainhook/captainhook": "^5.10", 1054 | "captainhook/plugin-composer": "^5.3", 1055 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", 1056 | "doctrine/annotations": "^1.8", 1057 | "ergebnis/composer-normalize": "^2.15", 1058 | "mockery/mockery": "^1.3", 1059 | "moontoast/math": "^1.1", 1060 | "paragonie/random-lib": "^2", 1061 | "php-mock/php-mock": "^2.2", 1062 | "php-mock/php-mock-mockery": "^1.3", 1063 | "php-parallel-lint/php-parallel-lint": "^1.1", 1064 | "phpbench/phpbench": "^1.0", 1065 | "phpstan/extension-installer": "^1.0", 1066 | "phpstan/phpstan": "^0.12", 1067 | "phpstan/phpstan-mockery": "^0.12", 1068 | "phpstan/phpstan-phpunit": "^0.12", 1069 | "phpunit/phpunit": "^8.5 || ^9", 1070 | "slevomat/coding-standard": "^7.0", 1071 | "squizlabs/php_codesniffer": "^3.5", 1072 | "vimeo/psalm": "^4.9" 1073 | }, 1074 | "suggest": { 1075 | "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", 1076 | "ext-ctype": "Enables faster processing of character classification using ctype functions.", 1077 | "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", 1078 | "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", 1079 | "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", 1080 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." 1081 | }, 1082 | "default-branch": true, 1083 | "type": "library", 1084 | "extra": { 1085 | "branch-alias": { 1086 | "dev-main": "4.x-dev" 1087 | }, 1088 | "captainhook": { 1089 | "force-install": true 1090 | } 1091 | }, 1092 | "autoload": { 1093 | "psr-4": { 1094 | "Ramsey\\Uuid\\": "src/" 1095 | }, 1096 | "files": [ 1097 | "src/functions.php" 1098 | ] 1099 | }, 1100 | "notification-url": "https://packagist.org/downloads/", 1101 | "license": [ 1102 | "MIT" 1103 | ], 1104 | "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", 1105 | "keywords": [ 1106 | "guid", 1107 | "identifier", 1108 | "uuid" 1109 | ], 1110 | "support": { 1111 | "issues": "https://github.com/ramsey/uuid/issues", 1112 | "source": "https://github.com/ramsey/uuid/tree/main" 1113 | }, 1114 | "funding": [ 1115 | { 1116 | "url": "https://github.com/ramsey", 1117 | "type": "github" 1118 | }, 1119 | { 1120 | "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", 1121 | "type": "tidelift" 1122 | } 1123 | ], 1124 | "time": "2021-10-13T18:44:27+00:00" 1125 | }, 1126 | { 1127 | "name": "symfony/polyfill-ctype", 1128 | "version": "dev-main", 1129 | "source": { 1130 | "type": "git", 1131 | "url": "https://github.com/symfony/polyfill-ctype.git", 1132 | "reference": "30885182c981ab175d4d034db0f6f469898070ab" 1133 | }, 1134 | "dist": { 1135 | "type": "zip", 1136 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", 1137 | "reference": "30885182c981ab175d4d034db0f6f469898070ab", 1138 | "shasum": "" 1139 | }, 1140 | "require": { 1141 | "php": ">=7.1" 1142 | }, 1143 | "provide": { 1144 | "ext-ctype": "*" 1145 | }, 1146 | "suggest": { 1147 | "ext-ctype": "For best performance" 1148 | }, 1149 | "default-branch": true, 1150 | "type": "library", 1151 | "extra": { 1152 | "branch-alias": { 1153 | "dev-main": "1.23-dev" 1154 | }, 1155 | "thanks": { 1156 | "name": "symfony/polyfill", 1157 | "url": "https://github.com/symfony/polyfill" 1158 | } 1159 | }, 1160 | "autoload": { 1161 | "psr-4": { 1162 | "Symfony\\Polyfill\\Ctype\\": "" 1163 | }, 1164 | "files": [ 1165 | "bootstrap.php" 1166 | ] 1167 | }, 1168 | "notification-url": "https://packagist.org/downloads/", 1169 | "license": [ 1170 | "MIT" 1171 | ], 1172 | "authors": [ 1173 | { 1174 | "name": "Gert de Pagter", 1175 | "email": "BackEndTea@gmail.com" 1176 | }, 1177 | { 1178 | "name": "Symfony Community", 1179 | "homepage": "https://symfony.com/contributors" 1180 | } 1181 | ], 1182 | "description": "Symfony polyfill for ctype functions", 1183 | "homepage": "https://symfony.com", 1184 | "keywords": [ 1185 | "compatibility", 1186 | "ctype", 1187 | "polyfill", 1188 | "portable" 1189 | ], 1190 | "support": { 1191 | "source": "https://github.com/symfony/polyfill-ctype/tree/main" 1192 | }, 1193 | "funding": [ 1194 | { 1195 | "url": "https://symfony.com/sponsor", 1196 | "type": "custom" 1197 | }, 1198 | { 1199 | "url": "https://github.com/fabpot", 1200 | "type": "github" 1201 | }, 1202 | { 1203 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1204 | "type": "tidelift" 1205 | } 1206 | ], 1207 | "time": "2021-10-20T20:35:02+00:00" 1208 | }, 1209 | { 1210 | "name": "symfony/polyfill-php80", 1211 | "version": "dev-main", 1212 | "source": { 1213 | "type": "git", 1214 | "url": "https://github.com/symfony/polyfill-php80.git", 1215 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9" 1216 | }, 1217 | "dist": { 1218 | "type": "zip", 1219 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9", 1220 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9", 1221 | "shasum": "" 1222 | }, 1223 | "require": { 1224 | "php": ">=7.1" 1225 | }, 1226 | "default-branch": true, 1227 | "type": "library", 1228 | "extra": { 1229 | "branch-alias": { 1230 | "dev-main": "1.23-dev" 1231 | }, 1232 | "thanks": { 1233 | "name": "symfony/polyfill", 1234 | "url": "https://github.com/symfony/polyfill" 1235 | } 1236 | }, 1237 | "autoload": { 1238 | "psr-4": { 1239 | "Symfony\\Polyfill\\Php80\\": "" 1240 | }, 1241 | "files": [ 1242 | "bootstrap.php" 1243 | ], 1244 | "classmap": [ 1245 | "Resources/stubs" 1246 | ] 1247 | }, 1248 | "notification-url": "https://packagist.org/downloads/", 1249 | "license": [ 1250 | "MIT" 1251 | ], 1252 | "authors": [ 1253 | { 1254 | "name": "Ion Bazan", 1255 | "email": "ion.bazan@gmail.com" 1256 | }, 1257 | { 1258 | "name": "Nicolas Grekas", 1259 | "email": "p@tchwork.com" 1260 | }, 1261 | { 1262 | "name": "Symfony Community", 1263 | "homepage": "https://symfony.com/contributors" 1264 | } 1265 | ], 1266 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", 1267 | "homepage": "https://symfony.com", 1268 | "keywords": [ 1269 | "compatibility", 1270 | "polyfill", 1271 | "portable", 1272 | "shim" 1273 | ], 1274 | "support": { 1275 | "source": "https://github.com/symfony/polyfill-php80/tree/main" 1276 | }, 1277 | "funding": [ 1278 | { 1279 | "url": "https://symfony.com/sponsor", 1280 | "type": "custom" 1281 | }, 1282 | { 1283 | "url": "https://github.com/fabpot", 1284 | "type": "github" 1285 | }, 1286 | { 1287 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1288 | "type": "tidelift" 1289 | } 1290 | ], 1291 | "time": "2021-09-13T13:58:33+00:00" 1292 | }, 1293 | { 1294 | "name": "symfony/polyfill-php81", 1295 | "version": "dev-main", 1296 | "source": { 1297 | "type": "git", 1298 | "url": "https://github.com/symfony/polyfill-php81.git", 1299 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" 1300 | }, 1301 | "dist": { 1302 | "type": "zip", 1303 | "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", 1304 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", 1305 | "shasum": "" 1306 | }, 1307 | "require": { 1308 | "php": ">=7.1" 1309 | }, 1310 | "default-branch": true, 1311 | "type": "library", 1312 | "extra": { 1313 | "branch-alias": { 1314 | "dev-main": "1.23-dev" 1315 | }, 1316 | "thanks": { 1317 | "name": "symfony/polyfill", 1318 | "url": "https://github.com/symfony/polyfill" 1319 | } 1320 | }, 1321 | "autoload": { 1322 | "psr-4": { 1323 | "Symfony\\Polyfill\\Php81\\": "" 1324 | }, 1325 | "files": [ 1326 | "bootstrap.php" 1327 | ], 1328 | "classmap": [ 1329 | "Resources/stubs" 1330 | ] 1331 | }, 1332 | "notification-url": "https://packagist.org/downloads/", 1333 | "license": [ 1334 | "MIT" 1335 | ], 1336 | "authors": [ 1337 | { 1338 | "name": "Nicolas Grekas", 1339 | "email": "p@tchwork.com" 1340 | }, 1341 | { 1342 | "name": "Symfony Community", 1343 | "homepage": "https://symfony.com/contributors" 1344 | } 1345 | ], 1346 | "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", 1347 | "homepage": "https://symfony.com", 1348 | "keywords": [ 1349 | "compatibility", 1350 | "polyfill", 1351 | "portable", 1352 | "shim" 1353 | ], 1354 | "support": { 1355 | "source": "https://github.com/symfony/polyfill-php81/tree/main" 1356 | }, 1357 | "funding": [ 1358 | { 1359 | "url": "https://symfony.com/sponsor", 1360 | "type": "custom" 1361 | }, 1362 | { 1363 | "url": "https://github.com/fabpot", 1364 | "type": "github" 1365 | }, 1366 | { 1367 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1368 | "type": "tidelift" 1369 | } 1370 | ], 1371 | "time": "2021-09-13T13:58:11+00:00" 1372 | }, 1373 | { 1374 | "name": "webmozart/assert", 1375 | "version": "dev-master", 1376 | "source": { 1377 | "type": "git", 1378 | "url": "https://github.com/webmozarts/assert.git", 1379 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262" 1380 | }, 1381 | "dist": { 1382 | "type": "zip", 1383 | "url": "https://api.github.com/repos/webmozarts/assert/zipball/b419d648592b0b8911cbbe10d450fe314f4fd262", 1384 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262", 1385 | "shasum": "" 1386 | }, 1387 | "require": { 1388 | "php": "^7.2 || ^8.0", 1389 | "symfony/polyfill-ctype": "^1.8" 1390 | }, 1391 | "conflict": { 1392 | "phpstan/phpstan": "<0.12.20", 1393 | "vimeo/psalm": "<4.6.1 || 4.6.2" 1394 | }, 1395 | "require-dev": { 1396 | "phpunit/phpunit": "^8.5.13" 1397 | }, 1398 | "default-branch": true, 1399 | "type": "library", 1400 | "extra": { 1401 | "branch-alias": { 1402 | "dev-master": "1.10-dev" 1403 | } 1404 | }, 1405 | "autoload": { 1406 | "psr-4": { 1407 | "Webmozart\\Assert\\": "src/" 1408 | } 1409 | }, 1410 | "notification-url": "https://packagist.org/downloads/", 1411 | "license": [ 1412 | "MIT" 1413 | ], 1414 | "authors": [ 1415 | { 1416 | "name": "Bernhard Schussek", 1417 | "email": "bschussek@gmail.com" 1418 | } 1419 | ], 1420 | "description": "Assertions to validate method input/output with nice error messages.", 1421 | "keywords": [ 1422 | "assert", 1423 | "check", 1424 | "validate" 1425 | ], 1426 | "support": { 1427 | "issues": "https://github.com/webmozarts/assert/issues", 1428 | "source": "https://github.com/webmozarts/assert/tree/master" 1429 | }, 1430 | "time": "2021-06-19T13:45:26+00:00" 1431 | }, 1432 | { 1433 | "name": "webmozart/path-util", 1434 | "version": "2.3.0", 1435 | "source": { 1436 | "type": "git", 1437 | "url": "https://github.com/webmozart/path-util.git", 1438 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725" 1439 | }, 1440 | "dist": { 1441 | "type": "zip", 1442 | "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725", 1443 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725", 1444 | "shasum": "" 1445 | }, 1446 | "require": { 1447 | "php": ">=5.3.3", 1448 | "webmozart/assert": "~1.0" 1449 | }, 1450 | "require-dev": { 1451 | "phpunit/phpunit": "^4.6", 1452 | "sebastian/version": "^1.0.1" 1453 | }, 1454 | "type": "library", 1455 | "extra": { 1456 | "branch-alias": { 1457 | "dev-master": "2.3-dev" 1458 | } 1459 | }, 1460 | "autoload": { 1461 | "psr-4": { 1462 | "Webmozart\\PathUtil\\": "src/" 1463 | } 1464 | }, 1465 | "notification-url": "https://packagist.org/downloads/", 1466 | "license": [ 1467 | "MIT" 1468 | ], 1469 | "authors": [ 1470 | { 1471 | "name": "Bernhard Schussek", 1472 | "email": "bschussek@gmail.com" 1473 | } 1474 | ], 1475 | "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.", 1476 | "support": { 1477 | "issues": "https://github.com/webmozart/path-util/issues", 1478 | "source": "https://github.com/webmozart/path-util/tree/2.3.0" 1479 | }, 1480 | "abandoned": "symfony/filesystem", 1481 | "time": "2015-12-17T08:42:14+00:00" 1482 | } 1483 | ], 1484 | "packages-dev": [ 1485 | { 1486 | "name": "phpstan/phpstan", 1487 | "version": "1.2.0", 1488 | "source": { 1489 | "type": "git", 1490 | "url": "https://github.com/phpstan/phpstan.git", 1491 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee" 1492 | }, 1493 | "dist": { 1494 | "type": "zip", 1495 | "url": "https://api.github.com/repos/phpstan/phpstan/zipball/cbe085f9fdead5b6d62e4c022ca52dc9427a10ee", 1496 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee", 1497 | "shasum": "" 1498 | }, 1499 | "require": { 1500 | "php": "^7.1|^8.0" 1501 | }, 1502 | "conflict": { 1503 | "phpstan/phpstan-shim": "*" 1504 | }, 1505 | "bin": [ 1506 | "phpstan", 1507 | "phpstan.phar" 1508 | ], 1509 | "type": "library", 1510 | "extra": { 1511 | "branch-alias": { 1512 | "dev-master": "1.2-dev" 1513 | } 1514 | }, 1515 | "autoload": { 1516 | "files": [ 1517 | "bootstrap.php" 1518 | ] 1519 | }, 1520 | "notification-url": "https://packagist.org/downloads/", 1521 | "license": [ 1522 | "MIT" 1523 | ], 1524 | "description": "PHPStan - PHP Static Analysis Tool", 1525 | "support": { 1526 | "issues": "https://github.com/phpstan/phpstan/issues", 1527 | "source": "https://github.com/phpstan/phpstan/tree/1.2.0" 1528 | }, 1529 | "funding": [ 1530 | { 1531 | "url": "https://github.com/ondrejmirtes", 1532 | "type": "github" 1533 | }, 1534 | { 1535 | "url": "https://github.com/phpstan", 1536 | "type": "github" 1537 | }, 1538 | { 1539 | "url": "https://www.patreon.com/phpstan", 1540 | "type": "patreon" 1541 | }, 1542 | { 1543 | "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", 1544 | "type": "tidelift" 1545 | } 1546 | ], 1547 | "time": "2021-11-18T14:09:01+00:00" 1548 | } 1549 | ], 1550 | "aliases": [], 1551 | "minimum-stability": "dev", 1552 | "stability-flags": [], 1553 | "prefer-stable": false, 1554 | "prefer-lowest": false, 1555 | "platform": { 1556 | "php": "^8.0", 1557 | "ext-yaml": "*", 1558 | "ext-pthreads": "*", 1559 | "ext-zlib": "*", 1560 | "ext-json": "*" 1561 | }, 1562 | "platform-dev": [], 1563 | "plugin-api-version": "2.1.0" 1564 | } 1565 | -------------------------------------------------------------------------------- /Snow/composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "75d9f2630156e18a497a03f3b1daf1b3", 8 | "packages": [ 9 | { 10 | "name": "adhocore/json-comment", 11 | "version": "1.1.2", 12 | "source": { 13 | "type": "git", 14 | "url": "https://github.com/adhocore/php-json-comment.git", 15 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7" 16 | }, 17 | "dist": { 18 | "type": "zip", 19 | "url": "https://api.github.com/repos/adhocore/php-json-comment/zipball/fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7", 20 | "reference": "fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7", 21 | "shasum": "" 22 | }, 23 | "require": { 24 | "ext-ctype": "*", 25 | "php": ">=7.0" 26 | }, 27 | "require-dev": { 28 | "phpunit/phpunit": "^6.5 || ^7.5 || ^8.5" 29 | }, 30 | "type": "library", 31 | "autoload": { 32 | "psr-4": { 33 | "Ahc\\Json\\": "src/" 34 | } 35 | }, 36 | "notification-url": "https://packagist.org/downloads/", 37 | "license": [ 38 | "MIT" 39 | ], 40 | "authors": [ 41 | { 42 | "name": "Jitendra Adhikari", 43 | "email": "jiten.adhikary@gmail.com" 44 | } 45 | ], 46 | "description": "Lightweight JSON comment stripper library for PHP", 47 | "keywords": [ 48 | "comment", 49 | "json", 50 | "strip-comment" 51 | ], 52 | "support": { 53 | "issues": "https://github.com/adhocore/php-json-comment/issues", 54 | "source": "https://github.com/adhocore/php-json-comment/tree/1.1.2" 55 | }, 56 | "funding": [ 57 | { 58 | "url": "https://paypal.me/ji10", 59 | "type": "custom" 60 | } 61 | ], 62 | "time": "2021-04-09T03:06:06+00:00" 63 | }, 64 | { 65 | "name": "brick/math", 66 | "version": "0.9.3", 67 | "source": { 68 | "type": "git", 69 | "url": "https://github.com/brick/math.git", 70 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae" 71 | }, 72 | "dist": { 73 | "type": "zip", 74 | "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae", 75 | "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae", 76 | "shasum": "" 77 | }, 78 | "require": { 79 | "ext-json": "*", 80 | "php": "^7.1 || ^8.0" 81 | }, 82 | "require-dev": { 83 | "php-coveralls/php-coveralls": "^2.2", 84 | "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0", 85 | "vimeo/psalm": "4.9.2" 86 | }, 87 | "type": "library", 88 | "autoload": { 89 | "psr-4": { 90 | "Brick\\Math\\": "src/" 91 | } 92 | }, 93 | "notification-url": "https://packagist.org/downloads/", 94 | "license": [ 95 | "MIT" 96 | ], 97 | "description": "Arbitrary-precision arithmetic library", 98 | "keywords": [ 99 | "Arbitrary-precision", 100 | "BigInteger", 101 | "BigRational", 102 | "arithmetic", 103 | "bigdecimal", 104 | "bignum", 105 | "brick", 106 | "math" 107 | ], 108 | "support": { 109 | "issues": "https://github.com/brick/math/issues", 110 | "source": "https://github.com/brick/math/tree/0.9.3" 111 | }, 112 | "funding": [ 113 | { 114 | "url": "https://github.com/BenMorel", 115 | "type": "github" 116 | }, 117 | { 118 | "url": "https://tidelift.com/funding/github/packagist/brick/math", 119 | "type": "tidelift" 120 | } 121 | ], 122 | "time": "2021-08-15T20:50:18+00:00" 123 | }, 124 | { 125 | "name": "fgrosse/phpasn1", 126 | "version": "v2.3.0", 127 | "source": { 128 | "type": "git", 129 | "url": "https://github.com/fgrosse/PHPASN1.git", 130 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e" 131 | }, 132 | "dist": { 133 | "type": "zip", 134 | "url": "https://api.github.com/repos/fgrosse/PHPASN1/zipball/20299033c35f4300eb656e7e8e88cf52d1d6694e", 135 | "reference": "20299033c35f4300eb656e7e8e88cf52d1d6694e", 136 | "shasum": "" 137 | }, 138 | "require": { 139 | "php": ">=7.0.0" 140 | }, 141 | "require-dev": { 142 | "phpunit/phpunit": "~6.3", 143 | "satooshi/php-coveralls": "~2.0" 144 | }, 145 | "suggest": { 146 | "ext-bcmath": "BCmath is the fallback extension for big integer calculations", 147 | "ext-curl": "For loading OID information from the web if they have not bee defined statically", 148 | "ext-gmp": "GMP is the preferred extension for big integer calculations", 149 | "phpseclib/bcmath_compat": "BCmath polyfill for servers where neither GMP nor BCmath is available" 150 | }, 151 | "type": "library", 152 | "extra": { 153 | "branch-alias": { 154 | "dev-master": "2.0.x-dev" 155 | } 156 | }, 157 | "autoload": { 158 | "psr-4": { 159 | "FG\\": "lib/" 160 | } 161 | }, 162 | "notification-url": "https://packagist.org/downloads/", 163 | "license": [ 164 | "MIT" 165 | ], 166 | "authors": [ 167 | { 168 | "name": "Friedrich Große", 169 | "email": "friedrich.grosse@gmail.com", 170 | "homepage": "https://github.com/FGrosse", 171 | "role": "Author" 172 | }, 173 | { 174 | "name": "All contributors", 175 | "homepage": "https://github.com/FGrosse/PHPASN1/contributors" 176 | } 177 | ], 178 | "description": "A PHP Framework that allows you to encode and decode arbitrary ASN.1 structures using the ITU-T X.690 Encoding Rules.", 179 | "homepage": "https://github.com/FGrosse/PHPASN1", 180 | "keywords": [ 181 | "DER", 182 | "asn.1", 183 | "asn1", 184 | "ber", 185 | "binary", 186 | "decoding", 187 | "encoding", 188 | "x.509", 189 | "x.690", 190 | "x509", 191 | "x690" 192 | ], 193 | "support": { 194 | "issues": "https://github.com/fgrosse/PHPASN1/issues", 195 | "source": "https://github.com/fgrosse/PHPASN1/tree/v2.3.0" 196 | }, 197 | "time": "2021-04-24T19:01:55+00:00" 198 | }, 199 | { 200 | "name": "netresearch/jsonmapper", 201 | "version": "v4.0.0", 202 | "source": { 203 | "type": "git", 204 | "url": "https://github.com/cweiske/jsonmapper.git", 205 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" 206 | }, 207 | "dist": { 208 | "type": "zip", 209 | "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", 210 | "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", 211 | "shasum": "" 212 | }, 213 | "require": { 214 | "ext-json": "*", 215 | "ext-pcre": "*", 216 | "ext-reflection": "*", 217 | "ext-spl": "*", 218 | "php": ">=7.1" 219 | }, 220 | "require-dev": { 221 | "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0", 222 | "squizlabs/php_codesniffer": "~3.5" 223 | }, 224 | "type": "library", 225 | "autoload": { 226 | "psr-0": { 227 | "JsonMapper": "src/" 228 | } 229 | }, 230 | "notification-url": "https://packagist.org/downloads/", 231 | "license": [ 232 | "OSL-3.0" 233 | ], 234 | "authors": [ 235 | { 236 | "name": "Christian Weiske", 237 | "email": "cweiske@cweiske.de", 238 | "homepage": "http://github.com/cweiske/jsonmapper/", 239 | "role": "Developer" 240 | } 241 | ], 242 | "description": "Map nested JSON structures onto PHP classes", 243 | "support": { 244 | "email": "cweiske@cweiske.de", 245 | "issues": "https://github.com/cweiske/jsonmapper/issues", 246 | "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" 247 | }, 248 | "time": "2020-12-01T19:48:11+00:00" 249 | }, 250 | { 251 | "name": "pocketmine/bedrock-data", 252 | "version": "1.5.0+bedrock-1.18.0", 253 | "source": { 254 | "type": "git", 255 | "url": "https://github.com/pmmp/BedrockData.git", 256 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c" 257 | }, 258 | "dist": { 259 | "type": "zip", 260 | "url": "https://api.github.com/repos/pmmp/BedrockData/zipball/482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c", 261 | "reference": "482c679aa5ed0b81c088c2b1ff0b8110a94c8a6c", 262 | "shasum": "" 263 | }, 264 | "type": "library", 265 | "notification-url": "https://packagist.org/downloads/", 266 | "license": [ 267 | "LGPL-3.0" 268 | ], 269 | "description": "Blobs of data generated from Minecraft: Bedrock Edition, used by PocketMine-MP", 270 | "support": { 271 | "issues": "https://github.com/pmmp/BedrockData/issues", 272 | "source": "https://github.com/pmmp/BedrockData/tree/bedrock-1.18.0" 273 | }, 274 | "time": "2021-11-30T18:30:46+00:00" 275 | }, 276 | { 277 | "name": "pocketmine/bedrock-protocol", 278 | "version": "7.0.0+bedrock-1.18.0", 279 | "source": { 280 | "type": "git", 281 | "url": "https://github.com/pmmp/BedrockProtocol.git", 282 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82" 283 | }, 284 | "dist": { 285 | "type": "zip", 286 | "url": "https://api.github.com/repos/pmmp/BedrockProtocol/zipball/040a883a4abb8c9b93114d5278cb5fecc635da82", 287 | "reference": "040a883a4abb8c9b93114d5278cb5fecc635da82", 288 | "shasum": "" 289 | }, 290 | "require": { 291 | "ext-json": "*", 292 | "netresearch/jsonmapper": "^4.0", 293 | "php": "^8.0", 294 | "pocketmine/binaryutils": "^0.2.0", 295 | "pocketmine/color": "^0.2.0", 296 | "pocketmine/math": "^0.3.0 || ^0.4.0", 297 | "pocketmine/nbt": "^0.3.0", 298 | "ramsey/uuid": "^4.1" 299 | }, 300 | "require-dev": { 301 | "phpstan/phpstan": "1.2.0", 302 | "phpstan/phpstan-phpunit": "^1.0.0", 303 | "phpstan/phpstan-strict-rules": "^1.0.0", 304 | "phpunit/phpunit": "^9.5" 305 | }, 306 | "type": "library", 307 | "autoload": { 308 | "psr-4": { 309 | "pocketmine\\network\\mcpe\\protocol\\": "src/" 310 | } 311 | }, 312 | "notification-url": "https://packagist.org/downloads/", 313 | "license": [ 314 | "LGPL-3.0" 315 | ], 316 | "description": "An implementation of the Minecraft: Bedrock Edition protocol in PHP", 317 | "support": { 318 | "issues": "https://github.com/pmmp/BedrockProtocol/issues", 319 | "source": "https://github.com/pmmp/BedrockProtocol/tree/7.0.0+bedrock-1.18.0" 320 | }, 321 | "time": "2021-11-30T19:02:41+00:00" 322 | }, 323 | { 324 | "name": "pocketmine/binaryutils", 325 | "version": "0.2.3", 326 | "source": { 327 | "type": "git", 328 | "url": "https://github.com/pmmp/BinaryUtils.git", 329 | "reference": "dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9" 330 | }, 331 | "dist": { 332 | "type": "zip", 333 | "url": "https://api.github.com/repos/pmmp/BinaryUtils/zipball/dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9", 334 | "reference": "dc94786fc6c30012b1892f548dbb8a8c9c0a8cd9", 335 | "shasum": "" 336 | }, 337 | "require": { 338 | "php": "^7.4 || ^8.0", 339 | "php-64bit": "*" 340 | }, 341 | "require-dev": { 342 | "phpstan/extension-installer": "^1.0", 343 | "phpstan/phpstan": "1.2.0", 344 | "phpstan/phpstan-phpunit": "^1.0", 345 | "phpstan/phpstan-strict-rules": "^1.0.0", 346 | "phpunit/phpunit": "^9.5" 347 | }, 348 | "type": "library", 349 | "autoload": { 350 | "psr-4": { 351 | "pocketmine\\utils\\": "src/" 352 | } 353 | }, 354 | "notification-url": "https://packagist.org/downloads/", 355 | "license": [ 356 | "LGPL-3.0" 357 | ], 358 | "description": "Classes and methods for conveniently handling binary data", 359 | "support": { 360 | "issues": "https://github.com/pmmp/BinaryUtils/issues", 361 | "source": "https://github.com/pmmp/BinaryUtils/tree/0.2.3" 362 | }, 363 | "time": "2021-12-04T20:56:05+00:00" 364 | }, 365 | { 366 | "name": "pocketmine/callback-validator", 367 | "version": "1.0.3", 368 | "source": { 369 | "type": "git", 370 | "url": "https://github.com/pmmp/CallbackValidator.git", 371 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2" 372 | }, 373 | "dist": { 374 | "type": "zip", 375 | "url": "https://api.github.com/repos/pmmp/CallbackValidator/zipball/64787469766bcaa7e5885242e85c23c25e8c55a2", 376 | "reference": "64787469766bcaa7e5885242e85c23c25e8c55a2", 377 | "shasum": "" 378 | }, 379 | "require": { 380 | "ext-reflection": "*", 381 | "php": "^7.1 || ^8.0" 382 | }, 383 | "replace": { 384 | "daverandom/callback-validator": "*" 385 | }, 386 | "require-dev": { 387 | "phpstan/extension-installer": "^1.0", 388 | "phpstan/phpstan": "0.12.59", 389 | "phpstan/phpstan-strict-rules": "^0.12.4", 390 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0" 391 | }, 392 | "type": "library", 393 | "autoload": { 394 | "psr-4": { 395 | "DaveRandom\\CallbackValidator\\": "src/" 396 | } 397 | }, 398 | "notification-url": "https://packagist.org/downloads/", 399 | "license": [ 400 | "MIT" 401 | ], 402 | "authors": [ 403 | { 404 | "name": "Chris Wright", 405 | "email": "cw@daverandom.com" 406 | } 407 | ], 408 | "description": "Fork of daverandom/callback-validator - Tools for validating callback signatures", 409 | "support": { 410 | "issues": "https://github.com/pmmp/CallbackValidator/issues", 411 | "source": "https://github.com/pmmp/CallbackValidator/tree/1.0.3" 412 | }, 413 | "time": "2020-12-11T01:45:37+00:00" 414 | }, 415 | { 416 | "name": "pocketmine/classloader", 417 | "version": "0.2.0", 418 | "source": { 419 | "type": "git", 420 | "url": "https://github.com/pmmp/ClassLoader.git", 421 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78" 422 | }, 423 | "dist": { 424 | "type": "zip", 425 | "url": "https://api.github.com/repos/pmmp/ClassLoader/zipball/49ea303993efdfb39cd302e2156d50aa78209e78", 426 | "reference": "49ea303993efdfb39cd302e2156d50aa78209e78", 427 | "shasum": "" 428 | }, 429 | "require": { 430 | "ext-pthreads": "~3.2.0 || ^4.0", 431 | "ext-reflection": "*", 432 | "php": "^8.0" 433 | }, 434 | "conflict": { 435 | "pocketmine/spl": "<0.4" 436 | }, 437 | "require-dev": { 438 | "phpstan/extension-installer": "^1.0", 439 | "phpstan/phpstan": "0.12.99", 440 | "phpstan/phpstan-strict-rules": "^0.12.4", 441 | "phpunit/phpunit": "^9.5" 442 | }, 443 | "type": "library", 444 | "autoload": { 445 | "classmap": [ 446 | "./src" 447 | ] 448 | }, 449 | "notification-url": "https://packagist.org/downloads/", 450 | "license": [ 451 | "LGPL-3.0" 452 | ], 453 | "description": "Ad-hoc autoloading components used by PocketMine-MP", 454 | "support": { 455 | "issues": "https://github.com/pmmp/ClassLoader/issues", 456 | "source": "https://github.com/pmmp/ClassLoader/tree/0.2.0" 457 | }, 458 | "time": "2021-11-01T20:17:27+00:00" 459 | }, 460 | { 461 | "name": "pocketmine/color", 462 | "version": "0.2.0", 463 | "source": { 464 | "type": "git", 465 | "url": "https://github.com/pmmp/Color.git", 466 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2" 467 | }, 468 | "dist": { 469 | "type": "zip", 470 | "url": "https://api.github.com/repos/pmmp/Color/zipball/09be6ea6d76f2e33d6813c39d29c22c46c17e1d2", 471 | "reference": "09be6ea6d76f2e33d6813c39d29c22c46c17e1d2", 472 | "shasum": "" 473 | }, 474 | "require": { 475 | "php": "^7.2 || ^8.0" 476 | }, 477 | "require-dev": { 478 | "phpstan/phpstan": "0.12.59", 479 | "phpstan/phpstan-strict-rules": "^0.12.2" 480 | }, 481 | "type": "library", 482 | "autoload": { 483 | "psr-4": { 484 | "pocketmine\\color\\": "src/" 485 | } 486 | }, 487 | "notification-url": "https://packagist.org/downloads/", 488 | "license": [ 489 | "LGPL-3.0" 490 | ], 491 | "description": "Color handling library used by PocketMine-MP and related projects", 492 | "support": { 493 | "issues": "https://github.com/pmmp/Color/issues", 494 | "source": "https://github.com/pmmp/Color/tree/0.2.0" 495 | }, 496 | "time": "2020-12-11T01:24:32+00:00" 497 | }, 498 | { 499 | "name": "pocketmine/errorhandler", 500 | "version": "0.3.0", 501 | "source": { 502 | "type": "git", 503 | "url": "https://github.com/pmmp/ErrorHandler.git", 504 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b" 505 | }, 506 | "dist": { 507 | "type": "zip", 508 | "url": "https://api.github.com/repos/pmmp/ErrorHandler/zipball/ec742b209e8056bbe855069c4eff94c9734ea19b", 509 | "reference": "ec742b209e8056bbe855069c4eff94c9734ea19b", 510 | "shasum": "" 511 | }, 512 | "require": { 513 | "php": "^7.2 || ^8.0" 514 | }, 515 | "require-dev": { 516 | "phpstan/phpstan": "0.12.75", 517 | "phpstan/phpstan-strict-rules": "^0.12.2" 518 | }, 519 | "type": "library", 520 | "autoload": { 521 | "psr-4": { 522 | "pocketmine\\errorhandler\\": "src/" 523 | } 524 | }, 525 | "notification-url": "https://packagist.org/downloads/", 526 | "license": [ 527 | "LGPL-3.0" 528 | ], 529 | "description": "Utilities to handle nasty PHP E_* errors in a usable way", 530 | "support": { 531 | "issues": "https://github.com/pmmp/ErrorHandler/issues", 532 | "source": "https://github.com/pmmp/ErrorHandler/tree/0.3.0" 533 | }, 534 | "time": "2021-02-12T18:56:22+00:00" 535 | }, 536 | { 537 | "name": "pocketmine/locale-data", 538 | "version": "2.0.22", 539 | "source": { 540 | "type": "git", 541 | "url": "https://github.com/pmmp/Language.git", 542 | "reference": "181eb9d42653296e65d55a1bbba10e0dd76bbd61" 543 | }, 544 | "dist": { 545 | "type": "zip", 546 | "url": "https://api.github.com/repos/pmmp/Language/zipball/181eb9d42653296e65d55a1bbba10e0dd76bbd61", 547 | "reference": "181eb9d42653296e65d55a1bbba10e0dd76bbd61", 548 | "shasum": "" 549 | }, 550 | "type": "library", 551 | "notification-url": "https://packagist.org/downloads/", 552 | "description": "Language resources used by PocketMine-MP", 553 | "support": { 554 | "issues": "https://github.com/pmmp/Language/issues", 555 | "source": "https://github.com/pmmp/Language/tree/2.0.22" 556 | }, 557 | "time": "2021-12-04T22:37:10+00:00" 558 | }, 559 | { 560 | "name": "pocketmine/log", 561 | "version": "0.4.0", 562 | "source": { 563 | "type": "git", 564 | "url": "https://github.com/pmmp/Log.git", 565 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043" 566 | }, 567 | "dist": { 568 | "type": "zip", 569 | "url": "https://api.github.com/repos/pmmp/Log/zipball/e6c912c0f9055c81d23108ec2d179b96f404c043", 570 | "reference": "e6c912c0f9055c81d23108ec2d179b96f404c043", 571 | "shasum": "" 572 | }, 573 | "require": { 574 | "php": "^7.4 || ^8.0" 575 | }, 576 | "conflict": { 577 | "pocketmine/spl": "<0.4" 578 | }, 579 | "require-dev": { 580 | "phpstan/phpstan": "0.12.88", 581 | "phpstan/phpstan-strict-rules": "^0.12.2" 582 | }, 583 | "type": "library", 584 | "autoload": { 585 | "classmap": [ 586 | "./src" 587 | ] 588 | }, 589 | "notification-url": "https://packagist.org/downloads/", 590 | "license": [ 591 | "LGPL-3.0" 592 | ], 593 | "description": "Logging components used by PocketMine-MP and related projects", 594 | "support": { 595 | "issues": "https://github.com/pmmp/Log/issues", 596 | "source": "https://github.com/pmmp/Log/tree/0.4.0" 597 | }, 598 | "time": "2021-06-18T19:08:09+00:00" 599 | }, 600 | { 601 | "name": "pocketmine/log-pthreads", 602 | "version": "0.4.0", 603 | "source": { 604 | "type": "git", 605 | "url": "https://github.com/pmmp/LogPthreads.git", 606 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd" 607 | }, 608 | "dist": { 609 | "type": "zip", 610 | "url": "https://api.github.com/repos/pmmp/LogPthreads/zipball/61f709e8cf36bcc24e4efe02acded680a1ce23cd", 611 | "reference": "61f709e8cf36bcc24e4efe02acded680a1ce23cd", 612 | "shasum": "" 613 | }, 614 | "require": { 615 | "ext-pthreads": "~3.2.0 || ^4.0", 616 | "php": "^7.4 || ^8.0", 617 | "pocketmine/log": "^0.4.0" 618 | }, 619 | "conflict": { 620 | "pocketmine/spl": "<0.4" 621 | }, 622 | "require-dev": { 623 | "phpstan/extension-installer": "^1.0", 624 | "phpstan/phpstan": "0.12.88", 625 | "phpstan/phpstan-strict-rules": "^0.12.4" 626 | }, 627 | "type": "library", 628 | "autoload": { 629 | "classmap": [ 630 | "./src" 631 | ] 632 | }, 633 | "notification-url": "https://packagist.org/downloads/", 634 | "license": [ 635 | "LGPL-3.0" 636 | ], 637 | "description": "Logging components specialized for pthreads used by PocketMine-MP and related projects", 638 | "support": { 639 | "issues": "https://github.com/pmmp/LogPthreads/issues", 640 | "source": "https://github.com/pmmp/LogPthreads/tree/0.4.0" 641 | }, 642 | "time": "2021-11-01T21:42:09+00:00" 643 | }, 644 | { 645 | "name": "pocketmine/math", 646 | "version": "0.4.1", 647 | "source": { 648 | "type": "git", 649 | "url": "https://github.com/pmmp/Math.git", 650 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac" 651 | }, 652 | "dist": { 653 | "type": "zip", 654 | "url": "https://api.github.com/repos/pmmp/Math/zipball/9504957e90415ee1b33cbc13e622c6c5be88e5ac", 655 | "reference": "9504957e90415ee1b33cbc13e622c6c5be88e5ac", 656 | "shasum": "" 657 | }, 658 | "require": { 659 | "php": "^8.0", 660 | "php-64bit": "*" 661 | }, 662 | "require-dev": { 663 | "phpstan/extension-installer": "^1.0", 664 | "phpstan/phpstan": "1.2.0", 665 | "phpstan/phpstan-strict-rules": "^1.0", 666 | "phpunit/phpunit": "^8.5 || ^9.5" 667 | }, 668 | "type": "library", 669 | "autoload": { 670 | "psr-4": { 671 | "pocketmine\\math\\": "src/" 672 | } 673 | }, 674 | "notification-url": "https://packagist.org/downloads/", 675 | "license": [ 676 | "LGPL-3.0" 677 | ], 678 | "description": "PHP library containing math related code used in PocketMine-MP", 679 | "support": { 680 | "issues": "https://github.com/pmmp/Math/issues", 681 | "source": "https://github.com/pmmp/Math/tree/0.4.1" 682 | }, 683 | "time": "2021-12-03T14:28:34+00:00" 684 | }, 685 | { 686 | "name": "pocketmine/nbt", 687 | "version": "0.3.0", 688 | "source": { 689 | "type": "git", 690 | "url": "https://github.com/pmmp/NBT.git", 691 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31" 692 | }, 693 | "dist": { 694 | "type": "zip", 695 | "url": "https://api.github.com/repos/pmmp/NBT/zipball/98c4a04b55a915e18f83d3b0c9beb24a71abcd31", 696 | "reference": "98c4a04b55a915e18f83d3b0c9beb24a71abcd31", 697 | "shasum": "" 698 | }, 699 | "require": { 700 | "php": "^7.4 || ^8.0", 701 | "php-64bit": "*", 702 | "pocketmine/binaryutils": "^0.2.0" 703 | }, 704 | "require-dev": { 705 | "irstea/phpunit-shim": "^9.5", 706 | "phpstan/extension-installer": "^1.0", 707 | "phpstan/phpstan": "0.12.85", 708 | "phpstan/phpstan-strict-rules": "^0.12.4" 709 | }, 710 | "type": "library", 711 | "autoload": { 712 | "psr-4": { 713 | "pocketmine\\nbt\\": "src/" 714 | } 715 | }, 716 | "notification-url": "https://packagist.org/downloads/", 717 | "license": [ 718 | "LGPL-3.0" 719 | ], 720 | "description": "PHP library for working with Named Binary Tags", 721 | "support": { 722 | "issues": "https://github.com/pmmp/NBT/issues", 723 | "source": "https://github.com/pmmp/NBT/tree/0.3.0" 724 | }, 725 | "time": "2021-05-18T15:46:33+00:00" 726 | }, 727 | { 728 | "name": "pocketmine/pocketmine-mp", 729 | "version": "4.0.0", 730 | "source": { 731 | "type": "git", 732 | "url": "https://github.com/pmmp/PocketMine-MP.git", 733 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218" 734 | }, 735 | "dist": { 736 | "type": "zip", 737 | "url": "https://api.github.com/repos/pmmp/PocketMine-MP/zipball/468faa464b2bc5c97f23fafbb71ea61035f6f218", 738 | "reference": "468faa464b2bc5c97f23fafbb71ea61035f6f218", 739 | "shasum": "" 740 | }, 741 | "require": { 742 | "adhocore/json-comment": "^1.1", 743 | "composer-runtime-api": "^2.0", 744 | "ext-chunkutils2": "^0.3.1", 745 | "ext-crypto": "^0.3.1", 746 | "ext-ctype": "*", 747 | "ext-curl": "*", 748 | "ext-date": "*", 749 | "ext-gmp": "*", 750 | "ext-hash": "*", 751 | "ext-igbinary": "^3.0.1", 752 | "ext-json": "*", 753 | "ext-leveldb": "^0.2.1 || ^0.3.0", 754 | "ext-mbstring": "*", 755 | "ext-morton": "^0.1.0", 756 | "ext-openssl": "*", 757 | "ext-pcre": "*", 758 | "ext-phar": "*", 759 | "ext-pthreads": "^4.0", 760 | "ext-reflection": "*", 761 | "ext-simplexml": "*", 762 | "ext-sockets": "*", 763 | "ext-spl": "*", 764 | "ext-yaml": ">=2.0.0", 765 | "ext-zip": "*", 766 | "ext-zlib": ">=1.2.11", 767 | "fgrosse/phpasn1": "^2.3", 768 | "netresearch/jsonmapper": "^4.0", 769 | "php": "^8.0", 770 | "php-64bit": "*", 771 | "pocketmine/bedrock-data": "^1.5.0+bedrock-1.18.0", 772 | "pocketmine/bedrock-protocol": "^7.0.0+bedrock-1.18.0", 773 | "pocketmine/binaryutils": "^0.2.1", 774 | "pocketmine/callback-validator": "^1.0.2", 775 | "pocketmine/classloader": "^0.2.0", 776 | "pocketmine/color": "^0.2.0", 777 | "pocketmine/errorhandler": "^0.3.0", 778 | "pocketmine/locale-data": "^2.0.16", 779 | "pocketmine/log": "^0.4.0", 780 | "pocketmine/log-pthreads": "^0.4.0", 781 | "pocketmine/math": "^0.4.0", 782 | "pocketmine/nbt": "^0.3.0", 783 | "pocketmine/raklib": "^0.14.2", 784 | "pocketmine/raklib-ipc": "^0.1.0", 785 | "pocketmine/snooze": "^0.3.0", 786 | "ramsey/uuid": "^4.1", 787 | "webmozart/path-util": "^2.3" 788 | }, 789 | "require-dev": { 790 | "phpstan/phpstan": "1.2.0", 791 | "phpstan/phpstan-phpunit": "^1.0.0", 792 | "phpstan/phpstan-strict-rules": "^1.0.0", 793 | "phpunit/phpunit": "^9.2" 794 | }, 795 | "type": "project", 796 | "autoload": { 797 | "psr-4": { 798 | "pocketmine\\": "src/" 799 | }, 800 | "files": [ 801 | "src/CoreConstants.php" 802 | ] 803 | }, 804 | "notification-url": "https://packagist.org/downloads/", 805 | "license": [ 806 | "LGPL-3.0" 807 | ], 808 | "description": "A server software for Minecraft: Bedrock Edition written in PHP", 809 | "homepage": "https://pmmp.io", 810 | "support": { 811 | "issues": "https://github.com/pmmp/PocketMine-MP/issues", 812 | "source": "https://github.com/pmmp/PocketMine-MP/tree/4.0.0" 813 | }, 814 | "funding": [ 815 | { 816 | "url": "https://github.com/pmmp/PocketMine-MP#donate", 817 | "type": "custom" 818 | }, 819 | { 820 | "url": "https://www.patreon.com/pocketminemp", 821 | "type": "patreon" 822 | } 823 | ], 824 | "time": "2021-12-01T22:33:52+00:00" 825 | }, 826 | { 827 | "name": "pocketmine/raklib", 828 | "version": "0.14.2", 829 | "source": { 830 | "type": "git", 831 | "url": "https://github.com/pmmp/RakLib.git", 832 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec" 833 | }, 834 | "dist": { 835 | "type": "zip", 836 | "url": "https://api.github.com/repos/pmmp/RakLib/zipball/e3a861187470e1facc6625040128f447ebbcbaec", 837 | "reference": "e3a861187470e1facc6625040128f447ebbcbaec", 838 | "shasum": "" 839 | }, 840 | "require": { 841 | "ext-sockets": "*", 842 | "php": "^8.0", 843 | "php-64bit": "*", 844 | "php-ipv6": "*", 845 | "pocketmine/binaryutils": "^0.2.0", 846 | "pocketmine/log": "^0.3.0 || ^0.4.0" 847 | }, 848 | "require-dev": { 849 | "phpstan/phpstan": "0.12.99", 850 | "phpstan/phpstan-strict-rules": "^0.12.2" 851 | }, 852 | "type": "library", 853 | "autoload": { 854 | "psr-4": { 855 | "raklib\\": "src/" 856 | } 857 | }, 858 | "notification-url": "https://packagist.org/downloads/", 859 | "license": [ 860 | "GPL-3.0" 861 | ], 862 | "description": "A RakNet server implementation written in PHP", 863 | "support": { 864 | "issues": "https://github.com/pmmp/RakLib/issues", 865 | "source": "https://github.com/pmmp/RakLib/tree/0.14.2" 866 | }, 867 | "time": "2021-10-04T20:39:11+00:00" 868 | }, 869 | { 870 | "name": "pocketmine/raklib-ipc", 871 | "version": "0.1.1", 872 | "source": { 873 | "type": "git", 874 | "url": "https://github.com/pmmp/RakLibIpc.git", 875 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed" 876 | }, 877 | "dist": { 878 | "type": "zip", 879 | "url": "https://api.github.com/repos/pmmp/RakLibIpc/zipball/922a6444b0c6c7daaa5aa5a832107e1ec4738aed", 880 | "reference": "922a6444b0c6c7daaa5aa5a832107e1ec4738aed", 881 | "shasum": "" 882 | }, 883 | "require": { 884 | "php": "^7.4 || ^8.0", 885 | "php-64bit": "*", 886 | "pocketmine/binaryutils": "^0.2.0", 887 | "pocketmine/raklib": "^0.13.1 || ^0.14.0" 888 | }, 889 | "require-dev": { 890 | "phpstan/phpstan": "0.12.81", 891 | "phpstan/phpstan-strict-rules": "^0.12.2" 892 | }, 893 | "type": "library", 894 | "autoload": { 895 | "psr-4": { 896 | "raklib\\server\\ipc\\": "src/" 897 | } 898 | }, 899 | "notification-url": "https://packagist.org/downloads/", 900 | "license": [ 901 | "GPL-3.0" 902 | ], 903 | "description": "Channel-based protocols for inter-thread/inter-process communication with RakLib", 904 | "support": { 905 | "issues": "https://github.com/pmmp/RakLibIpc/issues", 906 | "source": "https://github.com/pmmp/RakLibIpc/tree/0.1.1" 907 | }, 908 | "time": "2021-09-22T17:01:12+00:00" 909 | }, 910 | { 911 | "name": "pocketmine/snooze", 912 | "version": "0.3.1", 913 | "source": { 914 | "type": "git", 915 | "url": "https://github.com/pmmp/Snooze.git", 916 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b" 917 | }, 918 | "dist": { 919 | "type": "zip", 920 | "url": "https://api.github.com/repos/pmmp/Snooze/zipball/0ac8fc2a781c419a1f64ebca4d5835028f59e29b", 921 | "reference": "0ac8fc2a781c419a1f64ebca4d5835028f59e29b", 922 | "shasum": "" 923 | }, 924 | "require": { 925 | "ext-pthreads": "~3.2.0 || ^4.0", 926 | "php-64bit": "^7.3 || ^8.0" 927 | }, 928 | "require-dev": { 929 | "phpstan/extension-installer": "^1.0", 930 | "phpstan/phpstan": "0.12.99", 931 | "phpstan/phpstan-strict-rules": "^0.12.4" 932 | }, 933 | "type": "library", 934 | "autoload": { 935 | "psr-4": { 936 | "pocketmine\\snooze\\": "src/" 937 | } 938 | }, 939 | "notification-url": "https://packagist.org/downloads/", 940 | "license": [ 941 | "LGPL-3.0" 942 | ], 943 | "description": "Thread notification management library for code using the pthreads extension", 944 | "support": { 945 | "issues": "https://github.com/pmmp/Snooze/issues", 946 | "source": "https://github.com/pmmp/Snooze/tree/0.3.1" 947 | }, 948 | "time": "2021-11-01T20:50:08+00:00" 949 | }, 950 | { 951 | "name": "ramsey/collection", 952 | "version": "1.2.2", 953 | "source": { 954 | "type": "git", 955 | "url": "https://github.com/ramsey/collection.git", 956 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a" 957 | }, 958 | "dist": { 959 | "type": "zip", 960 | "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a", 961 | "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a", 962 | "shasum": "" 963 | }, 964 | "require": { 965 | "php": "^7.3 || ^8", 966 | "symfony/polyfill-php81": "^1.23" 967 | }, 968 | "require-dev": { 969 | "captainhook/captainhook": "^5.3", 970 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", 971 | "ergebnis/composer-normalize": "^2.6", 972 | "fakerphp/faker": "^1.5", 973 | "hamcrest/hamcrest-php": "^2", 974 | "jangregor/phpstan-prophecy": "^0.8", 975 | "mockery/mockery": "^1.3", 976 | "phpspec/prophecy-phpunit": "^2.0", 977 | "phpstan/extension-installer": "^1", 978 | "phpstan/phpstan": "^0.12.32", 979 | "phpstan/phpstan-mockery": "^0.12.5", 980 | "phpstan/phpstan-phpunit": "^0.12.11", 981 | "phpunit/phpunit": "^8.5 || ^9", 982 | "psy/psysh": "^0.10.4", 983 | "slevomat/coding-standard": "^6.3", 984 | "squizlabs/php_codesniffer": "^3.5", 985 | "vimeo/psalm": "^4.4" 986 | }, 987 | "type": "library", 988 | "autoload": { 989 | "psr-4": { 990 | "Ramsey\\Collection\\": "src/" 991 | } 992 | }, 993 | "notification-url": "https://packagist.org/downloads/", 994 | "license": [ 995 | "MIT" 996 | ], 997 | "authors": [ 998 | { 999 | "name": "Ben Ramsey", 1000 | "email": "ben@benramsey.com", 1001 | "homepage": "https://benramsey.com" 1002 | } 1003 | ], 1004 | "description": "A PHP library for representing and manipulating collections.", 1005 | "keywords": [ 1006 | "array", 1007 | "collection", 1008 | "hash", 1009 | "map", 1010 | "queue", 1011 | "set" 1012 | ], 1013 | "support": { 1014 | "issues": "https://github.com/ramsey/collection/issues", 1015 | "source": "https://github.com/ramsey/collection/tree/1.2.2" 1016 | }, 1017 | "funding": [ 1018 | { 1019 | "url": "https://github.com/ramsey", 1020 | "type": "github" 1021 | }, 1022 | { 1023 | "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", 1024 | "type": "tidelift" 1025 | } 1026 | ], 1027 | "time": "2021-10-10T03:01:02+00:00" 1028 | }, 1029 | { 1030 | "name": "ramsey/uuid", 1031 | "version": "dev-main", 1032 | "source": { 1033 | "type": "git", 1034 | "url": "https://github.com/ramsey/uuid.git", 1035 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374" 1036 | }, 1037 | "dist": { 1038 | "type": "zip", 1039 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/cd372a7b47a54734cbd491df40b5a48614d8d374", 1040 | "reference": "cd372a7b47a54734cbd491df40b5a48614d8d374", 1041 | "shasum": "" 1042 | }, 1043 | "require": { 1044 | "brick/math": "^0.8 || ^0.9", 1045 | "ext-json": "*", 1046 | "php": "^7.2 || ^8.0", 1047 | "ramsey/collection": "^1.0", 1048 | "symfony/polyfill-ctype": "^1.8", 1049 | "symfony/polyfill-php80": "^1.14" 1050 | }, 1051 | "replace": { 1052 | "rhumsaa/uuid": "self.version" 1053 | }, 1054 | "require-dev": { 1055 | "captainhook/captainhook": "^5.10", 1056 | "captainhook/plugin-composer": "^5.3", 1057 | "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", 1058 | "doctrine/annotations": "^1.8", 1059 | "ergebnis/composer-normalize": "^2.15", 1060 | "mockery/mockery": "^1.3", 1061 | "moontoast/math": "^1.1", 1062 | "paragonie/random-lib": "^2", 1063 | "php-mock/php-mock": "^2.2", 1064 | "php-mock/php-mock-mockery": "^1.3", 1065 | "php-parallel-lint/php-parallel-lint": "^1.1", 1066 | "phpbench/phpbench": "^1.0", 1067 | "phpstan/extension-installer": "^1.0", 1068 | "phpstan/phpstan": "^0.12", 1069 | "phpstan/phpstan-mockery": "^0.12", 1070 | "phpstan/phpstan-phpunit": "^0.12", 1071 | "phpunit/phpunit": "^8.5 || ^9", 1072 | "slevomat/coding-standard": "^7.0", 1073 | "squizlabs/php_codesniffer": "^3.5", 1074 | "vimeo/psalm": "^4.9" 1075 | }, 1076 | "suggest": { 1077 | "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", 1078 | "ext-ctype": "Enables faster processing of character classification using ctype functions.", 1079 | "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", 1080 | "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", 1081 | "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", 1082 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." 1083 | }, 1084 | "default-branch": true, 1085 | "type": "library", 1086 | "extra": { 1087 | "branch-alias": { 1088 | "dev-main": "4.x-dev" 1089 | }, 1090 | "captainhook": { 1091 | "force-install": true 1092 | } 1093 | }, 1094 | "autoload": { 1095 | "psr-4": { 1096 | "Ramsey\\Uuid\\": "src/" 1097 | }, 1098 | "files": [ 1099 | "src/functions.php" 1100 | ] 1101 | }, 1102 | "notification-url": "https://packagist.org/downloads/", 1103 | "license": [ 1104 | "MIT" 1105 | ], 1106 | "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", 1107 | "keywords": [ 1108 | "guid", 1109 | "identifier", 1110 | "uuid" 1111 | ], 1112 | "support": { 1113 | "issues": "https://github.com/ramsey/uuid/issues", 1114 | "source": "https://github.com/ramsey/uuid/tree/main" 1115 | }, 1116 | "funding": [ 1117 | { 1118 | "url": "https://github.com/ramsey", 1119 | "type": "github" 1120 | }, 1121 | { 1122 | "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", 1123 | "type": "tidelift" 1124 | } 1125 | ], 1126 | "time": "2021-10-13T18:44:27+00:00" 1127 | }, 1128 | { 1129 | "name": "symfony/polyfill-ctype", 1130 | "version": "dev-main", 1131 | "source": { 1132 | "type": "git", 1133 | "url": "https://github.com/symfony/polyfill-ctype.git", 1134 | "reference": "30885182c981ab175d4d034db0f6f469898070ab" 1135 | }, 1136 | "dist": { 1137 | "type": "zip", 1138 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", 1139 | "reference": "30885182c981ab175d4d034db0f6f469898070ab", 1140 | "shasum": "" 1141 | }, 1142 | "require": { 1143 | "php": ">=7.1" 1144 | }, 1145 | "provide": { 1146 | "ext-ctype": "*" 1147 | }, 1148 | "suggest": { 1149 | "ext-ctype": "For best performance" 1150 | }, 1151 | "default-branch": true, 1152 | "type": "library", 1153 | "extra": { 1154 | "branch-alias": { 1155 | "dev-main": "1.23-dev" 1156 | }, 1157 | "thanks": { 1158 | "name": "symfony/polyfill", 1159 | "url": "https://github.com/symfony/polyfill" 1160 | } 1161 | }, 1162 | "autoload": { 1163 | "psr-4": { 1164 | "Symfony\\Polyfill\\Ctype\\": "" 1165 | }, 1166 | "files": [ 1167 | "bootstrap.php" 1168 | ] 1169 | }, 1170 | "notification-url": "https://packagist.org/downloads/", 1171 | "license": [ 1172 | "MIT" 1173 | ], 1174 | "authors": [ 1175 | { 1176 | "name": "Gert de Pagter", 1177 | "email": "BackEndTea@gmail.com" 1178 | }, 1179 | { 1180 | "name": "Symfony Community", 1181 | "homepage": "https://symfony.com/contributors" 1182 | } 1183 | ], 1184 | "description": "Symfony polyfill for ctype functions", 1185 | "homepage": "https://symfony.com", 1186 | "keywords": [ 1187 | "compatibility", 1188 | "ctype", 1189 | "polyfill", 1190 | "portable" 1191 | ], 1192 | "support": { 1193 | "source": "https://github.com/symfony/polyfill-ctype/tree/main" 1194 | }, 1195 | "funding": [ 1196 | { 1197 | "url": "https://symfony.com/sponsor", 1198 | "type": "custom" 1199 | }, 1200 | { 1201 | "url": "https://github.com/fabpot", 1202 | "type": "github" 1203 | }, 1204 | { 1205 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1206 | "type": "tidelift" 1207 | } 1208 | ], 1209 | "time": "2021-10-20T20:35:02+00:00" 1210 | }, 1211 | { 1212 | "name": "symfony/polyfill-php80", 1213 | "version": "dev-main", 1214 | "source": { 1215 | "type": "git", 1216 | "url": "https://github.com/symfony/polyfill-php80.git", 1217 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9" 1218 | }, 1219 | "dist": { 1220 | "type": "zip", 1221 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9", 1222 | "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9", 1223 | "shasum": "" 1224 | }, 1225 | "require": { 1226 | "php": ">=7.1" 1227 | }, 1228 | "default-branch": true, 1229 | "type": "library", 1230 | "extra": { 1231 | "branch-alias": { 1232 | "dev-main": "1.23-dev" 1233 | }, 1234 | "thanks": { 1235 | "name": "symfony/polyfill", 1236 | "url": "https://github.com/symfony/polyfill" 1237 | } 1238 | }, 1239 | "autoload": { 1240 | "psr-4": { 1241 | "Symfony\\Polyfill\\Php80\\": "" 1242 | }, 1243 | "files": [ 1244 | "bootstrap.php" 1245 | ], 1246 | "classmap": [ 1247 | "Resources/stubs" 1248 | ] 1249 | }, 1250 | "notification-url": "https://packagist.org/downloads/", 1251 | "license": [ 1252 | "MIT" 1253 | ], 1254 | "authors": [ 1255 | { 1256 | "name": "Ion Bazan", 1257 | "email": "ion.bazan@gmail.com" 1258 | }, 1259 | { 1260 | "name": "Nicolas Grekas", 1261 | "email": "p@tchwork.com" 1262 | }, 1263 | { 1264 | "name": "Symfony Community", 1265 | "homepage": "https://symfony.com/contributors" 1266 | } 1267 | ], 1268 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", 1269 | "homepage": "https://symfony.com", 1270 | "keywords": [ 1271 | "compatibility", 1272 | "polyfill", 1273 | "portable", 1274 | "shim" 1275 | ], 1276 | "support": { 1277 | "source": "https://github.com/symfony/polyfill-php80/tree/main" 1278 | }, 1279 | "funding": [ 1280 | { 1281 | "url": "https://symfony.com/sponsor", 1282 | "type": "custom" 1283 | }, 1284 | { 1285 | "url": "https://github.com/fabpot", 1286 | "type": "github" 1287 | }, 1288 | { 1289 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1290 | "type": "tidelift" 1291 | } 1292 | ], 1293 | "time": "2021-09-13T13:58:33+00:00" 1294 | }, 1295 | { 1296 | "name": "symfony/polyfill-php81", 1297 | "version": "dev-main", 1298 | "source": { 1299 | "type": "git", 1300 | "url": "https://github.com/symfony/polyfill-php81.git", 1301 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" 1302 | }, 1303 | "dist": { 1304 | "type": "zip", 1305 | "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", 1306 | "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", 1307 | "shasum": "" 1308 | }, 1309 | "require": { 1310 | "php": ">=7.1" 1311 | }, 1312 | "default-branch": true, 1313 | "type": "library", 1314 | "extra": { 1315 | "branch-alias": { 1316 | "dev-main": "1.23-dev" 1317 | }, 1318 | "thanks": { 1319 | "name": "symfony/polyfill", 1320 | "url": "https://github.com/symfony/polyfill" 1321 | } 1322 | }, 1323 | "autoload": { 1324 | "psr-4": { 1325 | "Symfony\\Polyfill\\Php81\\": "" 1326 | }, 1327 | "files": [ 1328 | "bootstrap.php" 1329 | ], 1330 | "classmap": [ 1331 | "Resources/stubs" 1332 | ] 1333 | }, 1334 | "notification-url": "https://packagist.org/downloads/", 1335 | "license": [ 1336 | "MIT" 1337 | ], 1338 | "authors": [ 1339 | { 1340 | "name": "Nicolas Grekas", 1341 | "email": "p@tchwork.com" 1342 | }, 1343 | { 1344 | "name": "Symfony Community", 1345 | "homepage": "https://symfony.com/contributors" 1346 | } 1347 | ], 1348 | "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", 1349 | "homepage": "https://symfony.com", 1350 | "keywords": [ 1351 | "compatibility", 1352 | "polyfill", 1353 | "portable", 1354 | "shim" 1355 | ], 1356 | "support": { 1357 | "source": "https://github.com/symfony/polyfill-php81/tree/main" 1358 | }, 1359 | "funding": [ 1360 | { 1361 | "url": "https://symfony.com/sponsor", 1362 | "type": "custom" 1363 | }, 1364 | { 1365 | "url": "https://github.com/fabpot", 1366 | "type": "github" 1367 | }, 1368 | { 1369 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", 1370 | "type": "tidelift" 1371 | } 1372 | ], 1373 | "time": "2021-09-13T13:58:11+00:00" 1374 | }, 1375 | { 1376 | "name": "webmozart/assert", 1377 | "version": "dev-master", 1378 | "source": { 1379 | "type": "git", 1380 | "url": "https://github.com/webmozarts/assert.git", 1381 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262" 1382 | }, 1383 | "dist": { 1384 | "type": "zip", 1385 | "url": "https://api.github.com/repos/webmozarts/assert/zipball/b419d648592b0b8911cbbe10d450fe314f4fd262", 1386 | "reference": "b419d648592b0b8911cbbe10d450fe314f4fd262", 1387 | "shasum": "" 1388 | }, 1389 | "require": { 1390 | "php": "^7.2 || ^8.0", 1391 | "symfony/polyfill-ctype": "^1.8" 1392 | }, 1393 | "conflict": { 1394 | "phpstan/phpstan": "<0.12.20", 1395 | "vimeo/psalm": "<4.6.1 || 4.6.2" 1396 | }, 1397 | "require-dev": { 1398 | "phpunit/phpunit": "^8.5.13" 1399 | }, 1400 | "default-branch": true, 1401 | "type": "library", 1402 | "extra": { 1403 | "branch-alias": { 1404 | "dev-master": "1.10-dev" 1405 | } 1406 | }, 1407 | "autoload": { 1408 | "psr-4": { 1409 | "Webmozart\\Assert\\": "src/" 1410 | } 1411 | }, 1412 | "notification-url": "https://packagist.org/downloads/", 1413 | "license": [ 1414 | "MIT" 1415 | ], 1416 | "authors": [ 1417 | { 1418 | "name": "Bernhard Schussek", 1419 | "email": "bschussek@gmail.com" 1420 | } 1421 | ], 1422 | "description": "Assertions to validate method input/output with nice error messages.", 1423 | "keywords": [ 1424 | "assert", 1425 | "check", 1426 | "validate" 1427 | ], 1428 | "support": { 1429 | "issues": "https://github.com/webmozarts/assert/issues", 1430 | "source": "https://github.com/webmozarts/assert/tree/master" 1431 | }, 1432 | "time": "2021-06-19T13:45:26+00:00" 1433 | }, 1434 | { 1435 | "name": "webmozart/path-util", 1436 | "version": "2.3.0", 1437 | "source": { 1438 | "type": "git", 1439 | "url": "https://github.com/webmozart/path-util.git", 1440 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725" 1441 | }, 1442 | "dist": { 1443 | "type": "zip", 1444 | "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725", 1445 | "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725", 1446 | "shasum": "" 1447 | }, 1448 | "require": { 1449 | "php": ">=5.3.3", 1450 | "webmozart/assert": "~1.0" 1451 | }, 1452 | "require-dev": { 1453 | "phpunit/phpunit": "^4.6", 1454 | "sebastian/version": "^1.0.1" 1455 | }, 1456 | "type": "library", 1457 | "extra": { 1458 | "branch-alias": { 1459 | "dev-master": "2.3-dev" 1460 | } 1461 | }, 1462 | "autoload": { 1463 | "psr-4": { 1464 | "Webmozart\\PathUtil\\": "src/" 1465 | } 1466 | }, 1467 | "notification-url": "https://packagist.org/downloads/", 1468 | "license": [ 1469 | "MIT" 1470 | ], 1471 | "authors": [ 1472 | { 1473 | "name": "Bernhard Schussek", 1474 | "email": "bschussek@gmail.com" 1475 | } 1476 | ], 1477 | "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.", 1478 | "support": { 1479 | "issues": "https://github.com/webmozart/path-util/issues", 1480 | "source": "https://github.com/webmozart/path-util/tree/2.3.0" 1481 | }, 1482 | "abandoned": "symfony/filesystem", 1483 | "time": "2015-12-17T08:42:14+00:00" 1484 | } 1485 | ], 1486 | "packages-dev": [ 1487 | { 1488 | "name": "phpstan/phpstan", 1489 | "version": "1.2.0", 1490 | "source": { 1491 | "type": "git", 1492 | "url": "https://github.com/phpstan/phpstan.git", 1493 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee" 1494 | }, 1495 | "dist": { 1496 | "type": "zip", 1497 | "url": "https://api.github.com/repos/phpstan/phpstan/zipball/cbe085f9fdead5b6d62e4c022ca52dc9427a10ee", 1498 | "reference": "cbe085f9fdead5b6d62e4c022ca52dc9427a10ee", 1499 | "shasum": "" 1500 | }, 1501 | "require": { 1502 | "php": "^7.1|^8.0" 1503 | }, 1504 | "conflict": { 1505 | "phpstan/phpstan-shim": "*" 1506 | }, 1507 | "bin": [ 1508 | "phpstan", 1509 | "phpstan.phar" 1510 | ], 1511 | "type": "library", 1512 | "extra": { 1513 | "branch-alias": { 1514 | "dev-master": "1.2-dev" 1515 | } 1516 | }, 1517 | "autoload": { 1518 | "files": [ 1519 | "bootstrap.php" 1520 | ] 1521 | }, 1522 | "notification-url": "https://packagist.org/downloads/", 1523 | "license": [ 1524 | "MIT" 1525 | ], 1526 | "description": "PHPStan - PHP Static Analysis Tool", 1527 | "support": { 1528 | "issues": "https://github.com/phpstan/phpstan/issues", 1529 | "source": "https://github.com/phpstan/phpstan/tree/1.2.0" 1530 | }, 1531 | "funding": [ 1532 | { 1533 | "url": "https://github.com/ondrejmirtes", 1534 | "type": "github" 1535 | }, 1536 | { 1537 | "url": "https://github.com/phpstan", 1538 | "type": "github" 1539 | }, 1540 | { 1541 | "url": "https://www.patreon.com/phpstan", 1542 | "type": "patreon" 1543 | }, 1544 | { 1545 | "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", 1546 | "type": "tidelift" 1547 | } 1548 | ], 1549 | "time": "2021-11-18T14:09:01+00:00" 1550 | } 1551 | ], 1552 | "aliases": [], 1553 | "minimum-stability": "dev", 1554 | "stability-flags": [], 1555 | "prefer-stable": false, 1556 | "prefer-lowest": false, 1557 | "platform": { 1558 | "php": "^8.0", 1559 | "ext-yaml": "*", 1560 | "ext-pthreads": "*", 1561 | "ext-zlib": "*", 1562 | "ext-json": "*" 1563 | }, 1564 | "platform-dev": [], 1565 | "plugin-api-version": "2.1.0" 1566 | } 1567 | --------------------------------------------------------------------------------