[Orxonox-commit 6305] r10962 - in code/branches/presentationHS15: . data/levels data/levels/templates src/libraries/tools src/modules/dodgerace src/modules/invader src/orxonox src/orxonox/items src/orxonox/worldentities src/orxonox/worldentities/pawns

maxima at orxonox.net maxima at orxonox.net
Wed Dec 9 16:03:59 CET 2015


Author: maxima
Date: 2015-12-09 16:03:59 +0100 (Wed, 09 Dec 2015)
New Revision: 10962

Added:
   code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.cc
   code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.h
Removed:
   code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.cc
   code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.h
Modified:
   code/branches/presentationHS15/
   code/branches/presentationHS15/data/levels/HeavyCruiser.oxw
   code/branches/presentationHS15/data/levels/emptyLevel.oxw
   code/branches/presentationHS15/data/levels/iiiJohnVane_EscapeTheBastards.oxw
   code/branches/presentationHS15/data/levels/kecks.oxw
   code/branches/presentationHS15/data/levels/missionOne.oxw
   code/branches/presentationHS15/data/levels/templates/FPS.oxt
   code/branches/presentationHS15/data/levels/templates/FPS_HS14.oxt
   code/branches/presentationHS15/data/levels/templates/HeavyCruiser.oxt
   code/branches/presentationHS15/data/levels/templates/HeavyCruiserBody.oxt
   code/branches/presentationHS15/data/levels/templates/ModularSpaceShipTest.oxt
   code/branches/presentationHS15/data/levels/templates/bigship.oxt
   code/branches/presentationHS15/data/levels/templates/enemyInvader.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipAssff.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipAssff2.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipCollateralDamage.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipDodgeRace.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipEscort.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipGhost.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipH2.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipHXY.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipHXYSL.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipHeartAttack.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipHover.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipInvader.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipPirate.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipRace.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipRing.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipSpacecruiser.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipSwallow.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipTransporter.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipTransporterSL.oxt
   code/branches/presentationHS15/data/levels/templates/spaceshipTurret.oxt
   code/branches/presentationHS15/src/libraries/tools/ParticleInterface.cc
   code/branches/presentationHS15/src/libraries/tools/ParticleInterface.h
   code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.cc
   code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.h
   code/branches/presentationHS15/src/modules/invader/Invader.cc
   code/branches/presentationHS15/src/orxonox/OrxonoxPrereqs.h
   code/branches/presentationHS15/src/orxonox/items/ShipPart.cc
   code/branches/presentationHS15/src/orxonox/worldentities/CMakeLists.txt
   code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.cc
   code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.h
   code/branches/presentationHS15/src/orxonox/worldentities/pawns/SpaceShip.cc
Log:
Merged presentation and exlposionChunks branches. Works fine. Added explosion parts to hovership.


Property changes on: code/branches/presentationHS15
___________________________________________________________________
Modified: svn:mergeinfo
   - /code/branches/ParticleEffectsFS15:10309-10612
/code/branches/Racingbot:9388-9513
/code/branches/SciptableControllerFS15:10308-10613
/code/branches/ScriptableController:9999-10075
/code/branches/ai:6592-7033
/code/branches/ai2:8721-8880
/code/branches/bigships:8137-8588
/code/branches/buildsystem:1874-2276,2278-2400
/code/branches/buildsystem2:2506-2658
/code/branches/buildsystem3:2662-2708
/code/branches/ceguilua:1802-1808
/code/branches/chat:6527-6797
/code/branches/chat2:6836-6910
/code/branches/clangenb:10385-10609
/code/branches/console:5941-6104
/code/branches/consolecommands2:6451-7178
/code/branches/consolecommands3:7178-7283
/code/branches/core3:1572-1739
/code/branches/core4:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5:5768-5928,6009
/code/branches/core6:9552-9666
/code/branches/core7:10328-10623
/code/branches/data_cleanup:7537-7686
/code/branches/doc:7290-7400
/code/branches/dockingsystem:8101-8192
/code/branches/dockingsystem2:8196-8560
/code/branches/dynamicmatch:6584-7030
/code/branches/environment3:8887-8975
/code/branches/fabienHS15:10685-10960
/code/branches/formation:8885-8991
/code/branches/formationFS15:10320-10610
/code/branches/formationupdate:9580-9624
/code/branches/fps:6591-7072
/code/branches/gamecontent:8893-8968
/code/branches/gameimmersion:8102-8577
/code/branches/gamestate:6430-6572,6621-6661
/code/branches/gamestates2:6594-6745
/code/branches/gametypes:2826-3031
/code/branches/gcc43:1580
/code/branches/gui:1635-1723,2795-2894
/code/branches/hoverHS15:10633-10959
/code/branches/hud:8883-8986
/code/branches/hudHS14:10083-10241
/code/branches/hudelements:6584-6941
/code/branches/hudimprovements:7920-8672
/code/branches/ingamemenu:6000-6023
/code/branches/input:1629-1636
/code/branches/invaders:9694-9896
/code/branches/ipv6:7293-7458
/code/branches/keckslevelHS14:10082-10222
/code/branches/kicklib:7940-8096,8098-8277
/code/branches/kicklib2:8282-8350
/code/branches/largeShip1:9384-9515
/code/branches/lastmanstanding:7479-7644
/code/branches/lastmanstanding3:7903-8175
/code/branches/levelElias:9697-9921
/code/branches/levelKaan:9695-9921
/code/branches/levelMichael:9696-9921
/code/branches/leveljoemeHS14:10087-10223
/code/branches/libraries:5612-5692
/code/branches/libraries2:5703-5737
/code/branches/libs:9668-9674
/code/branches/lod:6586-6911
/code/branches/lodfinal:2372-2411
/code/branches/mac_osx:7789-8128,8135
/code/branches/map:2801-3086,3089
/code/branches/masterserver:7502-7738
/code/branches/masterserverfix:8933-8936
/code/branches/menu:5941-6146,6148,7536-7687
/code/branches/menue:8884-8976
/code/branches/minigame4DHS14:10081-10230
/code/branches/miniprojects:2754-2824
/code/branches/modularships:9994-10071
/code/branches/multiplayerFS15:10324-10611
/code/branches/netp2:2835-2988
/code/branches/netp3:2988-3082
/code/branches/netp6:3214-3302
/code/branches/network:2356
/code/branches/network2:6434-6465
/code/branches/network3:7196-7344
/code/branches/network4:7497-7755
/code/branches/network5:7757-7781
/code/branches/network6:7823-8315
/code/branches/network64:2210-2355
/code/branches/newlevel2012:9033-9244
/code/branches/notifications:7314-7401
/code/branches/objecthierarchy:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2:2171-2479
/code/branches/ois_update:7506-7788
/code/branches/output:8739-8857
/code/branches/overlay:2117-2385
/code/branches/pCuts:9023-9284
/code/branches/particles:2829-3085
/code/branches/particles2:6050-6106,6109
/code/branches/pch:3113-3194
/code/branches/physics:1912-2055,2107-2439
/code/branches/physics_merge:2436-2457
/code/branches/pickup:8145-8555
/code/branches/pickup2:5942-6405
/code/branches/pickup2012:9029-9189
/code/branches/pickup3:6418-6523
/code/branches/pickup4:6594-6710
/code/branches/pickups:1926-2086,2127,2827-2915
/code/branches/pickups2:2107-2497,2915-3071
/code/branches/pickupsFS14:10000-10259
/code/branches/png2:7262-7263
/code/branches/portals:8087-8455
/code/branches/portals2:8460-8602
/code/branches/ppspickups1:6552-6708
/code/branches/ppspickups2:6527-6532,6554-6709
/code/branches/ppspickups3:6757-6997
/code/branches/ppspickups4:7003-7089
/code/branches/presentation:2369-2652,2654-2660,7736-7786,8500-8705
/code/branches/presentation2:6106-6416,7787-7800
/code/branches/presentation2011:8974-9015
/code/branches/presentation2012:9189-9268
/code/branches/presentation2012merge:9266-9347
/code/branches/presentation3:6913-7162
/code/branches/presentationFS14:10069-10215
/code/branches/presentationFS15:10499
/code/branches/presentationFS15merge:10595-10621
/code/branches/presentationHS12:9481-9525
/code/branches/presentationHS13:9891-9938
/code/branches/presentationHS14merge:10222-10257
/code/branches/questsystem:1894-2088
/code/branches/questsystem2:2107-2259
/code/branches/questsystem5:2776-2905
/code/branches/radarDreiD:9690-9901
/code/branches/releasetodo:7614-7647
/code/branches/resource:3327-3366
/code/branches/resource2:3372-5694
/code/branches/rocket:6523-6950
/code/branches/rocket2:6953-6970
/code/branches/script_trigger:1295-1953,1955
/code/branches/sfxThilo:9691-9917
/code/branches/shipSelection:9038-9206
/code/branches/skybox2:6559-6989
/code/branches/sound:2829-3010
/code/branches/sound2012:9205-9214
/code/branches/sound3:5941-6102
/code/branches/spaceNavigation:9381-9497
/code/branches/spaceboundaries:8085-8457
/code/branches/spaceboundaries2:8460-8613
/code/branches/spacerace:8182-8630
/code/branches/spaceraceTwo:8881-8996
/code/branches/spacestationentry:9699-9905
/code/branches/steering:5949-6091,8140-8595
/code/branches/storymodeHS14:10085-10254
/code/branches/surfaceRace:9028-9199
/code/branches/surfaceraceHS14:10080-10236
/code/branches/testing:9015-9549
/code/branches/tetris:8100-8563
/code/branches/towerdefenseFS15:10283-10614
/code/branches/towerdefenseHS14:10086-10247
/code/branches/turret:9380-9501
/code/branches/turretFS14:9998-10070
/code/branches/tutoriallevel:7827-8370
/code/branches/tutoriallevel2:8370-8452
/code/branches/tutoriallevel3:8453-8636
/code/branches/unity_build:8440-8716
/code/branches/usability:7915-8078
/code/branches/weapon:1925-2094
/code/branches/weapon2:2107-2488
/code/branches/weaponFS15:10302-10615
/code/branches/weapons:2897-3051,8143-8591
/code/branches/weaponsystem:2742-2890
/code/branches/weaponupdateHS14:10084-10237
   + /code/branches/ParticleEffectsFS15:10309-10612
