summaryrefslogtreecommitdiffstats
path: root/levels/level.dtd
blob: 6b757f910d518cc5042c5e5748c6600a3ffe0634 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!ELEMENT level (info, rooms, textures)>

<!ELEMENT info (name, desc, start)>
<!ELEMENT rooms (room)*>
<!ELEMENT textures (texture)*>

<!ELEMENT name (#PCDATA)>
<!ELEMENT desc (#PCDATA)>
<!ELEMENT start EMPTY>
<!ATTLIST start
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  z CDATA #REQUIRED
>

<!ELEMENT room (triangle)*>

<!ELEMENT triangle (vertex, normal?, texcoords?, vertex, normal?, texcoords?, vertex, normal?, texcoords?)>
<!ATTLIST triangle
  type    (wall|floor) #IMPLIED
  visible (true|false) "true"
  texture IDREF        #IMPLIED
>

<!ELEMENT texture EMPTY>
<!ATTLIST texture
  id   ID    #REQUIRED
  name CDATA #REQUIRED
>

<!ELEMENT vertex EMPTY>
<!ATTLIST vertex
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  z CDATA #REQUIRED
>

<!ELEMENT normal EMPTY>
<!ATTLIST normal
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  z CDATA #REQUIRED
>

<!ELEMENT texcoords EMPTY>
<!ATTLIST texcoords
  s CDATA #REQUIRED
  t CDATA #IMPLIED
  r CDATA #IMPLIED
  q CDATA #IMPLIED
>