Package mage.players

Examples of mage.players.Player


  }

  @Override
  public boolean apply(Game game, Ability source) {
    TargetCardInLibrary target = new TargetCardInLibrary(0, 2, new FilterBasicLandCard());
    Player player = game.getPlayer(source.getControllerId());
    player.searchLibrary(target, game);
    if (target.getTargets().size() > 0) {
      Cards revealed = new CardsImpl();
      for (UUID cardId: (List<UUID>)target.getTargets()) {
        Card card = player.getLibrary().remove(cardId, game);
        revealed.add(card);
      }
      player.revealCards(revealed, game);
      if (target.getTargets().size() == 2) {
        TargetCard target2 = new TargetCard(Zone.PICK, filter);
        target2.setRequired(true);
        player.choose(revealed, target2, game);
        Card card = revealed.get(target2.getFirstTarget(), game);
        card.putOntoBattlefield(game, Zone.LIBRARY, source.getId(), source.getControllerId());
        revealed.remove(card);
        Permanent permanent = game.getPermanent(card.getId());
        if (permanent != null)
          permanent.setTapped(true);
        card = revealed.getCards(game).iterator().next();
        card.moveToZone(Zone.HAND, source.getId(), game, false);
      }
      else if (target.getTargets().size() == 1) {
        Card card = revealed.getCards(game).iterator().next();
        card.putOntoBattlefield(game, Zone.LIBRARY, source.getId(), source.getControllerId());
        Permanent permanent = game.getPermanent(card.getId());
        if (permanent != null)
          permanent.setTapped(true);
      }

      player.shuffleLibrary(game);
    }
    return true;

  }
View Full Code Here


    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player player = game.getPlayer(source.getControllerId());
    Permanent permanent = game.getPermanent(source.getSourceId());
    if (player != null && permanent != null) {
      player.gainLife(5, game);
      permanent.moveToZone(Zone.LIBRARY, source.getId(), game, true);
      player.getLibrary().addAll(player.getGraveyard().getCards(game), game);
      player.getGraveyard().clear();
      player.getLibrary().shuffle();
      return true;
    }
    return false;
  }
View Full Code Here

    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player player = game.getPlayer(source.getFirstTarget());
    if (player != null) {
      for (Permanent creature: game.getBattlefield().getAllActivePermanents(FilterCreaturePermanent.getDefault(), player.getId())) {
        creature.tap(game);
        game.addEffect(new SleepEffect2(creature.getId()), source);
      }
      return true;
    }
View Full Code Here

    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player player = game.getPlayer(source.getFirstTarget());
    if (player != null && player.getHand().size() > 0) {
      Card card = player.getHand().getRandom(game);
      Cards cards = new CardsImpl();
      cards.add(card);
      player.revealCards(cards, game);
      if (card.getCardType().contains(CardType.LAND)) {
        card.putOntoBattlefield(game, Zone.HAND, source.getId(), player.getId());
      }
      else {
        player.cast(card.getSpellAbility(), game, true);
      }
      return true;
    }
    return false;
  }
View Full Code Here

  }

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

    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player player = game.getPlayer(source.getFirstTarget());
    if (player != null && player.getHand().size() > 0) {
      Cards revealed = new CardsImpl();
      revealed.add(player.getHand().getRandom(game));
      player.revealCards(revealed, game);
      return true;
    }
    return false;
  }
View Full Code Here

    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player player = game.getPlayer(source.getFirstTarget());
    Set<UUID> remove = new HashSet<UUID>();
    for (Iterator<UUID> i = player.getGraveyard().iterator(); i.hasNext();) {
      Card card = game.getCard(i.next());
      if (!filter.match(card)) {
        i.remove();
        game.getExile().add(card);
        for (UUID cardId: player.getLibrary().getCardList()) {
          if (game.getCard(cardId).getName().equals(card.getName())) {
            remove.add(cardId);
          }
        }
      }
    }
    for (UUID cardId: remove) {
      game.getExile().add(player.getLibrary().remove(cardId, game));
    }
    game.getPlayer(source.getControllerId()).lookAtCards(new CardsImpl(Zone.PICK, player.getLibrary().getCards(game)), game);
    player.shuffleLibrary(game);
    return true;
  }
View Full Code Here

        }

        @Override
        public boolean apply(Game game, Ability source) {
            Permanent target = game.getPermanent(source.getFirstTarget());
            Player player = game.getPlayer(source.getControllerId());
    if (player != null && target != null) {
      player.drawCards(target.getPower().getValue(), game);
      return true;
    }
    return false;
        }
View Full Code Here

    for (CombatGroup group: game.getCombat().getGroups()) {
      simCombat.groups.add(new CombatGroupSimulator(group.getDefenderId(), group.getAttackers(), group.getBlockers(), game));
    }
    for (UUID defenderId: game.getCombat().getDefenders()) {
      simCombat.defenders.add(defenderId);
      Player player = game.getPlayer(defenderId);
      if (player != null) {
        simCombat.playersLife.put(defenderId, player.getLife());
      }
      else {
        Permanent permanent = game.getPermanent(defenderId);
        simCombat.planeswalkerLoyalty.put(defenderId, permanent.getLoyalty().getValue());
      }
View Full Code Here

    super(effect);
  }

  @Override
  public boolean apply(Game game, Ability source) {
    Player defender = null;
    for (CombatGroup group: game.getCombat().getGroups()) {
      if (group.getAttackers().contains(source.getSourceId())) {
        defender = game.getPlayer(group.getDefenderId());
        break;
      }
    }
    if (defender != null) {
      FilterCreaturePermanent filter = new FilterCreaturePermanent("creature defending player owns");
      filter.getControllerId().add(defender.getId());
      TargetCreaturePermanent target = new TargetCreaturePermanent(filter);
      Player player = game.getPlayer(source.getControllerId());
      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);
View Full Code Here

TOP

Related Classes of mage.players.Player

Copyright © 2018 www.massapicom. 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.