/code/branches/Racingbot:9388-9513
/code/branches/SciptableControllerFS15:10308-10613
/code/branches/ScriptableController:9999-10075
/code/branches/ai:6592-7033
/code/branches/ai2:8721-8880
/code/branches/bigships:8137-8588
/code/branches/buildsystem:1874-2276,2278-2400
/code/branches/buildsystem2:2506-2658
/code/branches/buildsystem3:2662-2708
/code/branches/ceguilua:1802-1808
/code/branches/chat:6527-6797
/code/branches/chat2:6836-6910
/code/branches/clangenb:10385-10609
/code/branches/console:5941-6104
/code/branches/consolecommands2:6451-7178
/code/branches/consolecommands3:7178-7283
/code/branches/core3:1572-1739
/code/branches/core4:3221-3224,3227,3234-3238,3242,3244-3250,3252-3254,3256,3259-3261,3264-3265,3268-3275,3277-3278,3280,3284-3285,3287,3289-3294,3305,3309-3310
/code/branches/core5:5768-5928,6009
/code/branches/core6:9552-9666
/code/branches/core7:10328-10623
/code/branches/data_cleanup:7537-7686
/code/branches/doc:7290-7400
/code/branches/dockingsystem:8101-8192
/code/branches/dockingsystem2:8196-8560
/code/branches/dynamicmatch:6584-7030
/code/branches/environment3:8887-8975
/code/branches/explosionChunksHS15:10641-10961
/code/branches/fabienHS15:10685-10960
/code/branches/formation:8885-8991
/code/branches/formationFS15:10320-10610
/code/branches/formationupdate:9580-9624
/code/branches/fps:6591-7072
/code/branches/gamecontent:8893-8968
/code/branches/gameimmersion:8102-8577
/code/branches/gamestate:6430-6572,6621-6661
/code/branches/gamestates2:6594-6745
/code/branches/gametypes:2826-3031
/code/branches/gcc43:1580
/code/branches/gui:1635-1723,2795-2894
/code/branches/hoverHS15:10633-10959
/code/branches/hud:8883-8986
/code/branches/hudHS14:10083-10241
/code/branches/hudelements:6584-6941
/code/branches/hudimprovements:7920-8672
/code/branches/ingamemenu:6000-6023
/code/branches/input:1629-1636
/code/branches/invaders:9694-9896
/code/branches/ipv6:7293-7458
/code/branches/keckslevelHS14:10082-10222
/code/branches/kicklib:7940-8096,8098-8277
/code/branches/kicklib2:8282-8350
/code/branches/largeShip1:9384-9515
/code/branches/lastmanstanding:7479-7644
/code/branches/lastmanstanding3:7903-8175
/code/branches/levelElias:9697-9921
/code/branches/levelKaan:9695-9921
/code/branches/levelMichael:9696-9921
/code/branches/leveljoemeHS14:10087-10223
/code/branches/libraries:5612-5692
/code/branches/libraries2:5703-5737
/code/branches/libs:9668-9674
/code/branches/lod:6586-6911
/code/branches/lodfinal:2372-2411
/code/branches/mac_osx:7789-8128,8135
/code/branches/map:2801-3086,3089
/code/branches/masterserver:7502-7738
/code/branches/masterserverfix:8933-8936
/code/branches/menu:5941-6146,6148,7536-7687
/code/branches/menue:8884-8976
/code/branches/minigame4DHS14:10081-10230
/code/branches/miniprojects:2754-2824
/code/branches/modularships:9994-10071
/code/branches/multiplayerFS15:10324-10611
/code/branches/netp2:2835-2988
/code/branches/netp3:2988-3082
/code/branches/netp6:3214-3302
/code/branches/network:2356
/code/branches/network2:6434-6465
/code/branches/network3:7196-7344
/code/branches/network4:7497-7755
/code/branches/network5:7757-7781
/code/branches/network6:7823-8315
/code/branches/network64:2210-2355
/code/branches/newlevel2012:9033-9244
/code/branches/notifications:7314-7401
/code/branches/objecthierarchy:1911-2085,2100,2110-2169
/code/branches/objecthierarchy2:2171-2479
/code/branches/ois_update:7506-7788
/code/branches/output:8739-8857
/code/branches/overlay:2117-2385
/code/branches/pCuts:9023-9284
/code/branches/particles:2829-3085
/code/branches/particles2:6050-6106,6109
/code/branches/pch:3113-3194
/code/branches/physics:1912-2055,2107-2439
/code/branches/physics_merge:2436-2457
/code/branches/pickup:8145-8555
/code/branches/pickup2:5942-6405
/code/branches/pickup2012:9029-9189
/code/branches/pickup3:6418-6523
/code/branches/pickup4:6594-6710
/code/branches/pickups:1926-2086,2127,2827-2915
/code/branches/pickups2:2107-2497,2915-3071
/code/branches/pickupsFS14:10000-10259
/code/branches/png2:7262-7263
/code/branches/portals:8087-8455
/code/branches/portals2:8460-8602
/code/branches/ppspickups1:6552-6708
/code/branches/ppspickups2:6527-6532,6554-6709
/code/branches/ppspickups3:6757-6997
/code/branches/ppspickups4:7003-7089
/code/branches/presentation:2369-2652,2654-2660,7736-7786,8500-8705
/code/branches/presentation2:6106-6416,7787-7800
/code/branches/presentation2011:8974-9015
/code/branches/presentation2012:9189-9268
/code/branches/presentation2012merge:9266-9347
/code/branches/presentation3:6913-7162
/code/branches/presentationFS14:10069-10215
/code/branches/presentationFS15:10499
/code/branches/presentationFS15merge:10595-10621
/code/branches/presentationHS12:9481-9525
/code/branches/presentationHS13:9891-9938
/code/branches/presentationHS14merge:10222-10257
/code/branches/questsystem:1894-2088
/code/branches/questsystem2:2107-2259
/code/branches/questsystem5:2776-2905
/code/branches/radarDreiD:9690-9901
/code/branches/releasetodo:7614-7647
/code/branches/resource:3327-3366
/code/branches/resource2:3372-5694
/code/branches/rocket:6523-6950
/code/branches/rocket2:6953-6970
/code/branches/script_trigger:1295-1953,1955
/code/branches/sfxThilo:9691-9917
/code/branches/shipSelection:9038-9206
/code/branches/skybox2:6559-6989
/code/branches/sound:2829-3010
/code/branches/sound2012:9205-9214
/code/branches/sound3:5941-6102
/code/branches/spaceNavigation:9381-9497
/code/branches/spaceboundaries:8085-8457
/code/branches/spaceboundaries2:8460-8613
/code/branches/spacerace:8182-8630
/code/branches/spaceraceTwo:8881-8996
/code/branches/spacestationentry:9699-9905
/code/branches/steering:5949-6091,8140-8595
/code/branches/storymodeHS14:10085-10254
/code/branches/surfaceRace:9028-9199
/code/branches/surfaceraceHS14:10080-10236
/code/branches/testing:9015-9549
/code/branches/tetris:8100-8563
/code/branches/towerdefenseFS15:10283-10614
/code/branches/towerdefenseHS14:10086-10247
/code/branches/turret:9380-9501
/code/branches/turretFS14:9998-10070
/code/branches/tutoriallevel:7827-8370
/code/branches/tutoriallevel2:8370-8452
/code/branches/tutoriallevel3:8453-8636
/code/branches/unity_build:8440-8716
/code/branches/usability:7915-8078
/code/branches/weapon:1925-2094
/code/branches/weapon2:2107-2488
/code/branches/weaponFS15:10302-10615
/code/branches/weapons:2897-3051,8143-8591
/code/branches/weaponsystem:2742-2890
/code/branches/weaponupdateHS14:10084-10237

Modified: code/branches/presentationHS15/data/levels/HeavyCruiser.oxw
===================================================================
--- code/branches/presentationHS15/data/levels/HeavyCruiser.oxw	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/HeavyCruiser.oxw	2015-12-09 15:03:59 UTC (rev 10962)
@@ -552,6 +552,27 @@
     All Pawns can easily be included into a level using the lua file "HeavyCruiserParts" -->
 
     <Pawn team=1 health=1000 initialhealth=1000 maxhealth=1000 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=10000 name=HeavyCruiser_body radarname = "HeavyCruiser" >
