mirror of
https://github.com/correl/mage.git
synced 2024-11-25 03:00:11 +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
|
* authors and should not be interpreted as representing official policies, either expressed
|
||||||
* or implied, of BetaSteward_at_googlemail.com.
|
* or implied, of BetaSteward_at_googlemail.com.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package mage.game;
|
package mage.game;
|
||||||
|
|
||||||
import mage.game.match.MatchImpl;
|
import mage.game.match.MatchImpl;
|
||||||
|
@ -46,11 +45,14 @@ public class CommanderDuelMatch extends MatchImpl {
|
||||||
int startLife = 40;
|
int startLife = 40;
|
||||||
boolean alsoHand = true;
|
boolean alsoHand = true;
|
||||||
// Don't like it to compare but seems like it's complicated to do it in another way
|
// 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")) {
|
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.
|
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
|
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);
|
CommanderDuel game = new CommanderDuel(options.getAttackOption(), options.getRange(), options.getFreeMulligans(), startLife);
|
||||||
|
game.setCheckCommanderDamage(checkCommanderDamage);
|
||||||
game.setStartMessage(this.createGameStartMessage());
|
game.setStartMessage(this.createGameStartMessage());
|
||||||
game.setAlsoHand(alsoHand);
|
game.setAlsoHand(alsoHand);
|
||||||
game.setAlsoLibrary(true);
|
game.setAlsoLibrary(true);
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
*/
|
*/
|
||||||
package mage.game;
|
package mage.game;
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
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.continuous.CommanderReplacementEffect;
|
||||||
import mage.abilities.effects.common.cost.CommanderCostModification;
|
import mage.abilities.effects.common.cost.CommanderCostModification;
|
||||||
import mage.cards.Card;
|
import mage.cards.Card;
|
||||||
import mage.cards.Cards;
|
|
||||||
import mage.constants.MultiplayerAttackOption;
|
import mage.constants.MultiplayerAttackOption;
|
||||||
import mage.constants.PhaseStep;
|
import mage.constants.PhaseStep;
|
||||||
import mage.constants.RangeOfInfluence;
|
import mage.constants.RangeOfInfluence;
|
||||||
|
@ -49,11 +47,8 @@ import mage.watchers.common.CommanderInfoWatcher;
|
||||||
|
|
||||||
public abstract class GameCommanderImpl extends GameImpl {
|
public abstract class GameCommanderImpl extends GameImpl {
|
||||||
|
|
||||||
static boolean CHECK_COMMANDER_DAMAGE = true;
|
// private final Map<UUID, Cards> mulliganedCards = new HashMap<>();
|
||||||
|
protected boolean checkCommanderDamage;
|
||||||
private final Map<UUID, Cards> mulliganedCards = new HashMap<>();
|
|
||||||
// private final Set<CommanderInfoWatcher> commanderCombatWatcher = new HashSet<>();
|
|
||||||
|
|
||||||
protected boolean alsoHand; // replace commander going to hand
|
protected boolean alsoHand; // replace commander going to hand
|
||||||
protected boolean alsoLibrary; // replace commander going to library
|
protected boolean alsoLibrary; // replace commander going to library
|
||||||
protected boolean startingPlayerSkipsDraw = true;
|
protected boolean startingPlayerSkipsDraw = true;
|
||||||
|
@ -67,6 +62,7 @@ public abstract class GameCommanderImpl extends GameImpl {
|
||||||
this.alsoHand = game.alsoHand;
|
this.alsoHand = game.alsoHand;
|
||||||
this.alsoLibrary = game.alsoLibrary;
|
this.alsoLibrary = game.alsoLibrary;
|
||||||
this.startingPlayerSkipsDraw = game.startingPlayerSkipsDraw;
|
this.startingPlayerSkipsDraw = game.startingPlayerSkipsDraw;
|
||||||
|
this.checkCommanderDamage = game.checkCommanderDamage;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -85,7 +81,7 @@ public abstract class GameCommanderImpl extends GameImpl {
|
||||||
ability.addEffect(new CommanderReplacementEffect(commander.getId(), alsoHand, alsoLibrary));
|
ability.addEffect(new CommanderReplacementEffect(commander.getId(), alsoHand, alsoLibrary));
|
||||||
ability.addEffect(new CommanderCostModification(commander.getId()));
|
ability.addEffect(new CommanderCostModification(commander.getId()));
|
||||||
getState().setValue(commander.getId() + "_castCount", 0);
|
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);
|
getState().getWatchers().add(watcher);
|
||||||
watcher.addCardInfoToCommander(this);
|
watcher.addCardInfoToCommander(this);
|
||||||
}
|
}
|
||||||
|
@ -227,4 +223,13 @@ public abstract class GameCommanderImpl extends GameImpl {
|
||||||
public void setAlsoLibrary(boolean alsoLibrary) {
|
public void setAlsoLibrary(boolean alsoLibrary) {
|
||||||
this.alsoLibrary = alsoLibrary;
|
this.alsoLibrary = alsoLibrary;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isCheckCommanderDamage() {
|
||||||
|
return checkCommanderDamage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCheckCommanderDamage(boolean checkCommanderDamage) {
|
||||||
|
this.checkCommanderDamage = checkCommanderDamage;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue