This commit is contained in:
BetaSteward 2012-03-03 23:20:10 -05:00
parent 67fb349224
commit db02ea3aa6
9 changed files with 18 additions and 14 deletions

View file

@ -37,9 +37,11 @@ import mage.MageInt;
import mage.abilities.TriggeredAbilityImpl;
import mage.abilities.effects.common.SacrificeTargetEffect;
import mage.cards.CardImpl;
import mage.filter.common.FilterCreaturePermanent;
import mage.game.Game;
import mage.game.events.DamagedPlayerEvent;
import mage.game.events.GameEvent;
import mage.players.Player;
import mage.target.common.TargetCreaturePermanent;
/**
@ -91,7 +93,14 @@ class AshlingTheExtinguisherTriggeredAbility extends TriggeredAbilityImpl<Ashlin
if (event instanceof DamagedPlayerEvent) {
DamagedPlayerEvent damageEvent = (DamagedPlayerEvent)event;
if (damageEvent.isCombatDamage() && event.getSourceId().equals(this.getSourceId())) {
return true;
Player opponent = game.getPlayer(event.getPlayerId());
if (opponent != null) {
this.getTargets().clear();
FilterCreaturePermanent filter = new FilterCreaturePermanent("creature " + opponent.getName() + " controls");
filter.getControllerId().add(opponent.getId());
this.addTarget(new TargetCreaturePermanent(filter));
return true;
}
}
}
return false;

View file

@ -100,6 +100,7 @@ class LightwielderPaladinTriggeredAbility extends TriggeredAbilityImpl<Lightwiel
filter.setScopeColor(ComparisonScope.Any);
filter.getControllerId().add(event.getTargetId());
filter.setNotController(false);
this.getTargets().clear();
this.addTarget(new TargetPermanent(filter));
return true;
}

View file

@ -89,6 +89,7 @@ class ArmWithAEtherTriggeredAbility extends TriggeredAbilityImpl<ArmWithAEtherTr
public boolean checkTrigger(GameEvent event, Game game) {
Player opponent = game.getPlayer(event.getPlayerId());
if (opponent != null && event.getType() == GameEvent.EventType.DAMAGED_PLAYER && event.getSourceId().equals(this.sourceId)) {
this.getTargets().clear();
FilterCreaturePermanent filter = new FilterCreaturePermanent("creature " + opponent.getName() + " controls");
filter.getControllerId().add(opponent.getId());
this.addTarget(new TargetCreaturePermanent(filter));

View file

@ -106,6 +106,7 @@ class BlindZealotTriggeredAbility extends TriggeredAbilityImpl<BlindZealotTrigge
sb.append(" to destroy target creature controlled by ");
sb.append(game.getPlayer(event.getTargetId()).getName()).append("?");
if (player.chooseUse(Outcome.DestroyPermanent, sb.toString(), game)) {
this.getTargets().clear();
FilterCreaturePermanent filter = new FilterCreaturePermanent();
filter.getControllerId().add(event.getTargetId());
filter.setNotController(false);

View file

@ -100,6 +100,7 @@ class HammerOfRuinTriggeredAbility extends TriggeredAbilityImpl<HammerOfRuinTrig
Permanent p = game.getPermanent(event.getSourceId());
if (damageEvent.isCombatDamage() && p != null && p.getAttachments().contains(this.getSourceId())) {
FilterPermanent filter = (FilterPermanent)getTargets().get(0).getFilter();
filter.getControllerId().clear();
filter.getControllerId().add(event.getPlayerId());
return true;
}