+        <explosion>
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_sparks2" scale=2.5 />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flame2" scale=2.5 />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" scale=12 />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" scale=2.5 />
+
+            <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_sparks2" scale=2.5 delay=0.3 />
+            <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flame2" scale=2.5 delay=0.3 />
+            <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" scale=12 delay=0.3 />
+            <ExplosionPart offset="50,50,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" scale=2.5 delay=0.3 />
+
+            <ExplosionPart offset="50,-50,-50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_sparks2" scale=2.5 delay=0.6 />
+            <ExplosionPart offset="50,-50,-50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flame2" scale=2.5 delay=0.6 />
+            <ExplosionPart offset="50,-50,-50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" scale=12 delay=0.6 />
+            <ExplosionPart offset="50,-50,-50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" scale=2.5 delay=0.6 />
+
+            <ExplosionPart offset="-50,0,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_sparks2" scale=2.5 delay=0.9 />
+            <ExplosionPart offset="-50,0,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flame2" scale=2.5 delay=0.9 />
+            <ExplosionPart offset="-50,0,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" scale=12 delay=0.9 />
+            <ExplosionPart offset="-50,0,50" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" scale=2.5 delay=0.9 />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_body.mesh" scale="40" />
 
@@ -718,6 +739,12 @@
 
     <Pawn team=1 health=300 initialhealth=300 maxhealth=300 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmL radarname = "HIDDEN" >
 
+        <explosion>
+            <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="-140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
+
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmL.mesh" scale="40" />
         </attached>
@@ -757,6 +784,13 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmLfront radarname = "HIDDEN" >
+
+        <explosion>
+            <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="-141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
+
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmLfront.mesh" scale="40" />
         </attached>
@@ -771,6 +805,11 @@
     </Pawn>
 
     <Pawn team=1 health=300 initialhealth=300 maxhealth=300 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_sidearmR radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="140,0,115" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmR.mesh" scale="40" />
         </attached>
@@ -810,6 +849,11 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=sidearmRfront radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="141,15,-53" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_sidearmRfront.mesh" scale="40" />
         </attached>
@@ -824,6 +868,11 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_frontL radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="-80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_frontL.mesh" scale="40" />
         </attached>
@@ -835,6 +884,11 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_frontR radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="80,33,-320" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_frontR.mesh" scale="40" />
         </attached>
@@ -846,6 +900,11 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_partL radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="-94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_partL.mesh" scale="40" />
         </attached>
@@ -857,6 +916,11 @@
     </Pawn>
 
     <Pawn team=1 health=100 initialhealth=100 maxhealth=100 position="0,300,-2000" yaw="180" direction="0,0,0" collisionType=dynamic mass=1000 name=HeavyCruiser_partR radarname = "HIDDEN" >
+        <explosion>
+            <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart offset="94,33,-179" minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
         <attached>
             <Model position="0,0,0" direction="-1,0,0" mesh="HeavyCruiser_partR.mesh" scale="40" />
         </attached>

Modified: code/branches/presentationHS15/data/levels/emptyLevel.oxw
===================================================================
--- code/branches/presentationHS15/data/levels/emptyLevel.oxw	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/emptyLevel.oxw	2015-12-09 15:03:59 UTC (rev 10962)
@@ -1,4 +1,4 @@
-<LevelInfo
+ <LevelInfo
  name = "Empty level"
  description = "A level with absolutely nothing in it."
  tags = "test"
@@ -12,11 +12,9 @@
 ?>
 
 <?lua
-  include("templates/spaceshipAssff2.oxt")
-  include("templates/spaceshipPirate.oxt")
+  include("templates/spaceshipAssff.oxt")
   include("templates/spaceshipEscort.oxt")
-  include("templates/spaceshipRing.oxt")
-  include("templates/spaceshipSwallow.oxt")
+  include("templates/spaceshipHover.oxt")
 ?>
 
 <Level>
@@ -32,6 +30,35 @@
 
     <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"/>
     <SpawnPoint team=0 position="-200,0,0" lookat="0,0,0" spawnclass=SpaceShip pawndesign=spaceshipescort />
+
+    <SpaceShip
+        team                = "1"
+        position            = "1000,0,0"
+        >
+        <templates>
+          <Template link=spaceshipassff />
+        </templates>         
+    </SpaceShip>
+    <SpaceShip
+        team                = "1"
+        position            = "1000,200,0"
+        >
+        <templates>
+          <Template link=spaceshiphover />
+        </templates>
+                    
+    </SpaceShip>
+    <SpaceShip
+        team                = "1"
+        position            = "1000,400,0"
+        >
+        <templates>
+          <Template link=spaceshipescort />
+        </templates>
+
+        
+                    
+    </SpaceShip>
     
   </Scene>
 </Level>

Modified: code/branches/presentationHS15/data/levels/iiiJohnVane_EscapeTheBastards.oxw
===================================================================
--- code/branches/presentationHS15/data/levels/iiiJohnVane_EscapeTheBastards.oxw	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/iiiJohnVane_EscapeTheBastards.oxw	2015-12-09 15:03:59 UTC (rev 10962)
@@ -287,6 +287,11 @@
                       <WaypointController team=1>
                     </WaypointController>
         </controller>
+        <explosion >
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
     </Pawn>
 
 <Billboard position="0,0,-1540" amplitude=1 material="Flares/lensflare" colour="0,0.8,0.1">

Modified: code/branches/presentationHS15/data/levels/kecks.oxw
===================================================================
--- code/branches/presentationHS15/data/levels/kecks.oxw	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/kecks.oxw	2015-12-09 15:03:59 UTC (rev 10962)
@@ -347,7 +347,7 @@
 	<!-- Boxen um Flotte zu befreien -->
 
 
-			<Pawn health=20 position="0, 112900, 0" direction="0,-1,0" name="boxDestroyed" collisionType=dynamic mass=100000  radarname = "Gravitation Box" >
+			<Pawn health=20 position="0, 112900, 0" direction="0,-1,0" name="boxDestroyed" collisionType=dynamic mass=100000  radarname = "Gravitation Box" explosionchunks=0 >
 				<attached>
 					<Model position="0,0,0" scale="10" mesh="CuboidBody.mesh"  />
 				</attached>
@@ -358,6 +358,11 @@
 					<WaypointController team=1>
 					</WaypointController>
 				</controller>
+				<explosion >
+            		<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            		<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            		<ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        		</explosion>
 			 </Pawn>
 
 	

Modified: code/branches/presentationHS15/data/levels/missionOne.oxw
===================================================================
--- code/branches/presentationHS15/data/levels/missionOne.oxw	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/missionOne.oxw	2015-12-09 15:03:59 UTC (rev 10962)
@@ -525,6 +525,11 @@
             <WaypointController team=1>
             </WaypointController>
         </controller>
+        <explosion >
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
     </Pawn>
 
     <Pawn health=30 position="0,100,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box radarname = "Box 3">
@@ -543,6 +548,11 @@
             <WaypointController team=1>
             </WaypointController>
         </controller>
+        <explosion >
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
     </Pawn>
 
     <Pawn health=30 position="0,200,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box radarname = "Box 2">
@@ -561,6 +571,11 @@
         <collisionShapes>
             <BoxCollisionShape position="0,0,0" halfExtents="15,15,15" />
         </collisionShapes>
+        <explosion >
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
     </Pawn>
 
     <Pawn health=30 position="0,300,0" direction="0,-1,0" collisionType=dynamic mass=100000 name=box radarname = "Box 1">
@@ -579,6 +594,11 @@
             <WaypointController team=1>
             </WaypointController>
         </controller>
+        <explosion >
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+            <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+        </explosion>
     </Pawn>
 
 <!-- @Triggers: boxtrigger1 <-> one   box   destroyed

Modified: code/branches/presentationHS15/data/levels/templates/FPS.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/FPS.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/FPS.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -23,6 +23,11 @@
     <collisionShapes>			<!-- old values: position="0,-20,0"  halfExtents="15,25,15"  -->
       <BoxCollisionShape position="0,-25,0" halfExtents="15,20,15" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+    </explosion>
 
     <camerapositions>
       <CameraPosition position="-1,1,2.2" drag=false mouselook=true />

Modified: code/branches/presentationHS15/data/levels/templates/FPS_HS14.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/FPS_HS14.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/FPS_HS14.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -28,6 +28,11 @@
     <camerapositions>
       <CameraPosition position="-1,1,2.2" drag=false mouselook=true />
     </camerapositions>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+    </explosion>
 
     <?lua
         include("../includes/weaponSettingsFPS_HS14.oxi")

Modified: code/branches/presentationHS15/data/levels/templates/HeavyCruiser.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/HeavyCruiser.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/HeavyCruiser.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -382,6 +382,11 @@
         <BoxCollisionShape position="-11,18,58" halfExtents="10,10,10" info="HOOK, frontL"/>
         <BoxCollisionShape position="11,18,58" halfExtents="10,10,10" info="HOOK, frontR"/> -->
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsHeavyCruiser.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/HeavyCruiserBody.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/HeavyCruiserBody.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/HeavyCruiserBody.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -209,6 +209,11 @@
         <BoxCollisionShape position="-11,18,58" halfExtents="10,10,10" info="frontL, HOOK"/>
         <BoxCollisionShape position="11,18,58" halfExtents="10,10,10" info="frontR, HOOK"/> -->
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsHeavyCruiserBody.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/ModularSpaceShipTest.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/ModularSpaceShipTest.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/ModularSpaceShipTest.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -115,6 +115,12 @@
     <collisionShapes>
         <BoxCollisionShape position="0,0,0" halfExtents="30,30,30" />
     </collisionShapes>
