convert from java code to groovy code
parent
91e5a11a7d
commit
c58560a8b5
|
@ -0,0 +1,30 @@
|
||||||
|
[
|
||||||
|
new MagicPermanentActivation(
|
||||||
|
[MagicCondition.CAN_TAP_CONDITION],
|
||||||
|
new MagicActivationHints(MagicTiming.Pump),
|
||||||
|
"Gain life"
|
||||||
|
) {
|
||||||
|
@Override
|
||||||
|
public MagicEvent[] getCostEvent(final MagicPermanent source) {
|
||||||
|
return [
|
||||||
|
new MagicTapEvent(source),
|
||||||
|
new MagicSacrificeEvent(source)
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MagicEvent getPermanentEvent(final MagicPermanent source, final MagicPayedCost payedCost) {
|
||||||
|
return new MagicEvent(
|
||||||
|
source,
|
||||||
|
this,
|
||||||
|
"PN gains life equal to the number of charge counters on SN."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void executeEvent(final MagicGame game, final MagicEvent event) {
|
||||||
|
final int amount = event.getPermanent().getCounters(MagicCounterType.Charge);
|
||||||
|
game.doAction(new MagicChangeLifeAction(event.getPlayer(),amount));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
|
@ -7,4 +7,4 @@ type=Artifact
|
||||||
cost={1}
|
cost={1}
|
||||||
timing=artifact
|
timing=artifact
|
||||||
ability=charge at upkeep
|
ability=charge at upkeep
|
||||||
requires_card_code
|
requires_groovy_code
|
||||||
|
|
|
@ -1,49 +0,0 @@
|
||||||
package magic.card;
|
|
||||||
|
|
||||||
import magic.model.MagicCounterType;
|
|
||||||
import magic.model.MagicGame;
|
|
||||||
import magic.model.MagicPayedCost;
|
|
||||||
import magic.model.MagicPermanent;
|
|
||||||
import magic.model.action.MagicChangeLifeAction;
|
|
||||||
import magic.model.condition.MagicCondition;
|
|
||||||
import magic.model.event.MagicActivationHints;
|
|
||||||
import magic.model.event.MagicEvent;
|
|
||||||
import magic.model.event.MagicPermanentActivation;
|
|
||||||
import magic.model.event.MagicSacrificeEvent;
|
|
||||||
import magic.model.event.MagicTapEvent;
|
|
||||||
import magic.model.event.MagicTiming;
|
|
||||||
|
|
||||||
public class Golden_Urn {
|
|
||||||
public static final MagicPermanentActivation A = new MagicPermanentActivation(
|
|
||||||
new MagicCondition[]{
|
|
||||||
MagicCondition.CAN_TAP_CONDITION,
|
|
||||||
},
|
|
||||||
new MagicActivationHints(MagicTiming.Pump),
|
|
||||||
"Gain life") {
|
|
||||||
@Override
|
|
||||||
public MagicEvent[] getCostEvent(final MagicPermanent source) {
|
|
||||||
final MagicPermanent permanent = source;
|
|
||||||
return new MagicEvent[]{
|
|
||||||
new MagicTapEvent(permanent),
|
|
||||||
new MagicSacrificeEvent(permanent)};
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public MagicEvent getPermanentEvent(
|
|
||||||
final MagicPermanent source,
|
|
||||||
final MagicPayedCost payedCost) {
|
|
||||||
return new MagicEvent(
|
|
||||||
source,
|
|
||||||
this,
|
|
||||||
"PN gains life equal to the number of charge counters on SN.");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void executeEvent(
|
|
||||||
final MagicGame game,
|
|
||||||
final MagicEvent event) {
|
|
||||||
final int amount = event.getPermanent().getCounters(MagicCounterType.Charge);
|
|
||||||
game.doAction(new MagicChangeLifeAction(event.getPlayer(),amount));
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in New Issue