From 8ee3723588c939b31c4517762c394d1c53dd59d7 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 22 Dec 2016 18:25:18 +0000 Subject: [PATCH] Removed Anvil RegionLoader, made mcregion RegionLoader usable for anything --- src/pocketmine/level/format/anvil/Anvil.php | 26 +++------------ .../level/format/anvil/RegionLoader.php | 33 ------------------- .../level/format/mcregion/McRegion.php | 19 ++++++----- .../level/format/mcregion/RegionLoader.php | 2 +- 4 files changed, 16 insertions(+), 64 deletions(-) delete mode 100644 src/pocketmine/level/format/anvil/RegionLoader.php diff --git a/src/pocketmine/level/format/anvil/Anvil.php b/src/pocketmine/level/format/anvil/Anvil.php index 2cfcae8c3..631d52dfc 100644 --- a/src/pocketmine/level/format/anvil/Anvil.php +++ b/src/pocketmine/level/format/anvil/Anvil.php @@ -28,6 +28,7 @@ use pocketmine\level\format\LevelProvider; use pocketmine\level\format\generic\GenericChunk; use pocketmine\level\format\generic\SubChunk; use pocketmine\level\format\mcregion\McRegion; +use pocketmine\level\format\mcregion\RegionLoader; use pocketmine\level\Level; use pocketmine\nbt\NBT; use pocketmine\nbt\tag\{ByteArrayTag, ByteTag, CompoundTag, IntArrayTag, IntTag, ListTag, LongTag}; @@ -39,6 +40,8 @@ use pocketmine\utils\MainLogger; class Anvil extends McRegion{ + const REGION_FILE_EXTENSION = "mca"; + public function nbtSerialize(GenericChunk $chunk) : string{ $nbt = new CompoundTag("Level", []); $nbt->xPos = new IntTag("xPos", $chunk->getX()); @@ -155,12 +158,6 @@ class Anvil extends McRegion{ } } - /** @var RegionLoader[] */ - protected $regions = []; - - /** @var Chunk[] */ - protected $chunks = []; - public static function getProviderName() : string{ return "anvil"; } @@ -171,7 +168,7 @@ class Anvil extends McRegion{ if($isValid){ $files = glob($path . "/region/*.mc*"); foreach($files as $f){ - if(strpos($f, ".mcr") !== false){ //McRegion + if(strpos($f, "." . McRegion::REGION_FILE_EXTENSION) !== false){ $isValid = false; break; } @@ -186,19 +183,4 @@ class Anvil extends McRegion{ return 256; } - /** - * @param int $x - * @param int $z - * - * @return RegionLoader - */ - protected function getRegion(int $x, int $z){ - return $this->regions[Level::chunkHash($x, $z)] ?? null; - } - - protected function loadRegion(int $x, int $z){ - if(!isset($this->regions[$index = Level::chunkHash($x, $z)])){ - $this->regions[$index] = new RegionLoader($this, $x, $z); - } - } } \ No newline at end of file diff --git a/src/pocketmine/level/format/anvil/RegionLoader.php b/src/pocketmine/level/format/anvil/RegionLoader.php deleted file mode 100644 index f8714df07..000000000 --- a/src/pocketmine/level/format/anvil/RegionLoader.php +++ /dev/null @@ -1,33 +0,0 @@ -regions[$index = Level::chunkHash($x, $z)])){ - $this->regions[$index] = new RegionLoader($this, $x, $z); + $this->regions[$index] = new RegionLoader($this, $x, $z, static::REGION_FILE_EXTENSION); } } diff --git a/src/pocketmine/level/format/mcregion/RegionLoader.php b/src/pocketmine/level/format/mcregion/RegionLoader.php index f813db3e6..27e91b0eb 100644 --- a/src/pocketmine/level/format/mcregion/RegionLoader.php +++ b/src/pocketmine/level/format/mcregion/RegionLoader.php @@ -47,7 +47,7 @@ class RegionLoader{ public $lastUsed; - public function __construct(LevelProvider $level, int $regionX, int $regionZ, string $fileExtension = "mcr"){ + public function __construct(LevelProvider $level, int $regionX, int $regionZ, string $fileExtension = McRegion::REGION_FILE_EXTENSION){ $this->x = $regionX; $this->z = $regionZ; $this->levelProvider = $level;