Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/archive/tutorial5/data/levels/surfaceRace.oxw @ 11663

Last change on this file since 11663 was 9939, checked in by jo, 11 years ago

presentationHS13 branch merged into trunk

  • Property svn:eol-style set to native
File size: 15.9 KB
Line 
1<!--
2TODO:
3    Replace bottom's texture. It just does not look good.
4-->
5
6<LevelInfo
7 name = "Surface Race"
8 description = "Race on a planet's surface. Try to reach the goal in 70 Seconds."
9 screenshot = "surfaceRace.png"
10 tags = "gametype"
11/>
12
13
14<?lua
15  include("stats.oxo")
16  include("HUDTemplates3.oxo")
17  include("templates/lodInformation.oxt")
18  include("templates/spaceshipRace.oxt")
19  include("templates/pickupRepresentationTemplates.oxt")
20
21?>
22
23
24<Level
25  gametype = SpaceRace
26>
27
28  <templates>
29    <Template link=lodtemplate_default />
30  </templates>
31  <?lua include("includes/notifications.oxi") ?>
32
33  <Scene
34    ambientlight = "2.0, 2.0, 2.0"
35    skybox       = "Orxonox/skyBoxClouds"
36    gravity      = "0,-75,0"
37    negativeWorldRange = "-100000, -100000, -100000"
38    positiveWorldRange = " 100000,  100000,  100000"
39    hasPhysics   = true
40  >
41
42    <?lua
43      include("includes/pickups.oxi")
44    ?>
45
46  <Light type=directional position="0,0,0" direction="0.253, 0.593, -0.765" diffuse="1.0, 0.9, 0.9, 1.0" specular="1.0, 0.9, 0.9, 1.0"/>
47
48
49
50<SpaceRaceManager>
51 <checkpoints>
52    <RaceCheckPoint name="checkpoint1" position="0,8050,-1000" direction="0,1,0" collisionType="static" scale="4" distance="150" checkpointindex="0" islast="false" nextcheckpoints="1,-1,-1">
53        <attached>
54            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
55
56<!--
57        <Model position="0,0,55" mesh="testcube.mesh" scale3D="110,20,20" />
58        <Model position="0,0,-55" mesh="testcube.mesh" scale3D="110,20,20" />
59        <Model position="55,0,0" mesh="testcube.mesh" scale3D="20,20,110" />
60        <Model position="-55,0,0" mesh="testcube.mesh" scale3D="20,20,110" />
61
62-->
63
64
65        </attached>
66
67
68
69    <collisionShapes>
70
71
72            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
73            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
74            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
75            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
76
77
78        </collisionShapes>
79
80
81
82
83    </RaceCheckPoint>
84
85<RaceCheckPoint name="checkpoint2" position="1000,8050,-4000" direction="0,1,0" roll="45" collisionType="static" scale="4" distance="150" checkpointindex="1" islast="false" nextcheckpoints="2,-1,-1">
86        <attached>
87            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
88        </attached>
89
90
91           <collisionShapes>
92
93            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
94            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
95            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
96            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
97
98        </collisionShapes>
99    </RaceCheckPoint>
100
101
102
103<RaceCheckPoint name="checkpoint3" position="3000,8050,-4000" direction="0,1,0" roll="-45" collisionType="static" scale="4" distance="150" checkpointindex="2" islast="false" nextcheckpoints="3,-1,-1">
104        <attached>
105            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
106        </attached>
107       <collisionShapes>
108
109
110            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
111            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
112            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
113            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
114
115
116        </collisionShapes>
117
118    </RaceCheckPoint>
119
120
121<RaceCheckPoint name="checkpoint4" position="4000,8050,-1000" direction="0,1,0" roll="0" collisionType="static" scale="4" distance="150" checkpointindex="3" islast="false" nextcheckpoints="4,-1,-1">
122        <attached>
123            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
124        </attached>
125        <collisionShapes>
126
127
128            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
129            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
130            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
131            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
132
133
134        </collisionShapes>
135
136    </RaceCheckPoint>
137
138
139<RaceCheckPoint name="checkpoint5" position="4000,8050,0" direction="0,1,0" roll="0" collisionType="static" scale="4" distance="150" checkpointindex="4" islast="false" nextcheckpoints="5,-1,-1">
140        <attached>
141            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
142        </attached>
143        <collisionShapes>
144
145
146            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
147            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
148            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
149            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
150
151
152        </collisionShapes>
153
154    </RaceCheckPoint>
155
156
157<RaceCheckPoint name="checkpoint6" position="3000,8050,1000" direction="0,1,0" roll="45" collisionType="static" scale="4" distance="150" checkpointindex="5" islast="false" nextcheckpoints="6,-1,-1">
158        <attached>
159            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
160        </attached>
161       <collisionShapes>
162
163
164            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
165            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
166            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
167            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
168
169
170        </collisionShapes>
171    </RaceCheckPoint>
172
173
174
175<RaceCheckPoint name="checkpoint7" position="0,8050,2000" direction="0,1,0" roll="90" collisionType="static" scale="4" distance="150" checkpointindex="6" islast="false" nextcheckpoints="7,-1,-1">
176        <attached>
177            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
178        </attached>
179      <collisionShapes>
180
181
182            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
183            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
184            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
185            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
186
187
188        </collisionShapes>
189
190    </RaceCheckPoint>
191
192
193
194<RaceCheckPoint name="checkpoint8" position="-4000,8050,3000" direction="0,1,0" roll="45" collisionType="static" scale="4" distance="150" checkpointindex="7" islast="false" nextcheckpoints="8,-1,-1">
195        <attached>
196            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
197        </attached>
198       <collisionShapes>
199
200            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
201            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
202            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
203            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
204
205        </collisionShapes>
206    </RaceCheckPoint>
207
208
209<RaceCheckPoint name="checkpoint9" position="-4000,8050,5000" direction="0,1,0" roll="-45" collisionType="static" scale="4" distance="150" checkpointindex="8" islast="false" nextcheckpoints="9,-1,-1">
210        <attached>
211            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
212        </attached>
213         <collisionShapes>
214
215
216            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
217            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
218            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
219            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
220
221
222        </collisionShapes>
223
224    </RaceCheckPoint>
225
226
227<RaceCheckPoint name="checkpoint10" position="-3000,8050,6000" direction="0,1,0" roll="90" collisionType="static" scale="4" distance="150" checkpointindex="9" islast="false" nextcheckpoints="10,-1,-1">
228        <attached>
229            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
230        </attached>
231       <collisionShapes>
232
233
234            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
235            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
236            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
237            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
238
239
240        </collisionShapes>
241
242    </RaceCheckPoint>
243
244<RaceCheckPoint name="checkpoint11" position="0,8050,6000" direction="0,1,0" roll="90" collisionType="static" scale="4" distance="120" checkpointindex="10" islast="false" nextcheckpoints="11,-1,-1">
245        <attached>
246            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
247        </attached>
248       <collisionShapes>
249
250
251            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
252            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
253            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
254            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
255
256
257        </collisionShapes>
258
259    </RaceCheckPoint>
260
261<RaceCheckPoint name="checkpoint12" position="6000,8050,6000" direction="0,1,0" roll="45" collisionType="static" scale="4" distance="150" checkpointindex="11" islast="false" nextcheckpoints="12,-1,-1">
262        <attached>
263            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
264        </attached>
265      <collisionShapes>
266
267
268            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
269            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
270            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
271            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
272
273
274        </collisionShapes>
275
276    </RaceCheckPoint>
277
278
279
280<RaceCheckPoint name="checkpoint13" position="5500,8050,3000" direction="0,1,0" roll="0" collisionType="static" scale="4" distance="150" checkpointindex="12" islast="false" nextcheckpoints="13,-1,-1">
281        <attached>
282            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
283        </attached>
284       <collisionShapes>
285
286            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
287            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
288            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
289            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
290
291        </collisionShapes>
292    </RaceCheckPoint>
293
294
295<RaceCheckPoint name="checkpoint14" position="6000,8050,-5000" direction="0,1,0" roll="0" collisionType="static" scale="4" distance="150" checkpointindex="13" islast="true" >
296        <attached>
297            <Model mass="50" scale="50" mesh="raceCheckPoint.mesh" />
298        </attached>
299       <collisionShapes>
300
301            <BoxCollisionShape position="0,0,220"     halfExtents="220, 40, 40" />
302            <BoxCollisionShape position="0,0,-220"      halfExtents="220, 40, 40" />
303            <BoxCollisionShape position="220,0,0"      halfExtents="40, 40, 220" />
304            <BoxCollisionShape position="-220,0,0"       halfExtents="40, 40, 220" />
305
306        </collisionShapes>
307    </RaceCheckPoint>
308
309
310</checkpoints>
311</SpaceRaceManager>
312
313 <SpawnPoint team=0 position="0,8050,0" lookat="0,8000,-8000" spawnclass=SpaceShip pawndesign=spaceshiprace />
314
315
316    <!-- -----------------------Zylinder---------------------------- -->
317<StaticEntity position="2750,8050,6000" direction="1,0,0" roll="90"  scale="4" collisionType=static mass=100000 friction=0.01 >
318      <attached>
319    <Model position="0,0,0" mesh="cylinder.mesh" scale3D="100,100,400" />
320    <!--
321                <Model position="0,80,600" mesh="testcube.mesh" scale3D="90,18,-600" />
322        <Model position="0,-80,600" mesh="testcube.mesh" scale3D="90,18,-600" />
323        <Model position="80,0,600" mesh="testcube.mesh" scale3D="18,90,-600" />
324        <Model position="-80,0,600" mesh="testcube.mesh" scale3D="18,09,-600" />
325    -->
326
327      </attached>
328
329
330    <collisionShapes>
331
332
333        <BoxCollisionShape position="0,320,2400"            halfExtents="360,72,2400" />
334        <BoxCollisionShape position="0,-320,2400"      halfExtents="360,72,2400" />
335        <BoxCollisionShape position="320,0,2400"            halfExtents="72,360,2400" />
336        <BoxCollisionShape position="-320,0,2400"     halfExtents="72,360,2400" />
337
338
339
340        </collisionShapes>
341
342  </StaticEntity>
343
344<!-- ------------------Cube between gate 4 and 5----------------- -->
345<StaticEntity position="4465,8050,-500" direction="0,0,0"   scale="1" collisionType=static mass=100000 friction=0.01 >
346      <attached>
347    <Model position="0,0,0" mesh="blackcube.mesh" scale3D="450,600,50" />
348<!--
349                <Model position="0,0,0" mesh="testcube.mesh" scale3D="450,600,50" />
350        -->
351
352      </attached>
353
354
355    <collisionShapes>
356
357
358        <BoxCollisionShape position="0,0,0"            halfExtents="450,600,50" />
359
360        </collisionShapes>
361
362  </StaticEntity>
363
364<StaticEntity position="3535,8050,-500" direction="0,0,0"   scale="1" collisionType=static mass=100000 friction=0.01 >
365      <attached>
366    <Model position="0,0,0" mesh="blackcube.mesh" scale3D="450,600,50" />
367<!--
368                <Model position="0,0,0" mesh="testcube.mesh" scale3D="450,600,50" />
369        -->
370
371      </attached>
372
373
374    <collisionShapes>
375
376
377        <BoxCollisionShape position="0,0,0"            halfExtents="450,600,50" />
378
379        </collisionShapes>
380
381  </StaticEntity>
382
383
384
385
386    <!-- ------------------Boden----------------- -->
387  <StaticEntity position="0,0,0" direction="0,0,0" collisionType=static mass=100000 friction=0.01>
388     <attached>
389        <Model position="0,0,0" mesh="CubeGround.mesh" scale3D="8000,8000,8000" />
390      </attached>
391      <collisionShapes>
392        <BoxCollisionShape position="0,50,0" halfExtents="8000,8000,8000" />um j?:P"{
393
394      </collisionShapes>
395</StaticEntity>
396
397
398<!-- ---------------------PickUp---------------------- -->
399
400
401   <PickupSpawner pickup=smallspeedpickup position="4000,8050,0" triggerDistance="40" respawnTime="10" maxSpawnedItems="99" scale="8" />
402   <PickupSpawner pickup=mediumspeedpickup position="5500,8100,2000" triggerDistance="40" respawnTime="10" maxSpawnedItems="99" scale="8" />
403   <PickupSpawner pickup="mediumshrinkpickup" position="3000,8050,-4000" triggerDistance="40" respawnTime="60"  maxSpawnedItems="5" scale="8" />
404
405
406
407
408 <!-- ---------------asteroid ellipse----------------- -->
409
410 <?lua
411    max = 15
412    for i = 0, max, 1
413    do
414    x=-12000
415    y=10000
416    z=-12000
417
418    ?>
419    <?lua
420    for k = 1, 15, 1
421    do
422    j = math.random()
423    ?>
424
425    <MovableEntity
426      position = "<?lua print(x + math.random() * 20000) ?>,<?lua print(y + math.random() * 5000) ?>,<?lua print(z + math.random() * 20000) ?>"
427      collisionType = "dynamic"
428      linearDamping = "0.5"
429      angularDamping = "0.5"
430      collisiondamage = "100"
431      enablecollisiondamage = "true"
432      scale="<?lua print(j * 5) ?>" >
433      <attached>
434        <Model position="0,0,0" scale="<?lua print(j * 10) ?>" mesh="ast<?lua print( math.mod(i,6) + 1) ?>.mesh">
435      <?lua if k == 0 then ?><attached><!-- ---------asteroid fog----- -->
436            <ParticleEmitter position="0,0,0" source="Orxonox/Steam" />
437          </attached> <?lua end ?>
438        </Model>
439      </attached>
440      <collisionShapes>
441        <SphereCollisionShape radius="<?lua print(j * 80) ?>" />
442      </collisionShapes>
443    </MovableEntity>
444    <?lua
445    end
446    ?>
447    <?lua end ?>
448   
449    <!-- SOUNDS & MUSIC -->
450    <WorldSound name="scoreSound" position="0,8050,0" source="sounds/ReadyGo.ogg" >
451      <events>
452        <play>
453          <EventListener event="start" />
454        </play>
455      </events>
456    </WorldSound>
457    <DistanceTrigger name="start" position="0,8050,0"  target="Pawn" distance=100 stayActive="true" delay=0.5 />
458    <WorldAmbientSound source="Ganymede.ogg" looping="true" playOnLoad="true" />
459
460  </Scene>
461</Level>
462
Note: See TracBrowser for help on using the repository browser.