@Override public boolean apply(Game game, Ability source) { game.getOpponents(source.getControllerId()).stream().map((opponentId) -> game.getPlayer(opponentId)).filter((opponent) -> (opponent != null)).forEachOrdered((opponent) -> { int amount = (Integer) getValue("damage"); if (amount > 0) { opponent.gainLife(amount, game, source); } }); return true; } }
@Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); if (player != null && player.getLife() <= 10) { player.gainLife(1, game, source); return true; } return false; }
@Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife(player.getLife(), game, source); return true; } return false; }
@Override public boolean apply(Game game, Ability source) { for (UUID playerId : game.getOpponents(source.getControllerId())) { Player player = game.getPlayer(playerId); if(player != null) { player.gainLife(1, game, source); } } return true; }
@Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife((Integer) this.getValue("damageAmount"), game, source); } return true; }
@Override public boolean replaceEvent(GameEvent event, Ability source, Game game) { PreventionEffectData preventionData = preventDamageAction(event, source, game); Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife(preventionData.getPreventedDamage(), game, source); } return true; }
@Override public boolean replaceEvent(GameEvent event, Ability source, Game game) { PreventionEffectData preventEffectData = preventDamageAction(event, source, game); if (preventEffectData.getPreventedDamage() > 0) { used = true; Player player = game .getPlayer(source.getControllerId()); if(player != null){ player.gainLife(preventEffectData.getPreventedDamage(), game, source); } } return false; }
@Override public boolean apply(Game game, Ability source) { Player targetPlayer = game.getPlayer(source.getFirstTarget()); Player controllerPlayer = game.getPlayer(source.getControllerId()); if (targetPlayer != null && controllerPlayer != null) { targetPlayer.loseLife(1, game, false); controllerPlayer.gainLife(1, game, source); } return false; }
@Override public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); if (controller != null) { controller.gainLife(controller.getGraveyard().count(new FilterCreatureCard(), game), game, source); return true; } return false; } }
@Override public boolean apply(Game game, Ability source) { Player targetPlayer = game.getPlayer(source.getFirstTarget()); Player you = game.getPlayer(source.getControllerId()); if (targetPlayer != null) { targetPlayer.loseLife(1, game, false); } if (you != null) { you.gainLife(1, game, source); } return true; }
@Override public boolean apply(Game game, Ability source) { int amount = game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game); Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife(amount, game, source); return true; } return false; }
@Override public boolean apply(Game game, Ability source) { Permanent permanent = (Permanent) game.getLastKnownInformation(source.getFirstTarget(), Zone.BATTLEFIELD); if (permanent != null) { Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife(permanent.getToughness().getValue(), game, source); } } return false; }
@Override public boolean apply(Game game, Ability source) { Permanent targetPermanent = game.getPermanentOrLKIBattlefield(getTargetPointer().getFirst(game, source)); if (targetPermanent != null) { int cost = targetPermanent.getConvertedManaCost(); Player player = game.getPlayer(source.getControllerId()); if (player != null) { player.gainLife(cost, game, source); } } return true; }
@Override public boolean apply(Game game, Ability source) { for (UUID playerId : game.getState().getPlayersInRange(source.getControllerId(), game)) { Player player = game.getPlayer(playerId); if (player != null && game.isOpponent(player, source.getControllerId())) { player.gainLife(2, game, source); } } return true; }
@Override public boolean apply(Game game, Ability source) { int loseLife = 0; for (UUID opponentId : game.getOpponents(source.getControllerId())) { loseLife += game.getPlayer(opponentId).loseLife(3, game, false); } if (loseLife > 0) { game.getPlayer(source.getControllerId()).gainLife(loseLife, game, source); } return true; }
@Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); int life = 2 * game.getBattlefield().count(filter, source.getSourceId(), source.getControllerId(), game); if (player != null) { player.gainLife(life, game, source); } return true; }
@Override public boolean apply(Game game, Ability source) { int damage = 0; for (UUID opponentId: game.getOpponents(source.getControllerId())) { damage += game.getPlayer(opponentId).damage(3, source.getSourceId(), game, false, true); } game.getPlayer(source.getControllerId()).gainLife(damage, game, source); return true; }
@Override public boolean apply(Game game, Ability source) { Player controller = game.getPlayer(source.getControllerId()); Permanent permanent = game.getPermanentOrLKIBattlefield(getTargetPointer().getFirst(game, source)); if (controller != null && permanent != null) { controller.gainLife(permanent.getToughness().getValue(), game, source); return true; } return false; } }
@Override public boolean apply(Game game, Ability source) { int loseLife = 0; int damage = source.getManaCostsToPay().getX(); for (UUID opponentId : game.getOpponents(source.getControllerId())) { loseLife += game.getPlayer(opponentId).loseLife(damage, game, false); } if (loseLife > 0) game.getPlayer(source.getControllerId()).gainLife(loseLife, game, source); return true; }
@Override public boolean apply(Game game, Ability source) { Player player = game.getPlayer(source.getControllerId()); if (player != null) { int lifeToGain = game.getBattlefield().count(StaticFilters.FILTER_PERMANENT_CREATURE, source.getSourceId(), source.getControllerId(), game); lifeToGain += game.getBattlefield().count(new FilterArtifactPermanent(), source.getSourceId(), source.getControllerId(), game); player.gainLife(lifeToGain, game, source); } return true; }