Player: rename $windows to $inventoryNetworkIdMap

This commit is contained in:
Dylan K. Taylor 2019-06-15 15:51:43 +01:00
parent a94541c531
commit 312a755a27

View File

@ -183,8 +183,8 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
protected $playerInfo; protected $playerInfo;
protected $lastInventoryNetworkId = 2; protected $lastInventoryNetworkId = 2;
/** @var int[] */ /** @var int[] object ID => network ID */
protected $windows = []; protected $inventoryNetworkIdMap = [];
/** @var Inventory[] */ /** @var Inventory[] */
protected $windowIndex = []; protected $windowIndex = [];
/** @var bool[] */ /** @var bool[] */
@ -2428,8 +2428,8 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
foreach($this->permanentWindows as $networkId => $bool){ foreach($this->permanentWindows as $networkId => $bool){
$this->closeInventoryInternal($this->windowIndex[$networkId], true); $this->closeInventoryInternal($this->windowIndex[$networkId], true);
} }
assert(empty($this->windowIndex) && empty($this->windows)); assert(empty($this->windowIndex) && empty($this->inventoryNetworkIdMap));
$this->windows = []; $this->inventoryNetworkIdMap = [];
$this->windowIndex = []; $this->windowIndex = [];
$this->perm->clearPermissions(); $this->perm->clearPermissions();
@ -2767,7 +2767,7 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
* @return int * @return int
*/ */
public function getWindowId(Inventory $inventory) : int{ public function getWindowId(Inventory $inventory) : int{
return $this->windows[spl_object_id($inventory)] ?? ContainerIds::NONE; return $this->inventoryNetworkIdMap[spl_object_id($inventory)] ?? ContainerIds::NONE;
} }
/** /**
@ -2784,7 +2784,7 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
protected function openInventoryInternal(Inventory $inventory, int $networkId, bool $permanent) : void{ protected function openInventoryInternal(Inventory $inventory, int $networkId, bool $permanent) : void{
$this->windowIndex[$networkId] = $inventory; $this->windowIndex[$networkId] = $inventory;
$this->windows[spl_object_id($inventory)] = $networkId; $this->inventoryNetworkIdMap[spl_object_id($inventory)] = $networkId;
$inventory->onOpen($this); $inventory->onOpen($this);
if($permanent){ if($permanent){
$this->logger->debug("Opening permanent inventory " . get_class($inventory) . " with network ID $networkId"); $this->logger->debug("Opening permanent inventory " . get_class($inventory) . " with network ID $networkId");
@ -2794,7 +2794,7 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
protected function closeInventoryInternal(Inventory $inventory, bool $force) : bool{ protected function closeInventoryInternal(Inventory $inventory, bool $force) : bool{
$objectId = spl_object_id($inventory); $objectId = spl_object_id($inventory);
$networkId = $this->windows[$objectId] ?? null; $networkId = $this->inventoryNetworkIdMap[$objectId] ?? null;
if($networkId !== null){ if($networkId !== null){
if(isset($this->permanentWindows[$networkId])){ if(isset($this->permanentWindows[$networkId])){
if(!$force){ if(!$force){
@ -2804,7 +2804,7 @@ class Player extends Human implements CommandSender, ChunkLoader, ChunkListener,
} }
$inventory->onClose($this); $inventory->onClose($this);
unset($this->windows[$objectId], $this->windowIndex[$networkId], $this->permanentWindows[$networkId]); unset($this->inventoryNetworkIdMap[$objectId], $this->windowIndex[$networkId], $this->permanentWindows[$networkId]);
return true; return true;
} }
return false; return false;