mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-09-09 03:06:55 +00:00
Merge branch '3.5'
This commit is contained in:
@ -34,6 +34,17 @@ use pocketmine\Player;
|
||||
use pocketmine\tile\Spawnable;
|
||||
use pocketmine\tile\Tile;
|
||||
use pocketmine\utils\BinaryStream;
|
||||
use function array_fill;
|
||||
use function array_filter;
|
||||
use function array_values;
|
||||
use function assert;
|
||||
use function chr;
|
||||
use function count;
|
||||
use function ord;
|
||||
use function pack;
|
||||
use function str_repeat;
|
||||
use function strlen;
|
||||
use function unpack;
|
||||
|
||||
class Chunk{
|
||||
|
||||
|
@ -23,6 +23,8 @@ declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\level\format;
|
||||
|
||||
use function str_repeat;
|
||||
|
||||
class EmptySubChunk implements SubChunkInterface{
|
||||
/** @var EmptySubChunk */
|
||||
private static $instance;
|
||||
|
@ -23,6 +23,16 @@ declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\level\format;
|
||||
|
||||
use function assert;
|
||||
use function chr;
|
||||
use function define;
|
||||
use function defined;
|
||||
use function ord;
|
||||
use function str_repeat;
|
||||
use function strlen;
|
||||
use function substr;
|
||||
use function substr_count;
|
||||
|
||||
if(!defined(__NAMESPACE__ . '\ZERO_NIBBLE_ARRAY')){
|
||||
define(__NAMESPACE__ . '\ZERO_NIBBLE_ARRAY', str_repeat("\x00", 2048));
|
||||
}
|
||||
|
@ -27,6 +27,7 @@ use pocketmine\level\format\Chunk;
|
||||
use pocketmine\level\format\io\exception\CorruptedChunkException;
|
||||
use pocketmine\level\format\io\exception\UnsupportedChunkFormatException;
|
||||
use pocketmine\level\LevelException;
|
||||
use function file_exists;
|
||||
|
||||
abstract class BaseLevelProvider implements LevelProvider{
|
||||
/** @var string */
|
||||
|
@ -23,6 +23,11 @@ declare(strict_types=1);
|
||||
|
||||
namespace pocketmine\level\format\io;
|
||||
|
||||
use function chr;
|
||||
use function extension_loaded;
|
||||
use function ord;
|
||||
use function str_repeat;
|
||||
|
||||
if(!extension_loaded('pocketmine_chunkutils')){
|
||||
class ChunkUtils{
|
||||
|
||||
|
@ -28,6 +28,8 @@ use pocketmine\level\format\io\region\Anvil;
|
||||
use pocketmine\level\format\io\region\McRegion;
|
||||
use pocketmine\level\format\io\region\PMAnvil;
|
||||
use pocketmine\utils\Utils;
|
||||
use function strtolower;
|
||||
use function trim;
|
||||
|
||||
abstract class LevelProviderManager{
|
||||
protected static $providers = [];
|
||||
|
@ -27,6 +27,7 @@ use pocketmine\level\format\io\LevelData;
|
||||
use pocketmine\level\LevelException;
|
||||
use pocketmine\math\Vector3;
|
||||
use pocketmine\nbt\tag\CompoundTag;
|
||||
use function file_exists;
|
||||
|
||||
abstract class BaseNbtLevelData implements LevelData{
|
||||
|
||||
|
@ -36,6 +36,11 @@ use pocketmine\nbt\tag\LongTag;
|
||||
use pocketmine\nbt\tag\StringTag;
|
||||
use pocketmine\network\mcpe\protocol\ProtocolInfo;
|
||||
use pocketmine\utils\Binary;
|
||||
use function file_get_contents;
|
||||
use function file_put_contents;
|
||||
use function strlen;
|
||||
use function substr;
|
||||
use function time;
|
||||
|
||||
class BedrockLevelData extends BaseNbtLevelData{
|
||||
|
||||
|
@ -32,6 +32,10 @@ use pocketmine\nbt\tag\FloatTag;
|
||||
use pocketmine\nbt\tag\IntTag;
|
||||
use pocketmine\nbt\tag\LongTag;
|
||||
use pocketmine\nbt\tag\StringTag;
|
||||
use function ceil;
|
||||
use function file_get_contents;
|
||||
use function file_put_contents;
|
||||
use function microtime;
|
||||
|
||||
class JavaLevelData extends BaseNbtLevelData{
|
||||
|
||||
|
@ -36,6 +36,19 @@ use pocketmine\nbt\tag\CompoundTag;
|
||||
use pocketmine\nbt\tag\IntTag;
|
||||
use pocketmine\utils\Binary;
|
||||
use pocketmine\utils\BinaryStream;
|
||||
use function array_values;
|
||||
use function chr;
|
||||
use function defined;
|
||||
use function extension_loaded;
|
||||
use function file_exists;
|
||||
use function is_dir;
|
||||
use function mkdir;
|
||||
use function ord;
|
||||
use function pack;
|
||||
use function strlen;
|
||||
use function substr;
|
||||
use function unpack;
|
||||
use const LEVELDB_ZLIB_RAW_COMPRESSION;
|
||||
|
||||
class LevelDB extends BaseLevelProvider{
|
||||
|
||||
|
@ -33,6 +33,11 @@ use pocketmine\nbt\tag\ByteArrayTag;
|
||||
use pocketmine\nbt\tag\CompoundTag;
|
||||
use pocketmine\nbt\tag\IntArrayTag;
|
||||
use pocketmine\nbt\tag\ListTag;
|
||||
use function array_values;
|
||||
use function pack;
|
||||
use function str_repeat;
|
||||
use function substr;
|
||||
use function unpack;
|
||||
|
||||
class McRegion extends RegionLevelProvider{
|
||||
|
||||
|
@ -29,6 +29,17 @@ use pocketmine\level\format\io\data\JavaLevelData;
|
||||
use pocketmine\level\format\io\exception\CorruptedChunkException;
|
||||
use pocketmine\level\format\io\LevelData;
|
||||
use pocketmine\level\Level;
|
||||
use function assert;
|
||||
use function file_exists;
|
||||
use function is_dir;
|
||||
use function is_int;
|
||||
use function mkdir;
|
||||
use function rename;
|
||||
use function scandir;
|
||||
use function strrpos;
|
||||
use function substr;
|
||||
use function time;
|
||||
use const SCANDIR_SORT_NONE;
|
||||
|
||||
abstract class RegionLevelProvider extends BaseLevelProvider{
|
||||
|
||||
|
@ -26,6 +26,29 @@ namespace pocketmine\level\format\io\region;
|
||||
use pocketmine\level\format\ChunkException;
|
||||
use pocketmine\level\format\io\exception\CorruptedChunkException;
|
||||
use pocketmine\utils\Binary;
|
||||
use function array_fill;
|
||||
use function ceil;
|
||||
use function chr;
|
||||
use function fclose;
|
||||
use function fgetc;
|
||||
use function file_exists;
|
||||
use function filesize;
|
||||
use function fopen;
|
||||
use function fread;
|
||||
use function fseek;
|
||||
use function ftruncate;
|
||||
use function fwrite;
|
||||
use function is_resource;
|
||||
use function ord;
|
||||
use function pack;
|
||||
use function str_pad;
|
||||
use function stream_set_read_buffer;
|
||||
use function stream_set_write_buffer;
|
||||
use function strlen;
|
||||
use function time;
|
||||
use function touch;
|
||||
use function unpack;
|
||||
use const STR_PAD_RIGHT;
|
||||
|
||||
class RegionLoader{
|
||||
public const COMPRESSION_GZIP = 1;
|
||||
|
Reference in New Issue
Block a user