mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-06-12 14:35:35 +00:00
Fixed Level->getMetadata() and similar, removed extra references
This commit is contained in:
parent
34946faf94
commit
f2b573c32f
@ -307,8 +307,15 @@ class Level implements ChunkManager, Metadatable{
|
|||||||
if($this->getAutoSave()){
|
if($this->getAutoSave()){
|
||||||
$this->save();
|
$this->save();
|
||||||
}
|
}
|
||||||
$this->unloadChunks();
|
|
||||||
|
foreach($this->chunks as $chunk){
|
||||||
|
$this->unloadChunk($chunk->getX(), $chunk->getZ(), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->server->getGenerationManager()->closeLevel($this);
|
||||||
$this->provider->close();
|
$this->provider->close();
|
||||||
|
$this->provider = null;
|
||||||
|
$this->blockMetadata = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -355,11 +362,13 @@ class Level implements ChunkManager, Metadatable{
|
|||||||
$player->teleport($this->server->getDefaultLevel()->getSafeSpawn());
|
$player->teleport($this->server->getDefaultLevel()->getSafeSpawn());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$this->close();
|
|
||||||
if($this === $defaultLevel){
|
if($this === $defaultLevel){
|
||||||
$this->server->setDefaultLevel(null);
|
$this->server->setDefaultLevel(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$this->close();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2071,18 +2080,18 @@ class Level implements ChunkManager, Metadatable{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function setMetadata($metadataKey, MetadataValue $metadataValue){
|
public function setMetadata($metadataKey, MetadataValue $metadataValue){
|
||||||
$this->server->getPlayerMetadata()->setMetadata($this, $metadataKey, $metadataValue);
|
$this->server->getLevelMetadata()->setMetadata($this, $metadataKey, $metadataValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getMetadata($metadataKey){
|
public function getMetadata($metadataKey){
|
||||||
return $this->server->getPlayerMetadata()->getMetadata($this, $metadataKey);
|
return $this->server->getLevelMetadata()->getMetadata($this, $metadataKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function hasMetadata($metadataKey){
|
public function hasMetadata($metadataKey){
|
||||||
return $this->server->getPlayerMetadata()->hasMetadata($this, $metadataKey);
|
return $this->server->getLevelMetadata()->hasMetadata($this, $metadataKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function removeMetadata($metadataKey, Plugin $plugin){
|
public function removeMetadata($metadataKey, Plugin $plugin){
|
||||||
$this->server->getPlayerMetadata()->removeMetadata($this, $metadataKey, $plugin);
|
$this->server->getLevelMetadata()->removeMetadata($this, $metadataKey, $plugin);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -299,5 +299,6 @@ class McRegion extends BaseLevelProvider{
|
|||||||
$region->close();
|
$region->close();
|
||||||
unset($this->regions[$index]);
|
unset($this->regions[$index]);
|
||||||
}
|
}
|
||||||
|
$this->level = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -198,6 +198,7 @@ class RegionLoader{
|
|||||||
public function close(){
|
public function close(){
|
||||||
$this->writeLocationTable();
|
$this->writeLocationTable();
|
||||||
fclose($this->filePointer);
|
fclose($this->filePointer);
|
||||||
|
$this->levelProvider = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function doSlowCleanUp(){
|
public function doSlowCleanUp(){
|
||||||
|
Loading…
x
Reference in New Issue
Block a user