convert from java code to groovy code

master
melvin 2013-05-19 10:20:19 +08:00
parent 8a0b724008
commit ef32f4a82b
3 changed files with 33 additions and 48 deletions

View File

@ -0,0 +1,32 @@
[
new MagicManaActivation(
MagicManaType.ALL_TYPES,
[
MagicCondition.CAN_TAP_CONDITION,
MagicConditionFactory.ChargeCountersAtLeast(1)
],
2
) {
@Override
public MagicEvent[] getCostEvent(final MagicPermanent permanent) {
return (permanent.getCounters(MagicCounterType.Charge) == 1) ?
[
new MagicTapEvent(permanent),
new MagicRemoveCounterEvent(
permanent,
MagicCounterType.Charge,
1
),
new MagicSacrificeEvent(permanent)
]:
[
new MagicTapEvent(permanent),
new MagicRemoveCounterEvent(
permanent,
MagicCounterType.Charge,
1
)
];
}
}
]

View File

@ -7,4 +7,4 @@ type=Land
mana=b3g3r3u3w3
ability=enters with mining 3
timing=land
requires_card_code
requires_groovy_code

View File

@ -1,47 +0,0 @@
package magic.card;
import magic.model.MagicCounterType;
import magic.model.MagicManaType;
import magic.model.MagicPermanent;
import magic.model.MagicSource;
import magic.model.condition.MagicCondition;
import magic.model.condition.MagicConditionFactory;
import magic.model.event.MagicEvent;
import magic.model.event.MagicManaActivation;
import magic.model.event.MagicRemoveCounterEvent;
import magic.model.event.MagicSacrificeEvent;
import magic.model.event.MagicTapEvent;
public class Gemstone_Mine {
public static final MagicManaActivation MANA = new MagicManaActivation(
MagicManaType.ALL_TYPES,
new MagicCondition[] {
MagicCondition.CAN_TAP_CONDITION,
MagicConditionFactory.ChargeCountersAtLeast(1)
},
2) {
@Override
public MagicEvent[] getCostEvent(final MagicPermanent permanent) {
if (permanent.getCounters(MagicCounterType.Charge) == 1) {
return new MagicEvent[]{
new MagicTapEvent(permanent),
new MagicRemoveCounterEvent(
permanent,
MagicCounterType.Charge,
1
),
new MagicSacrificeEvent(permanent)
};
}
return new MagicEvent[]{
new MagicTapEvent(permanent),
new MagicRemoveCounterEvent(
permanent,
MagicCounterType.Charge,
1
)
};
}
};
}