mirror of
https://github.com/correl/mage.git
synced 2025-03-07 20:53:18 -10:00
fixes
This commit is contained in:
parent
67fb349224
commit
db02ea3aa6
9 changed files with 18 additions and 14 deletions
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
package org.mage.test.cards;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.Constants.PhaseStep;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
|
|
|
@ -1,15 +1,6 @@
|
|||
package org.mage.test.cards;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import mage.Constants;
|
||||
import mage.Constants.PhaseStep;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.target.common.TargetCreatureOrPlayer;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.mage.test.serverside.base.CardTestPlayerBase;
|
||||
|
||||
|
|
|
@ -325,7 +325,7 @@ public final class Constants {
|
|||
PutCreatureInPlay(true),
|
||||
PutCardInPlay(true),
|
||||
PutLandInPlay(true),
|
||||
GainControl(true),
|
||||
GainControl(false),
|
||||
DrawCard(true),
|
||||
Discard(false),
|
||||
Sacrifice(false),
|
||||
|
|
|
@ -885,8 +885,10 @@ public abstract class GameImpl<T extends GameImpl<T>> implements Game, Serializa
|
|||
if (attachment != null && !(attachment.getSubtype().contains("Aura") ||
|
||||
attachment.getSubtype().contains("Equipment") ||
|
||||
attachment.getSubtype().contains("Fortification"))) {
|
||||
if (perm.removeAttachment(attachment.getId(), this))
|
||||
if (perm.removeAttachment(attachment.getId(), this)) {
|
||||
somethingHappened = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue