mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-07-08 02:51:49 +00:00
Inventory holders are now freed from BaseInventory. They are now declared by subclasses by convention, but are not required in most cases. Ideally, this would be followed by the removal of the need for inventories to know their holders at all. They should just be simple containers of items. This fixes #1560 by removing FakeBlockMenu.
57 lines
1.4 KiB
PHP
57 lines
1.4 KiB
PHP
<?php
|
|
|
|
/*
|
|
*
|
|
* ____ _ _ __ __ _ __ __ ____
|
|
* | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
|
|
* | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
|
|
* | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
|
|
* |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Lesser General Public License as published by
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* @author PocketMine Team
|
|
* @link http://www.pocketmine.net/
|
|
*
|
|
*
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace pocketmine\inventory;
|
|
|
|
use pocketmine\Player;
|
|
|
|
class PlayerCursorInventory extends BaseInventory{
|
|
/** @var Player */
|
|
protected $holder;
|
|
|
|
public function __construct(Player $holder){
|
|
$this->holder = $holder;
|
|
parent::__construct();
|
|
}
|
|
|
|
public function getName() : string{
|
|
return "Cursor";
|
|
}
|
|
|
|
public function getDefaultSize() : int{
|
|
return 1;
|
|
}
|
|
|
|
public function setSize(int $size){
|
|
throw new \BadMethodCallException("Cursor can only carry one item at a time");
|
|
}
|
|
|
|
/**
|
|
* This override is here for documentation and code completion purposes only.
|
|
* @return Player
|
|
*/
|
|
public function getHolder(){
|
|
return $this->holder;
|
|
}
|
|
}
|