Index: code/branches/campaignHS15/data/levels/Campaign1.oxw
===================================================================
--- code/branches/campaignHS15/data/levels/Campaign1.oxw	(revision 10802)
+++ code/branches/campaignHS15/data/levels/Campaign1.oxw	(revision 10804)
@@ -14,6 +14,7 @@
     include("templates/spaceshipPirate.oxt")
     include("templates/spaceshipEscort.oxt")
-    include("templates/spaceshipTransporter.oxt")
+    include("templates/spaceshipShuttle.oxt")
     include("templates/FPS.oxt")
+    include("templates/pickupRepresentationTemplates.oxt")
 ?>
 
@@ -289,5 +290,5 @@
     </EventDispatcher>
 
-    <DistanceTrigger active=false name="reachedC" position="<?lua printC(cC) ?>" distance=1000 target="SpaceShip" beaconMode="exclude" targetname="NPC" stayactive=true>
+    <DistanceTrigger active=false name="reachedC" position="<?lua printC(cC) ?>" distance=400 target="SpaceShip" beaconMode="exclude" targetname="NPC" stayactive=true>
         <events>
             <activity>
@@ -679,5 +680,5 @@
     <!-- (Temporary) Template for stations. Used to define common features of all Stations. -->
     <Template name="station">
-        <Pawn mass=10000 collisionType=dynamic friction=0.01>
+        <Pawn mass=10000000 collisionType=dynamic friction=0.01>
             <attached>
                 <Model mesh="HydroHarvester.mesh" position="0,0,0" scale=50 />
@@ -706,5 +707,5 @@
 
     <!-- A, Coordinates are approx. (cos(29pi/16), sin(29pi/16), 0)*3000 -->
-    <Pawn name="statA" team=0 radarname="Station A" position="<?lua printC(cA) ?>" direction="<?lua printC(dStation) ?>" initialhealth=10000 maxhealth=10000>
+    <Pawn name="statA" team=0 radarname="Station A" position="<?lua printC(cA) ?>" direction="<?lua printC(dStation) ?>" yaw=-50 initialhealth=10000 maxhealth=10000>
         <templates>
             <Template link="station" />
@@ -733,5 +734,5 @@
 
     <!-- B, Coordinates are approx. (-cos(29pi/16), sin(29pi/16), 0)*3000 -->
-    <Pawn name="statB" team=0 radarname="Station B" position="<?lua printC(cB) ?>" direction="<?lua printC(dStation) ?>" initialhealth=10000 maxhealth=10000>
+    <Pawn name="statB" team=0 radarname="Station B" position="<?lua printC(cB) ?>" direction="<?lua printC(dStation) ?>" yaw=210 initialhealth=10000 maxhealth=10000>
         <templates>
             <Template link="station" />
@@ -739,5 +740,5 @@
         <attached>
             <DockingTarget name="dockTargetB" />
-            <Dock position="0,0,0" active=true>
+            <Dock position="0,0,0" active=false>
                 <animations>
                     <MoveToDockingTarget target="dockTargetB" />
@@ -766,5 +767,5 @@
         <attached>
             <DockingTarget name="dockTargetC" />
-            <Dock position="0,0,0" active=true>
+            <Dock position="0,0,0">
                 <animations>
                     <MoveToDockingTarget target="dockTargetC" />
@@ -777,7 +778,4 @@
                         <EventListener event="dockC" />
                     </execute>
-                    <active>
-                        <EventListener event="reachedC" />
-                    </active>
                 </events>
                 <attached>
@@ -791,10 +789,13 @@
                                 <EventListener event="undockC" />
                             </execute>
-                            <active>
-                                <EventListener event="reachedC" />
-                            </active>
                         </events>
                     </Dock>
-                    <DistanceTrigger position="0,0,0" distance="200" target="SpaceShip" beaconMode="exclude" targetname="NPC" name="dockC" />
+                    <DistanceTrigger active=false position="0,0,0" distance="200" target="SpaceShip" beaconMode="exclude" targetname="NPC" name="dockC">
+                        <events>
+                            <activity>
+                                <EventListener event="reachedC" />
+                            </activity>
+                        </events>
+                    </DistanceTrigger>
                     <Billboard position="0,0,0" amplitude=1 material="Flares/lensflare" colour="1,0,0.05" />
                 </attached>
@@ -811,5 +812,5 @@
             health              = "400"
             initialhealth       = "400"
-            maxhealth           = "500"
+            maxhealth           = "1500"
             shieldhealth        = "80"
             initialshieldhealth = "80"
@@ -924,5 +925,5 @@
 
     <!-- Box with Pickups. TODO: Pickups! -->
