All BlockInventory descendents now have a Position as holder

this allows multiple problems to be solved:
1) Cycle between tile and inventory is now removed.
2) BlockInventory now provides a consistent API for plugins to get the block holding an inventory.
This commit is contained in:
Dylan K. Taylor
2019-08-05 18:50:29 +01:00
parent 358fea9645
commit 9353f616a2
14 changed files with 36 additions and 95 deletions

View File

@ -53,11 +53,11 @@ class BrewingStand extends Spawnable implements Container, Nameable{
public function __construct(World $world, Vector3 $pos){
parent::__construct($world, $pos);
$this->inventory = new BrewingStandInventory($this);
$this->inventory->addChangeListeners(CallbackInventoryChangeListener::onAnyChange(function(Inventory $unused){
$this->world->scheduleDelayedBlockUpdate($this->getBlock()->getPos(), 1);
}));
parent::__construct($world, $pos);
}
public function readSaveData(CompoundTag $nbt) : void{