foul-magics/Mage.Sets/src/mage/cards/s/SlimeMolding.java
2018-06-02 17:59:49 +02:00

64 lines
1.6 KiB
Java

package mage.cards.s;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.effects.OneShotEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.game.Game;
import mage.game.permanent.token.OozeToken;
/**
*
* @author Plopman
*/
public final class SlimeMolding extends CardImpl {
public SlimeMolding(UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{X}{G}");
// Create an X/X green Ooze creature token.
this.getSpellAbility().addEffect(new SlimeMoldingEffect());
}
public SlimeMolding(final SlimeMolding card) {
super(card);
}
@Override
public SlimeMolding copy() {
return new SlimeMolding(this);
}
}
class SlimeMoldingEffect extends OneShotEffect {
public SlimeMoldingEffect() {
super(Outcome.PutCreatureInPlay);
staticText = "Create an X/X green Ooze creature token";
}
public SlimeMoldingEffect(SlimeMoldingEffect ability) {
super(ability);
}
@Override
public boolean apply(Game game, Ability source) {
int count = source.getManaCostsToPay().getX();
OozeToken oozeToken = new OozeToken();
oozeToken.getPower().modifyBaseValue(count);
oozeToken.getToughness().modifyBaseValue(count);
oozeToken.putOntoBattlefield(1, game, source.getSourceId(), source.getControllerId());
return true;
}
@Override
public SlimeMoldingEffect copy() {
return new SlimeMoldingEffect(this);
}
}