+
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsAssff.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/bigship.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/bigship.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/bigship.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -82,6 +82,18 @@
 	<BoxCollisionShape position="0,0,-18"      halfExtents="6, 2, 18" />
       
     </collisionShapes>
+
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsbigship.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/enemyInvader.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/enemyInvader.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/enemyInvader.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -54,6 +54,17 @@
       <BoxCollisionShape position="-12.6,-2,  3" halfExtents="2.8,2.8,11"/>
       <BoxCollisionShape position="0,     0,-12" halfExtents="4  , 4 ,7" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/invaderWeapon.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipAssff.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipAssff.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipAssff.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -4,7 +4,6 @@
    camerapositiontemplate = spaceshipassffcameras
    spawnparticlesource    = "Orxonox/fairytwirl"
    spawnparticleduration  = 3
-   explosionchunks        = 6
 
    health            = 100
    maxhealth         = 200
@@ -56,6 +55,16 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion>
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsAssff.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipAssff2.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipAssff2.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipAssff2.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -56,6 +56,17 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsAssff2.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipCollateralDamage.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipCollateralDamage.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipCollateralDamage.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -62,8 +62,20 @@
 
     </collisionShapes>
 
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 
+
+
 <?lua
   include("../includes/weaponSettingsCollateral.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipDodgeRace.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipDodgeRace.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipDodgeRace.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -59,6 +59,17 @@
       <BoxCollisionShape position="-12.6,-2,  3" halfExtents="2.8,2.8,11"/>
       <BoxCollisionShape position="0,     0,-12" halfExtents="4  , 4 ,7" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/invaderWeapon.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipEscort.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipEscort.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipEscort.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -4,7 +4,7 @@
    camerapositiontemplate = spaceshipescortcameras
    spawnparticlesource    = "Orxonox/fairytwirl"
    spawnparticleduration  = 3
-   explosionchunks        = 4
+   explosionchunks        = 10
 
    health            = 80
    maxhealth         = 200
@@ -55,6 +55,18 @@
       <BoxCollisionShape position="-12.6,-2,  3" halfExtents="2.8,2.8,11"/>
       <BoxCollisionShape position="0,     0,-12" halfExtents="4  , 4 ,7" />
     </collisionShapes>
+    <explosion>
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart mesh="explosionparts/escort_part_1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/escort_part_2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/escort_part_3.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/escort_part_4.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/escort_part_5.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/escort_part_6.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsEscort.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipGhost.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipGhost.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipGhost.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -51,6 +51,17 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsGhost.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipH2.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipH2.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipH2.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -40,7 +40,18 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
   </SpaceShip>
 </Template>
 

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipHXY.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipHXY.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipHXY.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -34,7 +34,18 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsHXY.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipHXYSL.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipHXYSL.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipHXYSL.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -33,7 +33,18 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsHXY.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipHeartAttack.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipHeartAttack.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipHeartAttack.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -62,6 +62,17 @@
       <BoxCollisionShape position="5,5,4.3"  halfExtents="1.4, 1.5, 1.4" />
       <BoxCollisionShape position="-5,5,4.3"  halfExtents="1.4, 1.5, 1.4" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsHeartAttack.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipHover.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipHover.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipHover.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -48,7 +48,17 @@
     <collisionShapes>
       <BoxCollisionShape position="0,-2 ,7" halfExtents="7, 4 ,30" />
     </collisionShapes>
+    <explosion>
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" scale=2 />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart mesh="explosionparts/pirate_part_1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_3.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_4.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsHover.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipInvader.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipInvader.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipInvader.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -58,6 +58,17 @@
       <BoxCollisionShape position="-12.6,-2,  3" halfExtents="2.8,2.8,11"/>
       <BoxCollisionShape position="0,     0,-12" halfExtents="4  , 4 ,7" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/invaderWeapon.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipPirate.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipPirate.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipPirate.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -52,7 +52,17 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion>
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" scale=2 />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart mesh="explosionparts/pirate_part_1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_3.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="explosionparts/pirate_part_4.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsPirate.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipRace.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipRace.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipRace.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -56,6 +56,17 @@
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
 
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsAssff.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipRing.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipRing.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipRing.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -52,6 +52,17 @@
       <BoxCollisionShape position="-12.6,-2,  3" halfExtents="2.8,2.8,11"/>
       <BoxCollisionShape position="0,     0,-12" halfExtents="4  , 4 ,7" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsRing.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipSpacecruiser.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipSpacecruiser.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipSpacecruiser.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -65,6 +65,17 @@
       <BoxCollisionShape position="0,4,-59"    halfExtents="18,1,16" pitch=-30/>
 
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsSpacecruiser.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipSwallow.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipSwallow.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipSwallow.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -48,6 +48,17 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsSwallow.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipTransporter.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipTransporter.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipTransporter.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -33,7 +33,18 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsTransporter.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipTransporterSL.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipTransporterSL.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipTransporterSL.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -33,7 +33,18 @@
       <BoxCollisionShape position="0,0.1,-11"  halfExtents="2.2, 1.8, 6" />
       <BoxCollisionShape position="0,0.1,-19"  halfExtents="1.4, 1, 2" />
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
 
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
+
 <?lua
   include("../includes/weaponSettingsTransporter.oxi")
 ?>

Modified: code/branches/presentationHS15/data/levels/templates/spaceshipTurret.oxt
===================================================================
--- code/branches/presentationHS15/data/levels/templates/spaceshipTurret.oxt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/data/levels/templates/spaceshipTurret.oxt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -43,6 +43,17 @@
     <collisionShapes>
         <SphereCollisionShape radius="10"   position = "0,0,0"/>
     </collisionShapes>
+    <explosion >
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_flash2" effect2="orxonox/explosion_flame2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_shockwave2" effect2="orxonox/explosion_sparks2" />
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="orxonox/explosion_streak2" effect2="orxonox/explosion_afterglow" />
+
+      <ExplosionPart minspeed=0 maxspeed=0 effect1="Orxonox/explosion2b" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="CockpitDebris.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="BodyDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris1.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+      <ExplosionPart mesh="WingDebris2.mesh" effect1="Orxonox/fire4" effect2="Orxonox/smoke6" />
+    </explosion>
 <?lua
   include("../includes/weaponSettingsTurret.oxi")
 ?>

Modified: code/branches/presentationHS15/src/libraries/tools/ParticleInterface.cc
===================================================================
--- code/branches/presentationHS15/src/libraries/tools/ParticleInterface.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/libraries/tools/ParticleInterface.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -232,4 +232,9 @@
         if (this->particleSystem_)
             this->particleSystem_->setKeepParticlesInLocalSpace(keep);
     }
+
+    void ParticleInterface::setDimensions(float scale)
+    {
+        this->particleSystem_->setDefaultDimensions(scale * this->particleSystem_->getDefaultWidth(), scale * this->particleSystem_->getDefaultHeight());
+    }
 }

Modified: code/branches/presentationHS15/src/libraries/tools/ParticleInterface.h
===================================================================
--- code/branches/presentationHS15/src/libraries/tools/ParticleInterface.h	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/libraries/tools/ParticleInterface.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -74,6 +74,8 @@
 
             void setDetailLevel(unsigned int level);
 
+            void setDimensions(float scale);
+
         protected:
             virtual void changedTimeFactor(float factor_new, float factor_old);
 

Modified: code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.cc
===================================================================
--- code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -70,10 +70,14 @@
         {
             for (int i = 0; i < 7; i++)
             {
-                BigExplosion* chunk = new BigExplosion(this->center_->getContext());
-                chunk->setPosition(Vector3(600, 0, 100.f * i - 300));
-                chunk->setVelocity(Vector3(1000, 0, 0));  //player->getVelocity()
-                chunk->setScale(20);
+                WeakPtr<ExplosionPart> chunk5 = new ExplosionPart(this->center_->getContext());
+                chunk5->setPosition(Vector3(600, 0, 100.f * i - 300));
+                chunk5->setVelocity(Vector3(1000, 0, 0));  //player->getVelocity()
+                chunk5->setScale(10);
+                chunk5->setEffect1("Orxonox/explosion2b");
+                chunk5->setEffect2("Orxonox/smoke6");
+                chunk5->Explode();
+
             }
         }
         addPoints(multiplier * 42);

Modified: code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.h
===================================================================
--- code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.h	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/modules/dodgerace/DodgeRace.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -55,7 +55,6 @@
 #include "infos/PlayerInfo.h"
 
 #include "core/command/ConsoleCommand.h"
-#include "worldentities/BigExplosion.h"
 
 #include "gametypes/Deathmatch.h"
 #include "tools/Timer.h"

Modified: code/branches/presentationHS15/src/modules/invader/Invader.cc
===================================================================
--- code/branches/presentationHS15/src/modules/invader/Invader.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/modules/invader/Invader.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -50,7 +50,7 @@
 #include "InvaderEnemyShooter.h"
 
 #include "core/command/ConsoleCommand.h"
