mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-24 17:18:50 -05:00
5dda5762ba
subrepo: subdir: "ZAPDTR" merged: "a53a53ea4" upstream: origin: "https://github.com/HarbourMasters/ZAPDTR.git" branch: "master" commit: "a53a53ea4" git-subrepo: version: "0.4.1" origin: "???" commit: "???"
1.4 KiB
1.4 KiB
ZAPD XML specification
ZAPD XMLs use a restrictive subset of the XML standard: any ZAPD XML must be a valid XML (All elements starting with <tag>
ending appropriately with </tag>
, single "empty-element" tags with /
at the end, etc.).
Reminder that in
<a>
<b1>
<c/>
</b1>
<b2>
<d/>
</b2>
<e/>
</a>
<b1>
, <b2>
, <e/>
are children of <a>
, but <c/>
is not. <c/>
is a descendent of <a>
and a child of <b>
.
-
Every XML's outermost element start/end tag is a single
<Root>
. -
The children of a
<Root>
must be<File>
s. -
A
<File>
has resources as children. A resource is almost always single empty-element tag, and has one of the types<Texture>
<Background>
<Blob>
<DList>
<TextureAnimation>
<Scene>
<Room>
<AltHeader>
<Animation>
<PlayerAnimation>
<CurveAnimation>
<LegacyAnimation>
<Skeleton>
<LimbTable>
<Limb>
<Symbol>
<Collision>
<Scalar>
<Vector>
<Vtx>
<Mtx>
<Cutscene>
<Array>
<Path>
<PlayerAnimationData>
-
A
<File>
cannot descend from a<File>
. -
All resources must be children of a
<File>
. -
<Array>
is the only paired resource tag enclosing an element; the element must be a single resource tag, one of<Scalar>
<Vector>
<Vtx>