Add more planar conquest prefs

Add TEST_MODE setup for Planar Conquest testing
This commit is contained in:
drdev
2014-11-25 21:10:47 +00:00
parent 871272971e
commit c3e6c1e6b5
5 changed files with 52 additions and 15 deletions

View File

@@ -224,7 +224,19 @@ public class ConquestMapScreen extends FScreen {
CardRenderer.drawCardWithOverlays(g, card, 0, 0, w, h, CardStackPosition.Top);
}
else {
int winsToUnlock = index * FModel.getConquestPreferences().getPrefInt(CQPref.WINS_TO_UNLOCK_COMMANDER);
CQPref unlockPref;
switch (index) {
case 1:
unlockPref = CQPref.WINS_TO_UNLOCK_COMMANDER_2;
break;
case 2:
unlockPref = CQPref.WINS_TO_UNLOCK_COMMANDER_3;
break;
default:
unlockPref = CQPref.WINS_TO_UNLOCK_COMMANDER_4;
break;
}
int winsToUnlock = FModel.getConquestPreferences().getPrefInt(unlockPref);
if (planeData.getWins() < winsToUnlock) {
g.setAlphaComposite(0.25f);
float imageSize = w * 0.75f;

View File

@@ -48,7 +48,7 @@ public class ConquestMenu extends FPopupMenu {
final File dirConquests = new File(ForgeConstants.CONQUEST_SAVE_DIR);
final String questname = FModel.getConquestPreferences().getPref(CQPref.CURRENT_CONQUEST);
final File data = new File(dirConquests.getPath(), questname);
if (data.exists()) {
if (data.exists() || ConquestDataIO.TEST_MODE) {
LoadingOverlay.show("Loading current conquest...", new Runnable() {
@Override
@SuppressWarnings("unchecked")

View File

@@ -22,7 +22,8 @@ public class ConquestPrefsScreen extends FScreen {
private static final float PADDING = Utils.scale(5);
private enum PrefsGroup {
BASIC
WINS_TO_UNLOCK,
VARIANT_FREQUENCY
}
private FScrollPane scroller = add(new FScrollPane() {
@@ -48,8 +49,17 @@ public class ConquestPrefsScreen extends FScreen {
public ConquestPrefsScreen() {
super("Conquest Preferences", ConquestMenu.getMenu());
scroller.add(new PrefsHeader("Basic Settings", FSkinImage.SETTINGS, PrefsGroup.BASIC));
scroller.add(new PrefsOption("Wins per commander unlock", CQPref.WINS_TO_UNLOCK_COMMANDER, PrefsGroup.BASIC));
scroller.add(new PrefsHeader("Wins to Unlock", FSkinImage.LOCK, PrefsGroup.WINS_TO_UNLOCK));
scroller.add(new PrefsOption("Wins to unlock commander 2", CQPref.WINS_TO_UNLOCK_COMMANDER_2, PrefsGroup.WINS_TO_UNLOCK));
scroller.add(new PrefsOption("Wins to unlock commander 3", CQPref.WINS_TO_UNLOCK_COMMANDER_3, PrefsGroup.WINS_TO_UNLOCK));
scroller.add(new PrefsOption("Wins to unlock commander 4", CQPref.WINS_TO_UNLOCK_COMMANDER_4, PrefsGroup.WINS_TO_UNLOCK));
scroller.add(new PrefsOption("Wins to unlock planar portal", CQPref.WINS_TO_UNLOCK_PORTAL, PrefsGroup.WINS_TO_UNLOCK));
scroller.add(new PrefsHeader("Variant Frequency", FSkinImage.PLANESWALKER, PrefsGroup.VARIANT_FREQUENCY));
scroller.add(new PrefsOption("Normal Game (%)", CQPref.PERCENT_NORMAL, PrefsGroup.VARIANT_FREQUENCY));
scroller.add(new PrefsOption("Commander Game (%)", CQPref.PERCENT_COMMANDER, PrefsGroup.VARIANT_FREQUENCY));
scroller.add(new PrefsOption("Planechase Game (%)", CQPref.PERCENT_PLANECHASE, PrefsGroup.VARIANT_FREQUENCY));
scroller.add(new PrefsOption("Commander & Planechase Game (%)", CQPref.PERCENT_DOUBLE_VARIANT, PrefsGroup.VARIANT_FREQUENCY));
}
@Override

View File

@@ -21,16 +21,12 @@ import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StringReader;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
import javax.xml.parsers.ParserConfigurationException;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import com.thoughtworks.xstream.XStream;
@@ -43,6 +39,14 @@ import forge.util.IgnoringXStream;
import forge.util.ItemPool;
public class ConquestDataIO {
public static boolean TEST_MODE = true;
private static ConquestData createTestData() {
ConquestData temp = new ConquestData("My Conquest", 0,
ConquestPlane.Alara,
ConquestPlane.Alara.getCardPool().getCard("Rafiq of the Many"));
return temp;
}
static {
//ensure save directory exists if this class is used
FileUtil.ensureDirectoryExists(ForgeConstants.CONQUEST_SAVE_DIR);
@@ -59,6 +63,10 @@ public class ConquestDataIO {
}
public static ConquestData loadData(final File xmlSaveFile) {
if (TEST_MODE) {
return createTestData();
}
try {
ConquestData data = null;
@@ -92,12 +100,11 @@ public class ConquestDataIO {
return data;
}
catch (final Exception ex) {
//BugReporter.reportException(ex, "Error loading Conquest Data");
throw new RuntimeException(ex);
}
}
private static void updateSaveFile(final ConquestData newData, final String input, String filename) throws ParserConfigurationException, SAXException, IOException, IllegalAccessException, NoSuchFieldException {
private static void updateSaveFile(final ConquestData newData, final String input, String filename) throws Exception {
//final DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
final InputSource is = new InputSource();
is.setCharacterStream(new StringReader(input));
@@ -126,12 +133,11 @@ public class ConquestDataIO {
// ConquestDataIO.saveUnpacked(f + ".xml", xStream, qd);
}
catch (final Exception ex) {
//BugReporter.reportException(ex, "Error saving Conquest Data.");
throw new RuntimeException(ex);
}
}
private static void savePacked(final String f, final XStream xStream, final ConquestData qd) throws IOException {
private static void savePacked(final String f, final XStream xStream, final ConquestData qd) throws Exception {
final BufferedOutputStream bout = new BufferedOutputStream(new FileOutputStream(f));
final GZIPOutputStream zout = new GZIPOutputStream(bout);
xStream.toXML(qd, zout);
@@ -140,7 +146,7 @@ public class ConquestDataIO {
}
@SuppressWarnings("unused") // used only for debug purposes
private static void saveUnpacked(final String f, final XStream xStream, final ConquestData qd) throws IOException {
private static void saveUnpacked(final String f, final XStream xStream, final ConquestData qd) throws Exception {
final BufferedOutputStream boutUnp = new BufferedOutputStream(new FileOutputStream(f));
xStream.toXML(qd, boutUnp);
boutUnp.flush();

View File

@@ -29,7 +29,16 @@ public class ConquestPreferences extends PreferencesStore<ConquestPreferences.CQ
*/
public static enum CQPref {
CURRENT_CONQUEST("DEFAULT"),
WINS_TO_UNLOCK_COMMANDER("10");
WINS_TO_UNLOCK_COMMANDER_2("5"),
WINS_TO_UNLOCK_COMMANDER_3("10"),
WINS_TO_UNLOCK_COMMANDER_4("20"),
WINS_TO_UNLOCK_PORTAL("25"),
PERCENT_NORMAL("25"),
PERCENT_COMMANDER("25"),
PERCENT_PLANECHASE("25"),
PERCENT_DOUBLE_VARIANT("25");
private final String strDefaultVal;