8 Commits

Author SHA1 Message Date
Celtic Minstrel
65ef12466d Use a few more conditional tag elements 2018-10-23 22:37:29 -04:00
Celtic Minstrel
ed7c3dbfbc Missed a couple weapon special definitions 2018-10-23 22:37:28 -04:00
Celtic Minstrel
bebab878e3 Support multiple super tags and even conditional super tags
Use this to conditionally import [unit] keys in [side] based on no_leader
2018-10-23 22:37:28 -04:00
Celtic Minstrel
fb30b594b6 Support [switch] and [if] in [tag]
Use this new feature to validate [effect] tags
2018-10-23 22:37:24 -04:00
Celtic Minstrel
9ab1777851 Enable nesting of [type] tags
Minor cleanup of GUI2 type definitions
Disallow stuff like border=top,all
2018-10-23 22:37:18 -04:00
Celtic Minstrel
34604fdff6 Get game config and schema to use some common types
This also fixes an invalid type issue in the GUI2 schema,
and allows types to be a direct alias for other types.
2018-10-23 22:36:47 -04:00
Celtic Minstrel
3365aef28a Move GUI2 schema into the schema directory 2018-10-23 22:36:46 -04:00
Celtic Minstrel
3a65a14bcb Implement validation of the core game config WML
Currently this is disabled by default
Use --validate command-line argument to enable

The following new features were added in the schema format:
* Union, intersection, and list types
* Keys can specify a union of known types on-the-fly
* Key and tag names can include wildcards (* and ?, glob-style)
* Tags support any_key=yes, which means unrecognized subtags will be ignored
* Tags and keys support deprecated=yes (unimplemented)
* Specify max=infinite instead of max=-1
2018-10-23 22:36:40 -04:00