forked from 0ad/0ad
Add RNC to RNG conversion script that uses trang. Fixes #245.
Also fix the material.rnc. This was SVN commit r16734.
This commit is contained in:
parent
a18fbd12ec
commit
7cac7cd65e
@ -1,78 +1,78 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Textures" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<zeroOrMore>
|
||||
<element name="File">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="pattern"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="format">
|
||||
<choice>
|
||||
<value>dxt1</value>
|
||||
<value>dxt3</value>
|
||||
<value>dxt5</value>
|
||||
<value>rgba</value>
|
||||
<value>alpha</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="mipmap">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="normal">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="alpha">
|
||||
<choice>
|
||||
<value>none</value>
|
||||
<value>player</value>
|
||||
<value>transparency</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="filter">
|
||||
<choice>
|
||||
<value>box</value>
|
||||
<value>triangle</value>
|
||||
<value>kaiser</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserwidth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiseralpha">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserstretch">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Textures" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<zeroOrMore>
|
||||
<element name="File">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="pattern"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="format">
|
||||
<choice>
|
||||
<value>dxt1</value>
|
||||
<value>dxt3</value>
|
||||
<value>dxt5</value>
|
||||
<value>rgba</value>
|
||||
<value>alpha</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="mipmap">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="normal">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="alpha">
|
||||
<choice>
|
||||
<value>none</value>
|
||||
<value>player</value>
|
||||
<value>transparency</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="filter">
|
||||
<choice>
|
||||
<value>box</value>
|
||||
<value>triangle</value>
|
||||
<value>kaiser</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserwidth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiseralpha">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserstretch">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
|
@ -1,135 +1,135 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<define name="flag">
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<a:documentation/>
|
||||
<!-- Types # -->
|
||||
<a:documentation/>
|
||||
<choice>
|
||||
<value>0</value>
|
||||
<value>1</value>
|
||||
</choice>
|
||||
</define>
|
||||
<start>
|
||||
<ref name="SoundGroup"/>
|
||||
</start>
|
||||
<define name="SoundGroup">
|
||||
<element name="SoundGroup">
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="Gain">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Looping">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Omnipresent">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="HeardBy">
|
||||
<value>owner</value>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Distanceless">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Pitch">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Priority">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandOrder">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandGain">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="GainUpper">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="GainLower">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandPitch">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="PitchUpper">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="PitchLower">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeGain">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeInner">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeOuter">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Replacement">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Threshold">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Decay">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<oneOrMore>
|
||||
<element name="Sound">
|
||||
<text/>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
<element name="Path">
|
||||
<text/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</define>
|
||||
</grammar>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<define name="flag">
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<a:documentation/>
|
||||
<!-- Types # -->
|
||||
<a:documentation/>
|
||||
<choice>
|
||||
<value>0</value>
|
||||
<value>1</value>
|
||||
</choice>
|
||||
</define>
|
||||
<start>
|
||||
<ref name="SoundGroup"/>
|
||||
</start>
|
||||
<define name="SoundGroup">
|
||||
<element name="SoundGroup">
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="Gain">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Looping">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Omnipresent">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="HeardBy">
|
||||
<value>owner</value>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Distanceless">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Pitch">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Priority">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandOrder">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandGain">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="GainUpper">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="GainLower">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="RandPitch">
|
||||
<ref name="flag"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="PitchUpper">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="PitchLower">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeGain">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeInner">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="ConeOuter">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Replacement">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Threshold">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Decay">
|
||||
<data type="float"/>
|
||||
</element>
|
||||
</optional>
|
||||
<oneOrMore>
|
||||
<element name="Sound">
|
||||
<text/>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
<element name="Path">
|
||||
<text/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</define>
|
||||
</grammar>
|
||||
|
@ -1,183 +1,183 @@
|
||||
<?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">
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<attribute name="version">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<interleave>
|
||||
<zeroOrMore>
|
||||
<element name="group">
|
||||
<zeroOrMore>
|
||||
<element name="variant">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="name"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="frequency">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="mesh">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="textures">
|
||||
<zeroOrMore>
|
||||
<element name="texture">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="file"/>
|
||||
</optional>
|
||||
<attribute name="name"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="decal">
|
||||
<interleave>
|
||||
<attribute name="width">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<!-- X -->
|
||||
<attribute name="depth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<!-- Z -->
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="offsetx">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="offsetz">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="particles">
|
||||
<attribute name="file"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="color">
|
||||
<list>
|
||||
<group>
|
||||
<data type="nonNegativeInteger"/>
|
||||
<!-- R -->
|
||||
<data type="nonNegativeInteger"/>
|
||||
<!-- G -->
|
||||
<data type="nonNegativeInteger"/>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="animations">
|
||||
<zeroOrMore>
|
||||
<element name="animation">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<optional>
|
||||
<attribute name="file"/>
|
||||
</optional>
|
||||
<attribute name="speed">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<attribute name="event">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="load">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="sound">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="props">
|
||||
<zeroOrMore>
|
||||
<element name="prop">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="actor"/>
|
||||
</optional>
|
||||
<attribute name="attachpoint"/>
|
||||
<optional>
|
||||
<attribute name="minheight">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="maxheight">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="selectable">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<optional>
|
||||
<element name="castshadow">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="float">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="material">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
<?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">
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<attribute name="version">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<interleave>
|
||||
<zeroOrMore>
|
||||
<element name="group">
|
||||
<zeroOrMore>
|
||||
<element name="variant">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="name"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="frequency">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="mesh">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="textures">
|
||||
<zeroOrMore>
|
||||
<element name="texture">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="file"/>
|
||||
</optional>
|
||||
<attribute name="name"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="decal">
|
||||
<interleave>
|
||||
<attribute name="width">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<!-- X -->
|
||||
<attribute name="depth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<!-- Z -->
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="offsetx">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="offsetz">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="particles">
|
||||
<attribute name="file"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="color">
|
||||
<list>
|
||||
<group>
|
||||
<data type="nonNegativeInteger"/>
|
||||
<!-- R -->
|
||||
<data type="nonNegativeInteger"/>
|
||||
<!-- G -->
|
||||
<data type="nonNegativeInteger"/>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="animations">
|
||||
<zeroOrMore>
|
||||
<element name="animation">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<optional>
|
||||
<attribute name="file"/>
|
||||
</optional>
|
||||
<attribute name="speed">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<attribute name="event">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="load">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="sound">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="props">
|
||||
<zeroOrMore>
|
||||
<element name="prop">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="actor"/>
|
||||
</optional>
|
||||
<attribute name="attachpoint"/>
|
||||
<optional>
|
||||
<attribute name="minheight">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="maxheight">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="selectable">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<optional>
|
||||
<element name="castshadow">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="float">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="material">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
|
@ -31,7 +31,7 @@ element material {
|
||||
}* &
|
||||
element renderquery {
|
||||
attribute name { text }
|
||||
}*
|
||||
}* &
|
||||
element required_texture {
|
||||
attribute name { text }
|
||||
}*
|
||||
|
@ -1,95 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="material" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<zeroOrMore>
|
||||
<element name="alternative">
|
||||
<interleave>
|
||||
<attribute name="material"/>
|
||||
<optional>
|
||||
<attribute name="quality">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="if"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<optional>
|
||||
<element name="alpha_blending">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="shader">
|
||||
<attribute name="effect"/>
|
||||
</element>
|
||||
<zeroOrMore>
|
||||
<element name="define">
|
||||
<attribute name="name"/>
|
||||
<attribute name="value"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="conditional_define">
|
||||
<attribute name="name"/>
|
||||
<attribute name="value"/>
|
||||
<attribute name="type"/>
|
||||
<choice>
|
||||
<attribute name="conf"/>
|
||||
<group>
|
||||
<optional>
|
||||
<attribute name="min">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="max">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</group>
|
||||
</choice>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="uniform">
|
||||
<attribute name="name"/>
|
||||
<attribute name="value">
|
||||
<list>
|
||||
<!-- X Y Z W -->
|
||||
<data type="float"/>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
</list>
|
||||
</attribute>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="renderquery">
|
||||
<attribute name="name"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="required_texture">
|
||||
<attribute name="name"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="material" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<zeroOrMore>
|
||||
<element name="alternative">
|
||||
<interleave>
|
||||
<attribute name="material"/>
|
||||
<optional>
|
||||
<attribute name="quality">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="if"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<optional>
|
||||
<element name="alpha_blending">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="shader">
|
||||
<attribute name="effect"/>
|
||||
</element>
|
||||
<zeroOrMore>
|
||||
<element name="define">
|
||||
<attribute name="name"/>
|
||||
<attribute name="value"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="uniform">
|
||||
<attribute name="name"/>
|
||||
<attribute name="value">
|
||||
<list>
|
||||
<!-- X Y Z W -->
|
||||
<data type="float"/>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<data type="float"/>
|
||||
</optional>
|
||||
</list>
|
||||
</attribute>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="renderquery">
|
||||
<attribute name="name"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="required_texture">
|
||||
<attribute name="name"/>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
|
@ -1,106 +1,106 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="particles" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="texture">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="blend">
|
||||
<attribute name="mode">
|
||||
<choice>
|
||||
<value>add</value>
|
||||
<value>subtract</value>
|
||||
<value>over</value>
|
||||
<value>multiply</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="start_full">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="use_relative_velocity">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<zeroOrMore>
|
||||
<element name="constant">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="value">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="uniform">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="min">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="max">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="copy">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="from"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="expr">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="from"/>
|
||||
<attribute name="mul">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="max">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="force">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="x">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="y">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="z">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="particles" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="texture">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="blend">
|
||||
<attribute name="mode">
|
||||
<choice>
|
||||
<value>add</value>
|
||||
<value>subtract</value>
|
||||
<value>over</value>
|
||||
<value>multiply</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="start_full">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="use_relative_velocity">
|
||||
<!-- flag; true if present -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<zeroOrMore>
|
||||
<element name="constant">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="value">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="uniform">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="min">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="max">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="copy">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="from"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="expr">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="from"/>
|
||||
<attribute name="mul">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="max">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
<zeroOrMore>
|
||||
<element name="force">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="x">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="y">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="z">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
|
@ -1,52 +1,52 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Terrains" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<element name="Terrain">
|
||||
<interleave>
|
||||
<attribute name="groups"/>
|
||||
<optional>
|
||||
<!-- comma-separated list of groups -->
|
||||
<attribute name="mmap">
|
||||
<list>
|
||||
<group>
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
<!-- R -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
<!-- G -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- degrees -->
|
||||
<attribute name="size">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="movementclass"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Terrains" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<element name="Terrain">
|
||||
<interleave>
|
||||
<attribute name="groups"/>
|
||||
<optional>
|
||||
<!-- comma-separated list of groups -->
|
||||
<attribute name="mmap">
|
||||
<list>
|
||||
<group>
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
<!-- R -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
<!-- G -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- degrees -->
|
||||
<attribute name="size">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="movementclass"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</element>
|
||||
|
@ -1,75 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="terrain" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="textures">
|
||||
<zeroOrMore>
|
||||
<element name="texture">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="file"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="material">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="alphamap">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<zeroOrMore>
|
||||
<element name="props">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="groups"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- comma-separated list of groups -->
|
||||
<attribute name="mmap">
|
||||
<list>
|
||||
<group>
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- R -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- G -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- degrees -->
|
||||
<attribute name="size">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="movementclass"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="terrain" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="textures">
|
||||
<zeroOrMore>
|
||||
<element name="texture">
|
||||
<interleave>
|
||||
<attribute name="name"/>
|
||||
<attribute name="file"/>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="material">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="alphamap">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<zeroOrMore>
|
||||
<element name="props">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="groups"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- comma-separated list of groups -->
|
||||
<attribute name="mmap">
|
||||
<list>
|
||||
<group>
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- R -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- G -->
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</group>
|
||||
<!-- B -->
|
||||
</list>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- degrees -->
|
||||
<attribute name="size">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="movementclass"/>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</interleave>
|
||||
</element>
|
||||
|
@ -1,78 +1,78 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Textures" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<zeroOrMore>
|
||||
<element name="File">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="pattern"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="format">
|
||||
<choice>
|
||||
<value>dxt1</value>
|
||||
<value>dxt3</value>
|
||||
<value>dxt5</value>
|
||||
<value>rgba</value>
|
||||
<value>alpha</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="mipmap">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="normal">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="alpha">
|
||||
<choice>
|
||||
<value>none</value>
|
||||
<value>player</value>
|
||||
<value>transparency</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="filter">
|
||||
<choice>
|
||||
<value>box</value>
|
||||
<value>triangle</value>
|
||||
<value>kaiser</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserwidth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiseralpha">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserstretch">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Textures" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<zeroOrMore>
|
||||
<element name="File">
|
||||
<interleave>
|
||||
<optional>
|
||||
<attribute name="pattern"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="format">
|
||||
<choice>
|
||||
<value>dxt1</value>
|
||||
<value>dxt3</value>
|
||||
<value>dxt5</value>
|
||||
<value>rgba</value>
|
||||
<value>alpha</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="mipmap">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="normal">
|
||||
<choice>
|
||||
<value>true</value>
|
||||
<value>false</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="alpha">
|
||||
<choice>
|
||||
<value>none</value>
|
||||
<value>player</value>
|
||||
<value>transparency</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="filter">
|
||||
<choice>
|
||||
<value>box</value>
|
||||
<value>triangle</value>
|
||||
<value>kaiser</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserwidth">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiseralpha">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="kaiserstretch">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
|
@ -1,297 +1,297 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<start>
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<ref name="Scenario"/>
|
||||
</start>
|
||||
<define name="color_rgb">
|
||||
<a:documentation/>
|
||||
<!-- Defines # -->
|
||||
<a:documentation/>
|
||||
<attribute name="r">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="g">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="b">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="suncolor_rgb">
|
||||
<!-- RGB can be > 1 due to overbrightness -->
|
||||
<attribute name="r">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="g">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="b">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="pos_xyz">
|
||||
<attribute name="x">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="y">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="z">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="pos_xz">
|
||||
<attribute name="x">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="z">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="angle">
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<!-- TODO: bounds are not documented for many of these -->
|
||||
<define name="Scenario">
|
||||
<a:documentation/>
|
||||
<!-- Scenario # -->
|
||||
<a:documentation/>
|
||||
<element name="Scenario">
|
||||
<interleave>
|
||||
<attribute name="version">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<element name="Environment">
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="LightingModel">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<!-- Deprecated -->
|
||||
<element name="SkySet">
|
||||
<text/>
|
||||
</element>
|
||||
<element name="SunColor">
|
||||
<ref name="suncolor_rgb"/>
|
||||
</element>
|
||||
<element name="SunElevation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="SunRotation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="TerrainAmbientColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="UnitsAmbientColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Fog">
|
||||
<interleave>
|
||||
<element name="FogFactor">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- TODO: what is the max? -->
|
||||
</element>
|
||||
<element name="FogThickness">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- TODO: what is the max? -->
|
||||
</element>
|
||||
<element name="FogColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Water">
|
||||
<element name="WaterBody">
|
||||
<interleave>
|
||||
<element name="Type">
|
||||
<text/>
|
||||
</element>
|
||||
<!-- Not implemented -->
|
||||
<element name="Color">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="Height">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Shininess">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<!-- Deprecated -->
|
||||
<element name="Waviness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Murkiness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Tint">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="ReflectionTint">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="ReflectionTintStrength">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Postproc">
|
||||
<element name="Brightness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Contrast">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Saturation">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Bloom">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="PostEffect">
|
||||
<text/>
|
||||
</element>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Terrain">
|
||||
<optional>
|
||||
<attribute name="patches">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="texture"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="priority">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="height">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Script">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Camera">
|
||||
<!-- Camera can have weird float values -->
|
||||
<element name="Position">
|
||||
<ref name="pos_xyz"/>
|
||||
</element>
|
||||
<element name="Rotation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="Declination">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
</element>
|
||||
<element name="ScriptSettings">
|
||||
<text/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Entities">
|
||||
<zeroOrMore>
|
||||
<element name="Entity">
|
||||
<interleave>
|
||||
<attribute name="uid">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<element name="Template">
|
||||
<text/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Player">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Position">
|
||||
<ref name="pos_xz"/>
|
||||
</element>
|
||||
<element name="Orientation">
|
||||
<attribute name="y">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Obstruction">
|
||||
<attribute name="group">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<attribute name="group2">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Actor">
|
||||
<attribute name="seed">
|
||||
<data type="integer"/>
|
||||
</attribute>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Paths">
|
||||
<!-- Unused -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Triggers">
|
||||
<!-- Unused -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</define>
|
||||
</grammar>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<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">
|
||||
<start>
|
||||
<a:documentation/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<ref name="Scenario"/>
|
||||
</start>
|
||||
<define name="color_rgb">
|
||||
<a:documentation/>
|
||||
<!-- Defines # -->
|
||||
<a:documentation/>
|
||||
<attribute name="r">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="g">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="b">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">1</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="suncolor_rgb">
|
||||
<!-- RGB can be > 1 due to overbrightness -->
|
||||
<attribute name="r">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="g">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
<attribute name="b">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="pos_xyz">
|
||||
<attribute name="x">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="y">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
<attribute name="z">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="pos_xz">
|
||||
<attribute name="x">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="z">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<define name="angle">
|
||||
<attribute name="angle">
|
||||
<data type="float"/>
|
||||
</attribute>
|
||||
</define>
|
||||
<!-- TODO: bounds are not documented for many of these -->
|
||||
<define name="Scenario">
|
||||
<a:documentation/>
|
||||
<!-- Scenario # -->
|
||||
<a:documentation/>
|
||||
<element name="Scenario">
|
||||
<interleave>
|
||||
<attribute name="version">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<element name="Environment">
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="LightingModel">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<!-- Deprecated -->
|
||||
<element name="SkySet">
|
||||
<text/>
|
||||
</element>
|
||||
<element name="SunColor">
|
||||
<ref name="suncolor_rgb"/>
|
||||
</element>
|
||||
<element name="SunElevation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="SunRotation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="TerrainAmbientColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="UnitsAmbientColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Fog">
|
||||
<interleave>
|
||||
<element name="FogFactor">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- TODO: what is the max? -->
|
||||
</element>
|
||||
<element name="FogThickness">
|
||||
<data type="decimal">
|
||||
<param name="minInclusive">0</param>
|
||||
</data>
|
||||
<!-- TODO: what is the max? -->
|
||||
</element>
|
||||
<element name="FogColor">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Water">
|
||||
<element name="WaterBody">
|
||||
<interleave>
|
||||
<element name="Type">
|
||||
<text/>
|
||||
</element>
|
||||
<!-- Not implemented -->
|
||||
<element name="Color">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="Height">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Shininess">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<!-- Deprecated -->
|
||||
<element name="Waviness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Murkiness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Tint">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="ReflectionTint">
|
||||
<ref name="color_rgb"/>
|
||||
</element>
|
||||
<element name="ReflectionTintStrength">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Postproc">
|
||||
<element name="Brightness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Contrast">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Saturation">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="Bloom">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="PostEffect">
|
||||
<text/>
|
||||
</element>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Terrain">
|
||||
<optional>
|
||||
<attribute name="patches">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="texture"/>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="priority">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
<optional>
|
||||
<attribute name="height">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Script">
|
||||
<text/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Camera">
|
||||
<!-- Camera can have weird float values -->
|
||||
<element name="Position">
|
||||
<ref name="pos_xyz"/>
|
||||
</element>
|
||||
<element name="Rotation">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
<element name="Declination">
|
||||
<ref name="angle"/>
|
||||
</element>
|
||||
</element>
|
||||
<element name="ScriptSettings">
|
||||
<text/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Entities">
|
||||
<zeroOrMore>
|
||||
<element name="Entity">
|
||||
<interleave>
|
||||
<attribute name="uid">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<element name="Template">
|
||||
<text/>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Player">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</element>
|
||||
</optional>
|
||||
<element name="Position">
|
||||
<ref name="pos_xz"/>
|
||||
</element>
|
||||
<element name="Orientation">
|
||||
<attribute name="y">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</element>
|
||||
<optional>
|
||||
<element name="Obstruction">
|
||||
<attribute name="group">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<attribute name="group2">
|
||||
<data type="positiveInteger"/>
|
||||
</attribute>
|
||||
</optional>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Actor">
|
||||
<attribute name="seed">
|
||||
<data type="integer"/>
|
||||
</attribute>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Paths">
|
||||
<!-- Unused -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="Triggers">
|
||||
<!-- Unused -->
|
||||
<empty/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</define>
|
||||
</grammar>
|
||||
|
@ -1,81 +1,81 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Pathfinder" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="MaxSameTurnMoves">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</element>
|
||||
<element name="PassabilityClasses">
|
||||
<oneOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="MinWaterDepth">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- TODO: fixed type -->
|
||||
<element name="MaxWaterDepth">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MaxTerrainSlope">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MinShoreDistance">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MaxShoreDistance">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
</element>
|
||||
<element name="MovementClasses">
|
||||
<oneOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<attribute name="Speed">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="Cost">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<element name="UnitClasses">
|
||||
<zeroOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<attribute name="Speed">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="Cost">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="Pathfinder" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="MaxSameTurnMoves">
|
||||
<data type="nonNegativeInteger"/>
|
||||
</element>
|
||||
<element name="PassabilityClasses">
|
||||
<oneOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<optional>
|
||||
<element name="MinWaterDepth">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<!-- TODO: fixed type -->
|
||||
<element name="MaxWaterDepth">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MaxTerrainSlope">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MinShoreDistance">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
<optional>
|
||||
<element name="MaxShoreDistance">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
</element>
|
||||
<element name="MovementClasses">
|
||||
<oneOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<attribute name="Speed">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="Cost">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<optional>
|
||||
<element name="UnitClasses">
|
||||
<zeroOrMore>
|
||||
<element>
|
||||
<anyName/>
|
||||
<interleave>
|
||||
<attribute name="Speed">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
<attribute name="Cost">
|
||||
<data type="decimal"/>
|
||||
</attribute>
|
||||
</interleave>
|
||||
</element>
|
||||
</zeroOrMore>
|
||||
</element>
|
||||
</optional>
|
||||
</interleave>
|
||||
</element>
|
||||
</oneOrMore>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
|
@ -1,23 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="TerritoryManager" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="ImpassableCost">
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
</element>
|
||||
<element name="BorderThickness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="BorderSeparation">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<element name="TerritoryManager" 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/>
|
||||
<!--
|
||||
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
|
||||
-->
|
||||
<a:documentation/>
|
||||
<interleave>
|
||||
<element name="ImpassableCost">
|
||||
<data type="integer">
|
||||
<param name="minInclusive">0</param>
|
||||
<param name="maxInclusive">255</param>
|
||||
</data>
|
||||
</element>
|
||||
<element name="BorderThickness">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
<element name="BorderSeparation">
|
||||
<data type="decimal"/>
|
||||
</element>
|
||||
</interleave>
|
||||
</element>
|
||||
|
8
source/tools/xmlvalidator/generate_rngs.sh
Executable file
8
source/tools/xmlvalidator/generate_rngs.sh
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
VFSROOT=${1:-"../../../binaries/data/mods"}
|
||||
|
||||
for schema in $(find "$VFSROOT" -name '*.rnc')
|
||||
do
|
||||
trang "$schema" "${schema/.rnc/.rng}"
|
||||
done
|
Loading…
Reference in New Issue
Block a user