コード例 #1
0
ファイル: GameState.java プロジェクト: sucramnosslin/mage
 public void removeDelayedTriggeredAbility(UUID abilityId) {
   for (DelayedTriggeredAbility ability : delayed) {
     if (ability.getId().equals(abilityId)) {
       delayed.remove(ability);
       break;
     }
   }
 }
コード例 #2
0
 @Override
 public boolean apply(Game game, Ability source) {
   DelayedTriggeredAbility delayedAbility =
       new SaffiEriksdotterDelayedTriggeredAbility(
           new FixedTarget(this.getTargetPointer().getFirst(game, source)));
   delayedAbility.setSourceId(source.getSourceId());
   delayedAbility.setControllerId(source.getControllerId());
   delayedAbility.setSourceObject(source.getSourceObject(game), game);
   game.addDelayedTriggeredAbility(delayedAbility);
   return false;
 }
コード例 #3
0
ファイル: GruesomeEncore.java プロジェクト: xdaft/mage
  @Override
  public boolean apply(Game game, Ability source) {
    Card card = game.getCard(source.getFirstTarget());
    if (card != null) {
      card.addAbility(HasteAbility.getInstance());
      card.putOntoBattlefield(game, Zone.GRAVEYARD, source.getId(), source.getControllerId());

      ExileTargetEffect exileEffect = new ExileTargetEffect();
      exileEffect.setTargetPointer(new FixedTarget(card.getId()));
      DelayedTriggeredAbility delayedAbility = new AtEndOfTurnDelayedTriggeredAbility(exileEffect);
      delayedAbility.setSourceId(source.getSourceId());
      delayedAbility.setControllerId(source.getControllerId());
      game.addDelayedTriggeredAbility(delayedAbility);

      return true;
    }

    return false;
  }