-    <Pawn team=0 name="gotPickups" health=30 position="<?lua print((cC[1]+600) .. ',' .. cC[2] .. ',' .. (cC[3]-600)) ?>" direction="0,-1,0" collisionType=dynamic mass=1000 radarname="Supplies" >
+    <SpaceShip team=0 name="gotPickups" health=30 position="<?lua print((cC[1]+600) .. ',' .. cC[2] .. ',' .. (cC[3]-600)) ?>" direction="0,-1,0" collisionType=dynamic mass=1000 radarname="Supplies" >
         <events>
             <visibility>
@@ -934,30 +935,47 @@
         </events>
         <attached>
-            <Model position="0,0,0" mesh="crate.mesh" scale3D="5,5,5" />
+            <Model position="0,0,0" mesh="crate.mesh" scale3D="10,10,10" />
         </attached>
         <collisionShapes>
-            <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" />
+            <BoxCollisionShape position="0,0,0" halfExtents="30,30,30" />
         </collisionShapes>
-    </Pawn>
-
-    <!-- TODO: these pickups do not work somehow?? their templates are not recognized...
-
-    <PickupSpawner pickup=hugehealthpickup position="<?lua print((cC[1]+600) .. ',' .. cC[2] .. ',' .. (cC[3]-600)) ?>" triggerDistance="10" maxSpawnedItems="1" visible="true">
+    </SpaceShip>
+
+    <?lua
+        include("includes/pickups.oxi")
+    ?>
+
+    <PickupSpawner pickup=hugeshieldpickup position="<?lua print((cC[1]+585) .. ',' .. cC[2] .. ',' .. (cC[3]-585)) ?>" triggerDistance="15" maxSpawnedItems="1">
         <events>
             <visibility>
-                <EventListener event="gotPickups" />
+                <EventListener event="readyAfterWave2" />
             </visibility>
+            <activity>
+                <EventListener event="readyAfterWave2" />
+            </activity>
         </events>
     </PickupSpawner>
 
-    <PickupSpawner pickup=mediumspeedpickup position="<?lua print((cC[1]+600) .. ',' .. cC[2] .. ',' .. (cC[3]-600)) ?>" triggerDistance="10" maxSpawnedItems="1"  visible="true">
+    <PickupSpawner pickup=crazyhealthpickup position="<?lua print((cC[1]+615) .. ',' .. cC[2] .. ',' .. (cC[3]-615)) ?>" triggerDistance="15" maxSpawnedItems="1">
         <events>
             <visibility>
-                <EventListener event="gotPickups" />
+                <EventListener event="readyAfterWave2" />
             </visibility>
+            <activity>
+                <EventListener event="readyAfterWave2" />
+            </activity>
         </events>
     </PickupSpawner>
 
-    -->
+    <PickupSpawner pickup=hugespeedpickup position="<?lua print((cC[1]+585) .. ',' .. cC[2] .. ',' .. (cC[3]-615)) ?>" triggerDistance="15" maxSpawnedItems="1" >
+        <events>
+            <visibility>
+                <EventListener event="readyAfterWave2" />
+            </visibility>
+            <activity>
+                <EventListener event="readyAfterWave2" />
+            </activity>
+        </events>
+    </PickupSpawner>
 
     <!-- Allies -->
@@ -1038,5 +1056,5 @@
     <SpaceShip position="<?lua printC(cA) ?>" lookat="<?lua printC(cB) ?>" team=0 name="transporter" radarname="Shuttle">
         <templates>
-            <Template link="spaceshipTransporter" />
+            <Template link="spaceshipShuttle" />
         </templates>
         <attached>
