diff --git a/Mage.Client/release/sample-decks/Commander/Zurgo Helmsmasher RWB.dck b/Mage.Client/release/sample-decks/Commander/Zurgo Helmsmasher RWB.dck new file mode 100644 index 0000000000..2e5fce7b61 --- /dev/null +++ b/Mage.Client/release/sample-decks/Commander/Zurgo Helmsmasher RWB.dck @@ -0,0 +1,90 @@ +1 [M15:36] Spectra Ward +1 [MBS:43] Go for the Throat +1 [8ED:204] Obliterate +1 [BNG:4] Archetype of Courage +1 [EVE:176] Fetid Heath +1 [AVR:6] Avacyn, Angel of Hope +1 [10E:61] Wrath of God +1 [CHK:283] Shizo, Death's Storehouse +1 [M11:221] Whispersilk Cloak +1 [PLC:85] Damnation +1 [M15:110] Ob Nixilis, Unshackled +1 [M15:100] In Garruk's Wake +1 [M14:210] Fireshrieker +1 [AVR:209] Gisela, Blade of Goldnight +1 [M12:160] Warstorm Surge +1 [BNG:93] Fall of the Hammer +1 [TSB:117] Arena +5 [ORI:261] Swamp +1 [GTC:17] Holy Mantle +1 [M15:225] Phyrexian Revoker +1 [TOR:139] Cabal Coffers +1 [NPH:9] Elesh Norn, Grand Cenobite +1 [BNG:58] Archetype of Finality +1 [MBS:39] Black Sun's Zenith +1 [M12:98] Grave Titan +1 [GTC:245] Sacred Foundry +1 [ALA:217] Quietus Spike +1 [WWK:20] Stoneforge Mystic +1 [M12:12] Day of Judgment +1 [ULG:63] Phyrexian Reclamation +1 [GTC:242] Godless Shrine +4 [ORI:265] Mountain +1 [GTC:6] Blind Obedience +1 [M14:1] Ajani, Caller of the Pride +1 [M12:109] Sorin Markov +1 [M12:147] Inferno Titan +1 [ICE:278] Swords to Plowshares +1 [CMD:269] Command Tower +1 [M12:222] Worldslayer +1 [M15:133] Burning Anger +1 [ORI:250] Rogue's Passage +1 [10E:359] Sulfurous Springs +1 [M14:209] Elixir of Immortality +1 [GTC:61] Crypt Ghast +1 [BNG:151] Mogis, God of Slaughter +4 [ORI:253] Plains +1 [M12:39] Sun Titan +1 [CHK:268] Sensei's Divining Top +1 [SOM:25] True Conviction +1 [THS:187] Ashen Rider +1 [9ED:152] Phyrexian Arena +1 [AVR:86] Blood Artist +1 [SHM:278] Reflecting Pool +1 [SHM:272] Graven Cairns +1 [M13:222] Dragonskull Summit +1 [THS:227] Temple of Silence +1 [THS:228] Temple of Triumph +1 [3ED:274] Sol Ring +1 [MOR:24] Stonehewer Giant +1 [NPH:73] Sheoldred, Whispering One +1 [C13:310] Opal Palace +1 [CON:15] Path to Exile +1 [ZEN:208] Trailblazer's Boots +1 [ISD:242] Isolated Chapel +1 [M15:248] Urborg, Tomb of Yawgmoth +1 [ZEN:203] Grappling Hook +1 [ORI:244] Battlefield Forge +1 [ORI:245] Caves of Koilos +1 [3ED:13] Demonic Tutor +1 [GTC:143] Aurelia, the Warleader +1 [AVR:36] Silverblade Paladin +1 [THS:85] Erebos, God of the Dead +1 [LRW:3] Austere Command +1 [ULG:14] Mother of Runes +1 [ALA:154] Ajani Vengeant +1 [ZEN:131] Hellkite Charger +1 [THS:219] Prowler's Helm +1 [GPT:122] Mortify +1 [DKA:158] Vault of the Archangel +1 [RTR:238] Blood Crypt +1 [ORI:21] Knight of the White Orchid +1 [MBS:104] Darksteel Plate +1 [MRD:199] Lightning Greaves +1 [DGM:135] Wear // Tear +1 [5ED:246] Jokulhaups +1 [BNG:88] Archetype of Aggression +1 [JOU:93] Dictate of the Twin Gods +1 [GTC:177] Merciless Eviction +1 [CNS:35] Scourge of the Throne +SB: 1 [KTK:214] Zurgo Helmsmasher diff --git a/Mage/src/mage/game/command/Commander.java b/Mage/src/mage/game/command/Commander.java index f3265532cf..58793919e6 100644 --- a/Mage/src/mage/game/command/Commander.java +++ b/Mage/src/mage/game/command/Commander.java @@ -1,32 +1,34 @@ /* -* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. -* -* Redistribution and use in source and binary forms, with or without modification, are -* permitted provided that the following conditions are met: -* -* 1. Redistributions of source code must retain the above copyright notice, this list of -* conditions and the following disclaimer. -* -* 2. Redistributions in binary form must reproduce the above copyright notice, this list -* of conditions and the following disclaimer in the documentation and/or other materials -* provided with the distribution. -* -* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED -* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND -* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR -* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON -* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -* -* The views and conclusions contained in the software and documentation are those of the -* authors and should not be interpreted as representing official policies, either expressed -* or implied, of BetaSteward_at_googlemail.com. -*/ + * Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are + * permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this list of + * conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this list + * of conditions and the following disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * The views and conclusions contained in the software and documentation are those of the + * authors and should not be interpreted as representing official policies, either expressed + * or implied, of BetaSteward_at_googlemail.com. + */ package mage.game.command; +import java.util.List; +import java.util.UUID; import mage.MageInt; import mage.ObjectColor; import mage.abilities.Abilities; @@ -39,24 +41,14 @@ import mage.abilities.costs.mana.ManaCosts; import mage.cards.Card; import mage.constants.CardType; import mage.game.Game; - -import java.util.List; -import java.util.UUID; import mage.util.GameLog; -/** - * - * @author Plopman - */ - - -public class Commander implements CommandObject{ +public class Commander implements CommandObject { private final Card card; private final Abilities abilites = new AbilitiesImpl<>(); - - public Commander(Card card){ + public Commander(Card card) { this.card = card; abilites.add(new CastCommanderAbility(card)); for (Ability ability : card.getAbilities()) { @@ -66,15 +58,15 @@ public class Commander implements CommandObject{ } } } - + private Commander(Commander copy) { this.card = copy.card; } - - public Card getCard(){ + + public Card getCard() { return card; } - + @Override public UUID getSourceId() { return card.getId(); @@ -101,7 +93,7 @@ public class Commander implements CommandObject{ @Override public String getIdName() { - return card.getName() + " ["+card.getId().toString().substring(0,3) +"]"; + return card.getName() + " [" + card.getId().toString().substring(0, 3) + "]"; } @Override @@ -111,7 +103,7 @@ public class Commander implements CommandObject{ @Override public void setName(String name) { - + } @Override @@ -145,7 +137,7 @@ public class Commander implements CommandObject{ return true; } Abilities otherAbilities = game.getState().getAllOtherAbilities(getId()); - return otherAbilities != null && otherAbilities.containsKey(abilityId); + return otherAbilities != null && otherAbilities.containsKey(abilityId); } @Override @@ -201,17 +193,17 @@ public class Commander implements CommandObject{ @Override public int getZoneChangeCounter(Game game) { - throw new UnsupportedOperationException("Unsupported operation"); + return card.getZoneChangeCounter(game); } @Override public void updateZoneChangeCounter(Game game) { - throw new UnsupportedOperationException("Unsupported operation"); + card.updateZoneChangeCounter(game); } @Override public void setZoneChangeCounter(int value, Game game) { - throw new UnsupportedOperationException("Unsupported operation"); + card.setZoneChangeCounter(value, game); } - + }