Package mage.game.permanent

Examples of mage.game.permanent.Permanent.damage()


        else {
          blocker.damage(damage, attacker.getId(), game, true, true);
        }
      }
      if (canDamage(blocker, first)) {
        attacker.damage(blocker.getPower().getValue(), blocker.getId(), game, true, true);
      }
    }
  }

  private void multiBlockerDamage(boolean first, Game game) {
View Full Code Here


    if (attacker != null && canDamage(attacker, first)) {
      for (UUID blockerId: blockerOrder) {
        Permanent blocker = game.getPermanent(blockerId);
        int lethalDamage = blocker.getToughness().getValue() - blocker.getDamage();
        if (lethalDamage >= damage) {
          blocker.damage(damage, attacker.getId(), game, true, true);
          damage = 0;
          break;
        }
        int damageAssigned = player.getAmount(lethalDamage, damage, "Assign damage to " + blocker.getName(), game);
        blocker.damage(damageAssigned, attacker.getId(), game, true, true);
View Full Code Here

          blocker.damage(damage, attacker.getId(), game, true, true);
          damage = 0;
          break;
        }
        int damageAssigned = player.getAmount(lethalDamage, damage, "Assign damage to " + blocker.getName(), game);
        blocker.damage(damageAssigned, attacker.getId(), game, true, true);
        damage -= damageAssigned;
      }
      if (damage > 0 && hasTrample(attacker)) {
        defenderDamage(attacker, damage, game);
      }
View Full Code Here

  private void defenderDamage(Permanent attacker, int amount, Game game) {
    if (this.defenderIsPlaneswalker) {
      Permanent defender = game.getPermanent(defenderId);
      if (defender != null) {
        defender.damage(amount, attacker.getId(), game, true, true);
      }
    }
    else {
      Player defender = game.getPlayer(defenderId);
      defender.damage(amount, attacker.getId(), game, true, true);
View Full Code Here

        defender.damage(amount, attacker.getId(), game, true, true);
      }
    }
    else {
      Player defender = game.getPlayer(defenderId);
      defender.damage(amount, attacker.getId(), game, true, true);
    }
  }

  public boolean canBlock(Permanent blocker, Game game) {
    for (UUID attackerId: attackers) {
View Full Code Here

  public boolean apply(Game game, Ability source) {
    Target multiTarget = source.getTargets().get(0);
    for (UUID target: multiTarget.getTargets()) {
      Permanent permanent = game.getPermanent(target);
      if (permanent != null) {
        permanent.damage(multiTarget.getTargetAmount(target), source.getId(), game, true, false);
      }
      else {
        Player player = game.getPlayer(target);
        if (player != null) {
          player.damage(multiTarget.getTargetAmount(target), source.getId(), game, false, true);
View Full Code Here

  public boolean replaceEvent(GameEvent event, Ability source, Game game) {
    DamageEvent damageEvent = (DamageEvent)event;
    Permanent permanent = game.getPermanent(redirectTarget.getFirstTarget());
    Ability damageSource = getSource(damageEvent.getSourceId(), game);
    if (permanent != null) {
      permanent.damage(damageEvent.getAmount(), damageSource.getId(), game, damageEvent.isPreventable(), damageEvent.isCombatDamage());
      return true;
    }
    Player player = game.getPlayer(redirectTarget.getFirstTarget());
    if (player != null) {
      player.damage(damageEvent.getAmount(), damageSource.getId(), game, damageEvent.isCombatDamage(), damageEvent.isPreventable());
View Full Code Here

  @Override
  public boolean apply(Game game, Ability source) {
    int amount = source.getManaCosts().getVariableCosts().get(0).getAmount();
    Permanent permanent = game.getPermanent(source.getFirstTarget());
    if (permanent != null) {
      permanent.damage(amount, source.getId(), game, true, false);
      return true;
    }
    Player player = game.getPlayer(source.getFirstTarget());
    if (player != null) {
      player.damage(amount, source.getId(), game, false, true);
View Full Code Here

  @Override
  public boolean apply(Game game, Ability source) {
    Permanent permanent = game.getPermanent(source.getFirstTarget());
    if (permanent != null) {
      permanent.damage(amount, source.getId(), game, preventable, false);
      return true;
    }
    Player player = game.getPlayer(source.getFirstTarget());
    if (player != null) {
      player.damage(amount, source.getId(), game, false, preventable);
View Full Code Here

      player.choose(Outcome.Damage, target, game);
      Permanent permanent = game.getPermanent(target.getFirstTarget());
      Permanent cyclops = game.getPermanent(source.getSourceId());
      if (permanent != null && cyclops != null) {
        permanent.damage(cyclops.getPower().getValue(), cyclops.getId(), game, true, false);
        cyclops.damage(permanent.getPower().getValue(), permanent.getId(), game, true, false);
        return true;
      }
    }
    return false;
  }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.