Changeset View
Changeset View
Standalone View
Standalone View
binaries/data/mods/public/art/actors/actor.rng
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||||
<element name="actor" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> | <grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> | ||||
<a:documentation/> | <a:documentation/> | ||||
<!-- | <!-- | ||||
NOTE: To modify this Relax NG grammar, edit the Relax NG Compact (.rnc) file | NOTE: To modify this Relax NG grammar, edit the Relax NG Compact (.rnc) file | ||||
and use a converter tool like trang to generate the Relax NG XML (.rng) file | and use a converter tool like trang to generate the Relax NG XML (.rng) file | ||||
--> | --> | ||||
<a:documentation/> | <a:documentation/> | ||||
<define name="actor"> | |||||
<element name="actor" > | |||||
<attribute name="version"> | <attribute name="version"> | ||||
<data type="positiveInteger"/> | <data type="positiveInteger"/> | ||||
</attribute> | </attribute> | ||||
<optional> | |||||
<attribute name="to"> | |||||
<data type="nonNegativeInteger"> | |||||
<param name="maxInclusive">255</param> | |||||
<param name="minInclusive">0</param> | |||||
</data> | |||||
</attribute> | |||||
</optional> | |||||
<interleave> | <interleave> | ||||
<zeroOrMore> | <zeroOrMore> | ||||
<element name="group"> | <element name="group"> | ||||
<zeroOrMore> | <zeroOrMore> | ||||
<element name="variant"> | <element name="variant"> | ||||
<interleave> | <interleave> | ||||
<optional> | <optional> | ||||
<attribute name="name"/> | <attribute name="name"/> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="file"/> | <attribute name="file"/> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="frequency"> | <attribute name="frequency"> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="mesh"> | <element name="mesh"> | ||||
<text/> | <text/> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="textures"> | <element name="textures"> | ||||
<zeroOrMore> | <zeroOrMore> | ||||
<element name="texture"> | <element name="texture"> | ||||
<interleave> | <interleave> | ||||
<optional> | <optional> | ||||
<attribute name="file"/> | <attribute name="file"/> | ||||
</optional> | </optional> | ||||
<attribute name="name"/> | <attribute name="name"/> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</zeroOrMore> | </zeroOrMore> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="decal"> | <element name="decal"> | ||||
<interleave> | <interleave> | ||||
<attribute name="width"> | <attribute name="width"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
<!-- X --> | <!-- X --> | ||||
<attribute name="depth"> | <attribute name="depth"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
<!-- Z --> | <!-- Z --> | ||||
<attribute name="angle"> | <attribute name="angle"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
<attribute name="offsetx"> | <attribute name="offsetx"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
<attribute name="offsetz"> | <attribute name="offsetz"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="particles"> | <element name="particles"> | ||||
<attribute name="file"/> | <attribute name="file"/> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="color"> | <element name="color"> | ||||
<list> | <list> | ||||
<group> | <group> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
<!-- R --> | <!-- R --> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
<!-- G --> | <!-- G --> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
</group> | </group> | ||||
<!-- B --> | <!-- B --> | ||||
</list> | </list> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="animations"> | <element name="animations"> | ||||
<zeroOrMore> | <zeroOrMore> | ||||
<element name="animation"> | <element name="animation"> | ||||
<interleave> | <interleave> | ||||
<attribute name="name"/> | <attribute name="name"/> | ||||
<optional> | <optional> | ||||
<attribute name="id"/> | <attribute name="id"/> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="frequency"> | <attribute name="frequency"> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="file"/> | <attribute name="file"/> | ||||
</optional> | </optional> | ||||
<attribute name="speed"> | <attribute name="speed"> | ||||
<data type="nonNegativeInteger"/> | <data type="nonNegativeInteger"/> | ||||
</attribute> | </attribute> | ||||
<optional> | <optional> | ||||
<attribute name="event"> | <attribute name="event"> | ||||
<data type="decimal"> | <data type="decimal"> | ||||
<param name="minInclusive">0</param> | <param name="minInclusive">0</param> | ||||
<param name="maxInclusive">1</param> | <param name="maxInclusive">1</param> | ||||
</data> | </data> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="load"> | <attribute name="load"> | ||||
<data type="decimal"> | <data type="decimal"> | ||||
<param name="minInclusive">0</param> | <param name="minInclusive">0</param> | ||||
<param name="maxInclusive">1</param> | <param name="maxInclusive">1</param> | ||||
</data> | </data> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="sound"> | <attribute name="sound"> | ||||
<data type="decimal"> | <data type="decimal"> | ||||
<param name="minInclusive">0</param> | <param name="minInclusive">0</param> | ||||
<param name="maxInclusive">1</param> | <param name="maxInclusive">1</param> | ||||
</data> | </data> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</zeroOrMore> | </zeroOrMore> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="props"> | <element name="props"> | ||||
<zeroOrMore> | <zeroOrMore> | ||||
<element name="prop"> | <element name="prop"> | ||||
<interleave> | <interleave> | ||||
<optional> | <optional> | ||||
<attribute name="actor"/> | <attribute name="actor"/> | ||||
</optional> | </optional> | ||||
<attribute name="attachpoint"/> | <attribute name="attachpoint"/> | ||||
<optional> | <optional> | ||||
<attribute name="minheight"> | <attribute name="minheight"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="maxheight"> | <attribute name="maxheight"> | ||||
<data type="float"/> | <data type="float"/> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<attribute name="selectable"> | <attribute name="selectable"> | ||||
<choice> | <choice> | ||||
<value>true</value> | <value>true</value> | ||||
<value>false</value> | <value>false</value> | ||||
</choice> | </choice> | ||||
</attribute> | </attribute> | ||||
</optional> | </optional> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</zeroOrMore> | </zeroOrMore> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</zeroOrMore> | </zeroOrMore> | ||||
</element> | </element> | ||||
</zeroOrMore> | </zeroOrMore> | ||||
<optional> | <optional> | ||||
<element name="castshadow"> | <element name="castshadow"> | ||||
<!-- flag; true if present --> | <!-- flag; true if present --> | ||||
<empty/> | <empty/> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="float"> | <element name="float"> | ||||
<!-- flag; true if present --> | <!-- flag; true if present --> | ||||
<empty/> | <empty/> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
<optional> | <optional> | ||||
<element name="material"> | <element name="material"> | ||||
<text/> | <text/> | ||||
</element> | </element> | ||||
</optional> | </optional> | ||||
</interleave> | </interleave> | ||||
</element> | </element> | ||||
</define> | |||||
<start> | |||||
<choice> | |||||
<ref name="actor"/> | |||||
<element name="lods"> | |||||
<oneOrMore> | |||||
<ref name="actor"/> | |||||
</oneOrMore> | |||||
</element> | |||||
</choice> | |||||
</start> | |||||
</grammar> |
Wildfire Games · Phabricator