-#include "worldentities/BigExplosion.h"
+#include "worldentities/ExplosionPart.h"
 
 namespace orxonox
 {
@@ -81,10 +81,17 @@
         {
             for (int i = 0; i < 7; i++)
             {
-                BigExplosion* chunk = new BigExplosion(this->center_->getContext());
-                chunk->setPosition(Vector3(600, 0, 100.f * i - 300));
-                chunk->setVelocity(Vector3(1000, 0, 0));  //player->getVelocity()
-                chunk->setScale(20);
+
+                WeakPtr<ExplosionPart> chunk5 = new ExplosionPart(this->center_->getContext());
+                chunk5->setPosition(this->center_->getPosition());
+                chunk5->setVelocity(Vector3(1000, 0, 0));  //player->getVelocity()
+                chunk5->setScale(10);
+                chunk5->setEffect1("Orxonox/explosion2b");
+                chunk5->setEffect2("Orxonox/smoke6");
+                chunk5->setMinSpeed(0);
+                chunk5->setMaxSpeed(0);
+                chunk5->Explode();
+
             }
         }
         addPoints(multiplier * 42);

Modified: code/branches/presentationHS15/src/orxonox/OrxonoxPrereqs.h
===================================================================
--- code/branches/presentationHS15/src/orxonox/OrxonoxPrereqs.h	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/OrxonoxPrereqs.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -175,7 +175,6 @@
     class WeaponSystem;
 
     // worldentities
-    class BigExplosion;
     class CameraPosition;
     class ControllableEntity;
     class Drone;

Modified: code/branches/presentationHS15/src/orxonox/items/ShipPart.cc
===================================================================
--- code/branches/presentationHS15/src/orxonox/items/ShipPart.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/items/ShipPart.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -40,7 +40,6 @@
 #include "gametypes/Gametype.h"
 #include "worldentities/StaticEntity.h"
 #include "items/PartDestructionEvent.h"
-#include "worldentities/BigExplosion.h"
 #include "chat/ChatManager.h"
 
 
@@ -104,10 +103,10 @@
 
     void ShipPart::explode()
     {
-        BigExplosion* chunk = new BigExplosion(this->getContext());
-        chunk->setPosition(this->parent_->getPosition() + this->parent_->getOrientation() * (this->explosionPosition_));
-        //chunk->setPosition(this->parent_->getPosition() + this->parent_->getOrientation() * Vector3(this->entityList_[0]->getLocalInertia()));
-        chunk->setVelocity(this->parent_->getVelocity());
+        // BigExplosion* chunk = new BigExplosion(this->getContext());
+        // chunk->setPosition(this->parent_->getPosition() + this->parent_->getOrientation() * (this->explosionPosition_));
+        // //chunk->setPosition(this->parent_->getPosition() + this->parent_->getOrientation() * Vector3(this->entityList_[0]->getLocalInertia()));
+        // chunk->setVelocity(this->parent_->getVelocity());
 
         // this->explosionSound_->setPosition(this->parent_->getPosition());
         // this->explosionSound_->play();

Deleted: code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.cc
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -1,345 +0,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *                    > www.orxonox.net <
- *
- *
- *   License notice:
- *
- *   This program is free software; you can redistribute it and/or
- *   modify it under the terms of the GNU General Public License
- *   as published by the Free Software Foundation; either version 2
- *   of the License, or (at your option) any later version.
- *
- *   This program is distributed in the hope that it will be useful,
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *   GNU General Public License for more details.
- *
- *   You should have received a copy of the GNU General Public License
- *   along with this program; if not, write to the Free Software
- *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Benjamin de Capitani
- *   Co-authors:
- *      ...
- *
- */
-
-#include "BigExplosion.h"
-
-#include "util/Exception.h"
-#include "core/CoreIncludes.h"
-#include "core/GameMode.h"
-#include "core/command/Executor.h"
-#include "tools/ParticleInterface.h"
-#include "Scene.h"
-#include "graphics/ParticleSpawner.h"
-#include "graphics/Model.h"
-#include "MovableEntity.h"
-
-namespace orxonox
-{
-    RegisterClass(BigExplosion);
-
-    BigExplosion::BigExplosion(Context* context) : MobileEntity(context)
-    {
-        RegisterObject(BigExplosion);
-
-        if ( GameMode::showsGraphics() && ( !this->getScene() || !this->getScene()->getSceneManager() ) )
-            ThrowException(AbortLoading, "Can't create BigExplosion, no scene or no scene manager given.");
-
-        this->bStop_ = false;
-        this->LOD_ = LODParticle::Normal;
-
-        if ( GameMode::showsGraphics() )
-        {
-            try
-            {
-                this->init();
-            }
-            catch (const std::exception& ex)
-            {
-                orxout(internal_error) << "Couldn't load particle effect in BigExplosion: " << ex.what() << endl;
-                this->initZero();
-            }
-        }
-        else
-        {
-            this->initZero();
-        }
-
-        if (GameMode::isMaster())
-        {
-            this->destroyTimer_.setTimer(rnd(2, 4), false, createExecutor(createFunctor(&BigExplosion::stop, this)));
-        }
-
-        this->registerVariables();
-    }
-
-    void BigExplosion::init()
-    {
-        this->debrisEntity1_ = new MovableEntity(this->getContext());
-        this->debrisEntity2_ = new MovableEntity(this->getContext());
-        this->debrisEntity3_ = new MovableEntity(this->getContext());
-        this->debrisEntity4_ = new MovableEntity(this->getContext());
-
-        this->debrisEntity1_->setSyncMode(0);
-        this->debrisEntity2_->setSyncMode(0);
-        this->debrisEntity3_->setSyncMode(0);
-        this->debrisEntity4_->setSyncMode(0);
-
-        this->debris1_ = new Model(this->getContext());
-        this->debris2_ = new Model(this->getContext());
-        this->debris3_ = new Model(this->getContext());
-        this->debris4_ = new Model(this->getContext());
-
-        this->debris1_->setSyncMode(0);
-        this->debris2_->setSyncMode(0);
-        this->debris3_->setSyncMode(0);
-        this->debris4_->setSyncMode(0);
-
-        this->explosion_ = new StaticEntity(this->getContext());
-        this->explosion_->setSyncMode(0);
-
-        this->debrisSmoke1_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
-        this->debrisSmoke2_ =  new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
-        this->debrisSmoke3_ =  new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
-        this->debrisSmoke4_ =  new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
-
-        this->debrisFire1_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/fire4", this->LOD_);
-        this->debrisFire2_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/fire4", this->LOD_);
-        this->debrisFire3_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/fire4", this->LOD_);
-        this->debrisFire4_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/fire4", this->LOD_);
-
-        this->debris1_->attachOgreObject(this->debrisSmoke1_->getParticleSystem());
-        this->debris1_->attachOgreObject(this->debrisFire1_->getParticleSystem());
-        this->debris2_->attachOgreObject(this->debrisSmoke2_->getParticleSystem());
-        this->debris2_->attachOgreObject(this->debrisFire2_->getParticleSystem());
-        this->debris3_->attachOgreObject(this->debrisSmoke3_->getParticleSystem());
-        this->debris3_->attachOgreObject(this->debrisFire3_->getParticleSystem());
-        this->debris4_->attachOgreObject(this->debrisSmoke4_->getParticleSystem());
-        this->debris4_->attachOgreObject(this->debrisFire4_->getParticleSystem());
-
-        this->debris1_->setMeshSource("CockpitDebris.mesh");
-        this->debris2_->setMeshSource("WingDebris1.mesh");
-        this->debris3_->setMeshSource("BodyDebris1.mesh");
-        this->debris4_->setMeshSource("WingDebris2.mesh");
-
-        this->debrisEntity1_->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(50,100));
-        this->debrisEntity1_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-        this->debrisEntity1_->setScale(4);
-
-        this->debrisEntity2_->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(50,100));
-        this->debrisEntity2_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-        this->debrisEntity2_->setScale(4);
-
-        this->debrisEntity3_->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(50,100));
-        this->debrisEntity3_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-        this->debrisEntity3_->setScale(4);
-
-        this->debrisEntity4_->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(50,100));
-        this->debrisEntity4_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-        this->debrisEntity4_->setScale(4);
-
-        this->debrisEntity1_->attach(debris1_);
-        this->debrisEntity2_->attach(debris2_);
-        this->debrisEntity3_->attach(debris3_);
-        this->debrisEntity4_->attach(debris4_);
-
-        ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-        effect->setDestroyAfterLife(true);
-        effect->setSource("Orxonox/explosion2b");
-        effect->setLifetime(4.0f);
-        effect->setSyncMode(0);
-
-        ParticleSpawner* effect2 = new ParticleSpawner(this->getContext());
-        effect2->setDestroyAfterLife(true);
-        effect2->setSource("Orxonox/smoke6");
-        effect2->setLifetime(4.0f);
-        effect2->setSyncMode(0);
-
-        this->explosion_->attach(effect);
-        this->explosion_->attach(effect2);
-
-        this->attach(explosion_);
-        this->attach(debrisEntity1_);
-        this->attach(debrisEntity2_);
-        this->attach(debrisEntity3_);
-        this->attach(debrisEntity4_);
-
-
-        for(int i=0;i<10;i++)
-        {
-            Model* part1 = new Model(this->getContext());
-            Model* part2 = new Model(this->getContext());
-
-            MovableEntity* partEntity1 = new MovableEntity(this->getContext());
-            MovableEntity* partEntity2 = new MovableEntity(this->getContext());
-
-            part1->setSyncMode(0);
-            part2->setSyncMode(0);
-            partEntity1->setSyncMode(0);
-            partEntity2->setSyncMode(0);
-
-            partEntity1->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(10,100));
-            partEntity1->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-            partEntity1->setScale(rnd(1, 3));
-
-            partEntity2->setVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1))*rnd(10, 100));
-            partEntity2->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
-            partEntity2->setScale(rnd(1, 3));
-
-            part1->setMeshSource("SmallPart1.mesh");
-            part2->setMeshSource("SmallPart2.mesh");
-
-            partEntity1->attach(part1);
-            partEntity2->attach(part2);
-
-            this->attach(partEntity1);
-            this->attach(partEntity2);
-        }
-    }
-
-    void BigExplosion::initZero()
-    {
-        this->debrisFire1_ = 0;
-        this->debrisFire2_ = 0;
-        this->debrisFire3_ = 0;
-        this->debrisFire4_ = 0;
-
-        this->debrisSmoke1_ = 0;
-        this->debrisSmoke2_ = 0;
-        this->debrisSmoke3_ = 0;
-        this->debrisSmoke4_ = 0;
-
-        this->explosionSmoke_=0;
-        this->explosionFire_=0;
-    }
-
-    BigExplosion::~BigExplosion()
-    {
-        if (this->isInitialized())
-        {
-            if (this->debrisFire1_)
-            {
-                this->debris1_->detachOgreObject(this->debrisFire1_->getParticleSystem());
-                delete this->debrisFire1_;
-            }
-            if (this->debrisSmoke1_)
-            {
-                this->debris1_->detachOgreObject(this->debrisSmoke1_->getParticleSystem());
-                delete this->debrisSmoke1_;
-            }
-
-            if (this->debrisFire2_)
-            {
-                this->debris2_->detachOgreObject(this->debrisFire2_->getParticleSystem());
-                delete this->debrisFire2_;
-            }
-            if (this->debrisSmoke2_)
-            {
-                this->debris2_->detachOgreObject(this->debrisSmoke2_->getParticleSystem());
-                delete this->debrisSmoke2_;
-            }
-
-            if (this->debrisFire3_)
-            {
-                this->debris3_->detachOgreObject(this->debrisFire3_->getParticleSystem());
-                delete this->debrisFire3_;
-            }
-            if (this->debrisSmoke3_)
-            {
-                this->debris3_->detachOgreObject(this->debrisSmoke3_->getParticleSystem());
-                delete this->debrisSmoke3_;
-            }
-
-            if (this->debrisFire4_)
-            {
-                this->debris4_->detachOgreObject(this->debrisFire4_->getParticleSystem());
-                delete this->debrisFire4_;
-            }
-            if (this->debrisSmoke4_)
-            {
-                this->debris4_->detachOgreObject(this->debrisSmoke4_->getParticleSystem());
-                delete this->debrisSmoke4_;
-            }
-        }
-    }
-
-    void BigExplosion::registerVariables()
-    {
-        registerVariable((int&)(this->LOD_), VariableDirection::ToClient, new NetworkCallback<BigExplosion>(this, &BigExplosion::LODchanged));
-        registerVariable(this->bStop_,       VariableDirection::ToClient, new NetworkCallback<BigExplosion>(this, &BigExplosion::checkStop));
-    }
-
-    void BigExplosion::LODchanged()
-    {
-        if (this->debrisFire1_)
-            this->debrisFire1_->setDetailLevel(this->LOD_);
-        if (this->debrisSmoke1_)
-            this->debrisSmoke1_->setDetailLevel(this->LOD_);
-
-        if (this->debrisFire2_)
-            this->debrisFire2_->setDetailLevel(this->LOD_);
-        if (this->debrisSmoke2_)
-            this->debrisSmoke2_->setDetailLevel(this->LOD_);
-
-        if (this->debrisFire3_)
-            this->debrisFire3_->setDetailLevel(this->LOD_);
-        if (this->debrisSmoke3_)
-            this->debrisSmoke3_->setDetailLevel(this->LOD_);
-
-        if (this->debrisFire4_)
-            this->debrisFire4_->setDetailLevel(this->LOD_);
-        if (this->debrisSmoke4_)
-            this->debrisSmoke4_->setDetailLevel(this->LOD_);
-    }
-
-    void BigExplosion::checkStop()
-    {
-        if (this->bStop_)
-            this->stop();
-    }
-
-    void BigExplosion::stop()
-    {
-        if (this->debrisFire1_)
-            this->debrisFire1_->setEnabled(false);
-        if (this->debrisSmoke1_)
-            this->debrisSmoke1_->setEnabled(false);
-
-        if (this->debrisFire2_)
-            this->debrisFire2_->setEnabled(false);
-        if (this->debrisSmoke2_)
-            this->debrisSmoke2_->setEnabled(false);
-
-        if (this->debrisFire3_)
-            this->debrisFire3_->setEnabled(false);
-        if (this->debrisSmoke3_)
-            this->debrisSmoke3_->setEnabled(false);
-
-        if (this->debrisFire4_)
-            this->debrisFire4_->setEnabled(false);
-        if (this->debrisSmoke4_)
-            this->debrisSmoke4_->setEnabled(false);
-
-        if (GameMode::isMaster())
-        {
-            this->bStop_ = true;
-            this->destroyTimer_.setTimer(1.0f, false, createExecutor(createFunctor(&BigExplosion::destroy, this)));
-        }
-    }
-
-/* TODO
-
-    void BigExplosion::setDebrisMeshes()
-    {
-
-    }
-    void BigExplosion::getDebrisMeshes()
-    {
-
-    }
-*/
-}

