Require spot orientations to be specified by direction string rather than
integer value. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2254 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// $Id: ObjectTileSetRuleSet.java,v 1.7 2003/02/04 02:59:47 mdb Exp $
|
// $Id: ObjectTileSetRuleSet.java,v 1.8 2003/02/11 06:18:59 mdb Exp $
|
||||||
|
|
||||||
package com.threerings.media.tile.tools.xml;
|
package com.threerings.media.tile.tools.xml;
|
||||||
|
|
||||||
@@ -11,6 +11,7 @@ import org.apache.commons.digester.Digester;
|
|||||||
|
|
||||||
import com.samskivert.util.StringUtil;
|
import com.samskivert.util.StringUtil;
|
||||||
import com.samskivert.xml.CallMethodSpecialRule;
|
import com.samskivert.xml.CallMethodSpecialRule;
|
||||||
|
import com.threerings.util.DirectionUtil;
|
||||||
|
|
||||||
import com.threerings.media.tile.TileSet;
|
import com.threerings.media.tile.TileSet;
|
||||||
import com.threerings.media.tile.ObjectTileSet;
|
import com.threerings.media.tile.ObjectTileSet;
|
||||||
@@ -133,8 +134,20 @@ public class ObjectTileSetRuleSet extends SwissArmyTileSetRuleSet
|
|||||||
new CallMethodSpecialRule(digester) {
|
new CallMethodSpecialRule(digester) {
|
||||||
public void parseAndSet (String bodyText, Object target)
|
public void parseAndSet (String bodyText, Object target)
|
||||||
{
|
{
|
||||||
byte[] sorients = StringUtil.parseByteArray(bodyText);
|
ObjectTileSet set = (ObjectTileSet)target;
|
||||||
((ObjectTileSet)target).setSpotOrients(sorients);
|
String[] ostrs = StringUtil.parseStringArray(bodyText);
|
||||||
|
byte[] sorients = new byte[ostrs.length];
|
||||||
|
for (int ii = 0; ii < sorients.length; ii++) {
|
||||||
|
sorients[ii] = (byte)
|
||||||
|
DirectionUtil.fromShortString(ostrs[ii]);
|
||||||
|
if (sorients[ii] == DirectionUtil.NONE) {
|
||||||
|
System.err.println("Invalid spot orientation " +
|
||||||
|
"[set=" + set.getName() +
|
||||||
|
", idx=" + ii +
|
||||||
|
", orient=" + ostrs[ii] + "].");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
set.setSpotOrients(sorients);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user