Modified:
/trunk/v2/resources/res/plugin/dor/data/baseCities.xml
/trunk/v2/resources/res/plugin/dor/data/colors.xml
/trunk/v2/resources/res/plugin/dor/images/units.png
/trunk/v2/src/com/customwars/client/Config.java
/trunk/v2/src/com/customwars/client/io/loading/ResourcesLoader.java
/trunk/v2/test/slick/RecolorTest.java
=======================================
--- /trunk/v2/resources/res/plugin/dor/data/baseCities.xml Mon Mar 14
07:18:14 2011
+++ /trunk/v2/resources/res/plugin/dor/data/baseCities.xml Mon Mar 21
06:59:56 2011
@@ -249,6 +249,11 @@
<int>1</int>
<int>127</int>
</moveCosts>
+
+ <heals>
+ <armyBranch>AIR</armyBranch>
+ </heals>
+ <healRate>2</healRate>
<canBeCaptureBy>
<unitID>infantry</unitID>
<unitID>mech</unitID>
@@ -268,6 +273,11 @@
<int>1</int>
<int>1</int>
</moveCosts>
+
+ <heals>
+ <armyBranch>NAVAL</armyBranch>
+ </heals>
+ <healRate>2</healRate>
<canBeCaptureBy>
<unitID>infantry</unitID>
<unitID>mech</unitID>
=======================================
--- /trunk/v2/resources/res/plugin/dor/data/colors.xml Mon Dec 28 04:43:32
2009
+++ /trunk/v2/resources/res/plugin/dor/data/colors.xml Mon Mar 21 06:59:56
2011
@@ -1,78 +1,94 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE colorFilters [<!ELEMENT
colorFilters (colorFilter)+><!ELEMENT colorFilter (name, baseColor,
originalColors, replacementColor*)><!ELEMENT name (#PCDATA)><!ELEMENT
baseColor (#PCDATA)><!ELEMENT originalColors (#PCDATA)><!ELEMENT
replacementColor (name , replacementColors)><!ELEMENT replacementColors
(#PCDATA)>]><!-- Colors that can be used instead of their RGB values:
WHITE,LIGHT_GRAY,GRAY,DARK_GRAY,BLACK,RED,PINK,ORANGE,YELLOW,GREEN,MAGENTA,CYAN,BLUE
--->
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE colorFilters [
+ <!ELEMENT colorFilters (colorFilter)+>
+ <!ELEMENT colorFilter (name, baseColor, originalColors,
replacementColor*)>
+ <!ELEMENT name (#PCDATA)>
+ <!ELEMENT baseColor (#PCDATA)>
+ <!ELEMENT originalColors (#PCDATA)>
+ <!ELEMENT replacementColor (name , replacementColors)>
+ <!ELEMENT replacementColors (#PCDATA)>
+ ]>
<colorFilters>
- <colorFilter>
- <name>unit</name>
- <baseColor>RED</baseColor>
- <originalColors>502820, 803020, A83020, C04838, D06048, F09060,
E8B898</originalColors>
- <replacementColor>
- <name>BLUE</name>
- <replacementColors>181840, 2820C0, 0068E8, 0098F0, 40B8F0,
68E0F0, B8F0F8</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>GREEN</name>
- <replacementColors>182818, 088048, 08A830, 10D028, 28F028,
88F880, C8F8C0</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>YELLOW</name>
- <replacementColors>302018, B85060, D08000, E0A810, F0D028,
F8F040, F8F8A8</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>GRAY</name>
- <replacementColors>281828, 502860, 605080, 707098, 989888,
C0C0A8, D8E0D8</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>ORANGE</name>
- <replacementColors>2B2117, 702B00, 702B00, CC6C00, FF7F00,
FFBA60, FFD4AD</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>BLACK</name>
- <replacementColors>2F2838, 3412A5, 6720D9, 8642F4, A95FFE,
E58AFC, EEABFE</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>CYAN</name>
- <replacementColors>502820, 267374, 388d8e, 287d7e, 685860,
40aaab, 47b7b8</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>PINK</name>
- <replacementColors>502820, 791de1, 8a5bbf, 8021ea, 9548ed,
af69fd, b182e5</replacementColors>
- </replacementColor>
- </colorFilter>
- <colorFilter>
- <name>city</name>
- <baseColor>RED</baseColor>
- <originalColors>605058, C904058, a04068, e06068, f8b078,
e8d090</originalColors>
- <replacementColor>
- <name>BLUE</name>
- <replacementColors>484880, 6048d8, 6048d8, 6070f8, 78c8f0,
98e0f8</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>GREEN</name>
- <replacementColors>386028, 50a050, 50a050, 40c080, 78e078,
b8f880</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>YELLOW</name>
- <replacementColors>605040, a08040, a08040, d09838, F8c028,
f8e048</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>ORANGE</name>
- <replacementColors>605058, 904058, a04068, ff6a00, f8b078,
e8d090</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>CYAN</name>
- <replacementColors>349496, 3EA9980, 7CC7B3, 9ED4C5, C9F7EB,
D1EBE2</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>PINK</name>
- <replacementColors>29107A, 3418A0, 785EC0, A95FFE, E58AFC,
EEABFE</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>GRAY</name>
- <replacementColors>706870, 606060, 908890, c0c0c0, d0d0c8,
f0f0e0</replacementColors>
- </replacementColor>
- <replacementColor>
- <name>BLACK</name>
- <replacementColors>3d3d3d, 3c3c3c, 3f3f3f, 5a5a5a, 888888,
979797</replacementColors>
- </replacementColor>
- </colorFilter>
+ <colorFilter>
+ <name>unit</name>
+ <baseColor>RED</baseColor>
+ <originalColors>502820, 803020, A83020, C04838, D06048, F09060,
E8B898</originalColors>
+ <replacementColor>
+ <name>BLUE</name>
+ <replacementColors>000091, 2820C0, 0068E8, 0098F0, 40B8F0, 68E0F0,
B8F0F8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>GREEN</name>
+ <replacementColors>182818, 088048, 08A830, 10D028, 28F028, 88F880,
C8F8C0</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>YELLOW</name>
+ <replacementColors>302018, B85060, D08000, E0A810, F0D028, F8F040,
F8F8A8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>GRAY</name>
+ <replacementColors>281828, 502860, 605080, 707098, a9a998, c1c1ad,
D8E0D8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>ORANGE</name>
+ <replacementColors>2B2117, 702B00, 702B00, CC6C00, FF7F00, FFBA60,
FFD4AD</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>BLACK</name>
+ <replacementColors>116566, 312b2c, 58544f, 74726b, 7c7b7b, 989898,
eaeae8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>CYAN</name>
+ <replacementColors>502820, 047776, 1fa3a2, 77f3f5, 7cfdff, a6fffe,
b3f7f3</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>PINK</name>
+ <replacementColors>502820, 803020, A83020, ff7c92, ff7c92, ffaebb,
ffb9c5</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>MAGENTA</name>
+ <replacementColors>502820, b7187d, 70084a, d23197, fd5fc3, fb77cb,
ff9edc</replacementColors>
+ </replacementColor>
+ </colorFilter>
+ <colorFilter>
+ <name>city</name>
+ <baseColor>RED</baseColor>
+ <originalColors>605058, C90405, a04068, e06068, f8b078,
e8d090</originalColors>
+ <replacementColor>
+ <name>BLUE</name>
+ <replacementColors>000077, 6048d8, 6048d8, 6070f8, 78c8f0,
98e0f8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>GREEN</name>
+ <replacementColors>008710, 50a050, 50a050, 40c080, 78e078,
b8f880</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>YELLOW</name>
+ <replacementColors>a2a000, a08040, a08040, d09838, F8c028,
f8e048</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>ORANGE</name>
+ <replacementColors>ac7c09, 904058, a04068, ff6a00, f8b078,
e8d090</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>CYAN</name>
+ <replacementColors>506060, 04c9bd, 409fa0, 60d2e0, 78f8de,
90e7e8</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>PINK</name>
+ <replacementColors>792634, 606060, ba8780, f4bec7, ffced6,
ffdde3</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>GRAY</name>
+ <replacementColors>646464, 606060, 908890, b5b1b1, c4c4be,
e0e0d2</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>BLACK</name>
+ <replacementColors>3d3d3d, 3c3c3c, 3f3f3f, 5a5a5a, 888888,
979797</replacementColors>
+ </replacementColor>
+ <replacementColor>
+ <name>MAGENTA</name>
+ <replacementColors>60505f, c904c2, a04096, e060d5, f8a9f5,
f4a0f1</replacementColors>
+ </replacementColor>
+ </colorFilter>
</colorFilters>
=======================================
--- /trunk/v2/resources/res/plugin/dor/images/units.png Mon Dec 28 04:43:32
2009
+++ /trunk/v2/resources/res/plugin/dor/images/units.png Mon Mar 21 06:59:56
2011
Binary file, no diff available.
=======================================
--- /trunk/v2/src/com/customwars/client/Config.java Tue Apr 27 15:47:17 2010
+++ /trunk/v2/src/com/customwars/client/Config.java Mon Mar 21 06:59:56 2011
@@ -25,7 +25,7 @@
public class Config {
private static final Logger logger = Logger.getLogger(Config.class);
private static final String HOME_DIR = System.getProperty("user.home")
+ "/.cw2";
- private static final String MAPS_DIR = HOME_DIR + "/maps";
+ private static final String MAPS_DIR = HOME_DIR + "/maps/";
private static final String GAME_PROPERTIES_FILE = "game.properties";
private static final String LOG_PROPERTIES_FILE = "log4j.properties";
=======================================
--- /trunk/v2/src/com/customwars/client/io/loading/ResourcesLoader.java Tue
Dec 8 14:33:16 2009
+++ /trunk/v2/src/com/customwars/client/io/loading/ResourcesLoader.java Mon
Mar 21 06:59:56 2011
@@ -19,6 +19,8 @@
/**
* Load all the resources,
* the paths where the resources can be loaded from are set at runtime
+ *
+ * @see #putLoadPath(String, String)
*/
public class ResourcesLoader {
private static final Logger logger =
Logger.getLogger(ResourcesLoader.class);
@@ -51,12 +53,15 @@
* @param path The loading path
*/
public void putLoadPath(String pathName, String path) {
- if (!paths.containsKey(pathName)) {
- paths.put(pathName, path);
- } else {
+ if (!path.endsWith("/")) {
+ throw new IllegalArgumentException("'" + path + "' path should end
with a '/'");
+ }
+
+ if (paths.containsKey(pathName)) {
logger.warn("overwriting loading path " + pathName + " from " +
paths.get(pathName) + " to " + path);
- paths.put(pathName, path);
- }
+ }
+
+ paths.put(pathName, path);
}
public void loadAll() {
@@ -156,7 +161,7 @@
if (paths.containsKey(key)) {
return paths.get(key);
} else {
- throw new IllegalArgumentException("key could not be found in
paths " + paths);
+ throw new IllegalArgumentException("key " + key + " could not be
found in paths " + paths);
}
}
=======================================
--- /trunk/v2/test/slick/RecolorTest.java Fri Nov 20 13:50:33 2009
+++ /trunk/v2/test/slick/RecolorTest.java Mon Mar 21 06:59:56 2011
@@ -25,9 +25,9 @@
* converting to slick images
*/
public class RecolorTest extends BasicGame {
- private static final String IMAGE_FILTER_FILE
= "res/plugin/default/data/colors.xml";
- private static final String UNIT_IMG_PATH
= "res/plugin/default/images/units_RED.png";
- private static final String CITY_IMG_PATH
= "res/plugin/default/images/cities_RED.png";
+ private static final String IMAGE_FILTER_FILE
= "res/plugin/dor/data/colors.xml";
+ private static final String UNIT_IMG_PATH
= "res/plugin/dor/images/units.png";
+ private static final String CITY_IMG_PATH
= "res/plugin/dor/images/cities.png";
// Images
private ImageLib imageLib;
@@ -39,7 +39,6 @@
// Recoloring
private static List<Color> colors;
private int currentColorPos;
- private boolean darker;
public RecolorTest() {
super("recolor test");
@@ -88,13 +87,14 @@
}
public void render(GameContainer container, Graphics g) throws
SlickException {
+ g.setColor(org.newdawn.slick.Color.green.darker());
+ g.fillRect(0, 0, container.getWidth(), container.getHeight());
g.setColor(org.newdawn.slick.Color.white);
g.drawString("LOADING COMPLETED scroll to see what has been loaded",
100, 50);
Color currentColor = colors.get(currentColorPos);
g.setColor(new org.newdawn.slick.Color(currentColor.getRGB()));
- String darkTxt = darker ? "Darker " : "";
- g.drawString(darkTxt + ColorUtil.toString(currentColor), 50, 70);
+ g.drawString(ColorUtil.toString(currentColor), 50, 70);
if (currentUnitImg == null) {
currentUnitImgStrip.getSubImage(0, 1).draw(100, 100);
@@ -125,15 +125,9 @@
private void recolor() {
Color color = colors.get(currentColorPos);
- this.darker = !darker;
String colorName = ColorUtil.toString(color);
- if (darker) {
- currentUnitImg = imageLib.getSlickImg("UNIT_" + colorName
+ "_darker");
- currentCityImg = imageLib.getSlickImg("city_" + colorName
+ "_darker");
- } else {
- currentUnitImg = imageLib.getSlickImg("UNIT_" + colorName);
- currentCityImg = imageLib.getSlickImg("city_" + colorName);
- }
+ currentUnitImg = imageLib.getSlickImg("UNIT_" + colorName);
+ currentCityImg = imageLib.getSlickImg("city_" + colorName);
}
public static void main(String[] args) throws SlickException {