Deleted: code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.h
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.h	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/BigExplosion.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -1,94 +0,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *                    > www.orxonox.net <
- *
- *
- *   License notice:
- *
- *   This program is free software; you can redistribute it and/or
- *   modify it under the terms of the GNU General Public License
- *   as published by the Free Software Foundation; either version 2
- *   of the License, or (at your option) any later version.
- *
- *   This program is distributed in the hope that it will be useful,
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *   GNU General Public License for more details.
- *
- *   You should have received a copy of the GNU General Public License
- *   along with this program; if not, write to the Free Software
- *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Benjamin de Capitani
- *   Co-authors:
- *      ...
- *
- */
-
-#ifndef _BigExplosion_H__
-#define _BigExplosion_H__
-
-#include "OrxonoxPrereqs.h"
-
-#include "tools/Timer.h"
-#include "MobileEntity.h"
-
-namespace orxonox
-{
-    class _OrxonoxExport BigExplosion : public MobileEntity
-    {
-        public:
-            BigExplosion(Context* context);
-            virtual ~BigExplosion();
-
-            inline void setLOD(LODParticle::Value level)
-                { this->LOD_ = level; this->LODchanged(); }
-            inline LODParticle::Value getLOD() const
-                { return this->LOD_; }
-
-        private:
-            void registerVariables();
-
-            void LODchanged();
-            void checkStop();
-            void stop();
-            void init();
-            void initZero();
-
-
-            bool                  bStop_;
-
-            StaticEntity*         explosion_;
-
-            MovableEntity*        debrisEntity1_;
-            MovableEntity*        debrisEntity2_;
-            MovableEntity*        debrisEntity3_;
-            MovableEntity*        debrisEntity4_;
-
-            Model*                debris1_;
-            Model*                debris2_;
-            Model*                debris3_;
-            Model*                debris4_;
-
-
-
-            ParticleInterface*    debrisSmoke1_;
-            ParticleInterface*    debrisSmoke2_;
-            ParticleInterface*    debrisSmoke3_;
-            ParticleInterface*    debrisSmoke4_;
-
-            ParticleInterface*    debrisFire1_;
-            ParticleInterface*    debrisFire2_;
-            ParticleInterface*    debrisFire3_;
-            ParticleInterface*    debrisFire4_;
-
-            ParticleInterface*    explosionSmoke_;
-            ParticleInterface*    explosionFire_;
-
-            LODParticle::Value    LOD_;
-            Timer                 destroyTimer_;
-    };
-}
-
-#endif /* _BigExplosion_H__ */

Modified: code/branches/presentationHS15/src/orxonox/worldentities/CMakeLists.txt
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/CMakeLists.txt	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/CMakeLists.txt	2015-12-09 15:03:59 UTC (rev 10962)
@@ -5,12 +5,12 @@
   MobileEntity.cc
   ControllableEntity.cc
   Drone.cc
-  BigExplosion.cc
   EffectContainer.cc
   ExplosionChunk.cc
   CameraPosition.cc
   SpawnPoint.cc
   TeamSpawnPoint.cc
+  ExplosionPart.cc
 )
 
 ADD_SUBDIRECTORY(pawns)

