Resource Definition Loader

* Implemented resource definition loader including tests

* Added resource definition xml file and style definition

* Made a small style change to i18n loader
This commit is contained in:
Tim Rosser 2012-01-10 22:38:29 +11:00
parent 3637b6e1d1
commit f4a16aa431
20 changed files with 2275 additions and 3 deletions
legacyworlds-server-main/data

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<lw-resources xmlns="http://www.deepclone.com/lw/b6/m2/resources"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.deepclone.com/lw/b6/m2/resources
resources.xsd">
<basic-resource name="money" description="moneyDescription"
weight="0" /> <!-- This could have a category="" as well -->
<natural-resource name="titanium" description="titaniumDescription"
category="minerals" weight="1" presence-probability="0.8">
<quantity average="5000" deviation="1500" />
<difficulty average="0.1" deviation="0.05" />
<recovery average="0.4" deviation="0.05" />
</natural-resource>
</lw-resources>

View file

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.deepclone.com/lw/b6/m2/resources"
targetNamespace="http://www.deepclone.com/lw/b6/m2/resources"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="lw-resources">
<xs:complexType>
<xs:sequence>
<xs:element name="basic-resource" type="basic-resource"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="natural-resource" type="natural-resource"
minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="basic-resource">
<xs:attribute name="name" use="required" type="xs:token" />
<xs:attribute name="description" use="required" type="xs:token" />
<xs:attribute name="category" use="optional" type="xs:token" />
<xs:attribute name="weight" use="required" type="xs:integer" />
</xs:complexType>
<xs:complexType name="natural-resource">
<xs:complexContent>
<xs:extension base="basic-resource">
<xs:sequence>
<xs:element name="quantity" type="resource-parameter" />
<xs:element name="difficulty" type="resource-parameter" />
<xs:element name="recovery" type="resource-parameter" />
</xs:sequence>
<xs:attribute name="presence-probability" use="required"
type="xs:decimal" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="resource-parameter">
<xs:attribute name="average" use="required" type="xs:decimal" />
<xs:attribute name="deviation" use="required" type="xs:decimal" />
</xs:complexType>
</xs:schema>