* Geju of the Fiels, Raging Ravine fixed that the given triggered ability was wrongly only given one time instead as often the activated ability was used.

This commit is contained in:
LevelX2 2014-05-10 18:01:41 +02:00
parent 8a4474fadc
commit 8e56d06121
3 changed files with 6 additions and 8 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View file

@ -28,11 +28,6 @@
package mage.sets.betrayersofkamigawa; package mage.sets.betrayersofkamigawa;
import java.util.UUID; import java.util.UUID;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Rarity;
import mage.constants.Zone;
import mage.MageInt; import mage.MageInt;
import mage.abilities.Ability; import mage.abilities.Ability;
import mage.abilities.common.DealsDamageGainLifeSourceTriggeredAbility; import mage.abilities.common.DealsDamageGainLifeSourceTriggeredAbility;
@ -45,18 +40,19 @@ import mage.abilities.effects.common.ReturnToHandSourceEffect;
import mage.abilities.effects.common.continious.BecomesCreatureAttachedEffect; import mage.abilities.effects.common.continious.BecomesCreatureAttachedEffect;
import mage.abilities.effects.common.continious.GainAbilityAttachedEffect; import mage.abilities.effects.common.continious.GainAbilityAttachedEffect;
import mage.abilities.keyword.EnchantAbility; import mage.abilities.keyword.EnchantAbility;
import mage.abilities.keyword.LifelinkAbility;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.constants.AttachmentType; import mage.constants.AttachmentType;
import mage.constants.CardType;
import mage.constants.Duration; import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Rarity;
import mage.constants.Zone;
import mage.filter.common.FilterLandPermanent; import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.mageobject.SubtypePredicate; import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.permanent.token.Token; import mage.game.permanent.token.Token;
import mage.target.TargetPermanent; import mage.target.TargetPermanent;
import mage.target.common.TargetLandPermanent; import mage.target.common.TargetLandPermanent;
/** /**
* *
* @author LevelX2 * @author LevelX2
@ -88,6 +84,7 @@ public class GenjuOfTheFields extends CardImpl<GenjuOfTheFields> {
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect,new GenericManaCost(2)); Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect,new GenericManaCost(2));
effect = new GainAbilityAttachedEffect(new DealsDamageGainLifeSourceTriggeredAbility(), AttachmentType.AURA, Duration.EndOfTurn); effect = new GainAbilityAttachedEffect(new DealsDamageGainLifeSourceTriggeredAbility(), AttachmentType.AURA, Duration.EndOfTurn);
effect.setText("with \"Whenever this creature deals damage, its controller gains that much life.\". It's still a land"); effect.setText("with \"Whenever this creature deals damage, its controller gains that much life.\". It's still a land");
ability2.addEffect(effect);
this.addAbility(ability2); this.addAbility(ability2);
// When enchanted Plains is put into a graveyard, you may return Genju of the Fields from your graveyard to your hand. // When enchanted Plains is put into a graveyard, you may return Genju of the Fields from your graveyard to your hand.

View file

@ -214,6 +214,7 @@ public abstract class PermanentImpl<T extends PermanentImpl<T>> extends CardImpl
public void addAbility(Ability ability, UUID sourceId, Game game) { public void addAbility(Ability ability, UUID sourceId, Game game) {
if (!abilities.containsKey(ability.getId())) { if (!abilities.containsKey(ability.getId())) {
Ability copyAbility = ability.copy(); Ability copyAbility = ability.copy();
copyAbility.newId(); // needed so that sourc can get an ability multiple times (e.g. Raging Ravine)
copyAbility.setControllerId(controllerId); copyAbility.setControllerId(controllerId);
copyAbility.setSourceId(objectId); copyAbility.setSourceId(objectId);
game.getState().addAbility(copyAbility, sourceId, this); game.getState().addAbility(copyAbility, sourceId, this);