1 | <LevelInfo |
---|
2 | name = "Mission One" |
---|
3 | description = "First guided steps in the orxonoxian universe." |
---|
4 | tags = "singleplayer" |
---|
5 | /> |
---|
6 | |
---|
7 | <?lua |
---|
8 | include("stats.oxo") |
---|
9 | include("HUDTemplates3.oxo") |
---|
10 | include("templates/lodInformation.oxt") |
---|
11 | include("templates/spaceshipAssff.oxt") |
---|
12 | include("templates/spaceshipPirate.oxt") |
---|
13 | include("templates/spaceshipSpacecruiser.oxt") |
---|
14 | include("templates/spaceshipTransporter.oxt") |
---|
15 | ?> |
---|
16 | |
---|
17 | <?lua |
---|
18 | include("templates/pickupRepresentationTemplates.oxt") |
---|
19 | ?> |
---|
20 | |
---|
21 | <Level |
---|
22 | name = "Mission One" |
---|
23 | description = "How to steer a spaceship." |
---|
24 | > |
---|
25 | <templates> |
---|
26 | <Template link=lodtemplate_default /> |
---|
27 | </templates> |
---|
28 | <?lua include("includes/notifications.oxi") ?> |
---|
29 | |
---|
30 | <NotificationQueueCEGUI |
---|
31 | name="narrative" |
---|
32 | targets="simpleNotification" |
---|
33 | size=3 |
---|
34 | displayTime=3.9 |
---|
35 | position="0.2, 0, 0.1, 0" |
---|
36 | fontSize="23" |
---|
37 | fontColor="0.3, 1, 0.2, 0.8" |
---|
38 | alignment="HorzCentred" |
---|
39 | displaySize="0.6, 0, 0, 0" |
---|
40 | /> |
---|
41 | <Scene |
---|
42 | ambientlight = "0.8, 0.8, 0.8" |
---|
43 | skybox = "Orxonox/Starbox" |
---|
44 | > |
---|
45 | <?lua |
---|
46 | include("includes/pickups.oxi") |
---|
47 | ?> |
---|
48 | |
---|
49 | <WorldAmbientSound source="Mars.ogg" looping="true" playOnLoad="true" /> <!-- AlphaCentauri.ogg--> |
---|
50 | |
---|
51 | <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"/> |
---|
52 | <TeamSpawnPoint team=0 position="800,700,600" direction="-1,0,0" spawnclass=SpaceShip pawndesign=spaceshipassff /> |
---|
53 | |
---|
54 | |
---|
55 | <!-- END OF INCLUDES & NECESSARITIES --> |
---|
56 | |
---|
57 | <LocalQuest id="missionOne.basicFlying"> |
---|
58 | <QuestDescription title="Flying" description="INSERT STORY HERE. The first thing you have to learn is flying. Use 'W' to accelerate and steer with your mouse. In order to know where to fly there are two detection systems. The navigation markers highlite important objects directly in the level. If you can't directly see those objects, there are arrows which indicate how you have to steer. The second device is the radar. There you get an overview of all objects near you. In order to find an object that you spotted on radar, you have to steer in a way that the corresponding dot is in the center of the radar. Now you can find the corresponding object straight ahead. Your goal is to fly to the first waypoint. It's that orange dot on the radar." failmessage="" completeMessage="Well done." /> |
---|
59 | <complete-effects> |
---|
60 | <AddQuest questId="missionOne.weaponsystem" /> |
---|
61 | </complete-effects> |
---|
62 | </LocalQuest> |
---|
63 | |
---|
64 | <LocalQuest id="missionOne.weaponsystem"> |
---|
65 | <QuestDescription title="Weaponsystem" description="INSERT STORY HERE." failmessage="" completeMessage="All right." /> |
---|
66 | <subquests> |
---|
67 | <LocalQuest id ="missionOne.weaponsystemI"> |
---|
68 | <QuestDescription title="Destroy Boxes" description="Test your four different weapons on the four boxes. The four weapons are laser (left click), plasma (right click), self targeting rockets (middle click) and manual rockets (press 'T'). Attention if you use manual rockets: Press 'T' only once to start the rocket. If you miss your target you can get out of the rocket, by clicking or pressing 'T' once more." failmessage="" completeMessage="" /> |
---|
69 | <complete-effects> |
---|
70 | <AddQuest questId="missionOne.weaponsystemII" /> |
---|
71 | </complete-effects> |
---|
72 | </LocalQuest> |
---|
73 | <LocalQuest id="missionOne.weaponsystemII"> |
---|
74 | <QuestDescription title="" description="" failmessage="" completeMessage="" /> |
---|
75 | <complete-effects> |
---|
76 | <AddQuest questId="missionOne.DuballStation" /> |
---|
77 | </complete-effects> |
---|
78 | </LocalQuest> |
---|
79 | </subquests> |
---|
80 | <hints> |
---|
81 | <QuestHint id="missionOne.weaponsystem.laser"> |
---|
82 | <QuestDescription title="Laser" description="The laser is a standard weapon. It is fast and precise but does not deal much damage." /> |
---|
83 | </QuestHint> |
---|
84 | <QuestHint id="missionOne.weaponsystem.lightningGun"> |
---|
85 | <QuestDescription title="Lightninggun" description="That was the lightning gun. Its plasma munition is quite slow, but a normal spaceship can't take more than three hits of such a strong weapon. That could be your favourite weapon for close range combat or if you want to hit a really slow enemy." /> |
---|
86 | </QuestHint> |
---|
87 | <QuestHint id="missionOne.weaponsystem.targetSeekingRocket"> |
---|
88 | <QuestDescription title="Target Seeking Rocket" description="The target seeking rockets follow slow targets on their own." /> |
---|
89 | </QuestHint> |
---|
90 | <QuestHint id="missionOne.weaponsystem.manualrocket"> |
---|
91 | <QuestDescription title="Manual Rocket" description="Manual rockets are your most powerful weapon. But since you have to steer it to your target yourself, you will leave your spaceship unprotected for a while. The total amount of both manual and target seeking rockets is limited to 10." /> |
---|
92 | </QuestHint> |
---|
93 | </hints> |
---|
94 | <complete-effects> |
---|
95 | </complete-effects> |
---|
96 | </LocalQuest> |
---|
97 | |
---|
98 | <LocalQuest id="missionOne.DuballStation"> |
---|
99 | <QuestDescription title="Duball Space Station" description="Fly towards the Duball Space Station. The grey radar marker will lead you to its position." failmessage="" completeMessage="Well done." /> |
---|
100 | <complete-effects> |
---|
101 | <AddQuest questId="missionOne.getHelp" /> |
---|
102 | </complete-effects> |
---|
103 | </LocalQuest> |
---|
104 | |
---|
105 | <LocalQuest id="missionOne.getHelp"> |
---|
106 | <QuestDescription title="Get Help" description="There are enemies approaching. You can't handle it on your own. Fortunately there's a shortcut to the next friendly unit. Use the portal (grey dot) to get near the Hydrogen Farmer. There you might get help - as far as we know there should be a stronger spaceship docked to the Hydrogen Farmer. In order to be able to use that stronger spaceship you have to dock to the Hydrogen Farmer. Simply fly to the center of the Hydrogen Farmer, which is between its three legs." failmessage="" completeMessage="Well done." /> |
---|
107 | <complete-effects> |
---|
108 | <AddQuest questId="missionOne.getHome" /> |
---|
109 | </complete-effects> |
---|
110 | </LocalQuest> |
---|
111 | |
---|
112 | <LocalQuest id="missionOne.getHome"> |
---|
113 | <QuestDescription title="Return ASAP" description="" failmessage="" completeMessage="Well done." /> |
---|
114 | <complete-effects> |
---|
115 | <AddQuest questId="missionOne.defence" /> |
---|
116 | </complete-effects> |
---|
117 | </LocalQuest> |
---|
118 | |
---|
119 | <LocalQuest id="missionOne.defence"> |
---|
120 | <QuestDescription title="Defence" description="" failmessage="" completeMessage="Well done." /> |
---|
121 | </LocalQuest> |
---|
122 | |
---|
123 | |
---|
124 | <QuestEffectBeacon position="800,700,600" times="1"> |
---|
125 | <effects> |
---|
126 | <AddQuest questId="missionOne.basicFlying" /> |
---|
127 | </effects> |
---|
128 | <events> |
---|
129 | <execute> |
---|
130 | <EventListener event="questStart"/> |
---|
131 | </execute> |
---|
132 | </events> |
---|
133 | <attached> |
---|
134 | <DistanceTrigger name="questStart" position="0,0,0" distance="50" target="Pawn" beaconMode="identify" targetname="PlayerDistanceTrigger" delay="2" /> |
---|
135 | </attached> |
---|
136 | </QuestEffectBeacon> |
---|
137 | |
---|
138 | |
---|
139 | <!-- TUTORIAL-TODO: --> |
---|
140 | <!-- 1. Flying & manoeuvring (basic flying, using pickups, forcefields, docks & portals) --> <!-- "W","S","SPACE"--> |
---|
141 | <!-- 2. Aiming & Weapons (static targets, moving targets, dangerous targets)--> <!-- 3 Mouse buttons + "T"--> |
---|
142 | <!-- 3. Game handling (quests, knowing when a game is over :-), pausing, chat, ... ) --> <!--"F3", "F2", "ESC" --> |
---|
143 | <!-- 4. Extras (other things to discover) --> <!-- "Q","E","A","D","C", "CTRL", "", ... --> |
---|
144 | |
---|
145 | <!-- |
---|
146 | |
---|
147 | "Lets start flying. Use W to accelerate and S to brake. The goal is to reach the spacestation which is displayed on the radar. If you want to be faster you can temporarily boost by hitting additionally the space button. If you use too much boost your engine heats up and you won't be able to use boost for a while. By the way boost could be useful during combat .." |
---|
148 | |
---|
149 | --> |
---|
150 | |
---|
151 | <DistanceTrigger name="spawndelaytrigger0" position="800,700,600" target="Pawn" distance=10 stayActive="true"/> |
---|
152 | <SimpleNotification message="Welcome to the Orxonox Tutorial."> |
---|
153 | <events> |
---|
154 | <trigger> |
---|
155 | <EventListener event="spawndelaytrigger0" /> |
---|
156 | </trigger> |
---|
157 | </events> |
---|
158 | </SimpleNotification> |
---|
159 | |
---|
160 | <BlinkingBillboard position="-900,640,600" frequency=0.4 amplitude=2 material="Flares/lensflare" colour="1,1,0"> |
---|
161 | <events> |
---|
162 | <visibility> |
---|
163 | <EventTrigger invert=true> |
---|
164 | <events> |
---|
165 | <trigger> |
---|
166 | <EventListener event=flying4 /> |
---|
167 | </trigger> |
---|
168 | </events> |
---|
169 | </EventTrigger> |
---|
170 | </visibility> |
---|
171 | </events> |
---|
172 | </BlinkingBillboard> |
---|
173 | <Billboard position="-900,640,600" amplitude=1 material="Flares/lensflare" colour="0,0.8,0.1"> |
---|
174 | <events> |
---|
175 | <visibility> |
---|
176 | <EventTrigger> |
---|
177 | <events> |
---|
178 | <trigger> |
---|
179 | <EventListener event=flying4 /> |
---|
180 | </trigger> |
---|
181 | </events> |
---|
182 | </EventTrigger> |
---|
183 | </visibility> |
---|
184 | </events> |
---|
185 | </Billboard> |
---|
186 | <!-------------------------------------- PART ZERO: How to fly ---------------------------------------> |
---|
187 | <DistanceTrigger name="flying1" position="800,700,600" target="Pawn" distance=10 stayActive="true" delay=4/> |
---|
188 | <SimpleNotification message="Let's fly to the blinking light."> |
---|
189 | <events> |
---|
190 | <trigger> |
---|
191 | <EventListener event="flying1" /> |
---|
192 | </trigger> |
---|
193 | </events> |
---|
194 | </SimpleNotification> |
---|
195 | |
---|
196 | <DistanceTrigger name="flying2" position="800,700,600" target="Pawn" distance=10 stayActive="true" delay=8/> |
---|
197 | <SimpleNotification message="Use 'W' to accelerate and the mouse to steer."> |
---|
198 | <events> |
---|
199 | <trigger> |
---|
200 | <EventListener event="flying2" /> |
---|
201 | </trigger> |
---|
202 | </events> |
---|
203 | </SimpleNotification> |
---|
204 | |
---|
205 | <!--DistanceTrigger name="flying3" position="800,700,600" target="Pawn" distance=20 stayActive="true" delay=12/> |
---|
206 | <SimpleNotification message="Point with the mouse to the blinking light."> |
---|
207 | <events> |
---|
208 | <trigger> |
---|
209 | <EventListener event="flying3" /> |
---|
210 | </trigger> |
---|
211 | </events> |
---|
212 | </SimpleNotification--> |
---|
213 | |
---|
214 | <DistanceTrigger name="flying4" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=1/> |
---|
215 | <SimpleNotification message="Three red arrows just appeared."> |
---|
216 | <events> |
---|
217 | <trigger> |
---|
218 | <EventListener event="flying4" /> |
---|
219 | </trigger> |
---|
220 | </events> |
---|
221 | </SimpleNotification> |
---|
222 | |
---|
223 | <DistanceTrigger name="flying5" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=5/> |
---|
224 | <SimpleNotification message="Follow those red arrows."> |
---|
225 | <events> |
---|
226 | <trigger> |
---|
227 | <EventListener event="flying5" /> |
---|
228 | </trigger> |
---|
229 | </events> |
---|
230 | </SimpleNotification> |
---|
231 | |
---|
232 | |
---|
233 | |
---|
234 | <!-------------------------------------- PART ONE : Destroy boxes ---------------------------------------> |
---|
235 | <DistanceTrigger name="spawndelaytrigger1" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=9 /> |
---|
236 | <SimpleNotification message="Destroy the four boxes."> |
---|
237 | <events> |
---|
238 | <trigger> |
---|
239 | <EventListener event="spawndelaytrigger1" /> |
---|
240 | </trigger> |
---|
241 | </events> |
---|
242 | </SimpleNotification> |
---|
243 | |
---|
244 | <DistanceTrigger name="spawndelaytrigger2" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=13 /> |
---|
245 | <SimpleNotification message=" 1. Aim the a red cycle."> |
---|
246 | <events> |
---|
247 | <trigger> |
---|
248 | <EventListener event="spawndelaytrigger2" /> |
---|
249 | </trigger> |
---|
250 | </events> |
---|
251 | </SimpleNotification> |
---|
252 | |
---|
253 | <DistanceTrigger name="spawndelaytrigger3" position="-900,640,600" target="Pawn" distance=60 stayActive="true" delay=17 /> |
---|
254 | <SimpleNotification message="2. Click! (hold the left mouse button)"> |
---|
255 | <events> |
---|
256 | <trigger> |
---|
257 | <EventListener event="spawndelaytrigger3" /> |
---|
258 | </trigger> |
---|
259 | </events> |
---|
260 | </SimpleNotification> |
---|
261 | |
---|
262 | <!-- @Objects: 4 boxes (uncontrolled pawns) --> |
---|
263 | <Pawn health=30 position="0,0,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box > |
---|
264 | <events> |
---|
265 | <visibility> |
---|
266 | <EventListener event="flying4" /> |
---|
267 | </visibility> |
---|
268 | </events> |
---|
269 | <attached> |
---|
270 | <Model position="0,0,0" mesh="crate.mesh" scale3D="3,3,3" /> |
---|
271 | </attached> |
---|
272 | <collisionShapes> |
---|
273 | <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" /> |
---|
274 | </collisionShapes> |
---|
275 | </Pawn> |
---|
276 | |
---|
277 | <Pawn health=30 position="0,100,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box visible="true"> |
---|
278 | <events> |
---|
279 | <visibility> |
---|
280 | <EventListener event="flying4" /> |
---|
281 | </visibility> |
---|
282 | </events> |
---|
283 | <attached> |
---|
284 | <Model position="0,0,0" mesh="crate.mesh" scale3D="3,3,3" /> |
---|
285 | </attached> |
---|
286 | <collisionShapes> |
---|
287 | <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" /> |
---|
288 | </collisionShapes> |
---|
289 | </Pawn> |
---|
290 | <Pawn health=30 position="0,200,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box > |
---|
291 | <events> |
---|
292 | <visibility> |
---|
293 | <EventListener event="flying4" /> |
---|
294 | </visibility> |
---|
295 | </events> |
---|
296 | <attached> |
---|
297 | <Model position="0,0,0" mesh="crate.mesh" scale3D="3,3,3" /> |
---|
298 | </attached> |
---|
299 | <collisionShapes> |
---|
300 | <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" /> |
---|
301 | </collisionShapes> |
---|
302 | </Pawn> |
---|
303 | <Pawn health=30 position="0,300,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box > |
---|
304 | <events> |
---|
305 | <visibility> |
---|
306 | <EventListener event="flying4" /> |
---|
307 | </visibility> |
---|
308 | </events> |
---|
309 | <attached> |
---|
310 | <Model position="0,0,0" mesh="crate.mesh" scale3D="3,3,3" /> |
---|
311 | </attached> |
---|
312 | <collisionShapes> |
---|
313 | <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" /> |
---|
314 | </collisionShapes> |
---|
315 | </Pawn> |
---|
316 | |
---|
317 | <!-- @Triggers: boxtrigger1 <-> one box destroyed |
---|
318 | boxtrigger2 <-> two boxes destroyed |
---|
319 | boxtrigger3 <-> three boxes destroyed |
---|
320 | boxtrigger4 <-> four boxes destroyed --> |
---|
321 | <EventTrigger name="boxtrigger4" activations="1" stayactive="true" delay=0.1> |
---|
322 | <events> |
---|
323 | <trigger> |
---|
324 | <EventListener event="box" /> |
---|
325 | </trigger> |
---|
326 | </events> |
---|
327 | <EventTrigger name="boxtrigger3" activations="1" stayactive="true" delay=0.1> |
---|
328 | <events> |
---|
329 | <trigger> |
---|
330 | <EventListener event="box" /> |
---|
331 | </trigger> |
---|
332 | </events> |
---|
333 | <EventTrigger name="boxtrigger2" activations="1" stayactive="true" delay=0.1> |
---|
334 | <events> |
---|
335 | <trigger> |
---|
336 | <EventListener event="box" /> |
---|
337 | </trigger> |
---|
338 | </events> |
---|
339 | <EventTrigger name="boxtrigger1" activations="1" stayactive="true" delay=0.1> |
---|
340 | <events> |
---|
341 | <trigger> |
---|
342 | <EventListener event="box" /> |
---|
343 | </trigger> |
---|
344 | </events> |
---|
345 | </EventTrigger> |
---|
346 | </EventTrigger> |
---|
347 | </EventTrigger> |
---|
348 | </EventTrigger> |
---|
349 | |
---|
350 | |
---|
351 | <SimpleNotification message="Right click on the next target." broadcast="true"> |
---|
352 | <events> |
---|
353 | <trigger> |
---|
354 | <EventListener event="boxtrigger1" /> |
---|
355 | </trigger> |
---|
356 | </events> |
---|
357 | </SimpleNotification> |
---|
358 | |
---|
359 | <SimpleNotification message="Middle click on the next target." broadcast="true"> |
---|
360 | <events> |
---|
361 | <trigger> |
---|
362 | <EventListener event="boxtrigger2" /> |
---|
363 | </trigger> |
---|
364 | </events> |
---|
365 | </SimpleNotification> |
---|
366 | |
---|
367 | |
---|
368 | <SimpleNotification message="Aim at the last target and press 'T'." broadcast="true"> |
---|
369 | <events> |
---|
370 | <trigger> |
---|
371 | <EventListener event="boxtrigger3" /> |
---|
372 | </trigger> |
---|
373 | </events> |
---|
374 | </SimpleNotification> |
---|
375 | |
---|
376 | <SimpleNotification message="Try to hit the pirates while you are flying." broadcast="true"> |
---|
377 | <events> |
---|
378 | <trigger> |
---|
379 | <EventListener event="boxtrigger4" /> |
---|
380 | </trigger> |
---|
381 | </events> |
---|
382 | </SimpleNotification> |
---|
383 | |
---|
384 | |
---|
385 | <!--------------------------------------PART TWO: Moving targets ---------------------------------------> |
---|
386 | |
---|
387 | <!-- @Objects: 2 pirates moving in squares, nonlethal --> |
---|
388 | <SpaceShip position="0,2000,200" lookat="0,0,0" name="movingtarget" > |
---|
389 | <events> |
---|
390 | <visibility> |
---|
391 | <EventListener event="boxtrigger4" /> |
---|
392 | </visibility> |
---|
393 | </events> |
---|
394 | <templates> |
---|
395 | <Template link=spaceshippirate /> |
---|
396 | </templates> |
---|
397 | <controller> |
---|
398 | <WaypointController> |
---|
399 | <waypoints> |
---|
400 | <Model mesh="cube.mesh" scale=8 position=" 0,1700,-200" /> |
---|
401 | <Model mesh="cube.mesh" scale=8 position=" 0,1700,-700" /> |
---|
402 | <Model mesh="cube.mesh" scale=8 position="500,1700,-700" /> |
---|
403 | <Model mesh="cube.mesh" scale=8 position="500,1700,-200" /> |
---|
404 | </waypoints> |
---|
405 | </WaypointController> |
---|
406 | </controller> |
---|
407 | </SpaceShip> |
---|
408 | |
---|
409 | <SpaceShip position="0,2000,400" lookat="0,0,0" name="movingtarget"> |
---|
410 | <events> |
---|
411 | <visibility> |
---|
412 | <EventListener event="boxtrigger4" /> |
---|
413 | </visibility> |
---|
414 | </events> |
---|
415 | <templates> |
---|
416 | <Template link=spaceshippirate /> |
---|
417 | </templates> |
---|
418 | <controller> |
---|
419 | <WaypointController> |
---|
420 | <waypoints> |
---|
421 | <Model mesh="cube.mesh" scale=8 position=" 0,2400,1000" /> |
---|
422 | <Model mesh="cube.mesh" scale=8 position=" 0,2400, 500" /> |
---|
423 | <Model mesh="cube.mesh" scale=8 position="500,2400, 500" /> |
---|
424 | <Model mesh="cube.mesh" scale=8 position="500,2400,1000" /> |
---|
425 | </waypoints> |
---|
426 | </WaypointController> |
---|
427 | </controller> |
---|
428 | </SpaceShip> |
---|
429 | |
---|
430 | <!-- @Triggers: movingpirates1 <-> one pirate dead |
---|
431 | movingpirates2 <-> both pirates dead --> |
---|
432 | <EventTrigger name="movingpirates2" activations="1" stayactive="true" delay=0.1> |
---|
433 | <events> |
---|
434 | <trigger> |
---|
435 | <EventListener event="movingtarget" /> |
---|
436 | </trigger> |
---|
437 | </events> |
---|
438 | <EventTrigger name="movingpirates1" activations="1" stayactive="true" delay=0.1> |
---|
439 | <events> |
---|
440 | <trigger> |
---|
441 | <EventListener event="movingtarget" /> |
---|
442 | </trigger> |
---|
443 | </events> |
---|
444 | </EventTrigger> |
---|
445 | </EventTrigger> |
---|
446 | |
---|
447 | |
---|
448 | <SimpleNotification message="Now get the other one." broadcast="true"> |
---|
449 | <events> |
---|
450 | <trigger> |
---|
451 | <EventListener event="movingpirates1" /> |
---|
452 | </trigger> |
---|
453 | </events> |
---|
454 | </SimpleNotification> |
---|
455 | |
---|
456 | <SimpleNotification message="Fly towards the space station (grey dot)." broadcast="true"> |
---|
457 | <events> |
---|
458 | <trigger> |
---|
459 | <EventListener event="movingpirates2" /> |
---|
460 | </trigger> |
---|
461 | </events> |
---|
462 | </SimpleNotification> |
---|
463 | |
---|
464 | |
---|
465 | |
---|
466 | <!--------------------------------------PART THREE: the space station ---------------------------------------> |
---|
467 | <DistanceTrigger name="duball1" position="-1000,-300,700" target="Pawn" distance=700 stayActive="true" delay=1 > |
---|
468 | <events> |
---|
469 | <activity> |
---|
470 | <EventListener event="movingpirates2" /> |
---|
471 | </activity> |
---|
472 | </events> |
---|
473 | </DistanceTrigger> |
---|
474 | |
---|
475 | <EventTrigger name="duball2" activations="1" stayactive="true" delay=4 > |
---|
476 | <events> |
---|
477 | <trigger> |
---|
478 | <EventListener event="duball1" /> |
---|
479 | </trigger> |
---|
480 | </events> |
---|
481 | </EventTrigger> |
---|
482 | |
---|
483 | <EventTrigger name="duball3" activations="1" stayactive="true" delay=4 > |
---|
484 | <events> |
---|
485 | <trigger> |
---|
486 | <EventListener event="duball2" /> |
---|
487 | </trigger> |
---|
488 | </events> |
---|
489 | </EventTrigger> |
---|
490 | |
---|
491 | <SimpleNotification message="Welcome to the Duball Space Station!"> |
---|
492 | <events> |
---|
493 | <trigger> |
---|
494 | <EventListener event=duball1 /> |
---|
495 | </trigger> |
---|
496 | </events> |
---|
497 | </SimpleNotification> |
---|
498 | |
---|
499 | <SimpleNotification message="Warning: Something big is coming." broadcast="true"> |
---|
500 | <events> |
---|
501 | <trigger> |
---|
502 | <EventListener event=duball2 /> |
---|
503 | </trigger> |
---|
504 | </events> |
---|
505 | </SimpleNotification> |
---|
506 | |
---|
507 | <SimpleNotification message="Use the portals to get help. (grey dot)" broadcast="true"> |
---|
508 | <events> |
---|
509 | <trigger> |
---|
510 | <EventListener event=duball3 /> |
---|
511 | </trigger> |
---|
512 | </events> |
---|
513 | </SimpleNotification> |
---|
514 | |
---|
515 | |
---|
516 | <!-- @Objects: DuBall Space Station, (no pawn!) --> |
---|
517 | <StaticEntity position="-1000,-300,700" collisionType=static> |
---|
518 | <attached> |
---|
519 | <Model scale=13 mesh="DuBall1.mesh" position = "-100,0,0"/> |
---|
520 | <Model scale=13 mesh="DuBall2.mesh" position = "100,0,0"/> |
---|
521 | <Billboard scale=7 material="Examples/Flare" colour="0.5,0.5,0.5" position = "-100,0,0"/> |
---|
522 | <Billboard scale=7 material="Examples/Flare" colour="0.5,0.5,0.5" position = "100,0,0"/> |
---|
523 | </attached> |
---|
524 | <collisionShapes> |
---|
525 | <SphereCollisionShape radius="80" position = "-100,0,0" /> |
---|
526 | <SphereCollisionShape radius="120" position = "100,0,0" /> |
---|
527 | <BoxCollisionShape halfExtents="90,25,45" position = "-155,0,40" /> |
---|
528 | </collisionShapes> |
---|
529 | </StaticEntity> |
---|
530 | |
---|
531 | |
---|
532 | <!-- @Objects: PORTAL: from DuBall to HydroHarvester --> |
---|
533 | <Template name=PortalDefault> |
---|
534 | <PortalEndPoint> |
---|
535 | <attached> |
---|
536 | <Billboard material="Portals/Default" /> |
---|
537 | </attached> |
---|
538 | </PortalEndPoint> |
---|
539 | </Template> |
---|
540 | |
---|
541 | <PortalEndPoint position="-1400,-500,800" id="1" distance="50" target="MobileEntity" design="PortalDefault"> |
---|
542 | <events> |
---|
543 | <activity> |
---|
544 | <Trigger mode="or" activations="2"> |
---|
545 | <Trigger mode="and" activations="1"> |
---|
546 | <EventTrigger> |
---|
547 | <events> |
---|
548 | <trigger> |
---|
549 | <EventListener event="movingpirates2" /> |
---|
550 | </trigger> |
---|
551 | </events> |
---|
552 | </EventTrigger> |
---|
553 | <EventTrigger invert=true> |
---|
554 | <events> |
---|
555 | <trigger> |
---|
556 | <EventListener event="toHydroFarmer" /> |
---|
557 | </trigger> |
---|
558 | </events> |
---|
559 | </EventTrigger> |
---|
560 | </Trigger> |
---|
561 | <Trigger mode="and" activations="1"> |
---|
562 | <EventTrigger> |
---|
563 | <events> |
---|
564 | <trigger> |
---|
565 | <EventListener event="ondock" /> |
---|
566 | </trigger> |
---|
567 | </events> |
---|
568 | </EventTrigger> |
---|
569 | <EventTrigger invert=true> |
---|
570 | <events> |
---|
571 | <trigger> |
---|
572 | <EventListener event="attack" /> |
---|
573 | </trigger> |
---|
574 | </events> |
---|
575 | </EventTrigger> |
---|
576 | </Trigger> |
---|
577 | <EventTrigger> |
---|
578 | <events> |
---|
579 | <trigger> |
---|
580 | <EventListener event="HydroFarmer" /> |
---|
581 | </trigger> |
---|
582 | </events> |
---|
583 | </EventTrigger> |
---|
584 | </Trigger> |
---|
585 | </activity> |
---|
586 | </events> |
---|
587 | </PortalEndPoint> |
---|
588 | |
---|
589 | <PortalEndPoint position="-47000,-1000,1300" id="2" distance="70" target="MobileEntity" design="PortalDefault"> |
---|
590 | <events> |
---|
591 | <activity> |
---|
592 | <Trigger mode="or" activations="3"> |
---|
593 | <Trigger mode="and" activations="1"> |
---|
594 | <EventTrigger> |
---|
595 | <events> |
---|
596 | <trigger> |
---|
597 | <EventListener event="movingpirates2" /> |
---|
598 | </trigger> |
---|
599 | </events> |
---|
600 | </EventTrigger> |
---|
601 | <EventTrigger invert=true> |
---|
602 | <events> |
---|
603 | <trigger> |
---|
604 | <EventListener event="toHydroFarmer" /> |
---|
605 | </trigger> |
---|
606 | </events> |
---|
607 | </EventTrigger> |
---|
608 | </Trigger> |
---|
609 | <Trigger mode="and" activations="1"> |
---|
610 | <EventTrigger> |
---|
611 | <events> |
---|
612 | <trigger> |
---|
613 | <EventListener event="ondock" /> |
---|
614 | </trigger> |
---|
615 | </events> |
---|
616 | </EventTrigger> |
---|
617 | <EventTrigger invert=true> |
---|
618 | <events> |
---|
619 | <trigger> |
---|
620 | <EventListener event="attack" /> |
---|
621 | </trigger> |
---|
622 | </events> |
---|
623 | </EventTrigger> |
---|
624 | </Trigger> |
---|
625 | <EventTrigger> |
---|
626 | <events> |
---|
627 | <trigger> |
---|
628 | <EventListener event="HydroFarmer" /> |
---|
629 | </trigger> |
---|
630 | </events> |
---|
631 | </EventTrigger> |
---|
632 | </Trigger> |
---|
633 | </activity> |
---|
634 | </events> |
---|
635 | </PortalEndPoint> |
---|
636 | <PortalLink fromID="1" toID="2" /> |
---|
637 | <PortalLink fromID="2" toID="1" /> |
---|
638 | <!-- ????????????????????????????????????????????????????? why does this NOT work ?? |
---|
639 | <Trigger mode="and" activations="1"> |
---|
640 | <EventTrigger> |
---|
641 | <events> |
---|
642 | <trigger> |
---|
643 | <EventListener event="HydroFarmer" /> |
---|
644 | </trigger> |
---|
645 | </events> |
---|
646 | </EventTrigger> |
---|
647 | <EventTrigger invert=true> |
---|
648 | <events> |
---|
649 | <trigger> |
---|
650 | <EventListener event="attack" /> |
---|
651 | </trigger> |
---|
652 | </events> |
---|
653 | </EventTrigger> |
---|
654 | </Trigger> |
---|
655 | --> |
---|
656 | <!-- PORTALS END--> |
---|
657 | |
---|
658 | |
---|
659 | <SimpleNotification message="Dock to the Hydrogen Farmer."> |
---|
660 | <events> |
---|
661 | <trigger> |
---|
662 | <EventListener event=toHydroFarmer /> |
---|
663 | </trigger> |
---|
664 | </events> |
---|
665 | </SimpleNotification> |
---|
666 | |
---|
667 | <!-------------------------------------- PART FOUR : Get Help ---------------------------------------> |
---|
668 | <DistanceTrigger name="famer1" position="-48200,100,0" target="Pawn" distance=650 stayActive="true" delay=0 /> |
---|
669 | <SimpleNotification message="We just received a message from DuBall."> |
---|
670 | <events> |
---|
671 | <trigger> |
---|
672 | <EventListener event=famer1 /> |
---|
673 | </trigger> |
---|
674 | </events> |
---|
675 | </SimpleNotification> |
---|
676 | |
---|
677 | <DistanceTrigger name="famer2" position="-48200,100,0" target="Pawn" distance=650 stayActive="true" delay=4 /> |
---|
678 | <SimpleNotification message="We will lend you our strongest ship."> |
---|
679 | <events> |
---|
680 | <trigger> |
---|
681 | <EventListener event=famer2 /> |
---|
682 | </trigger> |
---|
683 | </events> |
---|
684 | </SimpleNotification> |
---|
685 | |
---|
686 | |
---|
687 | <!-- @Objects: HYDROGEN FARMER & DOCKING --> |
---|
688 | <SpaceShip position="-48900,100,0" roll=90 yaw=0 pitch=20 mass=10000 health=100000 name="HydroFarmer"> |
---|
689 | <attached> |
---|
690 | <!-- Docking --> |
---|
691 | <DistanceTriggerBeacon name="bcnDestroyer" /> |
---|
692 | <DockingTarget name="destroyer" /> |
---|
693 | |
---|
694 | <Model mesh="HydroHarvester.mesh" mass=10 position="0,0,0" scale=50 /> |
---|
695 | <!-- <Model mesh="cube.mesh" mass=10 position="-560,0,0" scale3D="115,100,245" /> |
---|
696 | <Model mesh="cube.mesh" mass=10 position="290,0,-480" scale3D="115,100,245" yaw=-120 /> |
---|
697 | <Model mesh="cube.mesh" mass=10 position="290,0,480" scale3D="115,100,245" yaw=-240 /> |
---|
698 | <Model mesh="cube.mesh" mass=10 position="-280,0,0" scale3D="163,50,50" /> |
---|
699 | <Model mesh="cube.mesh" mass=10 position="140,0,-240" scale3D="163,50,50" yaw=-120/> |
---|
700 | <Model mesh="cube.mesh" mass=10 position="140,0,240" scale3D="163,50,50" yaw=-240/> |
---|
701 | <Model mesh="cube.mesh" mass=10 position="0,530,0" scale3D="172,52,298" /> |
---|
702 | <Model mesh="cube.mesh" mass=10 position="0,530,0" scale3D="172,52,298" yaw=-120/> |
---|
703 | <Model mesh="cube.mesh" mass=10 position="0,530,0" scale3D="172,52,298" yaw=-240/> |
---|
704 | <Model mesh="cube.mesh" mass=10 position="0,400,0" scale3D="43,110,26" yaw=-30 /> |
---|
705 | <Model mesh="cube.mesh" mass=10 position="-200,100,0" scale3D="26,50,43" /> |
---|
706 | <Model mesh="cube.mesh" mass=10 position="100,100,-173" scale3D="43,50,26" yaw=-30/> |
---|
707 | <Model mesh="cube.mesh" mass=10 position="100,100,173" scale3D="43,50,26" yaw=30/> |
---|
708 | <Model mesh="cube.mesh" mass=10 position="-100,264,0" scale3D="26,105,43" roll=-49/> |
---|
709 | <Model mesh="cube.mesh" mass=10 position="50,264,-87" scale3D="26,105,43" roll=-49 yaw=-120/> |
---|
710 | <Model mesh="cube.mesh" mass=10 position="50,264,87" scale3D="26,105,43" roll=-49 yaw=-240/> --> |
---|
711 | </attached> |
---|
712 | <collisionShapes> |
---|
713 | <BoxCollisionShape position="-560,0,0" halfExtents="115,100,245" /><!-- Three lower boxes --> |
---|
714 | <BoxCollisionShape position="290,0,-480" halfExtents="115,100,245" yaw=-120 /> |
---|
715 | <BoxCollisionShape position="290,0,480" halfExtents="115,100,245" yaw=-240 /> |
---|
716 | <BoxCollisionShape position="-280,0,0" halfExtents="163,50,50" /><!-- Three lower connections --> |
---|
717 | <BoxCollisionShape position="140,0,-240" halfExtents="163,50,50" yaw=-120 /> |
---|
718 | <BoxCollisionShape position="140,0,240" halfExtents="163,50,50" yaw=-240 /> |
---|
719 | <BoxCollisionShape position="0,530,0" halfExtents="172,52,298" /><!-- Upper Tower --> |
---|
720 | <BoxCollisionShape position="0,530,0" halfExtents="172,52,298" yaw=-120 /> |
---|
721 | <BoxCollisionShape position="0,530,0" halfExtents="172,52,298" yaw=-240 /> |
---|
722 | <BoxCollisionShape position="0,400,0" halfExtents="43,110,26" yaw=-30 /><!-- Middle one--> |
---|
723 | <BoxCollisionShape position="-200,100,0" halfExtents="26,50,43" /><!--Three lower legs --> |
---|
724 | <BoxCollisionShape position="100,100,-173" halfExtents="43,50,26" yaw=-30 /> |
---|
725 | <BoxCollisionShape position="100,100,-173" halfExtents="43,50,26" yaw=30 /> |
---|
726 | <BoxCollisionShape position="-100,264,0" halfExtents="26,105,43" roll=-49 /><!--Three upper legs --> |
---|
727 | <BoxCollisionShape position="50,264,-87" halfExtents="26,105,43" roll=-49 yaw=-120 /> |
---|
728 | <BoxCollisionShape position="50,264,87" halfExtents="26,105,43" roll=-49 yaw=-240 /> |
---|
729 | </collisionShapes> |
---|
730 | </SpaceShip> |
---|
731 | |
---|
732 | <Billboard position="-48900,0,0" material="Examples/Flare" colour="0.6,0,0" scale=3/> |
---|
733 | <Dock position="-48900,0,0" roll=90 yaw=180 > |
---|
734 | <animations> |
---|
735 | <MoveToDockingTarget target="destroyer" /> |
---|
736 | </animations> |
---|
737 | <effects> |
---|
738 | <DockToShip target="spaceShip" /> |
---|
739 | </effects> |
---|
740 | <events> |
---|
741 | <execute> |
---|
742 | <EventListener event="dockMe" /> |
---|
743 | </execute> |
---|
744 | </events> |
---|
745 | <attached> |
---|
746 | <DistanceTrigger position="10,-202, -42" distance="800" target="Pawn" |
---|
747 | beaconMode="exclude" targetname="bcnDestroyer" name="dockMe" |
---|
748 | /> |
---|
749 | </attached> |
---|
750 | </Dock> |
---|
751 | |
---|
752 | <SpaceShip template="spaceshipspacecruiser" position="-48900,800,0" orientation="-0.14, 0.68, 0.68, 0.223" health="300" maxhealth="400" initialhealth="300" name="cruiser" > |
---|
753 | <attached> |
---|
754 | <DockingTarget name="spaceShip" /> |
---|
755 | </attached> |
---|
756 | </SpaceShip> |
---|
757 | |
---|
758 | <!-- TESTBOX--> |
---|
759 | |
---|
760 | <!-- TESTBOX--> |
---|
761 | |
---|
762 | <Trigger name="cruiserKilled" mode="and" stayActive="true"> |
---|
763 | <EventTrigger stayActive="true"> |
---|
764 | <events> |
---|
765 | <trigger> |
---|
766 | <EventListener event="cruiser"/> |
---|
767 | </trigger> |
---|
768 | </events> |
---|
769 | </EventTrigger> |
---|
770 | <EventTrigger invert=true> |
---|
771 | <events> |
---|
772 | <trigger> |
---|
773 | <EventListener event="ondock" /> |
---|
774 | </trigger> |
---|
775 | </events> |
---|
776 | </EventTrigger> |
---|
777 | </Trigger> |
---|
778 | |
---|
779 | |
---|
780 | <EventTrigger delay=4 name="earlyEnd"> |
---|
781 | <events> |
---|
782 | <trigger> |
---|
783 | <EventListener event="cruiserKilled" /> |
---|
784 | </trigger> |
---|
785 | </events> |
---|
786 | <events> |
---|
787 | <activity> |
---|
788 | <EventListener event="movingpirates2" /> |
---|
789 | </activity> |
---|
790 | </events> |
---|
791 | </EventTrigger> |
---|
792 | |
---|
793 | <EventTrigger delay=4 name="earlyEnd"> |
---|
794 | <events> |
---|
795 | <trigger> |
---|
796 | <EventListener event="HydroFarmer" /> |
---|
797 | </trigger> |
---|
798 | </events> |
---|
799 | <events> |
---|
800 | <activity> |
---|
801 | <EventListener event="movingpirates2" /> |
---|
802 | </activity> |
---|
803 | </events> |
---|
804 | </EventTrigger> |
---|
805 | |
---|
806 | |
---|
807 | |
---|
808 | <SimpleNotification message="Oh no! You killed the Hydrogen Farmer!" broadcast="true"> |
---|
809 | <events> |
---|
810 | <trigger> |
---|
811 | <EventListener event="HydroFarmer" /> |
---|
812 | </trigger> |
---|
813 | </events> |
---|
814 | </SimpleNotification> |
---|
815 | |
---|
816 | <SimpleNotification message="Oh no! You killed the SpaceCruiser!" broadcast="true"> |
---|
817 | <events> |
---|
818 | <trigger> |
---|
819 | <EventListener event="cruiserKilled" /> |
---|
820 | </trigger> |
---|
821 | </events> |
---|
822 | </SimpleNotification> |
---|
823 | |
---|
824 | <SimpleNotification message="Press 'Esc' and restart the mission." broadcast="true"> |
---|
825 | <events> |
---|
826 | <trigger> |
---|
827 | <EventListener event="earlyEnd" /> |
---|
828 | </trigger> |
---|
829 | </events> |
---|
830 | </SimpleNotification> |
---|
831 | |
---|
832 | |
---|
833 | <!-- hydrogen farmer & docking END --> |
---|
834 | |
---|
835 | |
---|
836 | <!-- @Objects: Pickup - find better place !! --> |
---|
837 | <PickupSpawner position="-48650,700,100" triggerDistance="70" respawnTime="30" maxSpawnedItems="1"> |
---|
838 | <pickup> |
---|
839 | <ShieldPickup template=hugeshieldpickup /> |
---|
840 | </pickup> |
---|
841 | </PickupSpawner> |
---|
842 | |
---|
843 | |
---|
844 | <DistanceTrigger name="pickup" position="-48650,700,100" target="Pawn" distance=60 stayActive="true" delay=0 /> |
---|
845 | <SimpleNotification message="This pickup protects your spaceship."> |
---|
846 | <events> |
---|
847 | <trigger> |
---|
848 | <EventListener event=pickup /> |
---|
849 | </trigger> |
---|
850 | </events> |
---|
851 | </SimpleNotification> |
---|
852 | <!-- Pickup--> |
---|
853 | |
---|
854 | |
---|
855 | <!-- @Objects: planet && spaceboundaries --> |
---|
856 | <Planet |
---|
857 | position="-44000,0,0" |
---|
858 | scale="2500" |
---|
859 | collisionType="dynamic" |
---|
860 | linearDamping="0.8" |
---|
861 | angularDamping="0" |
---|
862 | mass="10000000" |
---|
863 | pitch="0" |
---|
864 | mesh="planets/muunilinst.mesh" |
---|
865 | atmosphere="atmosphere1" |
---|
866 | rotationaxis="1,0,0" |
---|
867 | rotationrate="1.0" |
---|
868 | atmospheresize="80.0f" |
---|
869 | imagesize="1024.0f" |
---|
870 | collisiondamage = "2" |
---|
871 | enablecollisiondamage = "false" |
---|
872 | > |
---|
873 | <!--attached> |
---|
874 | <ForceField position="0,0,0" mode="sphere" diameter="10000" velocity="-50" /> |
---|
875 | </attached--> <!-- Forcefield kills HYDROGEN FARMER--> |
---|
876 | <collisionShapes> |
---|
877 | <SphereCollisionShape radius="2500" position="0,0,0" /> |
---|
878 | </collisionShapes> |
---|
879 | </Planet> |
---|
880 | |
---|
881 | |
---|
882 | <!-------------------------------------- The attack ---------------------------------------> |
---|
883 | |
---|
884 | <!-- TODO: |
---|
885 | - update spaceshipTransporter |
---|
886 | - bots do friendly fire (is drone function reusable?) |
---|
887 | --> |
---|
888 | |
---|
889 | <!-- @Triggers: toHydroFamer <-> first portal usage |
---|
890 | ondock <-> successfull docking |
---|
891 | attack <-> second portal usage --> |
---|
892 | |
---|
893 | <DistanceTrigger name="attack" position="-1400,-500,800" target="Pawn" distance=100 stayActive="true" > |
---|
894 | <EventTrigger name="ondock" activations="1" stayactive="true" delay=6> |
---|
895 | <events> |
---|
896 | <trigger> |
---|
897 | <EventListener event="dockMe" /> |
---|
898 | </trigger> |
---|
899 | </events> |
---|
900 | <DistanceTrigger name="toHydroFarmer" position="-47000,-1000,1300" target="Pawn" distance=100 stayActive="true" /> |
---|
901 | </EventTrigger> |
---|
902 | </DistanceTrigger> |
---|
903 | |
---|
904 | <SimpleNotification message="Return before it's too late. Boost with 'Space'." broadcast="true"> |
---|
905 | <events> |
---|
906 | <trigger> |
---|
907 | <EventListener event=ondock /> |
---|
908 | </trigger> |
---|
909 | </events> |
---|
910 | </SimpleNotification> |
---|
911 | |
---|
912 | <SimpleNotification message="Several serious enemies are approaching!"> |
---|
913 | <events> |
---|
914 | <trigger> |
---|
915 | <EventListener event=attack /> |
---|
916 | </trigger> |
---|
917 | </events> |
---|
918 | </SimpleNotification> |
---|
919 | |
---|
920 | |
---|
921 | |
---|
922 | <!-- @Objects: 6 pirates, heading towards DuBall, attacking --> |
---|
923 | <!-- 1 --> |
---|
924 | <SpaceShip position="3000,-4000,4000" lookat="-1300,-600,900" name="attacker"visible="true"> |
---|
925 | <events> |
---|
926 | <visibility> |
---|
927 | <EventListener event="ondock" /> |
---|
928 | </visibility> |
---|
929 | </events> |
---|
930 | <templates> |
---|
931 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
932 | </templates> |
---|
933 | <controller> |
---|
934 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
935 | <waypoints> |
---|
936 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
937 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
938 | </waypoints> |
---|
939 | <events> |
---|
940 | <activity> |
---|
941 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
942 | </activity> |
---|
943 | </events> |
---|
944 | </WaypointPatrolController> |
---|
945 | </controller> |
---|
946 | </SpaceShip> |
---|
947 | <!-- 2 --> |
---|
948 | <SpaceShip position="3000,-4000,-4000" lookat="-1300,-600,900" name="attacker" visible="true"> |
---|
949 | <events> |
---|
950 | <visibility> |
---|
951 | <EventListener event="ondock" /> |
---|
952 | </visibility> |
---|
953 | </events> |
---|
954 | <templates> |
---|
955 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
956 | </templates> |
---|
957 | <controller> |
---|
958 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
959 | <waypoints> |
---|
960 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
961 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
962 | </waypoints> |
---|
963 | <events> |
---|
964 | <activity> |
---|
965 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
966 | </activity> |
---|
967 | </events> |
---|
968 | </WaypointPatrolController> |
---|
969 | </controller> |
---|
970 | </SpaceShip> |
---|
971 | <!-- 3 --> |
---|
972 | <SpaceShip position="-4000,-3000,4000" lookat="-1300,-600,900" name="attacker" visible="true"> |
---|
973 | <events> |
---|
974 | <visibility> |
---|
975 | <EventListener event="ondock" /> |
---|
976 | </visibility> |
---|
977 | </events> |
---|
978 | <templates> |
---|
979 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
980 | </templates> |
---|
981 | <controller> |
---|
982 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
983 | <waypoints> |
---|
984 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
985 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
986 | </waypoints> |
---|
987 | <events> |
---|
988 | <activity> |
---|
989 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
990 | </activity> |
---|
991 | </events> |
---|
992 | </WaypointPatrolController> |
---|
993 | </controller> |
---|
994 | </SpaceShip> |
---|
995 | <!-- 4 --> |
---|
996 | <SpaceShip position="-3000,-3000,-5000" lookat="-1300,-600,900" name="attacker" visible="true"> |
---|
997 | <events> |
---|
998 | <visibility> |
---|
999 | <EventListener event="ondock" /> |
---|
1000 | </visibility> |
---|
1001 | </events> |
---|
1002 | <templates> |
---|
1003 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
1004 | </templates> |
---|
1005 | <controller> |
---|
1006 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
1007 | <waypoints> |
---|
1008 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
1009 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
1010 | </waypoints> |
---|
1011 | <events> |
---|
1012 | <activity> |
---|
1013 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
1014 | </activity> |
---|
1015 | </events> |
---|
1016 | </WaypointPatrolController> |
---|
1017 | </controller> |
---|
1018 | </SpaceShip> |
---|
1019 | <!-- 5 --> |
---|
1020 | <SpaceShip position="4000,4000,3000" lookat="-1300,-600,900" name="attacker"visible="true"> |
---|
1021 | <events> |
---|
1022 | <visibility> |
---|
1023 | <EventListener event="ondock" /> |
---|
1024 | </visibility> |
---|
1025 | </events> |
---|
1026 | <templates> |
---|
1027 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
1028 | </templates> |
---|
1029 | <controller> |
---|
1030 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
1031 | <waypoints> |
---|
1032 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
1033 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
1034 | </waypoints> |
---|
1035 | <events> |
---|
1036 | <activity> |
---|
1037 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
1038 | </activity> |
---|
1039 | </events> |
---|
1040 | </WaypointPatrolController> |
---|
1041 | </controller> |
---|
1042 | </SpaceShip> |
---|
1043 | <!-- 6 --> |
---|
1044 | <SpaceShip position="2000,-4000,5000" lookat="-1300,-600,900" name="attacker" visible="true"> |
---|
1045 | <events> |
---|
1046 | <visibility> |
---|
1047 | <EventListener event="ondock" /> |
---|
1048 | </visibility> |
---|
1049 | </events> |
---|
1050 | <templates> |
---|
1051 | <Template link=spaceshippirate /> <!--spaceshipTransporter --> |
---|
1052 | </templates> |
---|
1053 | <controller> |
---|
1054 | <WaypointPatrolController alertnessradius=3129 team=1 active=false> |
---|
1055 | <waypoints> |
---|
1056 | <Model mesh="cube.mesh" scale=0 position="-1300,-600,900" /> |
---|
1057 | <Model mesh="cube.mesh" scale=0 position="0,0,0" /> |
---|
1058 | </waypoints> |
---|
1059 | <events> |
---|
1060 | <activity> |
---|
1061 | <EventListener event="attack" /> <!-- activates enemies--> |
---|
1062 | </activity> |
---|
1063 | </events> |
---|
1064 | </WaypointPatrolController> |
---|
1065 | </controller> |
---|
1066 | </SpaceShip> |
---|
1067 | |
---|
1068 | <!-- @Triggers: attacktriggerX <-> X enemies destroyed , X is an element of [1,6] --> |
---|
1069 | <EventTrigger name="attacktrigger6" activations="1" stayactive="true"> |
---|
1070 | <events> |
---|
1071 | <trigger> |
---|
1072 | <EventListener event="attacker" /> |
---|
1073 | </trigger> |
---|
1074 | </events> |
---|
1075 | <EventTrigger name="attacktrigger5" activations="1" stayactive="true" delay=0.1> |
---|
1076 | <events> |
---|
1077 | <trigger> |
---|
1078 | <EventListener event="attacker" /> |
---|
1079 | </trigger> |
---|
1080 | </events> |
---|
1081 | <EventTrigger name="attacktrigger4" activations="1" stayactive="true" delay=0.1> |
---|
1082 | <events> |
---|
1083 | <trigger> |
---|
1084 | <EventListener event="attacker" /> |
---|
1085 | </trigger> |
---|
1086 | </events> |
---|
1087 | <EventTrigger name="attacktrigger3" activations="1" stayactive="true" delay=0.1> |
---|
1088 | <events> |
---|
1089 | <trigger> |
---|
1090 | <EventListener event="attacker" /> |
---|
1091 | </trigger> |
---|
1092 | </events> |
---|
1093 | <EventTrigger name="attacktrigger2" activations="1" stayactive="true" delay=0.1> |
---|
1094 | <events> |
---|
1095 | <trigger> |
---|
1096 | <EventListener event="attacker" /> |
---|
1097 | </trigger> |
---|
1098 | </events> |
---|
1099 | <EventTrigger name="attacktrigger1" activations="1" stayactive="true" delay=0.1> |
---|
1100 | <events> |
---|
1101 | <trigger> |
---|
1102 | <EventListener event="attacker" /> |
---|
1103 | </trigger> |
---|
1104 | </events> |
---|
1105 | </EventTrigger> |
---|
1106 | </EventTrigger> |
---|
1107 | </EventTrigger> |
---|
1108 | </EventTrigger> |
---|
1109 | </EventTrigger> |
---|
1110 | </EventTrigger> |
---|
1111 | |
---|
1112 | |
---|
1113 | <SimpleNotification message="5 enemies left!" broadcast="true"> |
---|
1114 | <events> |
---|
1115 | <trigger> |
---|
1116 | <EventListener event="attacktrigger1" /> |
---|
1117 | </trigger> |
---|
1118 | </events> |
---|
1119 | </SimpleNotification> |
---|
1120 | |
---|
1121 | <SimpleNotification message="4 enemies left!" broadcast="true"> |
---|
1122 | <events> |
---|
1123 | <trigger> |
---|
1124 | <EventListener event="attacktrigger2" /> |
---|
1125 | </trigger> |
---|
1126 | </events> |
---|
1127 | </SimpleNotification> |
---|
1128 | |
---|
1129 | <SimpleNotification message="3 enemies left!" broadcast="true"> |
---|
1130 | <events> |
---|
1131 | <trigger> |
---|
1132 | <EventListener event="attacktrigger3" /> |
---|
1133 | </trigger> |
---|
1134 | </events> |
---|
1135 | </SimpleNotification> |
---|
1136 | |
---|
1137 | <SimpleNotification message="2 enemies left!" broadcast="true"> |
---|
1138 | <events> |
---|
1139 | <trigger> |
---|
1140 | <EventListener event="attacktrigger4" /> |
---|
1141 | </trigger> |
---|
1142 | </events> |
---|
1143 | </SimpleNotification> |
---|
1144 | <SimpleNotification message="One enemy left!" broadcast="true"> |
---|
1145 | <events> |
---|
1146 | <trigger> |
---|
1147 | <EventListener event="attacktrigger5" /> |
---|
1148 | </trigger> |
---|
1149 | </events> |
---|
1150 | </SimpleNotification> |
---|
1151 | <SimpleNotification message="Well done. You finished this tutorial." broadcast="true"> |
---|
1152 | <events> |
---|
1153 | <trigger> |
---|
1154 | <EventListener event="attacktrigger6" /> |
---|
1155 | </trigger> |
---|
1156 | </events> |
---|
1157 | </SimpleNotification> |
---|
1158 | |
---|
1159 | <!-- @Triggers: postAttack <-> delayed attacktrigger6 --> |
---|
1160 | <EventTrigger name="postAttack1" activations="1" stayactive="true" delay=3> |
---|
1161 | <events> |
---|
1162 | <trigger> |
---|
1163 | <EventListener event="attacktrigger6" /> |
---|
1164 | </trigger> |
---|
1165 | </events> |
---|
1166 | </EventTrigger> |
---|
1167 | |
---|
1168 | <EventTrigger name="postAttack2" activations="1" stayactive="true" delay=6> |
---|
1169 | <events> |
---|
1170 | <trigger> |
---|
1171 | <EventListener event="attacktrigger6" /> |
---|
1172 | </trigger> |
---|
1173 | </events> |
---|
1174 | </EventTrigger> |
---|
1175 | |
---|
1176 | <SimpleNotification message="Either quit by pressing 'Esc' or ..." broadcast="true"> |
---|
1177 | <events> |
---|
1178 | <trigger> |
---|
1179 | <EventListener event="postAttack1" /> |
---|
1180 | </trigger> |
---|
1181 | </events> |
---|
1182 | </SimpleNotification> |
---|
1183 | |
---|
1184 | <SimpleNotification message="... stay here to learn some tricks." broadcast="true"> |
---|
1185 | <events> |
---|
1186 | <trigger> |
---|
1187 | <EventListener event="postAttack2" /> |
---|
1188 | </trigger> |
---|
1189 | </events> |
---|
1190 | </SimpleNotification> |
---|
1191 | |
---|
1192 | <!-------------------------------------- |Bonus Part| ---------------------------------------> |
---|
1193 | <!-- @Triggers: "bonusX" <-> delayed "attacktrigger6" --> |
---|
1194 | <EventTrigger name="bonus1" activations="1" stayactive="true" delay=10> |
---|
1195 | <events> |
---|
1196 | <trigger> |
---|
1197 | <EventListener event="attacktrigger6" /> |
---|
1198 | </trigger> |
---|
1199 | </events> |
---|
1200 | </EventTrigger> |
---|
1201 | <EventTrigger name="bonus2" activations="1" stayactive="true" delay=16> |
---|
1202 | <events> |
---|
1203 | <trigger> |
---|
1204 | <EventListener event="attacktrigger6" /> |
---|
1205 | </trigger> |
---|
1206 | </events> |
---|
1207 | </EventTrigger> |
---|
1208 | <EventTrigger name="bonus3" activations="1" stayactive="true" delay=22> |
---|
1209 | <events> |
---|
1210 | <trigger> |
---|
1211 | <EventListener event="attacktrigger6" /> |
---|
1212 | </trigger> |
---|
1213 | </events> |
---|
1214 | </EventTrigger> |
---|
1215 | <EventTrigger name="bonus4" activations="1" stayactive="true" delay=28> |
---|
1216 | <events> |
---|
1217 | <trigger> |
---|
1218 | <EventListener event="attacktrigger6" /> |
---|
1219 | </trigger> |
---|
1220 | </events> |
---|
1221 | </EventTrigger> |
---|
1222 | <EventTrigger name="bonus5" activations="1" stayactive="true" delay=32.1> |
---|
1223 | <events> |
---|
1224 | <trigger> |
---|
1225 | <EventListener event="attacktrigger6" /> |
---|
1226 | </trigger> |
---|
1227 | </events> |
---|
1228 | </EventTrigger> |
---|
1229 | <EventTrigger name="bonus6" activations="1" stayactive="true" delay=36.2> |
---|
1230 | <events> |
---|
1231 | <trigger> |
---|
1232 | <EventListener event="attacktrigger6" /> |
---|
1233 | </trigger> |
---|
1234 | </events> |
---|
1235 | </EventTrigger> |
---|
1236 | <EventTrigger name="bonus7" activations="1" stayactive="true" delay=4> |
---|
1237 | <events> |
---|
1238 | <trigger> |
---|
1239 | <EventListener event="bonus6" /> |
---|
1240 | </trigger> |
---|
1241 | </events> |
---|
1242 | </EventTrigger> |
---|
1243 | |
---|
1244 | |
---|
1245 | |
---|
1246 | <SimpleNotification message="Rotate your ship. Press 'Q' or 'E'. " broadcast="true"> |
---|
1247 | <events> |
---|
1248 | <trigger> |
---|
1249 | <EventListener event=bonus1 /> |
---|
1250 | </trigger> |
---|
1251 | </events> |
---|
1252 | </SimpleNotification> |
---|
1253 | |
---|
1254 | <SimpleNotification message="Switch the camera's position. Press 'C'. " broadcast="true"> |
---|
1255 | <events> |
---|
1256 | <trigger> |
---|
1257 | <EventListener event=bonus2 /> |
---|
1258 | </trigger> |
---|
1259 | </events> |
---|
1260 | </SimpleNotification> |
---|
1261 | |
---|
1262 | <SimpleNotification message="360° view: press 'Ctrl' + use the mouse " broadcast="true"> |
---|
1263 | <events> |
---|
1264 | <trigger> |
---|
1265 | <EventListener event=bonus3 /> |
---|
1266 | </trigger> |
---|
1267 | </events> |
---|
1268 | </SimpleNotification> |
---|
1269 | |
---|
1270 | <SimpleNotification message="Have a look at the main menu's settings." broadcast="true"> |
---|
1271 | <events> |
---|
1272 | <trigger> |
---|
1273 | <EventListener event=bonus4 /> |
---|
1274 | </trigger> |
---|
1275 | </events> |
---|
1276 | </SimpleNotification> |
---|
1277 | |
---|
1278 | <SimpleNotification message="E.g: Settings > Miscellaneous > Nr. of bots" broadcast="true"> |
---|
1279 | <events> |
---|
1280 | <trigger> |
---|
1281 | <EventListener event=bonus5 /> |
---|
1282 | </trigger> |
---|
1283 | </events> |
---|
1284 | </SimpleNotification> |
---|
1285 | |
---|
1286 | <SimpleNotification message="You successfully finished Mission One!" broadcast="true"> |
---|
1287 | <events> |
---|
1288 | <trigger> |
---|
1289 | <EventListener event=bonus6 /> |
---|
1290 | </trigger> |
---|
1291 | </events> |
---|
1292 | </SimpleNotification> |
---|
1293 | |
---|
1294 | <SimpleNotification message="Press 'Esc' and return to the main menu." broadcast="true"> |
---|
1295 | <events> |
---|
1296 | <trigger> |
---|
1297 | <EventListener event=bonus7 /> |
---|
1298 | </trigger> |
---|
1299 | </events> |
---|
1300 | </SimpleNotification> |
---|
1301 | |
---|
1302 | |
---|
1303 | <!--Script code="addBots 3" onLoad="false"> |
---|
1304 | <events> |
---|
1305 | <trigger> |
---|
1306 | <EventListener event=bonus6 /> |
---|
1307 | </trigger> |
---|
1308 | </events> |
---|
1309 | </Script> |
---|
1310 | |
---|
1311 | <Script code="artificialcontroller setbotlevel 0.1" onLoad="false"> |
---|
1312 | <events> |
---|
1313 | <trigger> |
---|
1314 | <EventListener event=bonus6 /> |
---|
1315 | </trigger> |
---|
1316 | </events> |
---|
1317 | </Script--> |
---|
1318 | <!-- Script code="artificialcontroller setbotlevel 0.1" /--> |
---|
1319 | </Scene> |
---|
1320 | </Level> |
---|
1321 | <!-- TODO: |
---|
1322 | ! Quest Interface |
---|
1323 | - Foolproof text messages (e.g. verspätete Nachrichten unterdrücken) |
---|
1324 | - Radar visibility & Hud Markers (done) |
---|
1325 | - End Tutorial, if either the Hydrogen Farmer or the SpaceCruiser gets destroyed. (~done) |
---|
1326 | |
---|
1327 | --> |
---|