mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 19:28:01 +00:00
PermanentEffect: add Base class for PermanentCreatureEffect and PermanentNoncreatureEffect
This commit is contained in:
@@ -1,27 +1,13 @@
|
||||
package forge.game.ability.effects;
|
||||
|
||||
import forge.game.ability.SpellAbilityEffect;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.game.zone.ZoneType;
|
||||
|
||||
/**
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class PermanentCreatureEffect extends SpellAbilityEffect {
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see forge.card.abilityfactory.SpellEffect#resolve(forge.card.spellability.SpellAbility)
|
||||
*/
|
||||
@Override
|
||||
public void resolve(SpellAbility sa) {
|
||||
Player p = sa.getActivatingPlayer();
|
||||
sa.getHostCard().setController(p, 0);
|
||||
final Card c = p.getGame().getAction().moveTo(p.getZone(ZoneType.Battlefield), sa.getHostCard());
|
||||
sa.setHostCard(c);
|
||||
}
|
||||
public class PermanentCreatureEffect extends PermanentEffect {
|
||||
|
||||
@Override
|
||||
public String getStackDescription(final SpellAbility sa) {
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package forge.game.ability.effects;
|
||||
|
||||
import forge.game.ability.SpellAbilityEffect;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
|
||||
public class PermanentEffect extends SpellAbilityEffect {
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
*
|
||||
* @see
|
||||
* forge.card.abilityfactory.SpellEffect#resolve(forge.card.spellability.
|
||||
* SpellAbility)
|
||||
*/
|
||||
@Override
|
||||
public void resolve(SpellAbility sa) {
|
||||
Player p = sa.getActivatingPlayer();
|
||||
sa.getHostCard().setController(p, 0);
|
||||
final Card host = sa.getHostCard();
|
||||
|
||||
final Card c = p.getGame().getAction().moveToPlay(host, p);
|
||||
sa.setHostCard(c);
|
||||
|
||||
// some extra for Dashing
|
||||
if (sa.isDash()) {
|
||||
c.addExtrinsicKeyword("Haste");
|
||||
c.setSVar("EndOfTurnLeavePlay", "True");
|
||||
c.updateKeywords();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,27 +1,13 @@
|
||||
package forge.game.ability.effects;
|
||||
|
||||
import forge.game.ability.SpellAbilityEffect;
|
||||
import forge.game.card.Card;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.game.zone.ZoneType;
|
||||
|
||||
/**
|
||||
* TODO: Write javadoc for this type.
|
||||
*
|
||||
*/
|
||||
public class PermanentNoncreatureEffect extends SpellAbilityEffect {
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see forge.card.abilityfactory.SpellEffect#resolve(forge.card.spellability.SpellAbility)
|
||||
*/
|
||||
@Override
|
||||
public void resolve(SpellAbility sa) {
|
||||
final Player p = sa.getActivatingPlayer();
|
||||
sa.getHostCard().setController(p, 0);
|
||||
final Card c = p.getGame().getAction().moveTo(p.getZone(ZoneType.Battlefield), sa.getHostCard());
|
||||
sa.setHostCard(c);
|
||||
}
|
||||
public class PermanentNoncreatureEffect extends PermanentEffect {
|
||||
|
||||
@Override
|
||||
public String getStackDescription(final SpellAbility sa) {
|
||||
|
||||
Reference in New Issue
Block a user