Index: code/branches/campaignHS15/data/levels/templates/spaceshipShuttle.oxt
===================================================================
--- code/branches/campaignHS15/data/levels/templates/spaceshipShuttle.oxt	(revision 10804)
+++ code/branches/campaignHS15/data/levels/templates/spaceshipShuttle.oxt	(revision 10804)
@@ -0,0 +1,97 @@
+<Template name=spaceshipShuttle>
+  <SpaceShip
+   hudtemplate            = spaceshiphud
+   camerapositiontemplate = spaceshipTransportercameras
+   spawnparticlesource    = "Orxonox/fairytwirl"
+   spawnparticleduration  = 3
+   explosionchunks        = 6
+
+   health            = 2000
+   maxhealth         = 2500
+   initialhealth     = 2000
+
+   primaryThrust     = 120;
+   auxilaryThrust    = 20;
+   rotationThrust    = 30;
+
+   collisionType     = "dynamic"
+   mass              = 1000
+   linearDamping     = 0.7
+   angularDamping    = 0.9999999
+  >
+    <engines>
+      <MultiStateEngine position=" 0, 0, 0" template=spaceshipTransporterengine />
+    </engines>
+    <attached>
+      <Model position="0,0,0" yaw=0 pitch=0 roll=0 scale=10 mesh="Transporter.mesh" />
+    </attached>
+    <collisionShapes>
+      <!--TODO: real collision shapes -->
+      <BoxCollisionShape position="0,0,0"      halfExtents="10, 3, 5" />
+      <BoxCollisionShape position="13,-1.3,0"  halfExtents="3, 1, 2" />
+      <BoxCollisionShape position="-13,-1.3,0" halfExtents="3, 1, 2" />
+      <BoxCollisionShape position="0,0,7"      halfExtents="3, 2, 2" />
+      <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
+      <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
+    </collisionShapes>
+
+<?lua
+  include("../includes/weaponSettingsTransporter.oxi")
+?>
+  </SpaceShip>
+</Template>
+
+<Template name=spaceshipTransportercameras defaults=0>
+  <SpaceShip>
+    <camerapositions>
+      <CameraPosition position="0,90,350" drag=true mouselook=true />
+      <CameraPosition position="0,150, 400" drag=true mouselook=true />
+      <CameraPosition position="0,200,550" drag=true mouselook=true />
+      <CameraPosition position="0,120,200" pitch="-80" drag=true mouselook=true />
+    </camerapositions>
+  </SpaceShip>
+</Template>
+
+<Template name=spaceshipTransporterengine baseclass=MultiStateEngine>
+  <MultiStateEngine
+   boostfactor    = 2
+
+   speedfront     = 120
+   speedback      =  20
+   speedleftright =  20
+   speedupdown    =  20
+
+   defEngineSndNormal = "sounds/Engine_low.ogg"
+   defEngineSndBoost = "sounds/Engine_high.ogg"
+
+   accelerationfront     = 40
+   accelerationbrake     = 40
+   accelerationback      = 20
+   accelerationleftright =  20
+   accelerationupdown    =  20
+  >
+    <EffectContainer condition="idle">
+      <WorldSound mainstate="activity" source="sounds/Engine_idle.ogg" looping=1 active=false/>
+    </EffectContainer>
+    <EffectContainer condition="not idle">
+
+    </EffectContainer>
+    <EffectContainer condition="normal or brake">
+
+    </EffectContainer>
+    <EffectContainer condition="normal or boost">
+      <Backlight mainstate=activity active=false scale=2 name=bltest position=" 22, -10, 87" colour="1, 0.7, 0.1, 1.0" width=10 length=3000 lifetime=2 elements=50 trailmaterial="Trail/backlighttrail" turnontime=1 turnofftime=1 material="Flares/ThrusterFlare1" />
+      <Backlight mainstate=activity active=false scale=2 name=bltest position="-22, -10, 87" colour="1, 0.7, 0.1, 1.0" width=10 length=3000 lifetime=2 elements=50 trailmaterial="Trail/backlighttrail" turnontime=1 turnofftime=1 material="Flares/ThrusterFlare1" />
+    </EffectContainer>
+    <EffectContainer condition="boost">
+      <Backlight mainstate=activity active=false scale=3 name=bltest position=" 22, -10, 87" colour="1, 0.7, 0.1, 0.7" width=25 length=2000 lifetime=1 elements=30 trailmaterial="Trail/backlighttrail" turnontime=1 turnofftime=1 material="Examples/Flare" />
+      <Backlight mainstate=activity active=false scale=3 name=bltest position="-22, -10, 87" colour="1, 0.7, 0.1, 0.7" width=25 length=2000 lifetime=1 elements=30 trailmaterial="Trail/backlighttrail" turnontime=1 turnofftime=1 material="Examples/Flare" />
+    </EffectContainer>
+    <EffectContainer condition="brake">
+      <FadingBillboard mainstate=activity active=false scale=2 position=" 22, -10, 87" colour="0.5, 0.0, 0.0, 0.3" material="Examples/Flare" turnontime=0.5 turnofftime=0.5 />
+      <FadingBillboard mainstate=activity active=false scale=2 position="-22, -10, 87" colour="0.5, 0.0, 0.0, 0.3" material="Examples/Flare" turnontime=0.5 turnofftime=0.5 />
+      <FadingBillboard mainstate=activity active=false scale=1 position="22, -10, 87" colour="1.0, 0.0, 0.0, 1.0" material="Flares/backlightflare" turnontime=0.5 turnofftime=0.5 />
+      <FadingBillboard mainstate=activity active=false scale=1 position="-22, -10, 87" colour="1.0, 0.0, 0.0, 1.0" material="Flares/backlightflare" turnontime=0.5 turnofftime=0.5 />
+    </EffectContainer>
+  </MultiStateEngine>
+</Template>
