mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 11:18:01 +00:00
Moved SetInfo lists to external files.
This commit is contained in:
2
.gitattributes
vendored
2
.gitattributes
vendored
@@ -17,6 +17,8 @@ build/manifest.forge -text
|
||||
/pom.xml svneol=native#text/xml
|
||||
res/AllTokens.txt -text svneol=native#text/plain
|
||||
res/PerSetTracking.py -text svneol=native#text/x-python
|
||||
res/blockdata/blocks.txt svneol=native#text/plain
|
||||
res/blockdata/setdata.txt svneol=native#text/plain
|
||||
res/booster-decks -text svneol=unset#unset
|
||||
res/boosterdata/10E.pack -text
|
||||
res/boosterdata/2ED.pack -text
|
||||
|
||||
42
res/blockdata/blocks.txt
Normal file
42
res/blockdata/blocks.txt
Normal file
@@ -0,0 +1,42 @@
|
||||
Index:0|Set0:LEA|Name:Alpha|DraftPacks:3|LandSetCode:LEA|SealedPacks:6
|
||||
Index:0|Set0:LEB|Name:Beta|DraftPacks:3|LandSetCode:LEB|SealedPacks:6
|
||||
Index:0|Set0:2ED|Name:Unlimited|DraftPacks:3|LandSetCode:2ED|SealedPacks:6
|
||||
Index:0|Set0:ARN|Name:Arabian Nights|DraftPacks:5|LandSetCode:2ED|SealedPacks:9
|
||||
Index:0|Set0:ATQ|Name:Antiquities|DraftPacks:5|LandSetCode:ATQ|SealedPacks:9
|
||||
Index:0|Set0:3ED|Name:Revised|DraftPacks:3|LandSetCode:3ED|SealedPacks:6
|
||||
Index:0|Set0:LEG|Name:Legends|DraftPacks:3|LandSetCode:3ED|SealedPacks:6
|
||||
Index:0|Set0:DRK|Name:The Dark|DraftPacks:5|LandSetCode:3ED|SealedPacks:9
|
||||
Index:0|Set0:FEM|Name:Fallen Empires|DraftPacks:5|LandSetCode:3ED|SealedPacks:9
|
||||
Index:0|Set0:4ED|Name:Fourth Edition|DraftPacks:3|LandSetCode:4ED|SealedPacks:6
|
||||
Index:0|Set0:ICE|Set1:ALL|Set2:CSP|Name:Ice Age|DraftPacks:3|LandSetCode:ICE|SealedPacks:6
|
||||
Index:0|Set0:HML|Name:Homelands|DraftPacks:5|LandSetCode:4ED|SealedPacks:9
|
||||
Index:0|Set0:MIR|Set1:VIS|Set2:WTH|Name:Mirage|DraftPacks:3|LandSetCode:MIR|SealedPacks:6
|
||||
Index:0|Set0:5ED|Name:Fifth Edition|DraftPacks:3|LandSetCode:5ED|SealedPacks:6
|
||||
Index:0|Set0:POR|Name:Portal|DraftPacks:3|LandSetCode:POR|SealedPacks:6
|
||||
Index:0|Set0:TMP|Set1:STH|Set2:EXO|Name:Tempest|DraftPacks:3|LandSetCode:TMP|SealedPacks:6
|
||||
Index:0|Set0:PO2|Name:Portal Second Age|DraftPacks:3|LandSetCode:PO2|SealedPacks:6
|
||||
Index:0|Set0:USG|Set1:ULG|Set2:UDS|Name:Urza|DraftPacks:3|LandSetCode:USG|SealedPacks:6
|
||||
Index:0|Set0:6ED|Name:Sixth Edition|DraftPacks:3|LandSetCode:6ED|SealedPacks:6
|
||||
Index:0|Set0:PTK|Name:Portal Three Kingdoms|DraftPacks:5|LandSetCode:PTK|SealedPacks:9
|
||||
Index:0|Set0:MMQ|Set1:NMS|Set2:PCY|Name:Masques|DraftPacks:3|LandSetCode:MMQ|SealedPacks:6
|
||||
Index:0|Set0:INV|Set1:PLS|Set2:APC|Name:Invasion|DraftPacks:3|LandSetCode:INV|SealedPacks:6
|
||||
Index:0|Set0:7ED|Name:Seventh Edition|DraftPacks:3|LandSetCode:7ED|SealedPacks:6
|
||||
Index:0|Set0:ODY|Set1:TOR|Set2:JUD|Name:Odyssey|DraftPacks:3|LandSetCode:ODY|SealedPacks:6
|
||||
Index:0|Set0:ONS|Set1:LGN|Set2:SCG|Name:Onslaught|DraftPacks:3|LandSetCode:ONS|SealedPacks:6
|
||||
Index:0|Set0:8ED|Name:Eighth Edition|DraftPacks:3|LandSetCode:8ED|SealedPacks:6
|
||||
Index:0|Set0:MRD|Set1:DST|Set2:5DN|Name:Mirrodin|DraftPacks:3|LandSetCode:MRD|SealedPacks:6
|
||||
Index:0|Set0:CHK|Set1:BOK|Set2:SOK|Name:Kamigawa|DraftPacks:3|LandSetCode:CHK|SealedPacks:6
|
||||
Index:0|Set0:9ED|Name:Ninth Edition|DraftPacks:3|LandSetCode:9ED|SealedPacks:6
|
||||
Index:0|Set0:RAV|Set1:GPT|Set2:DIS|Name:Ravnica|DraftPacks:3|LandSetCode:RAV|SealedPacks:6
|
||||
Index:0|Set0:CSP|Name:Coldsnap|DraftPacks:3|LandSetCode:9ED|SealedPacks:6
|
||||
Index:0|Set0:TSP|Set1:PLC|Set2:FUT|Name:Time Spiral|DraftPacks:3|LandSetCode:TSP|SealedPacks:6
|
||||
Index:0|Set0:10E|Name:Tenth Edition|DraftPacks:3|LandSetCode:10E|SealedPacks:6
|
||||
Index:0|Set0:LRW|Set1:MOR|Name:Lorwyn|DraftPacks:3|LandSetCode:LRW|SealedPacks:6
|
||||
Index:0|Set0:SHM|Set1:EVE|Name:Shadowmoor|DraftPacks:3|LandSetCode:SHM|SealedPacks:6
|
||||
Index:0|Set0:ALA|Set1:CFX|Set2:ARB|Name:Shards of Alara|DraftPacks:3|LandSetCode:ALA|SealedPacks:6
|
||||
Index:0|Set0:M10|Name:Magic 2010|DraftPacks:3|LandSetCode:M10|SealedPacks:6
|
||||
Index:0|Set0:ZEN|Set1:WWK|Name:Zendikar|DraftPacks:3|LandSetCode:ZEN|SealedPacks:6
|
||||
Index:0|Set0:ROE|Name:Rise of the Eldrazi|DraftPacks:3|LandSetCode:ROE|SealedPacks:6
|
||||
Index:0|Set0:M11|Name:Magic 2011|DraftPacks:3|LandSetCode:M11|SealedPacks:6
|
||||
Index:0|Set0:SOM|Set1:MBS|Set2:NPH|Name:Scars of Mirrodin|DraftPacks:3|LandSetCode:SOM|SealedPacks:6
|
||||
|
||||
83
res/blockdata/setdata.txt
Normal file
83
res/blockdata/setdata.txt
Normal file
@@ -0,0 +1,83 @@
|
||||
Index:0|Code2:MBP|Code3:MBP|Name:Media Insert Promo
|
||||
Index:1|Code2:A|Code3:LEA|Name:Limited Edition Alpha
|
||||
Index:2|Code2:B|Code3:LEB|Name:Limited Edition Beta
|
||||
Index:3|Code2:U|Code3:2ED|Name:Unlimited
|
||||
Index:4|Code2:AN|Code3:ARN|Name:Arabian Nights
|
||||
Index:5|Code2:AQ|Code3:ATQ|Name:Antiquities
|
||||
Index:6|Code2:R|Code3:3ED|Name:Revised Edition
|
||||
Index:7|Code2:LG|Code3:LEG|Name:Legends
|
||||
Index:8|Code2:DK|Code3:DRK|Name:The Dark
|
||||
Index:9|Code2:FE|Code3:FEM|Name:Fallen Empires
|
||||
|
||||
Index:10|Code2:4E|Code3:4ED|Name:Fourth Edition
|
||||
Index:11|Code2:IA|Code3:ICE|Name:Ice Age
|
||||
Index:12|Code2:CH|Code3:CHR|Name:Chronicles
|
||||
Index:13|Code2:HL|Code3:HML|Name:Homelands
|
||||
Index:14|Code2:AL|Code3:ALL|Name:Alliances
|
||||
Index:15|Code2:MI|Code3:MIR|Name:Mirage
|
||||
Index:16|Code2:VI|Code3:VIS|Name:Visions
|
||||
Index:17|Code2:5E|Code3:5ED|Name:Fifth Edition
|
||||
Index:18|Code2:PT|Code3:POR|Name:Portal
|
||||
Index:19|Code2:WL|Code3:WTH|Name:Weatherlight
|
||||
|
||||
Index:20|Code2:TE|Code3:TMP|Name:Tempest
|
||||
Index:21|Code2:SH|Code3:STH|Name:Stronghold
|
||||
Index:22|Code2:EX|Code3:EXO|Name:Exodus
|
||||
Index:23|Code2:P2|Code3:PO2|Name:Portal Second Age
|
||||
Index:24|Code2:US|Code3:USG|Name:Urza's Saga
|
||||
Index:25|Code2:UL|Code3:ULG|Name:Urza's Legacy
|
||||
Index:26|Code2:6E|Code3:6ED|Name:Classic (Sixth Edition)
|
||||
Index:27|Code2:UD|Code3:UDS|Name:Urza's Destiny
|
||||
Index:28|Code2:P3|Code3:PTK|Name:Portal Three Kingdoms
|
||||
Index:29|Code2:ST|Code3:S99|Name:Starter 1999
|
||||
|
||||
Index:30|Code2:MM|Code3:MMQ|Name:Mercadian Masques
|
||||
Index:31|Code2:NE|Code3:NMS|Name:Nemesis
|
||||
Index:32|Code2:S2K|Code3:S00|Name:Starter 2000
|
||||
Index:33|Code2:PY|Code3:PCY|Name:Prophecy
|
||||
Index:34|Code2:IN|Code3:INV|Name:Invasion
|
||||
Index:35|Code2:PS|Code3:PLS|Name:Planeshift
|
||||
Index:36|Code2:7E|Code3:7ED|Name:Seventh Edition
|
||||
Index:37|Code2:AP|Code3:APC|Name:Apocalypse
|
||||
Index:38|Code2:OD|Code3:ODY|Name:Odyssey
|
||||
Index:39|Code2:TO|Code3:TOR|Name:Torment
|
||||
|
||||
Index:40|Code2:JU|Code3:JUD|Name:Judgment
|
||||
Index:41|Code2:ON|Code3:ONS|Name:Onslaught
|
||||
Index:42|Code2:LE|Code3:LGN|Name:Legions
|
||||
Index:43|Code2:SC|Code3:SCG|Name:Scourge
|
||||
Index:44|Code2:8E|Code3:8ED|Name:Core Set - Eighth Edition
|
||||
Index:45|Code2:MR|Code3:MRD|Name:Mirrodin
|
||||
Index:46|Code2:DS|Code3:DST|Name:Darksteel
|
||||
Index:47|Code2:FD|Code3:5DN|Name:Fifth Dawn
|
||||
Index:48|Code2:CHK|Code3:CHK|Name:Champions of Kamigawa
|
||||
Index:49|Code2:BOK|Code3:BOK|Name:Betrayers of Kamigawa
|
||||
|
||||
Index:50|Code2:SOK|Code3:SOK|Name:Saviors of Kamigawa
|
||||
Index:51|Code2:9E|Code3:9ED|Name:Core Set - Ninth Edition
|
||||
Index:52|Code2:RAV|Code3:RAV|Name:Ravnica: City of Guilds
|
||||
Index:53|Code2:GP|Code3:GPT|Name:Guildpact
|
||||
Index:54|Code2:DIS|Code3:DIS|Name:Dissension
|
||||
Index:55|Code2:CS|Code3:CSP|Name:Coldsnap
|
||||
Index:56|Code2:TSP|Code3:TSP|Name:Time Spiral
|
||||
Index:57|Code2:TSB|Code3:TSB|Name:Time Spiral Timeshifted
|
||||
Index:58|Code2:PLC|Code3:PLC|Name:Planar Chaos
|
||||
Index:59|Code2:FUT|Code3:FUT|Name:Future Sight
|
||||
|
||||
Index:60|Code2:10E|Code3:10E|Name:Core Set - Tenth Edition
|
||||
Index:61|Code2:LRW|Code3:LRW|Name:Lorwyn
|
||||
Index:62|Code2:MOR|Code3:MOR|Name:Morningtide
|
||||
Index:63|Code2:SHM|Code3:SHM|Name:Shadowmoor
|
||||
Index:64|Code2:EVE|Code3:EVE|Name:Eventide
|
||||
Index:65|Code2:ALA|Code3:ALA|Name:Shards of Alara
|
||||
Index:66|Code2:CFX|Code3:CFX|Name:Conflux
|
||||
Index:67|Code2:ARB|Code3:ARB|Name:Alara Reborn
|
||||
Index:68|Code2:M10|Code3:M10|Name:Magic The Gathering 2010
|
||||
Index:69|Code2:ZEN|Code3:ZEN|Name:Zendikar
|
||||
|
||||
Index:70|Code2:WWK|Code3:WWK|Name:Worldwake
|
||||
Index:71|Code2:ROE|Code3:ROE|Name:Rise of the Eldrazi
|
||||
Index:72|Code2:M11|Code3:M11|Name:Magic The Gathering 2011
|
||||
Index:73|Code2:SOM|Code3:SOM|Name:Scars of Mirrodin
|
||||
Index:74|Code2:MBS|Code3:MBS|Name:Mirrodin Besieged
|
||||
Index:75|Code2:NPH|Code3:NPH|Name:New Phyrexia
|
||||
@@ -1,94 +1,42 @@
|
||||
package forge;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
|
||||
public class SetInfoUtil {
|
||||
private static ArrayList<HashMap<String, String>> setData = new ArrayList<HashMap<String, String>>();
|
||||
|
||||
private static String[][] sets = {
|
||||
{"MBP", "MBP", "Media Insert Promo"},
|
||||
{"A", "LEA", "Limited Edition Alpha"},
|
||||
{"B", "LEB", "Limited Edition Beta"},
|
||||
{"U", "2ED", "Unlimited"},
|
||||
{"AN", "ARN", "Arabian Nights"},
|
||||
{"AQ", "ATQ", "Antiquities"},
|
||||
{"R", "3ED", "Revised Edition"},
|
||||
{"LG", "LEG", "Legends"},
|
||||
{"DK", "DRK", "The Dark"},
|
||||
{"FE", "FEM", "Fallen Empires"},
|
||||
{"4E", "4ED", "Fourth Edition"},
|
||||
{"IA", "ICE", "Ice Age"},
|
||||
{"CH", "CHR", "Chronicles"},
|
||||
{"HL", "HML", "Homelands"},
|
||||
{"AL", "ALL", "Alliances"},
|
||||
{"MI", "MIR", "Mirage"},
|
||||
{"VI", "VIS", "Visions"},
|
||||
{"5E", "5ED", "Fifth Edition"},
|
||||
{"PT", "POR", "Portal"},
|
||||
{"WL", "WTH", "Weatherlight"},
|
||||
{"TE", "TMP", "Tempest"},
|
||||
{"SH", "STH", "Stronghold"},
|
||||
{"EX", "EXO", "Exodus"},
|
||||
{"P2", "PO2", "Portal Second Age"},
|
||||
{"US", "USG", "Urza's Saga"},
|
||||
{"UL", "ULG", "Urza's Legacy"},
|
||||
{"6E", "6ED", "Classic (Sixth Edition)"},
|
||||
{"UD", "UDS", "Urza's Destiny"},
|
||||
{"P3", "PTK", "Portal Three Kingdoms"},
|
||||
{"ST", "S99", "Starter 1999"},
|
||||
{"MM", "MMQ", "Mercadian Masques"},
|
||||
{"NE", "NMS", "Nemesis"},
|
||||
{"S2K", "S00", "Starter 2000"},
|
||||
{"PY", "PCY", "Prophecy"},
|
||||
{"IN", "INV", "Invasion"},
|
||||
{"PS", "PLS", "Planeshift"},
|
||||
{"7E", "7ED", "Seventh Edition"},
|
||||
{"AP", "APC", "Apocalypse"},
|
||||
{"OD", "ODY", "Odyssey"},
|
||||
{"TO", "TOR", "Torment"},
|
||||
{"JU", "JUD", "Judgment"},
|
||||
{"ON", "ONS", "Onslaught"},
|
||||
{"LE", "LGN", "Legions"},
|
||||
{"SC", "SCG", "Scourge"},
|
||||
{"8E", "8ED", "Core Set - Eighth Edition"},
|
||||
{"MR", "MRD", "Mirrodin"},
|
||||
{"DS", "DST", "Darksteel"},
|
||||
{"FD", "5DN", "Fifth Dawn"},
|
||||
{"CHK", "CHK", "Champions of Kamigawa"},
|
||||
{"BOK", "BOK", "Betrayers of Kamigawa"},
|
||||
{"SOK", "SOK", "Saviors of Kamigawa"},
|
||||
{"9E", "9ED", "Core Set - Ninth Edition"},
|
||||
{"RAV", "RAV", "Ravnica: City of Guilds"},
|
||||
{"GP", "GPT", "Guildpact"},
|
||||
{"DIS", "DIS", "Dissension"},
|
||||
{"CS", "CSP", "Coldsnap"},
|
||||
{"TSP", "TSP", "Time Spiral"},
|
||||
{"TSB", "TSB", "Time Spiral Timeshifted"},
|
||||
{"PLC", "PLC", "Planar Chaos"},
|
||||
{"FUT", "FUT", "Future Sight"},
|
||||
{"10E", "10E", "Core Set - Tenth Edition"},
|
||||
{"LRW", "LRW", "Lorwyn"},
|
||||
{"MOR", "MOR", "Morningtide"},
|
||||
{"SHM", "SHM", "Shadowmoor"},
|
||||
{"EVE", "EVE", "Eventide"},
|
||||
{"ALA", "ALA", "Shards of Alara"},
|
||||
{"CFX", "CFX", "Conflux"},
|
||||
{"ARB", "ARB", "Alara Reborn"},
|
||||
{"M10", "M10", "Magic The Gathering 2010"},
|
||||
{"ZEN", "ZEN", "Zendikar"},
|
||||
{"WWK", "WWK", "Worldwake"},
|
||||
{"ROE", "ROE", "Rise of the Eldrazi"},
|
||||
{"M11", "M11", "Magic The Gathering 2011"},
|
||||
{"SOM", "SOM", "Scars of Mirrodin"},
|
||||
{"MBS", "MBS", "Mirrodin Besieged"},
|
||||
{"NPH", "NPH", "New Phyrexia"}
|
||||
};
|
||||
private static void loadSetData() {
|
||||
ArrayList<String> fData = FileUtil.readFile("res/blockdata/setdata.txt");
|
||||
|
||||
if (fData.size() > 0) {
|
||||
for (int i=0; i<fData.size(); i++) {
|
||||
String s = fData.get(i);
|
||||
if (s.length() > 5) {
|
||||
HashMap<String, String> sm = new HashMap<String, String>();
|
||||
|
||||
String ss[] = s.split("\\|");
|
||||
for (int j=0; j<ss.length; j++) {
|
||||
String kv[] = ss[i].split(":");
|
||||
sm.put(kv[0], kv[1]);
|
||||
}
|
||||
|
||||
setData.add(sm);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public static ArrayList<String> getSetCode2List()
|
||||
{
|
||||
ArrayList<String> scl = new ArrayList<String>();
|
||||
|
||||
for (int i=0; i<sets.length; i++)
|
||||
scl.add(sets[i][0]);
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
scl.add(setData.get(i).get("Code2"));
|
||||
|
||||
return scl;
|
||||
}
|
||||
@@ -96,9 +44,12 @@ public class SetInfoUtil {
|
||||
public static ArrayList<String> getSetCode3List()
|
||||
{
|
||||
ArrayList<String> scl = new ArrayList<String>();
|
||||
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<sets.length; i++)
|
||||
scl.add(sets[i][1]);
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
scl.add(setData.get(i).get("Code3"));
|
||||
|
||||
return scl;
|
||||
}
|
||||
@@ -106,78 +57,102 @@ public class SetInfoUtil {
|
||||
public static ArrayList<String> getSetNameList()
|
||||
{
|
||||
ArrayList<String> snl = new ArrayList<String>();
|
||||
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<sets.length; i++)
|
||||
snl.add(sets[i][2]);
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
snl.add(setData.get(i).get("Name"));
|
||||
|
||||
return snl;
|
||||
}
|
||||
|
||||
public static String getSetCode2_SetName(String SetName)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][2].equals(SetName))
|
||||
return sets[i][0];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Name").equals(SetName))
|
||||
return setData.get(i).get("Code2");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getSetCode3_SetName(String SetName)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][2].equals(SetName))
|
||||
return sets[i][1];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Name").equals(SetName))
|
||||
return setData.get(i).get("Code3");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getSetCode2_SetCode3(String SetCode3)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][1].equals(SetCode3))
|
||||
return sets[i][0];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Code3").equals(SetCode3))
|
||||
return setData.get(i).get("Code2");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getSetCode3_SetCode2(String SetCode2)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][0].equals(SetCode2))
|
||||
return sets[i][1];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Code2").equals(SetCode2))
|
||||
return setData.get(i).get("Code3");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getSetName_SetCode2(String SetCode2)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][0].equals(SetCode2))
|
||||
return sets[i][2];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Code2").equals(SetCode2))
|
||||
return setData.get(i).get("Name");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getSetName_SetCode3(String SetCode3)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (sets[i][1].equals(SetCode3))
|
||||
return sets[i][2];
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
if (setData.get(i).get("Code3").equals(SetCode3))
|
||||
return setData.get(i).get("Name");
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public static String getMostRecentSet(ArrayList<SetInfo> alSI)
|
||||
{
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
int mostRecent = -1;
|
||||
|
||||
for (int i=0; i<alSI.size(); i++)
|
||||
{
|
||||
SetInfo s = alSI.get(i);
|
||||
|
||||
for (int j=0; j<sets.length; j++)
|
||||
for (int j=0; j<setData.size(); j++)
|
||||
{
|
||||
if (sets[j][1].equals(s.Code))
|
||||
if (setData.get(j).get("Code3").equals(s.Code))
|
||||
{
|
||||
if (j > mostRecent)
|
||||
{
|
||||
@@ -190,7 +165,7 @@ public class SetInfoUtil {
|
||||
}
|
||||
|
||||
if (mostRecent > -1)
|
||||
return sets[mostRecent][1];
|
||||
return setData.get(mostRecent).get("Code3");
|
||||
|
||||
return "";
|
||||
}
|
||||
@@ -198,7 +173,7 @@ public class SetInfoUtil {
|
||||
public static SetInfo getSetInfo_Code(ArrayList<SetInfo> SetList, String SetCode)
|
||||
{
|
||||
SetInfo si;
|
||||
|
||||
|
||||
for (int i=0; i<SetList.size(); i++)
|
||||
{
|
||||
si = SetList.get(i);
|
||||
@@ -211,95 +186,107 @@ public class SetInfoUtil {
|
||||
|
||||
public static int getSetIndex(String SetCode)
|
||||
{
|
||||
for (int i=0; i<sets.length; i++)
|
||||
if (setData.size() == 0)
|
||||
loadSetData();
|
||||
|
||||
for (int i=0; i<setData.size(); i++)
|
||||
{
|
||||
if (sets[i][1].equals(SetCode))
|
||||
return i;
|
||||
if (setData.get(i).get("Code3").equals(SetCode))
|
||||
return Integer.parseInt(setData.get(i).get("Index"));
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
private static String[][] blocks = {
|
||||
{"LEA", "", "", "Alpha", "3", "LEA"},
|
||||
{"LEB", "", "", "Beta", "3", "LEB"},
|
||||
{"2ED", "", "", "Unlimited", "3", "2ED"},
|
||||
{"ARN", "", "", "Arabian Nights", "5", "2ED"},
|
||||
{"ATQ", "", "", "Antiquities", "5", "ATQ"},
|
||||
{"3ED", "", "", "Revised", "3", "3ED"},
|
||||
{"LEG", "", "", "Legends", "3", "3ED"},
|
||||
{"DRK", "", "", "The Dark", "5", "3ED"},
|
||||
{"FEM", "", "", "Fallen Empires", "5", "3ED"},
|
||||
{"4ED", "", "", "Fourth Edition", "3", "4ED"},
|
||||
{"ICE", "ALL", "CSP", "Ice Age", "3", "ICE"},
|
||||
//{"CHR", "", "", "Chronicles", "4", "4ED"},
|
||||
{"HML", "", "", "Homelands", "5", "4ED"},
|
||||
{"MIR", "VIS", "WTH", "Mirage", "3", "MIR"},
|
||||
{"5ED", "", "", "Fifth Edition", "3", "5ED"},
|
||||
{"POR", "", "", "Portal", "3", "POR"},
|
||||
{"TMP", "STH", "EXO", "Tempest", "3", "TMP"},
|
||||
{"PO2", "", "", "Portal Second Age", "3", "PO2"},
|
||||
{"USG", "ULG", "UDS", "Urza", "3", "USG"},
|
||||
{"6ED", "", "", "Sixth Edition", "3", "6ED"},
|
||||
{"PTK", "", "", "Portal Three Kingdoms", "5", "PTK"},
|
||||
{"MMQ", "NMS", "PCY", "Masques", "3", "MMQ"},
|
||||
{"INV", "PLS", "APC", "Invasion", "3", "INV"},
|
||||
{"7ED", "", "", "Seventh Edition", "3", "7ED"},
|
||||
{"ODY", "TOR", "JUD", "Odyssey", "3", "ODY"},
|
||||
{"ONS", "LGN", "SCG", "Onslaught", "3", "ONS"},
|
||||
{"8ED", "", "", "Eighth Edition", "3", "8ED"},
|
||||
{"MRD", "DST", "5DN", "Mirrodin", "3", "MRD"},
|
||||
{"CHK", "BOK", "SOK", "Kamigawa", "3", "CHK"},
|
||||
{"9ED", "", "", "Ninth Edition", "3", "9ED"},
|
||||
{"RAV", "GPT", "DIS", "Ravnica", "3", "RAV"},
|
||||
{"CSP", "", "", "Coldsnap", "3", "9ED"},
|
||||
{"TSP", "PLC", "FUT", "Time Spiral", "3", "TSP"},
|
||||
{"10E", "", "", "Tenth Edition", "3", "10E"},
|
||||
{"LRW", "MOR", "", "Lorwyn", "3", "LRW"},
|
||||
{"SHM", "EVE", "", "Shadowmoor", "3", "SHM"},
|
||||
{"ALA", "CFX", "ARB", "Shards of Alara", "3", "ALA"},
|
||||
{"M10", "", "", "Magic 2010", "3", "M10"},
|
||||
{"ZEN", "WWK", "", "Zendikar", "3", "ZEN"},
|
||||
{"ROE", "", "", "Rise of the Eldrazi", "3", "ROE"},
|
||||
{"M11", "", "", "Magic 2011", "3", "M11"},
|
||||
{"SOM", "MBS", "NPH", "Scars of Mirrodin", "3", "SOM"}
|
||||
};
|
||||
private static ArrayList<HashMap<String, String>> blockData = new ArrayList<HashMap<String, String>>();
|
||||
|
||||
private static void loadBlockData() {
|
||||
ArrayList<String> fData = FileUtil.readFile("res/blockdata/blocks.txt");
|
||||
|
||||
if (fData.size() > 0) {
|
||||
for (int i=0; i<fData.size(); i++) {
|
||||
String s = fData.get(i);
|
||||
if (s.length() > 5) {
|
||||
HashMap<String, String> sm = new HashMap<String, String>();
|
||||
|
||||
String ss[] = s.split("\\|");
|
||||
for (int j=0; j<ss.length; j++) {
|
||||
String kv[] = ss[i].split(":");
|
||||
sm.put(kv[0], kv[1]);
|
||||
}
|
||||
|
||||
blockData.add(sm);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public static ArrayList<String> getBlockNameList() {
|
||||
ArrayList<String> bnl = new ArrayList<String>();
|
||||
|
||||
if (blockData.size() == 0)
|
||||
loadBlockData();
|
||||
|
||||
for (int i=0; i<blocks.length; i++)
|
||||
bnl.add(blocks[i][3]);
|
||||
for (int i=0; i<blockData.size(); i++)
|
||||
bnl.add(blockData.get(i).get("Name"));
|
||||
|
||||
return bnl;
|
||||
}
|
||||
|
||||
public static ArrayList<String> getSets_BlockName(String blockName) {
|
||||
ArrayList<String> sets = new ArrayList<String>();
|
||||
|
||||
for (int i=0; i<blocks.length; i++) {
|
||||
if (blocks[i][3].equals(blockName)) {
|
||||
for (int j=0; j<3; j++)
|
||||
sets.add(blocks[i][j]);
|
||||
|
||||
if (blockData.size() == 0)
|
||||
loadBlockData();
|
||||
|
||||
for (int i=0; i<blockData.size(); i++) {
|
||||
if (blockData.get(i).get("Name").equals(blockName)) {
|
||||
if (blockData.get(i).containsKey("Set0"))
|
||||
sets.add(blockData.get(i).get("Set0"));
|
||||
|
||||
if (blockData.get(i).containsKey("Set1"))
|
||||
sets.add(blockData.get(i).get("Set1"));
|
||||
|
||||
if (blockData.get(i).containsKey("Set2"))
|
||||
sets.add(blockData.get(i).get("Set2"));
|
||||
}
|
||||
}
|
||||
|
||||
return sets;
|
||||
}
|
||||
|
||||
public static int getPackCount(String blockName) {
|
||||
for (int i=0; i<blocks.length; i++) {
|
||||
if (blocks[i][3].equals(blockName))
|
||||
return Integer.parseInt(blocks[i][4]);
|
||||
public static int getDraftPackCount(String blockName) {
|
||||
if (blockData.size() == 0)
|
||||
loadBlockData();
|
||||
|
||||
for (int i=0; i<blockData.size(); i++) {
|
||||
if (blockData.get(i).get("Name").equals(blockName))
|
||||
return Integer.parseInt(blockData.get(i).get("DraftPacks"));
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public static int getSealedPackCount(String blockName) {
|
||||
if (blockData.size() == 0)
|
||||
loadBlockData();
|
||||
|
||||
for (int i=0; i<blockData.size(); i++) {
|
||||
if (blockData.get(i).get("Name").equals(blockName))
|
||||
return Integer.parseInt(blockData.get(i).get("SealedPacks"));
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public static String getLandCode(String blockName) {
|
||||
for (int i=0; i<blocks.length; i++) {
|
||||
if (blocks[i][3].equals(blockName))
|
||||
return blocks[i][5];
|
||||
if (blockData.size() == 0)
|
||||
loadBlockData();
|
||||
|
||||
for (int i=0; i<blockData.size(); i++) {
|
||||
if (blockData.get(i).get("Name").equals(blockName))
|
||||
return blockData.get(i).get("LandSetCode");
|
||||
}
|
||||
|
||||
return "M11"; // default, should never happen IRL
|
||||
|
||||
Reference in New Issue
Block a user