Exemplo n.º 1
0
  @Override
  public void run() {

    if (playerName == null) {
      return;
    }
    Player player = Bukkit.getPlayer(playerName);
    if (dmgBlock.allowDamageNow(player)) {
      /* Do our damage. */
      int damage = 1;
      LoreMaterial material = LoreMaterial.getMaterial(player.getItemInHand());
      if (material != null) {
        damage = material.onStructureBlockBreak(dmgBlock, damage);
      }

      if (player.getItemInHand() != null
          && !player.getItemInHand().getType().equals(Material.AIR)) {
        AttributeUtil attrs = new AttributeUtil(player.getItemInHand());
        for (LoreEnhancement enhance : attrs.getEnhancements()) {
          damage = enhance.onStructureBlockBreak(dmgBlock, damage);
        }
      }

      if (damage > 1) {
        CivMessage.send(
            player, CivColor.LightGray + "Punchout does " + (damage - 1) + " extra damage!");
      }

      dmgBlock.getOwner().onDamage(damage, world, player, dmgBlock.getCoord(), dmgBlock);
    } else {
      CivMessage.sendErrorNoRepeat(
          player,
          "This block belongs to a "
              + dmgBlock.getOwner().getDisplayName()
              + " and cannot be destroyed right now.");
    }
  }