mirror of
https://github.com/correl/mage.git
synced 2024-11-28 19:19:55 +00:00
* Duel Commander - Removed commander damage logic.
This commit is contained in:
parent
d1af9b0b85
commit
eb802431fa
2 changed files with 16 additions and 9 deletions
|
@ -25,7 +25,6 @@
|
|||
* authors and should not be interpreted as representing official policies, either expressed
|
||||
* or implied, of BetaSteward_at_googlemail.com.
|
||||
*/
|
||||
|
||||
package mage.game;
|
||||
|
||||
import mage.game.match.MatchImpl;
|
||||
|
@ -46,11 +45,14 @@ public class CommanderDuelMatch extends MatchImpl {
|
|||
int startLife = 40;
|
||||
boolean alsoHand = true;
|
||||
// Don't like it to compare but seems like it's complicated to do it in another way
|
||||
boolean checkCommanderDamage = true;
|
||||
if (options.getDeckType().equals("Variant Magic - Duel Commander")) {
|
||||
startLife = 20; // Starting with the Commander 2016 update (on November 11th, 2016), Duel Commander will be played with 20 life points instead of 30.
|
||||
alsoHand = true; // commander going to hand allowed to go to command zone effective July 17, 2015
|
||||
checkCommanderDamage = false; // since nov 16 duel commander uses no longer commander damage rule
|
||||
}
|
||||
CommanderDuel game = new CommanderDuel(options.getAttackOption(), options.getRange(), options.getFreeMulligans(), startLife);
|
||||
game.setCheckCommanderDamage(checkCommanderDamage);
|
||||
game.setStartMessage(this.createGameStartMessage());
|
||||
game.setAlsoHand(alsoHand);
|
||||
game.setAlsoLibrary(true);
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
*/
|
||||
package mage.game;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
@ -38,7 +37,6 @@ import mage.abilities.effects.common.InfoEffect;
|
|||
import mage.abilities.effects.common.continuous.CommanderReplacementEffect;
|
||||
import mage.abilities.effects.common.cost.CommanderCostModification;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.Cards;
|
||||
import mage.constants.MultiplayerAttackOption;
|
||||
import mage.constants.PhaseStep;
|
||||
import mage.constants.RangeOfInfluence;
|
||||
|
@ -49,11 +47,8 @@ import mage.watchers.common.CommanderInfoWatcher;
|
|||
|
||||
public abstract class GameCommanderImpl extends GameImpl {
|
||||
|
||||
static boolean CHECK_COMMANDER_DAMAGE = true;
|
||||
|
||||
private final Map<UUID, Cards> mulliganedCards = new HashMap<>();
|
||||
// private final Set<CommanderInfoWatcher> commanderCombatWatcher = new HashSet<>();
|
||||
|
||||
// private final Map<UUID, Cards> mulliganedCards = new HashMap<>();
|
||||
protected boolean checkCommanderDamage;
|
||||
protected boolean alsoHand; // replace commander going to hand
|
||||
protected boolean alsoLibrary; // replace commander going to library
|
||||
protected boolean startingPlayerSkipsDraw = true;
|
||||
|
@ -67,6 +62,7 @@ public abstract class GameCommanderImpl extends GameImpl {
|
|||
this.alsoHand = game.alsoHand;
|
||||
this.alsoLibrary = game.alsoLibrary;
|
||||
this.startingPlayerSkipsDraw = game.startingPlayerSkipsDraw;
|
||||
this.checkCommanderDamage = game.checkCommanderDamage;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -85,7 +81,7 @@ public abstract class GameCommanderImpl extends GameImpl {
|
|||
ability.addEffect(new CommanderReplacementEffect(commander.getId(), alsoHand, alsoLibrary));
|
||||
ability.addEffect(new CommanderCostModification(commander.getId()));
|
||||
getState().setValue(commander.getId() + "_castCount", 0);
|
||||
CommanderInfoWatcher watcher = new CommanderInfoWatcher(commander.getId(), CHECK_COMMANDER_DAMAGE);
|
||||
CommanderInfoWatcher watcher = new CommanderInfoWatcher(commander.getId(), checkCommanderDamage);
|
||||
getState().getWatchers().add(watcher);
|
||||
watcher.addCardInfoToCommander(this);
|
||||
}
|
||||
|
@ -227,4 +223,13 @@ public abstract class GameCommanderImpl extends GameImpl {
|
|||
public void setAlsoLibrary(boolean alsoLibrary) {
|
||||
this.alsoLibrary = alsoLibrary;
|
||||
}
|
||||
|
||||
public boolean isCheckCommanderDamage() {
|
||||
return checkCommanderDamage;
|
||||
}
|
||||
|
||||
public void setCheckCommanderDamage(boolean checkCommanderDamage) {
|
||||
this.checkCommanderDamage = checkCommanderDamage;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue