public function clear($index) { if (isset($this->slots[$index])) { $item = Item::get(Item::AIR, null, 0); $old = $this->slots[$index]; if ($index >= $this->getSize() and $index < $this->size) { //Armor change Server::getInstance()->getPluginManager()->callEvent($ev = new EntityArmorChangeEvent($this->getHolder(), $old, $item, $index)); if ($ev->isCancelled()) { if ($index >= $this->size) { $this->sendArmorSlot($index, $this->getViewers()); } else { $this->sendSlot($index, $this->getViewers()); } return false; } $item = $ev->getNewItem(); } else { Server::getInstance()->getPluginManager()->callEvent($ev = new EntityInventoryChangeEvent($this->getHolder(), $old, $item, $index)); if ($ev->isCancelled()) { if ($index >= $this->size) { $this->sendArmorSlot($index, $this->getViewers()); } else { $this->sendSlot($index, $this->getViewers()); } return false; } $item = $ev->getNewItem(); } if ($item->getId() !== Item::AIR) { $this->slots[$index] = clone $item; } else { unset($this->slots[$index]); } $this->onSlotChange($index, $old); } return true; }
public function clear($index) { if (isset($this->slots[$index])) { $item = Item::get(Item::AIR, \null, 0); $old = $this->slots[$index]; $holder = $this->getHolder(); if ($holder instanceof Entity) { Server::getInstance()->getPluginManager()->callEvent($ev = new EntityInventoryChangeEvent($holder, $old, $item, $index)); if ($ev->isCancelled()) { $this->sendSlot($index, $this->getViewers()); return \false; } $item = $ev->getNewItem(); } if ($item->getId() !== Item::AIR) { $this->slots[$index] = clone $item; } else { unset($this->slots[$index]); } $this->onSlotChange($index, $old); } return \true; }
public function onInventoryChange(EntityInventoryChangeEvent $event) { if ($this->plugin->game && ($Player = $event->getEntity()) && $Player instanceof Human && ($Level = $Player->getLevel()) && $Player->getGamemode() == 0) { $OldItem = $event->getOldItem(); $NewItem = $event->getNewItem(); if ($this->plugin->game->level_name != $Level->getFolderName()) { return; } switch ($NewItem->getId()) { case 336: $this->plugin->game->PopupInfo2->PlayersData[strtolower($Player->getName())][1] += $NewItem->getCount() * $this->plugin->spawner_gives["b"]; $event->setCancelled(true); break; case 265: $this->plugin->game->PopupInfo2->PlayersData[strtolower($Player->getName())][1] += $NewItem->getCount() * $this->plugin->spawner_gives["i"]; $event->setCancelled(true); break; case 266: $this->plugin->game->PopupInfo2->PlayersData[strtolower($Player->getName())][1] += $NewItem->getCount() * $this->plugin->spawner_gives["g"]; $event->setCancelled(true); break; } } }
/** * @param EntityInventoryChangeEvent $event * @priority HIGHEST * @ignoreCancelled true */ public function onEntityInventoryChange(EntityInventoryChangeEvent $event) { if (($player = $event->getEntity()) instanceof Player) { if ($this->plugin->getStorage()->getShield($player->getLevel())->isAllowed(Shield::INVENTORY_CHANGING)) { $event->setCancelled(true); $event->getPlayer()->sendTip($this->plugin->getConfig()->get("inventoryChangeNotAllowed")); } } }
public function onInventoryChange(EntityInventoryChangeEvent $event) { if ($event->getEntity() instanceof Player) { if ($this->disableInventoryChange) { $event->setCancelled(); } } return; }