public boolean apply(Game game, Ability source) {
UUID creatureId = (UUID) getValue("damageSource");
Permanent creature = game.getPermanentOrLKIBattlefield(creatureId);
Player controller = game.getPlayer(source.getControllerId());
if (creature != null && controller != null) {
if (controller.chooseUse(Outcome.Damage, "Pay {2}{R} to do the damage?", game)) {
// if (controller.chooseUse(Outcome.Damage, "Pay {2}{R}? If you do, " + creature.getName() + " deals damage equal to its power to target creature or player.", game)) {
ManaCosts manaCosts = new ManaCostsImpl("{2}{R}");
if (manaCosts.pay(source, game, source.getSourceId(), controller.getId(), false)) {
int amount = creature.getPower().getValue();
UUID target = source.getTargets().getFirstTarget();