From 8244f9e3dfcb512b637e5c1d601e7a904044c326 Mon Sep 17 00:00:00 2001 From: PeratX <1215714524@qq.com> Date: Fri, 29 Apr 2016 07:12:55 +0800 Subject: [PATCH] Close #882 --- src/pocketmine/Player.php | 2 +- src/pocketmine/event/block/ItemFrameDropItemEvent.php | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 2a00aeb..8ade3f4 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -2465,7 +2465,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade $this->server->getPluginManager()->callEvent($ev = new BlockBreakEvent($this, $block, $this->getInventory()->getItemInHand(), true)); if(!$ev->isCancelled()){ $item = $tile->getItem(); - $this->server->getPluginManager()->callEvent($ev = new ItemFrameDropItemEvent($block, $tile, $item)); + $this->server->getPluginManager()->callEvent($ev = new ItemFrameDropItemEvent($this, $block, $tile, $item)); if(!$ev->isCancelled()){ if($item->getId() !== Item::AIR){ if((mt_rand(0, 10) / 10) < $tile->getItemDropChance()){ diff --git a/src/pocketmine/event/block/ItemFrameDropItemEvent.php b/src/pocketmine/event/block/ItemFrameDropItemEvent.php index 38f516a..bda1b3b 100644 --- a/src/pocketmine/event/block/ItemFrameDropItemEvent.php +++ b/src/pocketmine/event/block/ItemFrameDropItemEvent.php @@ -24,21 +24,30 @@ namespace pocketmine\event\block; use pocketmine\block\Block; use pocketmine\event\Cancellable; use pocketmine\item\Item; +use pocketmine\Player; use pocketmine\tile\ItemFrame; class ItemFrameDropItemEvent extends BlockEvent implements Cancellable{ public static $handlerList = null; + + /** @var Player */ + private $player; /** @var Item */ private $item; /** @var ItemFrame */ private $itemFrame; - public function __construct(Block $block, ItemFrame $itemFrame, Item $item){ + public function __construct(Player $player, Block $block, ItemFrame $itemFrame, Item $item){ + $this->player = $player; $this->block = $block; $this->itemFrame = $itemFrame; $this->item = $item; } + public function getPlayer(){ + return $this->player; + } + public function getItemFrame(){ return $this->itemFrame; }