From e84b21c95b0394e0efbee91f643b8d1a37ba80ff Mon Sep 17 00:00:00 2001 From: magenoxx Date: Thu, 2 Feb 2012 01:53:41 +0400 Subject: [PATCH 1/3] [DKA] Chant of the Skifsang --- .../darkascension/ChantOfTheSkifsang.java | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 Mage.Sets/src/mage/sets/darkascension/ChantOfTheSkifsang.java diff --git a/Mage.Sets/src/mage/sets/darkascension/ChantOfTheSkifsang.java b/Mage.Sets/src/mage/sets/darkascension/ChantOfTheSkifsang.java new file mode 100644 index 0000000000..014f99fc76 --- /dev/null +++ b/Mage.Sets/src/mage/sets/darkascension/ChantOfTheSkifsang.java @@ -0,0 +1,74 @@ +/* + * 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.sets.darkascension; + +import mage.Constants; +import mage.Constants.CardType; +import mage.Constants.Rarity; +import mage.abilities.Ability; +import mage.abilities.common.SimpleStaticAbility; +import mage.abilities.effects.common.AttachEffect; +import mage.abilities.effects.common.continious.BoostEnchantedEffect; +import mage.abilities.keyword.EnchantAbility; +import mage.cards.CardImpl; +import mage.target.TargetPermanent; +import mage.target.common.TargetCreaturePermanent; + +import java.util.UUID; + +/** + * @author noxx + */ +public class ChantOfTheSkifsang extends CardImpl { + + public ChantOfTheSkifsang(UUID ownerId) { + super(ownerId, 31, "Chant of the Skifsang", Rarity.COMMON, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}"); + this.expansionSetCode = "DKA"; + this.subtype.add("Aura"); + + this.color.setBlue(true); + + // Enchant creature + TargetPermanent auraTarget = new TargetCreaturePermanent(); + this.getSpellAbility().addTarget(auraTarget); + this.getSpellAbility().addEffect(new AttachEffect(Constants.Outcome.Detriment)); + Ability ability = new EnchantAbility(auraTarget.getTargetName()); + this.addAbility(ability); + // Enchanted creature gets -13/-0. + this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new BoostEnchantedEffect(-13, 0, Constants.Duration.WhileOnBattlefield))); + } + + public ChantOfTheSkifsang(final ChantOfTheSkifsang card) { + super(card); + } + + @Override + public ChantOfTheSkifsang copy() { + return new ChantOfTheSkifsang(this); + } +} From 141044382c4c77a485009ab85123ca0b2e7637cd Mon Sep 17 00:00:00 2001 From: North Date: Thu, 2 Feb 2012 00:14:36 +0200 Subject: [PATCH 2/3] [GathererCrawler] updated function that outputs util file to support flip, split and double faced cards updated mtg-cards-data.txt (was mising second face data for double faced cards) --- .../main/java/north/gatherercrawler/Main.java | 2 +- .../north/gatherercrawler/ThreadStarter.java | 105 ++++++++++-------- Utils/mtg-cards-data.txt | 13 +++ 3 files changed, 70 insertions(+), 50 deletions(-) diff --git a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java index 8d785e612a..a27e52f5ac 100644 --- a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java +++ b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java @@ -45,7 +45,7 @@ public class Main { List sets = new ArrayList(); // Change to false if you only want to add a specific set - if (true) { + if (false) { Document doc = Jsoup.connect("http://gatherer.wizards.com/Pages/Advanced.aspx").get(); Elements select = doc.select("#autoCompleteSourceBoxsetAddText0_InnerTextBoxcontainer a"); if (!select.isEmpty()) { diff --git a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/ThreadStarter.java b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/ThreadStarter.java index 3fd770e29c..1611f3cf19 100644 --- a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/ThreadStarter.java +++ b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/ThreadStarter.java @@ -59,57 +59,15 @@ public class ThreadStarter extends Thread { Iterator iterator = sortedCards.iterator(); while (iterator.hasNext()) { Card card = iterator.next(); - StringBuilder sb = new StringBuilder(); - sb.append(card.getName()).append("|"); - sb.append(card.getExpansion()).append("|"); - sb.append(card.getCardNumber() != null ? card.getCardNumber() : "").append("|"); - - String rarity = card.getRarity() != null ? card.getRarity() : ""; - if (rarity.equalsIgnoreCase("Mythic Rare")) { - rarity = "M"; - } - if (rarity.equalsIgnoreCase("Rare")) { - rarity = "R"; - } - if (rarity.equalsIgnoreCase("Uncommon")) { - rarity = "U"; - } - if (rarity.equalsIgnoreCase("Common")) { - rarity = "C"; - } - if (rarity.equalsIgnoreCase("Basic Land")) { - rarity = "L"; - } - sb.append(rarity).append("|"); - List manaCost = card.getManaCost(); - for (String cost : manaCost) { - if (!cost.isEmpty()) { - sb.append("{").append(cost).append("}"); - } - } - sb.append("|"); - - sb.append(card.getTypes()).append("|"); - String pts = card.getPowerToughness(); - if (pts != null && pts.length() > 1) { - String[] pt = pts.split("/"); - sb.append(pt[0].trim()).append("|"); - sb.append(pt[1].trim()).append("|"); - } else { - sb.append("||"); - } - - List cardText = card.getCardText(); - for (int i = 0; i < cardText.size(); i++) { - sb.append(cardText.get(i)); - if (i < cardText.size() - 1) { - sb.append("$"); - } - } - sb.append("|"); - + StringBuilder sb = generateUtilLine(card); out.write(sb.toString().replace("\u00C6", "AE")); out.newLine(); + + if (card.getOtherSide() != null) { + sb = generateUtilLine(card.getOtherSide()); + out.write(sb.toString().replace("\u00C6", "AE")); + out.newLine(); + } } out.close(); } catch (Exception e) { @@ -117,6 +75,55 @@ public class ThreadStarter extends Thread { } } + private StringBuilder generateUtilLine(Card card) { + StringBuilder sb = new StringBuilder(); + sb.append(card.getName()).append("|"); + sb.append(card.getExpansion()).append("|"); + sb.append(card.getCardNumber() != null ? card.getCardNumber() : "").append("|"); + String rarity = card.getRarity() != null ? card.getRarity() : ""; + if (rarity.equalsIgnoreCase("Mythic Rare")) { + rarity = "M"; + } + if (rarity.equalsIgnoreCase("Rare")) { + rarity = "R"; + } + if (rarity.equalsIgnoreCase("Uncommon")) { + rarity = "U"; + } + if (rarity.equalsIgnoreCase("Common")) { + rarity = "C"; + } + if (rarity.equalsIgnoreCase("Basic Land")) { + rarity = "L"; + } + sb.append(rarity).append("|"); + List manaCost = card.getManaCost(); + for (String cost : manaCost) { + if (!cost.isEmpty()) { + sb.append("{").append(cost).append("}"); + } + } + sb.append("|"); + sb.append(card.getTypes()).append("|"); + String pts = card.getPowerToughness(); + if (pts != null && pts.length() > 1) { + String[] pt = pts.split("/"); + sb.append(pt[0].trim()).append("|"); + sb.append(pt[1].trim()).append("|"); + } else { + sb.append("||"); + } + List cardText = card.getCardText(); + for (int i = 0; i < cardText.size(); i++) { + sb.append(cardText.get(i)); + if (i < cardText.size() - 1) { + sb.append("$"); + } + } + sb.append("|"); + return sb; + } + @Override public void run() { for (int i = 0; i < threads; i++) { diff --git a/Utils/mtg-cards-data.txt b/Utils/mtg-cards-data.txt index f303ffb4ba..bc53bd6428 100644 --- a/Utils/mtg-cards-data.txt +++ b/Utils/mtg-cards-data.txt @@ -2354,9 +2354,11 @@ Lingering Souls|Dark Ascension|12|U|{2}{W}|Sorcery|||Put two 1/1 white Spirit cr Increasing Savagery|Dark Ascension|120|R|{2}{G}{G}|Sorcery|||Put five +1/+1 counters on target creature. If Increasing Savagery was cast from a graveyard, put ten +1/+1 counters on that creature instead.$Flashback {5}{G}{G} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| Kessig Recluse|Dark Ascension|121|C|{2}{G}{G}|Creature — Spider|2|3|Reach (This creature can block creatures with flying.)$Deathtouch (Any amount of damage this deals to a creature is enough to destroy it.)| Lambholt Elder|Dark Ascension|122a|U|{2}{G}|Creature — Human Werewolf|1|2|At the beginning of each upkeep, if no spells were cast last turn, transform Lambholt Elder.| +Silverpelt Werewolf|Dark Ascension|122b|U||Creature — Werewolf|4|5|Whenever Silverpelt Werewolf deals combat damage to a player, draw a card.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Silverpelt Werewolf.| Lost in the Woods|Dark Ascension|123|R|{3}{G}{G}|Enchantment|||Whenever a creature attacks you or a planeswalker you control, reveal the top card of your library. If it's a Forest card, remove that creature from combat. Then put the revealed card on the bottom of your library.| Predator Ooze|Dark Ascension|124|R|{G}{G}{G}|Creature — Ooze|1|1|Predator Ooze is indestructible.$Whenever Predator Ooze attacks, put a +1/+1 counter on it.$Whenever a creature dealt damage by Predator Ooze this turn dies, put a +1/+1 counter on Predator Ooze.| Scorned Villager|Dark Ascension|125a|C|{1}{G}|Creature — Human Werewolf|1|1|{tap}: Add {G} to your mana pool.$At the beginning of each upkeep, if no spells were cast last turn, transform Scorned Villager.| +Moonscarred Werewolf|Dark Ascension|125b|C||Creature — Werewolf|2|2|Vigilance${tap}: Add {G}{G} to your mana pool.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Moonscarred Werewolf.| Somberwald Dryad|Dark Ascension|126|C|{1}{G}|Creature — Dryad|2|2|Forestwalk (This creature is unblockable as long as defending player controls a Forest.)| Strangleroot Geist|Dark Ascension|127|U|{G}{G}|Creature — Spirit|2|1|Haste$Undying (When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Tracker's Instincts|Dark Ascension|128|U|{1}{G}|Sorcery|||Reveal the top four cards of your library. Put a creature card from among them into your hand and the rest into your graveyard.$Flashback {2}{U} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| @@ -2365,6 +2367,7 @@ Village Survivors|Dark Ascension|130|U|{4}{G}|Creature Vorapede|Dark Ascension|131|M|{2}{G}{G}{G}|Creature — Insect|5|4|Vigilance, trample$Undying (When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Wild Hunger|Dark Ascension|132|C|{2}{G}|Instant|||Target creature gets +3/+1 and gains trample until end of turn.$Flashback {3}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| Wolfbitten Captive|Dark Ascension|133a|R|{G}|Creature — Human Werewolf|1|1|{1}{G}: Wolfbitten Captive gets +2/+2 until end of turn. Activate this ability only once each turn.$At the beginning of each upkeep, if no spells were cast last turn, transform Wolfbitten Captive.| +Krallenhorde Killer|Dark Ascension|133b|R||Creature — Werewolf|2|2|{3}{G}: Krallenhorde Killer gets +4/+4 until end of turn. Activate this ability only once each turn.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Krallenhorde Killer.| Young Wolf|Dark Ascension|134|C|{G}|Creature — Wolf|1|1|Undying (When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Diregraf Captain|Dark Ascension|135|U|{1}{U}{B}|Creature — Zombie Soldier|2|2|Deathtouch$Other Zombie creatures you control get +1/+1.$Whenever another Zombie you control dies, target opponent loses 1 life.| Drogskol Captain|Dark Ascension|136|U|{1}{W}{U}|Creature — Spirit Soldier|2|2|Flying$Other Spirit creatures you control get +1/+1 and have hexproof. (They can't be the targets of spells or abilities your opponents control.)| @@ -2372,15 +2375,19 @@ Drogskol Reaver|Dark Ascension|137|M|{5}{W}{U}|Creature Falkenrath Aristocrat|Dark Ascension|138|M|{2}{B}{R}|Creature — Vampire|4|1|Flying, haste$Sacrifice a creature: Falkenrath Aristocrat is indestructible this turn. If the sacrificed creature was a Human, put a +1/+1 counter on Falkenrath Aristocrat.| Havengul Lich|Dark Ascension|139|M|{3}{U}{B}|Creature — Zombie Wizard|4|4|{1}: You may cast target creature card in a graveyard this turn. When you cast that card this turn, Havengul Lich gains all activated abilities of that card until end of turn.| Loyal Cathar|Dark Ascension|13a|C|{W}{W}|Creature — Human Soldier|2|2|Vigilance$When Loyal Cathar dies, return it to the battlefield transformed under your control at the beginning of the next end step.| +Unhallowed Cathar|Dark Ascension|13b|C||Creature — Zombie Soldier|2|1|Unhallowed Cathar can't block.| Midnight Guard|Dark Ascension|14|C|{2}{W}|Creature — Human Soldier|2|3|Whenever another creature enters the battlefield, untap Midnight Guard.| Huntmaster of the Fells|Dark Ascension|140a|M|{2}{R}{G}|Creature — Human Werewolf|2|2|Whenever this creature enters the battlefield or transforms into Huntmaster of the Fells, put a 2/2 green Wolf creature token onto the battlefield and you gain 2 life.$At the beginning of each upkeep, if no spells were cast last turn, transform Huntmaster of the Fells.| +Ravager of the Fells|Dark Ascension|140b|M||Creature — Werewolf|4|4|Trample$Whenever this creature transforms into Ravager of the Fells, it deals 2 damage to target opponent and 2 damage to up to one target creature that player controls.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Ravager of the Fells.| Immerwolf|Dark Ascension|141|U|{1}{R}{G}|Creature — Wolf|2|2|Intimidate (This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.)$Other Wolf and Werewolf creatures you control get +1/+1.$Non-Human Werewolves you control can't transform.| Sorin, Lord of Innistrad|Dark Ascension|142|M|{2}{W}{B}|Planeswalker — Sorin|||+1: Put a 1/1 black Vampire creature token with lifelink onto the battlefield.$-2: You get an emblem with "Creatures you control get +1/+0."$-6: Destroy up to three target creatures and/or other planeswalkers. Return each card put into a graveyard this way to the battlefield under your control.| Stromkirk Captain|Dark Ascension|143|U|{1}{B}{R}|Creature — Vampire Soldier|2|2|First strike$Other Vampire creatures you control get +1/+1 and have first strike.| Altar of the Lost|Dark Ascension|144|U|{3}|Artifact|||Altar of the Lost enters the battlefield tapped.${tap}: Add two mana in any combination of colors to your mana pool. Spend this mana only to cast spells with flashback from a graveyard.| Avacyn's Collar|Dark Ascension|145|U|{1}|Artifact — Equipment|||Equipped creature gets +1/+0 and has vigilance.$Whenever equipped creature dies, if it was a Human, put a 1/1 white Spirit creature token with flying onto the battlefield.$Equip {2}| Chalice of Life|Dark Ascension|146a|U|{3}|Artifact|||{tap}: You gain 1 life. Then if you have at least 10 life more than your starting life total, transform Chalice of Life.| +Chalice of Death|Dark Ascension|146b|U||Artifact|||{tap}: Target player loses 5 life.| Elbrus, the Binding Blade|Dark Ascension|147a|M|{7}|Legendary Artifact — Equipment|||Equipped creature gets +1/+0.$When equipped creature deals combat damage to a player, unattach Elbrus, the Binding Blade, then transform it.$Equip {1}| +Withengar Unbound|Dark Ascension|147b|M||Legendary Creature — Demon|13|13|Flying, intimidate, trample$Whenever a player loses the game, put thirteen +1/+1 counters on Withengar Unbound.| Executioner's Hood|Dark Ascension|148|C|{2}|Artifact — Equipment|||Equipped creature has intimidate. (This creature can't be blocked except by artifact creatures and/or creatures that share a color with it.)$Equip {2} ({2}: Attach to target creature you control. Equip only as a sorcery.)| Grafdigger's Cage|Dark Ascension|149|R|{1}|Artifact|||Creature cards can't enter the battlefield from graveyards or libraries.$Players can't cast cards in graveyards or libraries.| Niblis of the Mist|Dark Ascension|15|C|{2}{W}|Creature — Spirit|2|1|Flying$When Niblis of the Mist enters the battlefield, you may tap target creature.| @@ -2432,11 +2439,13 @@ Secrets of the Dead|Dark Ascension|48|U|{2}{U}|Enchantment|||Whenever you cast a Shriekgeist|Dark Ascension|49|C|{1}{U}|Creature — Spirit|1|1|Flying$Whenever Shriekgeist deals combat damage to a player, that player puts the top two cards of his or her library into his or her graveyard.| Curse of Exhaustion|Dark Ascension|5|U|{2}{W}{W}|Enchantment — Aura Curse|||Enchant player$Enchanted player can't cast more than one spell each turn.| Soul Seizer|Dark Ascension|50a|U|{3}{U}{U}|Creature — Spirit|1|3|Flying$When Soul Seizer deals combat damage to a player, you may transform it. If you do, attach it to target creature that player controls.| +Ghastly Haunting|Dark Ascension|50b|U||Enchantment — Aura|||Enchant creature$You control enchanted creature.| Stormbound Geist|Dark Ascension|51|C|{1}{U}{U}|Creature — Spirit|2|2|Flying$Stormbound Geist can block only creatures with flying.$Undying (When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Thought Scour|Dark Ascension|52|C|{U}|Instant|||Target player puts the top two cards of his or her library into his or her graveyard.$Draw a card.| Tower Geist|Dark Ascension|53|U|{3}{U}|Creature — Spirit|2|2|Flying$When Tower Geist enters the battlefield, look at the top two cards of your library. Put one of them into your hand and the other into your graveyard.| Black Cat|Dark Ascension|54|C|{1}{B}|Creature — Zombie Cat|1|1|When Black Cat dies, target opponent discards a card at random.| Chosen of Markov|Dark Ascension|55a|C|{2}{B}|Creature — Human|2|2|{tap}, Tap an untapped Vampire you control: Transform Chosen of Markov.| +Markov's Servant|Dark Ascension|55b|C||Creature — Vampire|4|4|| Curse of Misfortunes|Dark Ascension|56|R|{4}{B}|Enchantment — Aura Curse|||Enchant player$At the beginning of your upkeep, you may search your library for a Curse card that doesn't have the same name as a Curse attached to enchanted player, put it onto the battlefield attached to that player, then shuffle your library.| Curse of Thirst|Dark Ascension|57|U|{4}{B}|Enchantment — Aura Curse|||Enchant player$At the beginning of enchanted player's upkeep, Curse of Thirst deals damage to that player equal to the number of Curses attached to him or her.| Deadly Allure|Dark Ascension|58|U|{B}|Sorcery|||Target creature gains deathtouch until end of turn and must be blocked this turn if able.$Flashback {G} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| @@ -2455,6 +2464,7 @@ Increasing Ambition|Dark Ascension|69|R|{4}{B}|Sorcery|||Search your library for Faith's Shield|Dark Ascension|7|U|{W}|Instant|||Target permanent you control gains protection from the color of your choice until end of turn.$Fateful hour — If you have 5 or less life, instead you and each permanent you control gain protection from the color of your choice until end of turn.| Mikaeus, the Unhallowed|Dark Ascension|70|M|{3}{B}{B}{B}|Legendary Creature — Zombie Cleric|5|5|Intimidate$Whenever a Human deals damage to you, destroy it.$Other non-Human creatures you control get +1/+1 and have undying. (When a creature with undying dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Ravenous Demon|Dark Ascension|71a|R|{3}{B}{B}|Creature — Demon|4|4|Sacrifice a Human: Transform Ravenous Demon. Activate this ability only any time you could cast a sorcery.| +Archdemon of Greed|Dark Ascension|71b|R||Creature — Demon|9|9|Flying, trample$At the beginning of your upkeep, sacrifice a Human. If you can't, tap Archdemon of Greed and it deals 9 damage to you.| Reap the Seagraf|Dark Ascension|72|C|{2}{B}|Sorcery|||Put a 2/2 black Zombie creature token onto the battlefield.$Flashback {4}{U} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| Sightless Ghoul|Dark Ascension|73|C|{3}{B}|Creature — Zombie Soldier|2|2|Sightless Ghoul can't block.$Undying (When this creature dies, if it had no +1/+1 counters on it, return it to the battlefield under its owner's control with a +1/+1 counter on it.)| Skirsdag Flayer|Dark Ascension|74|U|{1}{B}|Creature — Human Cleric|1|1|{3}{B}, {tap}, Sacrifice a Human: Destroy target creature.| @@ -2466,6 +2476,7 @@ Wakedancer|Dark Ascension|79|U|{2}{B}|Creature Gather the Townsfolk|Dark Ascension|8|C|{1}{W}|Sorcery|||Put two 1/1 white Human creature tokens onto the battlefield.$Fateful hour — If you have 5 or less life, put five of those tokens onto the battlefield instead.| Zombie Apocalypse|Dark Ascension|80|R|{3}{B}{B}{B}|Sorcery|||Return all Zombie creature cards from your graveyard to the battlefield tapped, then destroy all Humans.| Afflicted Deserter|Dark Ascension|81a|U|{3}{R}|Creature — Human Werewolf|3|2|At the beginning of each upkeep, if no spells were cast last turn, transform Afflicted Deserter.| +Werewolf Ransacker|Dark Ascension|81b|U||Creature — Werewolf|5|4|Whenever this creature transforms into Werewolf Ransacker, you may destroy target artifact. If that artifact is put into a graveyard this way, Werewolf Ransacker deals 3 damage to that artifact's controller.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Werewolf Ransacker.| Alpha Brawl|Dark Ascension|82|R|{6}{R}{R}|Sorcery|||Target creature an opponent controls deals damage equal to its power to each other creature that player controls, then each of those creatures deals damage equal to its power to that creature.| Blood Feud|Dark Ascension|83|U|{4}{R}{R}|Sorcery|||Target creature fights another target creature. (Each deals damage equal to its power to the other.)| Burning Oil|Dark Ascension|84|U|{1}{R}|Instant|||Burning Oil deals 3 damage to target attacking or blocking creature.$Flashback {3}{W} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| @@ -2480,10 +2491,12 @@ Forge Devil|Dark Ascension|91|C|{R}|Creature Heckling Fiends|Dark Ascension|92|U|{2}{R}|Creature — Devil|2|2|{2}{R}: Target creature attacks this turn if able.| Hellrider|Dark Ascension|93|R|{2}{R}{R}|Creature — Devil|3|3|Haste$Whenever a creature you control attacks, Hellrider deals 1 damage to defending player.| Hinterland Hermit|Dark Ascension|94a|C|{1}{R}|Creature — Human Werewolf|2|1|At the beginning of each upkeep, if no spells were cast last turn, transform Hinterland Hermit.| +Hinterland Scourge|Dark Ascension|94b|C||Creature — Werewolf|3|2|Hinterland Scourge must be blocked if able.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Hinterland Scourge.| Increasing Vengeance|Dark Ascension|95|R|{R}{R}|Instant|||Copy target instant or sorcery spell you control. If Increasing Vengeance was cast from a graveyard, copy that spell twice instead. You may choose new targets for the copies.$Flashback {3}{R}{R} (You may cast this card from your graveyard for its flashback cost. Then exile it.)| Markov Blademaster|Dark Ascension|96|R|{1}{R}{R}|Creature — Vampire Warrior|1|1|Double strike$Whenever Markov Blademaster deals combat damage to a player, put a +1/+1 counter on it.| Markov Warlord|Dark Ascension|97|U|{5}{R}|Creature — Vampire Warrior|4|4|Haste$When Markov Warlord enters the battlefield, up to two target creatures can't block this turn.| Mondronen Shaman|Dark Ascension|98a|R|{3}{R}|Creature — Human Werewolf Shaman|3|2|At the beginning of each upkeep, if no spells were cast last turn, transform Mondronen Shaman.| +Tovolar's Magehunter|Dark Ascension|98b|R||Creature — Werewolf|5|5|Whenever an opponent casts a spell, Tovolar's Magehunter deals 2 damage to that player.$At the beginning of each upkeep, if a player cast two or more spells last turn, transform Tovolar's Magehunter.| Moonveil Dragon|Dark Ascension|99|M|{3}{R}{R}{R}|Creature — Dragon|5|5|Flying${R}: Each creature you control gets +1/+0 until end of turn.| Auriok Glaivemaster|Darksteel|1|C|{W}|Creature — Human Soldier|1|1|As long as Auriok Glaivemaster is equipped, it gets +1/+1 and has first strike.| Pteron Ghost|Darksteel|10|C|{1}{W}|Creature — Spirit|1|1|Flying$Sacrifice Pteron Ghost: Regenerate target artifact.| From 92873a1b5bcde55b5a1163fe7ca7f29c3db41bd9 Mon Sep 17 00:00:00 2001 From: North Date: Thu, 2 Feb 2012 07:55:04 +0200 Subject: [PATCH 3/3] [GathererCrawler][minor] changed back a file from my previous commit (change was meant only for local testing) --- .../src/main/java/north/gatherercrawler/Main.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java index a27e52f5ac..8d785e612a 100644 --- a/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java +++ b/Utils/GathererCrawler/src/main/java/north/gatherercrawler/Main.java @@ -45,7 +45,7 @@ public class Main { List sets = new ArrayList(); // Change to false if you only want to add a specific set - if (false) { + if (true) { Document doc = Jsoup.connect("http://gatherer.wizards.com/Pages/Advanced.aspx").get(); Elements select = doc.select("#autoCompleteSourceBoxsetAddText0_InnerTextBoxcontainer a"); if (!select.isEmpty()) {