Enchantment: Implemented Efficiency

This is only needed server-side for block-break animation times.
This commit is contained in:
Dylan K. Taylor 2018-01-11 20:02:28 +00:00
parent 07c7048433
commit 98b36fd73e
2 changed files with 6 additions and 1 deletions

View File

@ -25,6 +25,7 @@ namespace pocketmine\item;
use pocketmine\block\Block;
use pocketmine\entity\Entity;
use pocketmine\item\enchantment\Enchantment;
abstract class Tool extends Durable{
@ -71,7 +72,9 @@ abstract class Tool extends Durable{
$efficiency = 1;
if(($block->getToolType() & $this->getBlockToolType()) !== 0){
$efficiency = $this->getBaseMiningEfficiency();
//TODO: check Efficiency enchantment
if(($enchantmentLevel = $this->getEnchantmentLevel(Enchantment::EFFICIENCY)) > 0){
$efficiency += ($enchantmentLevel ** 2 + 1);
}
}
return $efficiency;

View File

@ -93,6 +93,8 @@ class Enchantment{
self::registerEnchantment(new Enchantment(self::FEATHER_FALLING, "%enchantment.protect.fall", self::RARITY_UNCOMMON, self::SLOT_FEET, 4));
self::registerEnchantment(new Enchantment(self::RESPIRATION, "%enchantment.oxygen", self::RARITY_RARE, self::SLOT_HEAD, 3));
self::registerEnchantment(new Enchantment(self::EFFICIENCY, "%enchantment.digging", self::RARITY_COMMON, self::SLOT_DIG | self::SLOT_SHEARS, 5));
}
/**