isSword() public method

public isSword ( )
Example #1
0
 public function getDrops(Item $item)
 {
     if ($item->isSword()) {
         return [[Item::STRING, 0, 1]];
     }
     return [];
 }
Example #2
0
 public function getDrops(Item $item)
 {
     if ($item->isShears() || $item->isSword() >= Tool::TIER_WOODEN) {
         return [[Item::STRING, 0, 1]];
     } else {
         return [];
     }
 }
Example #3
0
 public function getDrops(Item $item)
 {
     if ($item->isSword() >= Tool::TIER_STONE) {
         return [[Item::STRING, 0, 1]];
     } else {
         return [];
     }
 }
 /**
  * @param Item $item
  * @param int  $modifiedLevel
  * @return Enchantment[]
  */
 public static function getPossibleEnchantments(Item $item, int $modifiedLevel)
 {
     $result = [];
     $enchantmentIds = [];
     if ($item->getId() == Item::BOOK) {
         $enchantmentIds = array_keys(self::$map);
     } elseif ($item->isArmor()) {
         $enchantmentIds[] = Enchantment::TYPE_ARMOR_PROTECTION;
         $enchantmentIds[] = Enchantment::TYPE_ARMOR_FIRE_PROTECTION;
         $enchantmentIds[] = Enchantment::TYPE_ARMOR_EXPLOSION_PROTECTION;
         $enchantmentIds[] = Enchantment::TYPE_ARMOR_PROJECTILE_PROTECTION;
         $enchantmentIds[] = Enchantment::TYPE_ARMOR_THORNS;
         if ($item->isBoots()) {
             $enchantmentIds[] = Enchantment::TYPE_ARMOR_FALL_PROTECTION;
         }
         if ($item->isHelmet()) {
             $enchantmentIds[] = Enchantment::TYPE_WATER_BREATHING;
             $enchantmentIds[] = Enchantment::TYPE_WATER_AFFINITY;
         }
     } elseif ($item->isSword()) {
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_SHARPNESS;
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_SMITE;
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_ARTHROPODS;
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_KNOCKBACK;
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_FIRE_ASPECT;
         $enchantmentIds[] = Enchantment::TYPE_WEAPON_LOOTING;
     } elseif ($item->isTool()) {
         $enchantmentIds[] = Enchantment::TYPE_MINING_EFFICIENCY;
         $enchantmentIds[] = Enchantment::TYPE_MINING_SILK_TOUCH;
         $enchantmentIds[] = Enchantment::TYPE_MINING_FORTUNE;
     } elseif ($item->getId() == Item::BOW) {
         $enchantmentIds[] = Enchantment::TYPE_BOW_POWER;
         $enchantmentIds[] = Enchantment::TYPE_BOW_KNOCKBACK;
         $enchantmentIds[] = Enchantment::TYPE_BOW_FLAME;
         $enchantmentIds[] = Enchantment::TYPE_BOW_INFINITY;
     } elseif ($item->getId() == Item::FISHING_ROD) {
         $enchantmentIds[] = Enchantment::TYPE_FISHING_FORTUNE;
         $enchantmentIds[] = Enchantment::TYPE_FISHING_LURE;
     }
     if ($item->isTool() || $item->isArmor()) {
         $enchantmentIds[] = Enchantment::TYPE_MINING_DURABILITY;
     }
     foreach ($enchantmentIds as $enchantmentId) {
         $enchantment = Enchantment::getEnchantment($enchantmentId);
         $ranges = self::$map[$enchantmentId];
         $i = 0;
         /** @var Range $range */
         foreach ($ranges as $range) {
             $i++;
             if (self::isInRange($range[0], $range[1], $modifiedLevel)) {
                 $result[] = $enchantment->setLevel($i);
             }
         }
     }
     return $result;
 }
Example #5
0
 public function getDrops(Item $item) : array
 {
     if ($item->isShears()) {
         return [[Item::COBWEB, 0, 1]];
     } elseif ($item->isSword() >= Tool::TIER_WOODEN) {
         if ($item->getEnchantmentLevel(Enchantment::TYPE_MINING_SILK_TOUCH) > 0) {
             return [[Item::COBWEB, 0, 1]];
         } else {
             return [[Item::STRING, 0, 1]];
         }
     }
     return [];
 }
Example #6
0
 public function getBreakTime(Item $item)
 {
     if ($item->isShears()) {
         return 0.02;
     } elseif ($item->isSword()) {
         return 0.2;
     } elseif ($item->isAxe()) {
         switch ($item->isAxe()) {
             case Tool::TIER_WOODEN:
                 return 0.15;
             case Tool::TIER_STONE:
                 return 0.075;
             case Tool::TIER_IRON:
                 return 0.05;
             case Tool::TIER_DIAMOND:
                 return 0.0375;
             case Tool::TIER_GOLD:
                 return 0.025;
         }
     }
     return 0.3;
 }