}
}
FilterCard filter = new FilterCard("creature card in an opponent's graveyard");
filter.add(new CardTypePredicate(CardType.CREATURE));
TargetCardInOpponentsGraveyard target = new TargetCardInOpponentsGraveyard(1, 1, filter);
if (you != null) {
if (target.canChoose(source.getControllerId(), game)
&& you.choose(Outcome.GainControl, target, source.getSourceId(), game)) {
if (!target.getTargets().isEmpty()) {
Card card = game.getCard(target.getFirstTarget());
if (card != null) {
if (card.getManaCost().convertedManaCost() <= allycount) {
card.putOntoBattlefield(game, Zone.GRAVEYARD, source.getSourceId(), source.getControllerId());
return true;
}