package magic.model.target; import magic.model.MagicAbility; import magic.model.MagicGame; import magic.model.MagicPermanent; import magic.model.MagicPlayer; public class MagicRegenerateTargetPicker extends MagicTargetPicker<MagicPermanent> { private static final MagicRegenerateTargetPicker INSTANCE = new MagicRegenerateTargetPicker(); private MagicRegenerateTargetPicker() {} @Override protected int getTargetScore(final MagicGame game,final MagicPlayer player,final MagicPermanent permanent) { if (permanent.canRegenerate()) { if (permanent.hasAbility(MagicAbility.Persist) || permanent.hasAbility(MagicAbility.Indestructible)) { return permanent.getDamage()+1; } return permanent.getScore(); } return 0; } public static MagicRegenerateTargetPicker create() { return INSTANCE; } }