diff --git a/src/pocketmine/item/Tool.php b/src/pocketmine/item/Tool.php index 5d995379e..55e74e601 100644 --- a/src/pocketmine/item/Tool.php +++ b/src/pocketmine/item/Tool.php @@ -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; diff --git a/src/pocketmine/item/enchantment/Enchantment.php b/src/pocketmine/item/enchantment/Enchantment.php index 2cdb5aeef..e87c78e29 100644 --- a/src/pocketmine/item/enchantment/Enchantment.php +++ b/src/pocketmine/item/enchantment/Enchantment.php @@ -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)); } /**