- Converting MorphUp to AbilityStatic

This commit is contained in:
Sol
2012-04-12 23:17:05 +00:00
parent ab755b777b
commit 653f5df122
3 changed files with 20 additions and 8 deletions

View File

@@ -971,19 +971,19 @@ public class CardFactoryUtil {
* a int. * a int.
* @return a {@link forge.card.spellability.AbilityActivated} object. * @return a {@link forge.card.spellability.AbilityActivated} object.
*/ */
public static AbilityActivated abilityMorphUp(final Card sourceCard, final Cost cost, final String orgManaCost, public static AbilityStatic abilityMorphUp(final Card sourceCard, final Cost cost, final String orgManaCost,
final int a, final int d) { final int a, final int d) {
final AbilityActivated morphUp = new AbilityActivated(sourceCard, cost, null) { final AbilityStatic morphUp = new AbilityStatic(sourceCard, cost, null) {
private static final long serialVersionUID = -3663857013937085953L; private static final long serialVersionUID = -3663857013937085953L;
@Override @Override
public void resolve() { public void resolve() {
sourceCard.turnFaceUp(); if (sourceCard.turnFaceUp()) {
// Run triggers
// Run triggers final Map<String, Object> runParams = new TreeMap<String, Object>();
final Map<String, Object> runParams = new TreeMap<String, Object>(); runParams.put("Card", sourceCard);
runParams.put("Card", sourceCard); AllZone.getTriggerHandler().runTrigger(TriggerType.TurnFaceUp, runParams);
AllZone.getTriggerHandler().runTrigger(TriggerType.TurnFaceUp, runParams); }
} }
@Override @Override

View File

@@ -18,6 +18,7 @@
package forge.card.spellability; package forge.card.spellability;
import forge.Card; import forge.Card;
import forge.card.cost.Cost;
/** /**
* <p> * <p>
@@ -41,4 +42,13 @@ public abstract class AbilityStatic extends Ability {
public AbilityStatic(final Card sourceCard, final String manaCost) { public AbilityStatic(final Card sourceCard, final String manaCost) {
super(sourceCard, manaCost); super(sourceCard, manaCost);
} }
public AbilityStatic(final Card sourceCard, final Cost abCost, final Target tgt) {
super(sourceCard, abCost.getTotalMana());
this.setManaCost(abCost.getTotalMana());
this.setPayCosts(abCost);
if ((tgt != null) && tgt.doesTarget()) {
this.setTarget(tgt);
}
}
} }

View File

@@ -450,6 +450,8 @@ public class MagicStack extends MyObservable {
if ((sp instanceof AbilityTriggered) || (sp instanceof AbilityStatic)) { if ((sp instanceof AbilityTriggered) || (sp instanceof AbilityStatic)) {
// TODO: make working triggered ability // TODO: make working triggered ability
sp.resolve(); sp.resolve();
Singletons.getModel().getGameAction().checkStateEffects();
GuiDisplayUtil.updateGUI();
} else { } else {
if (sp.isKickerAbility()) { if (sp.isKickerAbility()) {
sp.getSourceCard().setKicked(true); sp.getSourceCard().setKicked(true);