mirror of
https://github.com/correl/mage.git
synced 2025-01-12 19:25:44 +00:00
Code cleanup
This commit is contained in:
parent
ac09be4b2b
commit
a98f0f03c7
1 changed files with 19 additions and 24 deletions
|
@ -87,36 +87,31 @@ class TormentOfHailfireEffect extends OneShotEffect {
|
|||
if (controller != null) {
|
||||
int repeat = source.getManaCostsToPay().getX();
|
||||
for (int i = 1; i <= repeat; i++) {
|
||||
for (UUID opponentId : game.getOpponents(source.getControllerId())) {
|
||||
boolean hasChosen = false;
|
||||
while (!hasChosen) {
|
||||
Player opponent = game.getPlayer(opponentId);
|
||||
if (opponent != null) {
|
||||
int permanents = game.getBattlefield().countAll(StaticFilters.FILTER_PERMANENT_NON_LAND, opponentId, game);
|
||||
if (permanents > 0 && opponent.chooseUse(outcome, "Sacrifices a nonland permanent? (Iteration " + i + " of " + repeat + ")",
|
||||
"Otherwise you have to discard a card or lose 3 life.", "Sacrifice", "Discard or life loss", source, game)) {
|
||||
Target target = new TargetPermanent(StaticFilters.FILTER_CONTROLLED_PERMANENT_NON_LAND);
|
||||
if (opponent.choose(outcome, target, source.getSourceId(), game)) {
|
||||
Permanent permanent = game.getPermanent(target.getFirstTarget());
|
||||
if (permanent != null) {
|
||||
if (permanent.sacrifice(source.getSourceId(), game)) {
|
||||
hasChosen = true;
|
||||
continue;
|
||||
}
|
||||
for (UUID opponentId : game.getOpponents(source.getControllerId())) {z
|
||||
Player opponent = game.getPlayer(opponentId);
|
||||
if (opponent != null) {
|
||||
int permanents = game.getBattlefield().countAll(StaticFilters.FILTER_PERMANENT_NON_LAND, opponentId, game);
|
||||
if (permanents > 0 && opponent.chooseUse(outcome, "Sacrifices a nonland permanent? (Iteration " + i + " of " + repeat + ")",
|
||||
"Otherwise you have to discard a card or lose 3 life.", "Sacrifice", "Discard or life loss", source, game)) {
|
||||
Target target = new TargetPermanent(StaticFilters.FILTER_CONTROLLED_PERMANENT_NON_LAND);
|
||||
if (opponent.choose(outcome, target, source.getSourceId(), game)) {
|
||||
Permanent permanent = game.getPermanent(target.getFirstTarget());
|
||||
if (permanent != null) {
|
||||
if (permanent.sacrifice(source.getSourceId(), game)) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!opponent.getHand().isEmpty() && opponent.chooseUse(outcome, "Discard a card? (Iteration " + i + " of " + repeat + ")",
|
||||
"Otherwise you lose 3 life.", "Discard", "Lose 3 life", source, game)) {
|
||||
opponent.discardOne(false, source, game);
|
||||
hasChosen = true;
|
||||
continue;
|
||||
}
|
||||
opponent.loseLife(3, game, false);
|
||||
hasChosen = true;
|
||||
}
|
||||
if (!opponent.getHand().isEmpty() && opponent.chooseUse(outcome, "Discard a card? (Iteration " + i + " of " + repeat + ")",
|
||||
"Otherwise you lose 3 life.", "Discard", "Lose 3 life", source, game)) {
|
||||
opponent.discardOne(false, source, game);
|
||||
continue;
|
||||
}
|
||||
opponent.loseLife(3, game, false);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue