mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-05-13 09:19:42 +00:00
Player: rename $windows to $inventoryNetworkIdMap
This commit is contained in:
parent
a94541c531
commit
312a755a27
@ -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;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user