libzoom: Added gates to level loader;

zoom: Added gate to level; some Makefile.am changes
This commit is contained in:
neoraider 2007-06-12 17:19:01 +00:00
parent ccd09c59d4
commit 8c91dab105
11 changed files with 1850 additions and 1161 deletions

View file

@ -1,7 +1,8 @@
<!ELEMENT level (info, rooms, textures)>
<!ELEMENT level (info, rooms, gates, textures)>
<!ELEMENT info (name, desc, start)>
<!ELEMENT rooms (room)*>
<!ELEMENT gates (gate)*>
<!ELEMENT textures (texture)*>
<!ELEMENT name (#PCDATA)>
@ -14,10 +15,18 @@
>
<!ELEMENT room (triangle)*>
<!ATTLIST room
id ID #REQUIRED
>
<!ELEMENT gate (triangle)*>
<!ATTLIST gate
room1 IDREF #REQUIRED
room2 IDREF #REQUIRED
>
<!ELEMENT triangle (vertex, normal?, texcoords?, vertex, normal?, texcoords?, vertex, normal?, texcoords?)>
<!ATTLIST triangle
type (wall|floor) #IMPLIED
visible (true|false) "true"
texture IDREF #IMPLIED
>

Binary file not shown.

392
levels/level.xml Normal file
View file

@ -0,0 +1,392 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE level PUBLIC "-//libzoom//DTD level 0.1//EN" "level.dtd">
<level>
<info>
<name>Test Level</name>
<desc>Just a simple test level.</desc>
<start x="0.0" y="0.0" z="0.0"/>
</info>
<rooms>
<room id="r0">
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t2">
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t1">
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-10.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-10.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-10.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-10.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-10.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-10.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="6.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="6.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-6.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-6.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
</room>
<room id="r1">
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t2">
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="-2.0" z="2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="-2.0" y="-2.0" z="2.0"/>
<texcoords s="1.0" t="1.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="-2.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="-2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
<triangle texture="t1">
<vertex x="-2.0" y="2.0" z="2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
</room>
</rooms>
<gates>
<gate room1="r0" room2="r1">
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="2.0" y="2.0" z="-2.0"/>
<texcoords s="1.0" t="0.0"/>
<vertex x="6.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
</triangle>
<triangle texture="t0">
<vertex x="2.0" y="-2.0" z="-2.0"/>
<texcoords s="1.0" t="1.0"/>
<vertex x="6.0" y="2.0" z="-2.0"/>
<texcoords s="0.0" t="0.0"/>
<vertex x="6.0" y="-2.0" z="-2.0"/>
<texcoords s="0.0" t="1.0"/>
</triangle>
</gate>
</gates>
<textures>
<texture id="t0" name="green.png"/>
<texture id="t1" name="metallic2.png"/>
<texture id="t2" name="light.png"/>
</textures>
</level>