Downloading images of not implemented som cards.

This commit is contained in:
magenoxx 2011-01-09 21:40:21 +03:00
parent f4f2251d3b
commit b73a2a58e3
6 changed files with 314 additions and 6 deletions

View file

@ -62,10 +62,8 @@ import java.awt.event.WindowEvent;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.UUID;
import java.util.*;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.prefs.Preferences;
@ -298,7 +296,10 @@ public class MageFrame extends javax.swing.JFrame {
}
private void btnImagesActionPerformed(java.awt.event.ActionEvent evt) {
Plugins.getInstance().downloadImage(new HashSet<Card>(CardsStorage.getAllCards()));
HashSet<Card> cards = new HashSet<Card>(CardsStorage.getAllCards());
List<Card> notImplemented = CardsStorage.getNotImplementedCards();
cards.addAll(notImplemented);
Plugins.getInstance().downloadImage(cards);
}
private void btnSymbolsActionPerformed(java.awt.event.ActionEvent evt) {

View file

@ -1,7 +1,10 @@
package mage.client.cards;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.cards.CardsImpl;
import mage.cards.ExpansionSet;
import mage.sets.ScarsOfMirrodin;
import mage.sets.Sets;
import mage.utils.CardUtil;
@ -21,6 +24,7 @@ public class CardsStorage {
private static Integer min = Integer.MAX_VALUE, max = 0;
private static int cardsCount;
private static List<String> setCodes = new ArrayList<String>();
private static List<Card> notImplementedCards;
static {
for (ExpansionSet set : Sets.getInstance().values()) {
@ -129,6 +133,46 @@ public class CardsStorage {
}
}
/**
* Get list of not implemented cards.
* Used in collection viewer to show what cards need to be done for the latest set.
*
* @return
*/
public static List<Card> getNotImplementedCards() {
List<Card> cards = new ArrayList<Card>();
if (notImplementedCards == null) {
String filename = "/som.txt";
if (allCards.size() == 0) {
return cards;
}
Card tmp = allCards.get(0);
try {
InputStream is = CardsStorage.class.getResourceAsStream(filename);
Scanner scanner = new Scanner(is);
String set = "SOM";
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
String[] s = line.split("\\|");
if (s.length == 6) {
String name = s[1].trim();
Integer cid = Integer.parseInt(s[5]);
Card card = tmp.copy();
card.setName(name);
card.setExpansionSetCode(set);
card.setCardNumber(cid);
card.getRules().clear();
card.getRules().add("Not implemented");
cards.add(card);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
return cards;
}
public static void main(String[] argv) {
for (Card card : getAllCards()) {
String name = card.getName();
@ -175,6 +219,9 @@ public class CardsStorage {
}
}
/**
* Set comparator. Puts latest set on top.
*/
private static class SetComparator implements Comparator<String> {
private static final String LATEST_SET_CODE = "SOM";

View file

@ -0,0 +1,249 @@
|Abuna Acolyte|Scars of Mirrodin|U|194371|1|
|Accorder's Shield|Scars of Mirrodin|C|209046|136|
|Acid Web Spider|Scars of Mirrodin|U|209290|108|
|Alpha Tyrranax|Scars of Mirrodin|C|202651|109|
|Arc Trail|Scars of Mirrodin|U|206343|81|
|Argent Sphinx|Scars of Mirrodin|R|215085|28|
|Argentum Armor|Scars of Mirrodin|R|217967|137|
|Arrest|Scars of Mirrodin|C|209007|2|
|Asceticism|Scars of Mirrodin|R|215082|110|
|Assault Strobe|Scars of Mirrodin|C|194119|82|
|Auriok Edgewright|Scars of Mirrodin|U|208260|3|
|Auriok Replica|Scars of Mirrodin|C|209051|138|
|Auriok Sunchaser|Scars of Mirrodin|C|208249|4|
|Barbed Battlegear|Scars of Mirrodin|U|208255|139|
|Barrage Ogre|Scars of Mirrodin|U|194316|83|
|Bellowing Tanglewurm|Scars of Mirrodin|U|209048|111|
|Blackcleave Cliffs|Scars of Mirrodin|R|209401|224|
|Blackcleave Goblin|Scars of Mirrodin|C|194297|54|
|Bladed Pinions|Scars of Mirrodin|C|206354|140|
|Blade-Tribe Berserkers|Scars of Mirrodin|C|194165|84|
|Bleak Coven Vampires|Scars of Mirrodin|C|209006|55|
|Blight Mamba|Scars of Mirrodin|C|194158|112|
|Blistergrub|Scars of Mirrodin|C|202687|56|
|Bloodshot Trainee|Scars of Mirrodin|U|194255|85|
|Blunt the Assault|Scars of Mirrodin|C|205486|113|
|Bonds of Quicksilver|Scars of Mirrodin|C|202638|29|
|Carapace Forger|Scars of Mirrodin|C|208250|114|
|Carnifex Demon|Scars of Mirrodin|R|206357|57|
|Carrion Call|Scars of Mirrodin|U|194340|115|
|Cerebral Eruption|Scars of Mirrodin|R|215073|86|
|Chimeric Mass|Scars of Mirrodin|R|209714|141|
|Chrome Steed|Scars of Mirrodin|C|212247|142|
|Clone Shell|Scars of Mirrodin|U|209278|143|
|Contagion Clasp|Scars of Mirrodin|U|194341|144|
|Contagion Engine|Scars of Mirrodin|R|212252|145|
|Contagious Nim|Scars of Mirrodin|C|194150|58|
|Copper Myr|Scars of Mirrodin|C|194063|146|
|Copperhorn Scout|Scars of Mirrodin|C|194270|116|
|Copperline Gorge|Scars of Mirrodin|R|209408|225|
|Corpse Cur|Scars of Mirrodin|C|194337|147|
|Corrupted Harvester|Scars of Mirrodin|U|202640|59|
|Culling Dais|Scars of Mirrodin|U|194127|148|
|Cystbearer|Scars of Mirrodin|C|205477|117|
|Darkslick Drake|Scars of Mirrodin|U|194217|30|
|Darkslick Shores|Scars of Mirrodin|R|209400|226|
|Darksteel Axe|Scars of Mirrodin|U|209033|149|
|Darksteel Juggernaut|Scars of Mirrodin|R|209011|150|
|Darksteel Myr|Scars of Mirrodin|U|209000|151|
|Darksteel Sentinel|Scars of Mirrodin|U|207865|152|
|Dispense Justice|Scars of Mirrodin|U|209015|5|
|Disperse|Scars of Mirrodin|C|212242|31|
|Dissipation Field|Scars of Mirrodin|R|202635|32|
|Dross Hopper|Scars of Mirrodin|C|194273|60|
|Echo Circlet|Scars of Mirrodin|C|209042|153|
|Elspeth Tirel|Scars of Mirrodin|M|212241|6|
|Embersmith|Scars of Mirrodin|U|194202|87|
|Engulfing Slagwurm|Scars of Mirrodin|R|215080|118|
|Etched Champion|Scars of Mirrodin|R|215099|154|
|Exsanguinate|Scars of Mirrodin|U|210235|61|
|Ezuri, Renegade Leader|Scars of Mirrodin|R|194243|119|
|Ezuri's Archers|Scars of Mirrodin|C|194092|120|
|Ezuri's Brigade|Scars of Mirrodin|R|212707|121|
|Ferrovore|Scars of Mirrodin|C|194317|88|
|Flameborn Hellion|Scars of Mirrodin|C|208256|89|
|Flesh Allergy|Scars of Mirrodin|U|208999|62|
|Flight Spellbomb|Scars of Mirrodin|C|210233|155|
|Forest|Scars of Mirrodin|L|214680|246|
|Forest|Scars of Mirrodin|L|214680|247|
|Forest|Scars of Mirrodin|L|214680|248|
|Forest|Scars of Mirrodin|L|214680|249|
|Fulgent Distraction|Scars of Mirrodin|C|205488|7|
|Fume Spitter|Scars of Mirrodin|C|209005|63|
|Furnace Celebration|Scars of Mirrodin|U|194374|90|
|Galvanic Blast|Scars of Mirrodin|C|208251|91|
|Genesis Wave|Scars of Mirrodin|R|207882|122|
|Geth, Lord of the Vault|Scars of Mirrodin|M|215076|64|
|Ghalma's Warden|Scars of Mirrodin|C|194124|8|
|Glimmerpoint Stag|Scars of Mirrodin|U|194046|9|
|Glimmerpost|Scars of Mirrodin|C|209043|227|
|Glint Hawk|Scars of Mirrodin|C|206358|10|
|Glint Hawk Idol|Scars of Mirrodin|C|194049|156|
|Goblin Gaveleer|Scars of Mirrodin|C|194373|92|
|Gold Myr|Scars of Mirrodin|C|194384|157|
|Golden Urn|Scars of Mirrodin|C|213926|158|
|Golem Artisan|Scars of Mirrodin|U|206360|159|
|Golem Foundry|Scars of Mirrodin|C|194314|160|
|Golem's Heart|Scars of Mirrodin|U|205472|161|
|Grafted Exoskeleton|Scars of Mirrodin|U|209045|162|
|Grand Architect|Scars of Mirrodin|R|207884|33|
|Grasp of Darkness|Scars of Mirrodin|C|194105|65|
|Grindclock|Scars of Mirrodin|R|194134|163|
|Halt Order|Scars of Mirrodin|U|194110|34|
|Hand of the Praetors|Scars of Mirrodin|R|215086|66|
|Heavy Arbalest|Scars of Mirrodin|U|209050|164|
|Hoard-Smelter Dragon|Scars of Mirrodin|R|215074|93|
|Horizon Spellbomb|Scars of Mirrodin|C|210229|165|
|Ichor Rats|Scars of Mirrodin|U|194177|67|
|Ichorclaw Myr|Scars of Mirrodin|C|194256|166|
|Indomitable Archangel|Scars of Mirrodin|M|212248|11|
|Inexorable Tide|Scars of Mirrodin|R|194363|35|
|Infiltration Lens|Scars of Mirrodin|U|205480|167|
|Instill Infection|Scars of Mirrodin|C|194349|68|
|Iron Myr|Scars of Mirrodin|C|194168|168|
|Island|Scars of Mirrodin|L|214678|234|
|Island|Scars of Mirrodin|L|214678|235|
|Island|Scars of Mirrodin|L|214678|236|
|Island|Scars of Mirrodin|L|214678|237|
|Kemba, Kha Regent|Scars of Mirrodin|R|215091|12|
|Kemba's Skyguard|Scars of Mirrodin|C|194083|13|
|Koth of the Hammer|Scars of Mirrodin|M|212238|94|
|Kuldotha Forgemaster|Scars of Mirrodin|R|215098|169|
|Kuldotha Phoenix|Scars of Mirrodin|R|194326|95|
|Kuldotha Rebirth|Scars of Mirrodin|C|194239|96|
|Leaden Myr|Scars of Mirrodin|C|194204|170|
|Leonin Arbiter|Scars of Mirrodin|R|209287|14|
|Liege of the Tangle|Scars of Mirrodin|M|194130|123|
|Lifesmith|Scars of Mirrodin|U|208252|124|
|Liquimetal Coating|Scars of Mirrodin|U|212709|171|
|Livewire Lash|Scars of Mirrodin|R|212239|172|
|Loxodon Wayfarer|Scars of Mirrodin|C|207885|15|
|Lumengrid Drake|Scars of Mirrodin|C|194178|36|
|Lux Cannon|Scars of Mirrodin|M|210236|173|
|Melt Terrain|Scars of Mirrodin|C|194106|97|
|Memnite|Scars of Mirrodin|U|194078|174|
|Memoricide|Scars of Mirrodin|R|215103|69|
|Mimic Vat|Scars of Mirrodin|R|207883|175|
|Mindslaver|Scars of Mirrodin|M|209044|176|
|Molder Beast|Scars of Mirrodin|C|209403|125|
|Molten Psyche|Scars of Mirrodin|R|212716|98|
|Molten-Tail Masticore|Scars of Mirrodin|M|215089|177|
|Moriok Reaver|Scars of Mirrodin|C|194309|70|
|Moriok Replica|Scars of Mirrodin|C|209037|178|
|Mountain|Scars of Mirrodin|L|234740|242|
|Mountain|Scars of Mirrodin|L|234740|243|
|Mountain|Scars of Mirrodin|L|234740|244|
|Mountain|Scars of Mirrodin|L|234740|245|
|Mox Opal|Scars of Mirrodin|M|208248|179|
|Myr Battlesphere|Scars of Mirrodin|R|209717|180|
|Myr Galvanizer|Scars of Mirrodin|U|220364|181|
|Myr Propagator|Scars of Mirrodin|R|215069|182|
|Myr Reservoir|Scars of Mirrodin|R|215114|183|
|Myrsmith|Scars of Mirrodin|U|209712|16|
|Necrogen Censer|Scars of Mirrodin|C|194223|184|
|Necrogen Scudder|Scars of Mirrodin|U|202653|71|
|Necropede|Scars of Mirrodin|U|194052|185|
|Necrotic Ooze|Scars of Mirrodin|R|207876|72|
|Neurok Invisimancer|Scars of Mirrodin|C|194109|37|
|Neurok Replica|Scars of Mirrodin|C|209039|186|
|Nihil Spellbomb|Scars of Mirrodin|C|210226|187|
|Nim Deathmantle|Scars of Mirrodin|R|209289|188|
|Ogre Geargrabber|Scars of Mirrodin|U|215101|99|
|Origin Spellbomb|Scars of Mirrodin|C|210239|189|
|Oxidda Daredevil|Scars of Mirrodin|C|194213|100|
|Oxidda Scrapmelter|Scars of Mirrodin|U|194281|101|
|Painful Quandary|Scars of Mirrodin|R|212243|73|
|Painsmith|Scars of Mirrodin|U|194210|74|
|Palladium Myr|Scars of Mirrodin|U|212251|190|
|Panic Spellbomb|Scars of Mirrodin|C|210234|191|
|Perilous Myr|Scars of Mirrodin|C|194056|192|
|Plague Stinger|Scars of Mirrodin|C|208261|75|
|Plains|Scars of Mirrodin|L|214671|230|
|Plains|Scars of Mirrodin|L|214671|231|
|Plains|Scars of Mirrodin|L|214671|232|
|Plains|Scars of Mirrodin|L|214671|233|
|Plated Seastrider|Scars of Mirrodin|C|194061|38|
|Platinum Emperion|Scars of Mirrodin|M|215092|193|
|Precursor Golem|Scars of Mirrodin|R|206348|194|
|Prototype Portal|Scars of Mirrodin|R|209009|195|
|Psychic Miasma|Scars of Mirrodin|C|206345|76|
|Putrefax|Scars of Mirrodin|R|207871|126|
|Quicksilver Gargantuan|Scars of Mirrodin|M|207874|39|
|Ratchet Bomb|Scars of Mirrodin|R|205482|196|
|Razor Hippogriff|Scars of Mirrodin|U|194323|17|
|Razorfield Thresher|Scars of Mirrodin|C|209725|197|
|Razorverge Thicket|Scars of Mirrodin|R|209407|228|
|Relic Putrescence|Scars of Mirrodin|C|209720|77|
|Revoke Existence|Scars of Mirrodin|C|194123|18|
|Riddlesmith|Scars of Mirrodin|U|202643|40|
|Rust Tick|Scars of Mirrodin|U|209282|198|
|Rusted Relic|Scars of Mirrodin|U|194069|199|
|Saberclaw Golem|Scars of Mirrodin|C|212717|200|
|Salvage Scout|Scars of Mirrodin|C|205491|19|
|Scoria Elemental|Scars of Mirrodin|C|212710|102|
|Scrapdiver Serpent|Scars of Mirrodin|C|207863|41|
|Screeching Silcaw|Scars of Mirrodin|C|209281|42|
|Seachrome Coast|Scars of Mirrodin|R|209399|229|
|Seize the Initiative|Scars of Mirrodin|C|194206|20|
|Semblance Anvil|Scars of Mirrodin|R|209002|201|
|Shape Anew|Scars of Mirrodin|R|194201|43|
|Shatter|Scars of Mirrodin|C|194147|103|
|Silver Myr|Scars of Mirrodin|C|194378|202|
|Skinrender|Scars of Mirrodin|U|204958|78|
|Skithiryx, the Blight Dragon|Scars of Mirrodin|M|212249|79|
|Sky-Eel School|Scars of Mirrodin|C|194103|44|
|Slice in Twain|Scars of Mirrodin|U|208254|127|
|Snapsail Glider|Scars of Mirrodin|C|209010|203|
|Soliton|Scars of Mirrodin|C|205484|204|
|Soul Parry|Scars of Mirrodin|C|212705|21|
|Spikeshot Elder|Scars of Mirrodin|R|209404|104|
|Steady Progress|Scars of Mirrodin|C|194361|45|
|Steel Hellkite|Scars of Mirrodin|R|206351|205|
|Stoic Rebuttal|Scars of Mirrodin|C|212703|46|
|Strata Scythe|Scars of Mirrodin|R|207870|206|
|Strider Harness|Scars of Mirrodin|C|206344|207|
|Sunblast Angel|Scars of Mirrodin|R|215111|22|
|Sunspear Shikari|Scars of Mirrodin|C|209008|23|
|Swamp|Scars of Mirrodin|L|214676|238|
|Swamp|Scars of Mirrodin|L|214676|239|
|Swamp|Scars of Mirrodin|L|214676|240|
|Swamp|Scars of Mirrodin|L|214676|241|
|Sword of Body and Mind|Scars of Mirrodin|M|209280|208|
|Sylvok Lifestaff|Scars of Mirrodin|C|207857|209|
|Sylvok Replica|Scars of Mirrodin|C|209052|210|
|Tainted Strike|Scars of Mirrodin|C|209049|80|
|Tangle Angler|Scars of Mirrodin|U|205485|128|
|Tel-Jilad Defiance|Scars of Mirrodin|C|202636|129|
|Tel-Jilad Fallen|Scars of Mirrodin|C|205483|130|
|Tempered Steel|Scars of Mirrodin|R|194391|24|
|Throne of Geth|Scars of Mirrodin|U|202675|211|
|Thrummingbird|Scars of Mirrodin|U|194332|47|
|Tower of Calamities|Scars of Mirrodin|R|207864|212|
|Trigon of Corruption|Scars of Mirrodin|U|202686|213|
|Trigon of Infestation|Scars of Mirrodin|U|194232|214|
|Trigon of Mending|Scars of Mirrodin|U|212714|215|
|Trigon of Rage|Scars of Mirrodin|U|194393|216|
|Trigon of Thought|Scars of Mirrodin|U|205476|217|
|Trinket Mage|Scars of Mirrodin|U|209040|48|
|True Conviction|Scars of Mirrodin|R|208262|25|
|Tumble Magnet|Scars of Mirrodin|C|210232|218|
|Tunnel Ignus|Scars of Mirrodin|R|206361|105|
|Turn Aside|Scars of Mirrodin|C|194303|49|
|Turn to Slag|Scars of Mirrodin|C|209719|106|
|Twisted Image|Scars of Mirrodin|U|208253|50|
|Untamed Might|Scars of Mirrodin|C|194160|131|
|Vault Skyward|Scars of Mirrodin|C|194265|51|
|Vector Asp|Scars of Mirrodin|C|194074|219|
|Vedalken Certarch|Scars of Mirrodin|C|208257|52|
|Venser, the Sojourner|Scars of Mirrodin|M|212240|135|
|Venser's Journal|Scars of Mirrodin|R|215079|220|
|Vigil for the Lost|Scars of Mirrodin|U|205489|26|
|Viridian Revel|Scars of Mirrodin|U|194266|132|
|Volition Reins|Scars of Mirrodin|U|209001|53|
|Vulshok Heartstoker|Scars of Mirrodin|C|194320|107|
|Vulshok Replica|Scars of Mirrodin|C|209034|221|
|Wall of Tanglecord|Scars of Mirrodin|C|202652|222|
|Whitesun's Passage|Scars of Mirrodin|C|206349|27|
|Wing Puncture|Scars of Mirrodin|C|194097|133|
|Withstand Death|Scars of Mirrodin|C|209035|134|
|Wurmcoil Engine|Scars of Mirrodin|M|207875|223|

View file

@ -44,6 +44,7 @@ public interface Card extends MageObject {
public UUID getOwnerId();
public int getCardNumber();
public void setCardNumber(int cid);
public String getArt();
public Rarity getRarity();
public void setRarity(Rarity rarity);

View file

@ -278,4 +278,9 @@ public abstract class CardImpl<T extends CardImpl<T>> extends MageObjectImpl<T>
public String getArt() {
return "";
}
@Override
public void setCardNumber(int cid) {
this.cardNumber = cid;
}
}

View file

@ -315,6 +315,11 @@ public class Spell<T extends Spell<T>> implements StackObject, Card {
return card.getCardNumber();
}
@Override
public void setCardNumber(int cid) {
card.setCardNumber(cid);
}
@Override
public List<Mana> getMana() {
throw new UnsupportedOperationException("Not supported yet.");