Changed Block->getDrops() to return Item[]

This commit is contained in:
Dylan K. Taylor
2017-08-18 11:21:33 +01:00
parent c8ed2406d7
commit d8f0dd6db8
94 changed files with 314 additions and 373 deletions

View File

@ -164,16 +164,19 @@ class Leaves extends Transparent{
return $this->getLevel()->setBlock($this, $this, true);
}
public function getDrops(Item $item){
public function getDrops(Item $item) : array{
$drops = [];
$variantMeta = $this->getDamage() & 0x03;
if($item->isShears()){
$drops[] = [$this->id, $this->meta & 0x03, 1];
$drops[] = Item::get($this->getItemId(), $variantMeta, 1);
}else{
if(mt_rand(1, 20) === 1){ //Saplings
$drops[] = [Item::SAPLING, $this->meta & 0x03, 1];
$drops[] = Item::get(Item::SAPLING, $variantMeta, 1);
}
if(($this->meta & 0x03) === self::OAK and mt_rand(1, 200) === 1){ //Apples
$drops[] = [Item::APPLE, 0, 1];
if($variantMeta === self::OAK and mt_rand(1, 200) === 1){ //Apples
$drops[] = Item::get(Item::APPLE, 0, 1);
}
}