From 9c8ec8c757ec7700002fe2768d52db765b0d4db7 Mon Sep 17 00:00:00 2001 From: moomarc Date: Fri, 30 Nov 2012 11:16:04 +0000 Subject: [PATCH] - Vanguard avatar selection will now remove cards with RemRandomDeck flag from the list when choosing Random. Useful for cards like Diamond Queen Avatar that are still great in the right deck. - Updated some avatar flags --- res/cardsfolder/b/barrin.txt | 1 + res/cardsfolder/d/diamond_faerie_avatar.txt | 1 + res/cardsfolder/e/eladamri.txt | 1 + .../e/eladamri_lord_of_leaves_avatar.txt | 2 + res/cardsfolder/e/etched_oracle_avatar.txt | 1 + res/cardsfolder/m/morinfen_avatar.txt | 1 + res/cardsfolder/s/sisay.txt | 1 + .../gui/home/variant/CSubmenuVanguard.java | 55 +++++++------------ .../gui/home/variant/VSubmenuVanguard.java | 22 ++++++++ 9 files changed, 50 insertions(+), 35 deletions(-) diff --git a/res/cardsfolder/b/barrin.txt b/res/cardsfolder/b/barrin.txt index 981046c0694..05b046c6486 100644 --- a/res/cardsfolder/b/barrin.txt +++ b/res/cardsfolder/b/barrin.txt @@ -4,6 +4,7 @@ Types:Vanguard Text:no text HandLifeModifier:+0/+6 A:AB$ ChangeZone | ActivationZone$ Command | Cost$ Sac<1/Permanent> | ValidTgts$ Creature | TgtPrompt$ Select target Creature | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return target creature to its owner's hand. +SVar:RemAIDeck:True SVar:Rarity:Special SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/barrin.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard/barrin.jpg diff --git a/res/cardsfolder/d/diamond_faerie_avatar.txt b/res/cardsfolder/d/diamond_faerie_avatar.txt index 8a46b22b3f6..e2dabee71d7 100644 --- a/res/cardsfolder/d/diamond_faerie_avatar.txt +++ b/res/cardsfolder/d/diamond_faerie_avatar.txt @@ -5,6 +5,7 @@ Text:no text HandLifeModifier:+0/+5 A:AB$ Pump | ActivationZone$ Command | Cost$ S | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | NumAtt$ 1 | NumDef$ 1 | SpellDescription$ Target creature you control gets +1/+1 until end of turn. SVar:Rarity:Special +SVar:RemRandomDeck:True SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/diamond_faerie_avatar.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo/diamond-faerie.jpg Oracle:Hand +0, life +5\n{S}: Target creature you control gets +1/+1 until end of turn. diff --git a/res/cardsfolder/e/eladamri.txt b/res/cardsfolder/e/eladamri.txt index ac4016eaa91..072815ff73f 100644 --- a/res/cardsfolder/e/eladamri.txt +++ b/res/cardsfolder/e/eladamri.txt @@ -17,5 +17,6 @@ SVar:Y:ReplaceCount$DamageAmount SVar:Rarity:Special SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/eladamri.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard/eladamri.jpg +SVar:RemAIDeck:True Oracle:Hand -1, life +15\n{0}: The next 1 damage that would be dealt to target creature you control is dealt to you instead. End \ No newline at end of file diff --git a/res/cardsfolder/e/eladamri_lord_of_leaves_avatar.txt b/res/cardsfolder/e/eladamri_lord_of_leaves_avatar.txt index 95915b427d3..ab55a8dc6c6 100644 --- a/res/cardsfolder/e/eladamri_lord_of_leaves_avatar.txt +++ b/res/cardsfolder/e/eladamri_lord_of_leaves_avatar.txt @@ -6,6 +6,8 @@ HandLifeModifier:-1/+2 T:Mode$ Phase | Phase$ Main1 | ValidPlayer$ Player | TriggerZones$ Command | Execute$ TrigAddMana | TriggerDescription$ At the beginning of each player's precombat main phase, that player adds {G}{G} to his or her mana pool. SVar:TrigAddMana:AB$ Mana | Cost$ 0 | Produced$ G | Amount$ 2 | Defined$ TriggeredPlayer SVar:Rarity:Special +SVar:RemAIDeck:True +SVar:RemRandomDeck:True SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/eladamri_lord_of_leaves_avatar.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo-2/eladamri-lord-of-leaves.jpg Oracle:Hand -1, life +2\nAt the beginning of each player's precombat main phase, that player adds {G}{G} to his or her mana pool. diff --git a/res/cardsfolder/e/etched_oracle_avatar.txt b/res/cardsfolder/e/etched_oracle_avatar.txt index e1202acdb56..37eb35610d3 100644 --- a/res/cardsfolder/e/etched_oracle_avatar.txt +++ b/res/cardsfolder/e/etched_oracle_avatar.txt @@ -4,6 +4,7 @@ Types:Vanguard Text:no text HandLifeModifier:+1/-4 S:Mode$ Continuous | EffectZone$ Command | Affected$ Card.YouCtrl | AddHiddenKeyword$ Alternative Cost W U B R G | AffectedZone$ Hand,Graveyard,Exile,Library | Description$ You may pay W U B R G rather than pay the mana cost for spells that you cast. +SVar:RemRandomDeck:True SVar:Rarity:Special SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/etched_oracle_avatar.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo/etched-oracle.jpg diff --git a/res/cardsfolder/m/morinfen_avatar.txt b/res/cardsfolder/m/morinfen_avatar.txt index 0312b3a0bee..472bbad6325 100644 --- a/res/cardsfolder/m/morinfen_avatar.txt +++ b/res/cardsfolder/m/morinfen_avatar.txt @@ -7,6 +7,7 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execu SVar:TrigLoseLife:AB$ LoseLife | Cost$ 0 | Defined$ You | LifeAmount$ Ouch SVar:Ouch:Count$Valid Permanent.YouCtrl SVar:RemAIDeck:True +SVar:RemRandomDeck:True SVar:Rarity:Special SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/morinfen_avatar.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard-mtgo-2/morinfen.jpg diff --git a/res/cardsfolder/s/sisay.txt b/res/cardsfolder/s/sisay.txt index 445d27cfb95..6c1ecd9398c 100644 --- a/res/cardsfolder/s/sisay.txt +++ b/res/cardsfolder/s/sisay.txt @@ -5,6 +5,7 @@ Text:no text HandLifeModifier:-2/-3 T:Mode$ TapsForMana | TriggerZones$ Command | ValidCard$ Land.YouCtrl | Execute$ TrigMana | Static$ True | TriggerDescription$ Whenever you tap a land for mana, add one mana to your mana pool of any type that land produced. SVar:TrigMana:AB$ ManaReflected | Cost$ 0 | ColorOrType$ Type | Valid$ Defined.Triggered | ReflectProperty$ Produced | Defined$ TriggeredPlayer +SVar:RemAIDeck:True SVar:Rarity:Special SVar:Picture:http://www.cardforge.org/fpics/vgd-lq/sisay.jpg SetInfo:VAN|Special|http://magiccards.info/extras/other/vanguard/sisay.jpg diff --git a/src/main/java/forge/gui/home/variant/CSubmenuVanguard.java b/src/main/java/forge/gui/home/variant/CSubmenuVanguard.java index 4ac46cf4ac6..43bb1418776 100644 --- a/src/main/java/forge/gui/home/variant/CSubmenuVanguard.java +++ b/src/main/java/forge/gui/home/variant/CSubmenuVanguard.java @@ -19,13 +19,11 @@ import forge.deck.Deck; import forge.game.GameType; import forge.game.MatchController; import forge.game.MatchStartHelper; -import forge.game.PlayerStartConditions; import forge.game.player.LobbyPlayer; import forge.game.player.PlayerType; import forge.gui.SOverlayUtils; import forge.gui.framework.ICDoc; import forge.gui.toolbox.FDeckChooser; -import forge.gui.toolbox.FList; import forge.item.CardPrinted; import forge.properties.ForgePreferences; import forge.properties.ForgePreferences.FPref; @@ -56,8 +54,7 @@ public enum CSubmenuVanguard implements ICDoc { @Override public void initialize() { final ForgePreferences prefs = Singletons.getModel().getPreferences(); - for(FDeckChooser fdc : view.getDeckChoosers()) - { + for (FDeckChooser fdc : view.getDeckChoosers()) { fdc.initialize(); } @@ -103,7 +100,6 @@ public enum CSubmenuVanguard implements ICDoc { view.getCbRemoveSmall().setSelected(prefs.getPrefBoolean(FPref.DECKGEN_NOSMALL)); } - /** @param lists0   {@link java.util.List}<{@link javax.swing.JList}> */ private void startGame() { @@ -119,62 +115,51 @@ public enum CSubmenuVanguard implements ICDoc { @Override public Object doInBackground() { Random rnd = new Random(); - + List playerDecks = new ArrayList(); - for(int i=0;i playerAvatars = new ArrayList(); - for(int i=0;i { private final Iterable allAvatars = Iterables.filter(CardDb.instance().getAllNonTraditionalCards(), CardPrinted.Predicates.type("Vanguard")); private final List allAiAvatars = new ArrayList(); + private final List nonRandomHumanAvatars = new ArrayList(); + private final List nonRandomAiAvatars = new ArrayList(); ////////////////////////////// @@ -89,9 +91,15 @@ public enum VSubmenuVanguard implements IVSubmenu { aiListData.add("Random"); for (CardPrinted cp : allAvatars) { humanListData.add(cp); + if (!cp.getCard().getRemRandomDecks()) { + nonRandomHumanAvatars.add(cp); + } if (!cp.getCard().getRemAIDecks()) { aiListData.add(cp); allAiAvatars.add(cp); + if (!cp.getCard().getRemRandomDecks()) { + nonRandomAiAvatars.add(cp); + } } } @@ -329,4 +337,18 @@ public enum VSubmenuVanguard implements IVSubmenu { public List getAllAiAvatars() { return allAiAvatars; } + + /** + * @return the non-random human Avatars + */ + public List getNonRandomHumanAvatars() { + return nonRandomHumanAvatars; + } + + /** + * @return the non-random AI Avatars + */ + public List getNonRandomAiAvatars() { + return nonRandomAiAvatars; + } }