Copied: code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.cc (from rev 10961, code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.cc)
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.cc	                        (rev 0)
+++ code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -0,0 +1,260 @@
+/*
+ *   ORXONOX - the hottest 3D action shooter ever to exist
+ *                    > www.orxonox.net <
+ *
+ *
+ *   License notice:
+ *
+ *   This program is free software; you can redistribute it and/or
+ *   modify it under the terms of the GNU General Public License
+ *   as published by the Free Software Foundation; either version 2
+ *   of the License, or (at your option) any later version.
+ *
+ *   This program is distributed in the hope that it will be useful,
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *   GNU General Public License for more details.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ *
+ *   Author:
+ *      Vedat Aydin
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+
+
+#include "ExplosionPart.h"
+#include "core/XMLPort.h"
+
+
+namespace orxonox
+{
+
+	RegisterClass(ExplosionPart);
+
+	ExplosionPart::ExplosionPart(Context* context) : MovableEntity(context)
+	{
+		RegisterObject(ExplosionPart);
+		this->bStop_ = false;
+        this->LOD_ = LODParticle::Normal;
+		this->mesh_ = "";
+		this->effect1_ = "";
+		this->effect2_ = "";
+		this->model_= new Model(this->getContext());
+		this->effect1Particle_= NULL;
+		this->effect2Particle_= NULL;
+		this->explosionEntity_ = new MovableEntity(this->getContext());
+		this->posOffset_ = Vector3::ZERO;
+
+
+
+	}
+
+
+	ExplosionPart::~ExplosionPart()
+    {
+        if (this->isInitialized())
+        {
+            if (this->effect1Particle_)
+            {
+                this->model_->detachOgreObject(this->effect1Particle_->getParticleSystem());
+                delete this->effect1Particle_;
+            }
+            if (this->effect2Particle_)
+            {
+                this->model_->detachOgreObject(this->effect2Particle_->getParticleSystem());
+                delete this->effect2Particle_;
+            }
+        }
+    }
+
+
+	void ExplosionPart::XMLPort(Element& xmlelement, XMLPort::Mode mode)
+	{
+		SUPER(ExplosionPart, XMLPort, xmlelement, mode);
+
+		XMLPortParam(ExplosionPart, "mesh", setMesh, getMesh, xmlelement, mode).defaultValues(""); //Define mesh file, that is going to fly out
+		XMLPortParam(ExplosionPart, "minspeed", setMinSpeed, getMinSpeed, xmlelement, mode).defaultValues(50); //Minimum velocity at which parts fly out
+		XMLPortParam(ExplosionPart, "maxspeed", setMaxSpeed, getMaxSpeed, xmlelement, mode).defaultValues(100); //Maximum velocity at which parts fly out, set both minspeed and maxspeed to 0 to have stationary effects
+		XMLPortParam(ExplosionPart, "effect1", setEffect1, getEffect1, xmlelement, mode).defaultValues(""); //particle effect 1
+		XMLPortParam(ExplosionPart, "effect2", setEffect2, getEffect2, xmlelement, mode).defaultValues(""); //particle effect 2
+		XMLPortParam(ExplosionPart, "offset", setOffset, getOffset, xmlelement, mode).defaultValues(Vector3::ZERO); //Offset of the position if you need to have an explosion off-center 
+		XMLPortParam(ExplosionPart, "direction", setDirection, getDirection, xmlelement, mode).defaultValues(Vector3(1,1,1)); //general direction the parts fly in
+		XMLPortParam(ExplosionPart, "angle", setAngle, getAngle, xmlelement, mode).defaultValues(180); //defines a cone shape with direction "direction" and angle "angle" inside which the parts fly out of
+		XMLPortParam(ExplosionPart, "delay", setDelay, getDelay, xmlelement, mode).defaultValues(0); //delay to the explosion in seconds
+	}
+
+
+	void ExplosionPart::Explode()
+	{
+		this->destroyTimer_.setTimer(delay_, false, createExecutor(createFunctor(&ExplosionPart::ActuallyExplode, this)));
+	}
+
+	void ExplosionPart::stop()
+	{
+		if (this->effect1Particle_)
+            this->effect1Particle_->setEnabled(false);
+        if (this->effect2Particle_)
+            this->effect2Particle_->setEnabled(false);
+        if (this->model_)
+            this->model_->setVisible(false);
+
+        if (GameMode::isMaster())
+        {
+            this->bStop_ = true;
+            this->destroyTimer_.setTimer(1.0f, false, createExecutor(createFunctor(&ExplosionPart::destroy, this)));
+        }
+	}
+
+	void ExplosionPart::ActuallyExplode()
+	{
+		this->model_->setVisible(true);
+
+		//this->explosionEntity_->setSyncMode(0);
+
+		//this->model_->setSyncMode(0);
+
+
+		if(effect1_ != "")
+		{
+			this->effect1Particle_ = new ParticleInterface(this->getScene()->getSceneManager(), effect1_, this->LOD_);
+			this->effect1Particle_->setDimensions(this->getScale());
+			this->model_->attachOgreObject(this->effect1Particle_->getParticleSystem());
+		}
+
+		if(effect2_ != "")
+		{
+			this->effect2Particle_ = new ParticleInterface(this->getScene()->getSceneManager(), effect2_, this->LOD_);
+			this->effect2Particle_->setDimensions(this->getScale());
+			this->model_->attachOgreObject(this->effect2Particle_->getParticleSystem());
+		}
+
+
+
+		
+        Vector3 velocityOffset = direction_.perpendicular();
+        velocityOffset.normalise();
+        Degree offsetDirection = Degree(rnd(0,360));
+        velocityOffset = Quaternion(offsetDirection, direction_.normalisedCopy()) * velocityOffset;
+        velocityOffset.normalise();
+        direction_.normalise();
+
+        Vector3 finalDirection = direction_ + sin((rnd(0, angle_))*M_PI/180)*velocityOffset;
+
+		this->explosionEntity_->setVelocity(finalDirection*rnd(minSpeed_,maxSpeed_));
+        this->explosionEntity_->setAngularVelocity(Vector3(rnd(-1, 1), rnd(-1, 1), rnd(-1, 1)).normalisedCopy() * Degree(400).valueRadians());
+        this->explosionEntity_->setScale(this->getScale() * 4);
+
+
+        this->explosionEntity_->attach(model_);
+
+
+        this->attach(explosionEntity_);
+
+        if (GameMode::isMaster())
+        {
+            this->destroyTimer_.setTimer(rnd(2, 4), false, createExecutor(createFunctor(&ExplosionPart::stop, this)));
+        }
+	}
+
+
+
+
+	void ExplosionPart::setMesh(const std::string& newString)
+	{
+		if(newString != "")
+		{
+			this->mesh_ = newString;
+			this->model_->setMeshSource(mesh_);
+			this->model_->setVisible(false);
+		}
+	}
+
+	void ExplosionPart::setEffect1(const std::string& newString)
+	{
+		this->effect1_ = newString;
+	}
+
+	void ExplosionPart::setEffect2(const std::string& newString)
+	{
+		this->effect2_ = newString;
+	}
+
+	void ExplosionPart::setMinSpeed(float speed)
+	{
+		this->minSpeed_ = speed;
+	}
+
+	void ExplosionPart::setMaxSpeed(float speed)
+	{
+		this->maxSpeed_ = speed;
+	}
+
+	void ExplosionPart::setOffset(Vector3 newVector)
+	{
+		this->posOffset_ = newVector;
+		this->explosionEntity_->setPosition(this->getPosition() + this->posOffset_ / this->getScale());
+	}
+
+	void ExplosionPart::setDirection(Vector3 newDirection)
+	{
+		this->direction_ = newDirection;
+	}
+
+	void ExplosionPart::setAngle(float newAngle)
+	{
+		this->angle_ = newAngle;
+	}
+
+	void ExplosionPart::setDelay(float newDelay)
+	{
+		this->delay_ = newDelay;
+	}
+
+	std::string& ExplosionPart::getMesh()
+	{ return this->mesh_; }
+
+	std::string& ExplosionPart::getEffect1()
+	{ return this->effect1_; }
+
+	std::string& ExplosionPart::getEffect2()
+	{ return this->effect2_; }
+
+	float ExplosionPart::getMinSpeed()
+	{
+		return this->minSpeed_;
+	}
+
+	float ExplosionPart::getMaxSpeed()
+	{
+		return this->maxSpeed_;
+	}
+
+	Vector3 ExplosionPart::getOffset()
+	{
+		return this->posOffset_;
+	}
+
+	Vector3 ExplosionPart::getDirection()
+	{
+		return direction_;
+	}
+
+	float ExplosionPart::getAngle()
+	{
+		return angle_;
+	}
+
+	float ExplosionPart::getDelay()
+	{
+		return delay_;
+	}
+
+
+
+}
\ No newline at end of file

Copied: code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.h (from rev 10961, code/branches/explosionChunksHS15/src/orxonox/worldentities/ExplosionPart.h)
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.h	                        (rev 0)
+++ code/branches/presentationHS15/src/orxonox/worldentities/ExplosionPart.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -0,0 +1,108 @@
+/*
+ *   ORXONOX - the hottest 3D action shooter ever to exist
+ *                    > www.orxonox.net <
+ *
+ *
+ *   License notice:
+ *
+ *   This program is free software; you can redistribute it and/or
+ *   modify it under the terms of the GNU General Public License
+ *   as published by the Free Software Foundation; either version 2
+ *   of the License, or (at your option) any later version.
+ *
+ *   This program is distributed in the hope that it will be useful,
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *   GNU General Public License for more details.
+ *
+ *   You should have received a copy of the GNU General Public License
+ *   along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ *
+ *   Author:
+ *      Vedat Aydin
+ *   Co-authors:
+ *      ...
+ *
+ */
+
+#ifndef _ExplosionPart_H__
+#define _ExplosionPart_H__
+
+#include "OrxonoxPrereqs.h"
+
+#include "graphics/Model.h"
+#include "tools/ParticleInterface.h"
+#include "MovableEntity.h"
+#include "graphics/ParticleSpawner.h"
+#include "core/CoreIncludes.h"
+#include "core/GameMode.h"
+#include "util/Exception.h"
+#include "core/command/Executor.h"
+#include "Scene.h"
+#include "tools/Timer.h"
+
+
+ namespace orxonox
+{
+    class _OrxonoxExport ExplosionPart : public MovableEntity
+    {
+        public:
+            ExplosionPart(Context* context);
+            ~ExplosionPart();
+            void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+            void Explode();
+            void stop();
+            void ActuallyExplode();
+
+            void setMesh(const std::string& newString);
+            std::string& getMesh();
+            void setEffect1(const std::string& newString);
+            std::string& getEffect1();
+            void setEffect2(const std::string& newString);
+            std::string& getEffect2();
+            void setMinSpeed(float speed);
+            float getMinSpeed();
+            void setMaxSpeed(float speed);
+            float getMaxSpeed();
+            void setOffset(Vector3 newVector);
+            Vector3 getOffset();
+            void setDirection(Vector3 newDirection);
+            Vector3 getDirection();
+            void setAngle(float newAgnle);
+            float getAngle();
+            void setDelay(float newDelay);
+            float getDelay();
+         
+
+        private:
+
+            bool bStop_;
+            LODParticle::Value LOD_;
+
+
+        	Model* model_;
+        	ParticleInterface* effect1Particle_;
+            ParticleInterface* effect2Particle_;
+
+
+            float minSpeed_;
+            float maxSpeed_;
+        	std::string mesh_;
+        	std::string effect1_;
+            std::string effect2_;
+            Vector3 posOffset_;
+            Vector3 direction_;
+            float angle_;
+            float delay_;
+
+            MovableEntity* explosionEntity_;
+
+            Timer destroyTimer_;
+
+        	
+
+    };
+}
+
+#endif /* _ExplosionPart_H__ */
\ No newline at end of file

Modified: code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -40,7 +40,7 @@
 #include "gametypes/Gametype.h"
 #include "graphics/ParticleSpawner.h"
 #include "worldentities/ExplosionChunk.h"
-#include "worldentities/BigExplosion.h"
+#include "worldentities/ExplosionPart.h"
 #include "weaponsystem/WeaponSystem.h"
 #include "weaponsystem/WeaponSlot.h"
 #include "weaponsystem/WeaponPack.h"
@@ -83,6 +83,8 @@
 
         this->aimPosition_ = Vector3::ZERO;
 
+        //this->explosionPartList_ = NULL;
+
         if (GameMode::isMaster())
         {
             this->weaponSystem_ = new WeaponSystem(this->getContext());
@@ -135,7 +137,7 @@
 
         XMLPortParam(Pawn, "spawnparticlesource", setSpawnParticleSource, getSpawnParticleSource, xmlelement, mode);
         XMLPortParam(Pawn, "spawnparticleduration", setSpawnParticleDuration, getSpawnParticleDuration, xmlelement, mode).defaultValues(3.0f);
-        XMLPortParam(Pawn, "explosionchunks", setExplosionChunks, getExplosionChunks, xmlelement, mode).defaultValues(7);
+        XMLPortParam(Pawn, "explosionchunks", setExplosionChunks, getExplosionChunks, xmlelement, mode).defaultValues(0);
 
         XMLPortObject(Pawn, WeaponSlot, "weaponslots", addWeaponSlot, getWeaponSlot, xmlelement, mode);
         XMLPortObject(Pawn, WeaponSet, "weaponsets", addWeaponSet, getWeaponSet, xmlelement, mode);
@@ -144,6 +146,7 @@
 
         XMLPortParam(Pawn, "shieldrechargerate", setShieldRechargeRate, getShieldRechargeRate, xmlelement, mode).defaultValues(0);
         XMLPortParam(Pawn, "shieldrechargewaittime", setShieldRechargeWaitTime, getShieldRechargeWaitTime, xmlelement, mode).defaultValues(1.0f);
+        XMLPortObject(Pawn, ExplosionPart, "explosion", addExplosionPart, getExplosionPart, xmlelement, mode);
 
         XMLPortParam(Pawn, "explosionSound",  setExplosionSound,  getExplosionSound,  xmlelement, mode);
 
@@ -163,6 +166,7 @@
 
     void Pawn::tick(float dt)
     {
+        //BigExplosion* chunk = new BigExplosion(this->getContext());
         SUPER(Pawn, tick, dt);
 
         // Recharge the shield
@@ -367,114 +371,40 @@
             }
             if (GameMode::isMaster())
             {
-                this->deatheffect();
                 this->goWithStyle();
             }
         }
     }
     void Pawn::goWithStyle()
     {
+
         this->bAlive_ = false;
         this->setDestroyWhenPlayerLeft(false);
 
-        BigExplosion* chunk = new BigExplosion(this->getContext());
-        chunk->setPosition(this->getPosition());
-        chunk->setVelocity(this->getVelocity());
-
-        this->explosionSound_->setPosition(this->getPosition());
-        this->explosionSound_->play();
-    }
-    void Pawn::deatheffect()
-    {
-        // play death effect
-        /*{
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("Orxonox/explosion2b");
-            effect->setLifetime(4.0f);
-        }
+        while(!explosionPartList_.empty())
         {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("Orxonox/smoke6");
-            effect->setLifetime(4.0f);
+            explosionPartList_.back()->setPosition(this->getPosition());
+            explosionPartList_.back()->setVelocity(this->getVelocity());
+            explosionPartList_.back()->setOrientation(this->getOrientation());
+            explosionPartList_.back()->Explode();
+            explosionPartList_.pop_back();
         }
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("Orxonox/sparks");
-            effect->setLifetime(4.0f);
-        }*/
-        
-        
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_flash2");
-            effect->setLifetime(5.0f);
-        }
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_flame2");
-            effect->setLifetime(5.0f);
-        }
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_shockwave2");
-            effect->scale(20);
-            effect->setLifetime(5.0f);
-        }{
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_sparks2");
-            effect->setLifetime(5.0f);
-        }
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_streak2");
-            effect->setLifetime(5.0f);
-        }
-        {
-            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
-            effect->setPosition(this->getPosition());
-            effect->setOrientation(this->getOrientation());
-            effect->setDestroyAfterLife(true);
-            effect->setSource("orxonox/explosion_afterglow");
-            effect->scale(20);
-            effect->setLifetime(5.0f);
-        }
-        
-        
+
         for (unsigned int i = 0; i < this->numexplosionchunks_; ++i)
         {
             ExplosionChunk* chunk = new ExplosionChunk(this->getContext());
             chunk->setPosition(this->getPosition());
         }
+
+        this->explosionSound_->setPosition(this->getPosition());
+        this->explosionSound_->play();
     }
 
     /**
     @brief
         Check whether the Pawn has a @ref Orxonox::WeaponSystem and fire it with the specified firemode if it has one.
     */
+
     void Pawn::fired(unsigned int firemode)
     {
         if (this->weaponSystem_)
@@ -488,6 +418,16 @@
             this->spawneffect();
     }
 
+
+    void Pawn::addExplosionPart(ExplosionPart* ePart)
+    {this->explosionPartList_.push_back(ePart);}
+
+
+    ExplosionPart * Pawn::getExplosionPart()
+    {return this->explosionPartList_.back();}
+
+
+
     /* WeaponSystem:
     *   functions load Slot, Set, Pack from XML and make sure all parent-pointers are set.
     *   with setWeaponPack you can not just load a Pack from XML but if a Pack already exists anywhere, you can attach it.
@@ -641,4 +581,4 @@
             assert(0);
         return BLANKSTRING;
     }
-}
\ No newline at end of file
+}

Modified: code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.h
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.h	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/pawns/Pawn.h	2015-12-09 15:03:59 UTC (rev 10962)
@@ -32,9 +32,11 @@
 #include "OrxonoxPrereqs.h"
 
 #include <string>
+#include <vector>
 #include "interfaces/PickupCarrier.h"
 #include "interfaces/RadarViewable.h"
 #include "worldentities/ControllableEntity.h"
+#include "worldentities/ExplosionPart.h"
 
 
 namespace orxonox // tolua_export
@@ -142,6 +144,9 @@
             virtual void fired(unsigned int firemode);
             virtual void postSpawn();
 
+            void addExplosionPart(ExplosionPart* ePart);
+            ExplosionPart * getExplosionPart();
+
             void addWeaponSlot(WeaponSlot * wSlot);
             WeaponSlot * getWeaponSlot(unsigned int index) const;
             void addWeaponSet(WeaponSet * wSet);
@@ -205,7 +210,6 @@
             virtual bool hasSlaves();
             virtual Controller* getSlave();
             virtual void goWithStyle();
-            virtual void deatheffect();
             virtual void spawneffect();
 
             virtual void damage(float damage, float healthdamage = 0.0f, float shielddamage = 0.0f, Pawn* originator = NULL, const btCollisionShape* cs = NULL);
@@ -240,6 +244,8 @@
             float spawnparticleduration_;
             unsigned int numexplosionchunks_;
 
+            std::vector<ExplosionPart*> explosionPartList_;
+
         private:
             void registerVariables();
             inline void setWeaponSystem(WeaponSystem* weaponsystem)

Modified: code/branches/presentationHS15/src/orxonox/worldentities/pawns/SpaceShip.cc
===================================================================
--- code/branches/presentationHS15/src/orxonox/worldentities/pawns/SpaceShip.cc	2015-12-09 13:45:58 UTC (rev 10961)
+++ code/branches/presentationHS15/src/orxonox/worldentities/pawns/SpaceShip.cc	2015-12-09 15:03:59 UTC (rev 10962)
@@ -114,6 +114,8 @@
         XMLPortParamVariable(SpaceShip, "stallSpeed", stallSpeed_, xmlelement, mode);
 
         XMLPortObject(SpaceShip, Engine, "engines", addEngine, getEngine, xmlelement, mode);
+
+        
     }
 
     void SpaceShip::registerVariables()




More information about the Orxonox-commit mailing list